Vecteurs System – NOYAUX-KERNEL (#BCC8 – #BD0D) #BCC8 - NETTOIE TOUTES LES FILES D’INTERRUPTION, LES CHRONOMÈTRES …
CE : | Rien. |
CS : | B contient l’adresse de sélection de la ROM s’il y en a une. DE contient le point d’entrée a l’intérieur de la ROM. C contient l’adresse de sélection de la ROM pour un programme en RAM. AF, HL sont modifiés. |
#BCCB - TROUVE ET INITIALISE TOUTES LES ROMS DE SECOND PLAN.
CE : | DE contient l’adresse du premier octet utilisable. HL contient l’adresse du dernier octet utilisable. |
CS : | DE contient l’adresse du nouveau premier octet utilisable. HL contient l’adresse du nouveau dernier octet utilisable. AF, BC sont modifiés. |
#BCCE - INITIALISE UNE ROM DE SECOND PLAN.
CE : | C contient l’adresse de sélection de la ROM a initialiser. #FC = 252 = ROM (inf. 0 a 3fff) ROM (sup. #C000 a #FFFF) #FD = 253 = RAM ——————– ROM (donc ROM BASIC). #FE = 254 = ROM ——————– RAM. #FF = 255 = RAM ——————– RAM. #07 = 7 = ROM SECONDAIRE (lecteur de disquette) DE contient l’adresse du premier octet utilisable. HL contient l’adresse du dernier octet utilisable. |
CS : | DE contient l’adresse du nouveau premier octet utilisable. HL contient l’adresse du nouveau dernier octet utilisable. AF, B sont modifiés. |
#BCD1 - INTRODUIT UN RSX DANS LE LOGICIEL INTERNE.
CE : | BC contient l’adresse de la table des commandes RSX. HL contient l’adresse de 4 octets disponibles en RAM pour le noyau. |
CS : | DE est modifié. |
#BCD4 - RECHERCHE UN RSX DANS LES ROMS POUR EFFECTUER UNE COMMANDE.
CE : | HL contient l’adresse ou se trouve le nom de la commande a rechercher. |
CS : | si un RSX a été trouvé, C=1, C contient l’adresse de sélection de la ROM et HL contient l’adresse de la routine. Si la commande n’a pas été trouvée, C=0. De toute façon AF, BC, DE sont modifiés. |
#BCD7 - INITIALISE ET DÉPOSE UN BLOC D’ÉVÈNEMENT DANS LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION EN PROVENANCE DU CRT.
CE : | HL contient l’adresse du bloc d’évènement. B contient la classe de l’évènement. Bit 0 = 1 si routine dans RAM. Bit 1-4 = priorité de l’évènement. Bit 5 = toujours a 0. Bit 6 = 1 si priorité + grande que les évènements conventionnels. Bit 7 = 1 si la routine doit être exécutée immédiatement. C contient l’adresse de sélection de la ROM. DE contient l’adresse de la routine de l’évènement. |
CS : | AF, DE, HL sont modifiés. |
#BCDA - DÉPOSE UN BLOC D’ÉVÈNEMENT DANS LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION EN PROVENANCE DU CRT.
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, DE, HL sont modifiés. |
#BCDD - ENLÈVE UN BLOC D’ÉVÈNEMENT DANS LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION EN PROVENANCE DU CRT.
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, DE, HL sont modifiés. |
#BCE0 - INITIALISE ET DÉPOSE UN BLOC D’ÉVÈNEMENT DANS LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION RAPIDE (1/300 de seconde).
CE : | HL contient l’adresse du bloc. B contient la classe de l’évènement (voir BCD7). C contient l’adresse de sélection de la ROM. DE contient l’adresse de la routine de l’évènement. |
CS : | AF, DE, HL sont modifiés. |
#BCE3 - POSE UN BLOC D’ÉVÈNEMENT DANS LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION RAPIDE (1/300 de seconde).
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, DE, HL sont modifiés. |
#BCE6 - ENLÈVE UN BLOC D’ÉVÈNEMENT DE LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION RAPIDE (1/300 de seconde).
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, DE, HL sont modifiés. |
#BCE9 - DEPOSE UN BLOC D’EVENEMENT DANS LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION NORMALE (1/50 de seconde).
CE : | HL contient l’adresse du bloc d’évènement. DE contient la valeur initiale du compteur. BC contient la valeur de recharge du compteur lorsqu’il atteint 0. |
CS : | AF, BC, DE, HL sont modifiés. |
#BCEC - ENLEVE UN BLOC D’EVENEMENT DE LA LISTE DES BLOCS A ACTIVER LORS D’UNE INTERRUPTION NORMALE (1/50 de seconde).
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | Si le bloc a été trouvé dans la liste, C=1 et DE contient le compteur, sinon C=0. De toute façon AF, DE, HL sont modifiés. |
#BCEF - INITIALISE UN BLOC D’ÉVÈNEMENT.
CE : | HL contient l’adresse du bloc d’évènement. B contient la classe d’évènement. C contient l’adresse de sélection de la ROM. DE contient l’adresse de la routine d’évènement. |
CS : | HL contient l’adresse du bloc d’évènement augmentée de 7. |
#BCF2 - ACTIONNE UN BLOC D’ÉVÈNEMENT.
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, BC, DE, HL sont modifiés. |
#BCF5 - NETTOIE TOUTES LES FILES D’ATTENTE DES ÉVÈNEMENTS TEMPORISÉS.
CE : | Rien. |
CS : | AF, HL sont modifiés. |
#BCF8 - ENLÈVE UN ÉVÈNEMENT TEMPORISE HORS D’UNE FILE D’ATTENTE.
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, BC, DE, HL sont modifiés. |
#BCFB - LECTURE DE L’ÉVÈNEMENT SUIVANT DANS LA FILE D’ATTENTE.
CE : | Rien. |
CS : | S’il y a un évènement a traiter, C=1 et HL contient l’adresse du bloc d’évènement. A peut contenir le code de priorité de l’évènement précédent. S’il n’y a pas d’évènement a traiter, C=0. De toute façon AF, DE, HL sont modifiés. |
#BCFE - TRAITE UNE ROUTINE D’ÉVÈNEMENT.
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF, BC, DE, HL sont modifiés. |
#BD01 - TERMINE LE TRAITEMENT D’UN ÉVÈNEMENT.
CE : | HL contient l’adresse du bloc d’évènement. A contient le code de priorité de l’évènement précédent. |
CS : | AF, BC, DE, HL sont modifiés. |
#BD04 - INTERDIT LES ÉVÈNEMENTS TEMPORISES NORMAUX.
CE : | Rien. |
CS : | HL est modifié. |
#BD07 - AUTORISE LES ÉVÈNEMENTS TEMPORISES NORMAUX.
CE : | Rien. |
CS : | HL est modifié. |
#BD0A - INTERDIT UN ÉVÈNEMENT PARTICULIER.
CE : | HL contient l’adresse du bloc d’évènement. |
CS : | AF est modifié. |
#BD0D - DONNE LE TEMPS ECOULE EN 1/300 DE SECONDE.
CE : | Rien. |
CS : | DE HL contient le temps écoulé sur quatre octets. |