QL Programación Avanzada
Anterior Siguiente

Apéndice M - Definición de Variables del Sistema Operativo

SV.BASEEQU $28000Base de las variables del sistema
SV.IDENTEQU $00identificación (palabra)
SV.CHEAPEQU $04base del área común (larga)
SV.CHPFREQU $08primer espacio libre en el área común (larga)
SV.FREEEQU $0Cbase del área libre (larga)
SV.BASICEQU $10base de la pila de BASIC (larga)
SV.TRNSPEQU $14base del área de programas transitorios (larga)
SV.TRNFREQU $18primer espacio libre en el área de programas transitorios (larga)
SV.RESPREQU $1Cbase del área de programas residentes (larga)
SV.RAMTEQU $20tope de la RAM (+1)(larga)
SV.RANDEQU $2Enúmero aleatorio (palabra)
SV.POLLMEQU $30contador de interrupciones de 'poll' perdidas (palabra)
SV.TVMODEQU $320 si no tiene TV (octeto)
SV.SCRSTEQU $33estado de la pantalla (0 = activa)
SV.MCSTAEQU $34valor actual del registro de estado MC (octeto)
SV.PCINTEQU $35valor actual del registro de interrupción PC (octeto)
SV.NETNREQU $37número de estación en la red de datos (octeto)
SV.I2LSTEQU $38apuntador a lista de interrupciones 2 controladores
SV.PLISTEQU $3Capuntador a lista de tareas conectadas
SV.SHLSTEQU $40apuntador a tareas del planificador (larga)
SV.DRLSTEQU $44apuntador a lista de controladores de dispositivo (larga)
SV.DDLSTEQU $48apuntador a lista de controladores de dispositivos de directorio (larga)
SV.KEYOEQU $4Capuntador a la cola del teclado (larga)
SV.TRAPVEQU $50apuntador a la tabla de redireccionamiento de TRAPs (larga)

Apuntadores a las tablas de gestión de recursos

SV.BTPNTEQU $54apuntador a la entrada de bloque dependiente más reciente (larga)
SV.BTBASEQU $58apuntador a la base de la tabla de bloques dependientes (larga)
SV.BTTOPEQU $5Capuntador a lo alto de la tabla de bloques dependientes
SV.JBTAGEQU $60valor actual de la etiqueta de Job (palabra)
SV.JBMAXEQU $62número mayor de Job actual (palabra)
SV.JBPNTEQU $64apuntador a la entrada actual de la tabla de Job (larga)
SV.JBBASEQU $68apuntador a la base de la tabla de Job (larga)
SV.JBTOPEQU $6Capuntador a lo alto de la tabla de Job (larga)
SV.CHTAGEQU $70valor actual de la etiqueta de canal (palabra)
SV.CHMAXEQU $72número mayor de canal actual (palabra)
SV.CHPNTEQU $74apuntador al último canal comprobado (larga)
SV.CHBASEQU $78apuntador a la base de la tabla de canales (larga)
SV.CHTOPEQU $7Capuntador a lo alto de la tabla de canales (larga)
SV.CAPSEQU $88mayúsculas (palabra)
SV.ASBUFEQU $8Amemoria de autorrepetición (palabra)
SV.ARDELEQU $8Ctiempo de autorrepetición (palabra)
SV.ARFRQEQU $8Eautorrepetición 1/frecuencia (palabra)
SV.ARCNTEQU $90contador de autorrepetición (palabra)
SV.CQCHEQU $92código de caracter para cola de cambio del teclado (palabra)
SV.WPEQU $94protección de escritura (palabra)
SV.SOUNDEQU $96estado del sonido (palabra)
SV.SER1CEQU $98dirección de la cola de recepción para el canal 1 (larga)
SV.SER2CEQU $9Cdirección de la cola de recepción para el canal 2 (larga)
SV.TMODEEQU $A0modo de transmisión ZX8032 (incluye velocidad de transmisión) (octeto)
SV.CSUBEQU $A2subrutina donde saltar en caso de CAPSLOCK (larga)
SV.TIMOEQU $A6tiempo de espera para modo de transmisión conmutada (palabra)
SV.TIMOVEQU $A8valor de tiempo de espera de conmutación (2 caracteres) (palabra)
SV.FSTATEQU $AAestado del cursor parpadeante (palabra)
SV.MDRUNEQU $EE¿qué unidad esta funcionando? (octeto)
SV.MDCNTEQU $EFcontador de funcionamiento parada de microdrive (octeto)
SV.MDDIDEQU $F0ID de la unidad * 4 por cada microdrive (8 octetos)
SV.MDSTAEQU $F8estado 0=no hay operaciones pendientes (8 octetos)
SV.FSDEFEQU $100apuntadores a las definiciones físicas de ficheros del sistema (16 largas)
SV.FSLSTEQU $140apuntador a la lista de definiciones de canales de fichero (larga)
SV.STACBEQU $180parte inferior de la pila (192 largas)
SV.STACTEQU $480pila grande - NO se comprueba (hasta aquí)
SV.TRAPOEQU $2*($28+2)desplazamiento de la tabla de vectores de TRAP desde (SV.TRAPV)
SV.IDENTEQU $D254bits de verde, rojo, azul y negro con parpadeo

Definición de controladores de dispositivo (para las variables del pseudo sistema propiedad de los controladores)

SV.LXINTEQU $00conexión al siguiente servicio de interrupción externa (larga)
SV.AXINTEQU $04dirección del servicio de interrupción externa (larga)
SV.LPOLLEQU $08conexión al siguiente servicio de interrupción de 'polling' (larga)
SV.APOLLEQU $0Cdirección del servicio de interrupción de 'polling' (larga)
SV.LSCHDEQU $10conector a la siguiente tarea del planificador (larga)
SV.ASCHDEQU $14dirección de la siguiente tarea del planificador (larga)
SV.LIOEQU $18conector al siguiente controlador de ES (larga)
SV.AIOEQU $1Cdirección de la rutina de ES (larga)
SV.AOPENEQU $20dirección de la rutina de abrir canal (larga)
SV.ACLOSEQU $24dirección de la rutina de cerrar canal (larga)


Anterior Tabla de contenidos Siguiente
Códigos de operación del paquete aritmético   Bloque de definición de canal