Memoria de ELS

La memoria de ELS está dividida en bloques de máximo 32k palabras de 16bits, a continuación se explica que tiene cada uno de ellos:

  1. Las tablas de OPCION TERMINAL AREA
  2. Las literales y variables de OPCION TERMINAL AREA
  3. Los vectores
  4. Las tablas de OPCION IMPRIMIR
  5. La tabla para el manejo de la pantalla.
  6. Las tablas de los temporales.

Todo lo demás o sea las variables del programa, las instrucciones y las tablas de archivos permanentes están en el bloque 0.

Cuando se compila un programa el "Por ciento de uso de memoria" se refiere al bloque que este más cercano a límite de 32k o bien el global del programa que no puede ser mayor a 90k

Más memoria en 7403

En la próxima actualización de la versión 7.4 se tendrá mas memoria para los programas al pasar las tablas de los archivos permanentes a el bloque 7 y aumentar el tamaño máximo de programa a 120k

También se cambiará el compilador para que mediante una opción indique el porciento de uso de cada bloque y así el programador pueda saber en dónde hacer cambios en caso de estar en el límite en alguno de ellos.

Todos aquellos programas que estén en el límite porque usen muchas instrucciones y permanentes se verán beneficiados por este cambio.

Como es usual en SISINF no será necesario compilar los programas, cuando se compile uno entonces se verá reflejado el cambio.

Ejemplo de área de menú

Como se publicó en el Enlace anterior hay nuevas opciones para el área de menú con variables, a continuación se pone un ejemplo del uso de las mismas:

OPCION TERMINAL AREA 50 /MENU 3 0 0 1 /MARCO $
/POS. 5 1 /LONG. 10 50 /VARIAS-SELECCIONES $
/COLOR CAFE CAFE BLANCO-B AZUL AMARILLO CAFE BLANCO-B $
/C1C2C3 BLANCO-B ROJO AZUL BLANCO BLANCO-B NEGRO $
/CAMPOS $
'Cursos' /ENC. /C2 $
IDE-CUR /LONG. 4 NOM-CUR /LONG. 25 $
'ide' /ENC-OP. /C3 'nombre' /ENC-OP. /C3 $
SUB-CUR /VAR-SEL. /DESP-LEC.

Aquí se usa la nueva opción de más colores /C1C2C3 y la de /ENC-OP. con la cual se ponen sub-encabezados en la lista de variables a desplegar. Note que al encabezado y a los sub-encabezados se les cambió su color al usar las opciones de /C2 y /C3.

Luego para leer la opción seleccionada se pone:

230 LEER TERMINAL EJECUTA 1000 /ENC 270 SUB-CUR

Si se selecciona un sub-encabezado de una variable se ejecuta /ENC 270

Para procesar poner:

270 SACAR PARAMETROS SELECCIONADO NCS

La variable NCS tendrá valores de 1 o 2 dependiendo de cuál se seleccionó.

En áreas en que se especifican más de 1 columna para el desplegado de las variables, cada una tendrá su sub-encabezado. Así, si para este ejemplo se especifica 2 como número de columnas se tendrán 4 sub-encabezados y el valor de NCS será de 1 a 4 dependiendo del seleccionado.

El uso de seleccionar sub-encabezados es para acciones especiales como ordenar el desplegado por esa columna, quizá la primera vez en orden ascendente, la segunda vez en orden descendente,... Note que para poder desplegar la información en otro orden es necesario terminar el área y volver a desplegarla.

Si por alguna razón se quiere resaltar un renglón del desplegado se puede poner:

IND-DE = 0
* Lógica para definir el renglón a resaltar
* Poniendo IND-DE = 1
SI IND-DE = 0 ESCRIBIR TERMINAL IDE-CUR NOM-CUR
SI IND-DE = 1 ESCRIBIR TERMINAL IDE-CUR /c1 NOM-CUR /C1