CE = CONDITIONS D’ENTREE
CS = CONDITIONS DE SORTIE
REGS = REGISTRES
C = FLAG CARRY
Z = FLAG ZÉRO

 

 

VECTEURS HAUT DE MEMOIRE
************************

#B900 – SÉLECTIONNE LA ROM SUPÉRIEURE.

CE: rien.
CS: A contient l’état précédent de la ROM.
AF est modifié.

 

#B903 – COUPE LA ROM SUPÉRIEURE POUR RESÉLECTIONNER LA RAM.

CE: rien.
CS: A contient l’état précédent de la ROM.
AF est modifié.

 

#B906 – SÉLECTIONNE LA ROM INFÉRIEURE.

CE: rien.
CS: A contient l’état précédent de la ROM.
AF est modifié.

 

#B909 – COUPE LA ROM INFÉRIEURE POUR RESÉLECTIONNER LA RAM.

CE: rien.
CS: A contient l’état précédent de la ROM.
AF est modifié.

 

#B90C – RESTAURE L’ÉTAT ANTÉRIEUR D’UNE ROM.

CE: A contient l’état antérieur de la ROM.
CS: AF est modifié.

 

#B90F – SÉLECTIONNE UNE ROM SUPÉRIEURE PARTICULIÈRE.

CE: C contient l’adresse de sélection de la ROM requise.
CS: C contient l’adresse de sélection de la ROM précédente.
B contient l’état de la ROM précédente.
AF est modifié.

 

#B912 – DEMANDE QUELLE ROM EST SÉLECTIONNÉE.

CE: rien.
CS: A contient l’adresse de sélection de la ROM courante.

 

#B915 – DEMANDE LA CLASSE ET LA VERSION D’UNE ROM.

CE: contient l’adresse de sélection de la ROM a interroger.
CS: A contient la classe de la ROM.
H contient le numéro de version.
L contient un numéro de marque.
B et F sont modifiés.

 

#B918 – RESÉLECTIONNE LA ROM SUPÉRIEURE PRÉCÉDEMMENT SÉLECTIONNÉE.

CE: C contient l’adresse de sélection de la ROM précédente.
B contient l’état de la ROM précédente.
CS: BC est modifié.

 

#B91B – EXÉCUTE UN DÉPLACEMENT DE BLOC AVEC INCRÉMENTATION (LDIR) AVEC LES DEUX ROMS DÉCONNECTÉES.

CE: BC, DE, HL sont programmés comme pour un LDIR normal.
CS: BC, DE, HL et F sont dans le même état qu’après un LDIR normal.

 

#B91E – COMME B91B, MAIS AVEC DÉCRÉMENTATION (LDDR).

 

#B921 – TESTE SI UN ÉVÈNEMENT AVEC UNE PRIORITÉ SUPÉRIEURE A L’ÉVÈNEMENT COURANT SE PRODUIT.

CE: rien.
CS: si un évènement avec une priorité supérieure se produit, C=1 sinon
C=0. AF est modifié.

 

 

VECTEURS BAS DE MÉMOIRE
***********************

 

#0000 – RST 0. RÉINITIALISATION COMPLÈTE DE LA MACHINE COMME A L’ALLUMAGE.

CE: rien.
CS: on n’en sort pas !

 

#0008 – RST 8. LANCEMENT D’UNE ROUTINE EN ROM OU EN RAM INFÉRIEURE. CE SONT LES DEUX OCTETS QUI SUIVENT LE RST QUI CONTIENNENT L’ADRESSE D’ÉXECUTION ET L’ÉTAT DE LA ROM SUPÉRIEURE.

CE: tous les regs sont passés à la routine sans être affectés.
CS: ne dépend que de la routine elle-même.

 

#000B – LANCEMENT D’UNE ROUTINE EN ROM OU EN RAM INFÉRIEURE.

CE: HL contient l’adresse inférieure de la routine.
CS: ne dépend que de la routine.

 

#000E – SAUTE A L’ADRESSE CONTENUE DANS BC.

CE: BC contient l’adresse.
CS: ne dépend que de la routine.

 

#0010 – RST #10. APPEL A UNE SOUS-ROUTINE D’UNE ROM SECONDAIRE. CE SONT LES DEUX OCTETS QUI SUIVENT LE RST QUI CONTIENNENT L’ADRESSE D’ÉXECUTION ET
L’ADRESSE DE SÉLECTION DE LA ROM.

CE: les regs sont passés a la routine sans être affectés, exepté IY.
CS: dépend de la routine.

 

#0013 – APPEL A UNE SOUS-ROUTINE D’UNE ROM SECONDAIRE. L’ADRESSE EST CONTENUE DANS HL.

CE: HL contient l’adresse et les regs sont passés a la routine sans être affectés, excepté IY.
CS: dépend de la routine.

 

#0016 – SAUTE A L’ADRESSE CONTENUE DANS DE.

CE: DE contient l’adresse.
CS: dépend de la routine.

 

#0018 – RST #18. APPEL A UNE SOUS-ROUTINE EN RAM OU EN ROM. CE SONT LES DEUX OCTETS QUI SUIVENT QUI CONTIENNENT L’ADRESSE DE LA SOUS ROUTINE.

CE: tous les regs sont passés a la sous-routine, excepté IY.
CS: dépend de la sous-routine.

 

#001B – APPEL A UNE SOUS-ROUTINE EN RAM OU EN ROM AVEC L’ADRESSE DANS HL.

CE: HL contient l’adresse.
C contient l’octet de sélection de la ROM ou de la RAM.
tous les regs sont passés a la routine, sauf IY.
CS: dépend de la routine.

 

#001E – SAUTE A L’ADRESSE CONTENUE DANS HL.

CE: HL contient l’adresse.
CS: dépend de la routine.

 

#0020 – RST #20. CHARGE DANS L’ACCUMULATEUR LE CONTENU DE LA RAM DONT L’ADRESSE SE TROUVE DANS HL, QUEL QUE SOIT L’ÉTAT DES ROMs.

CE: HL contient l’adresse.
CS: A contient la valeur lue.

 

#0023 – APPELLE UNE SOUS-ROUTINE EN RAM OU EN ROM, HL CONTIENT L’ADRESSE OU SE TROUVE L’ADRESSE DE LA SOUS-ROUTINE.

CE: HL contient l’adresse ou se trouve l’adresse de la sous-routine. Tous
les regs sont passés a la sous-routine, sauf IY.
CS: dépend de la sous-routine.

 

#0028 – RST #28. SAUTE A UNE ADRESSE EN ROM INFÉRIEURE. LES DEUX OCTETS QUI SUIVENT LE RST CONTIENNENT L’ADRESSE.

CE: tous les regs sont préservés.
CS: dépend de la sous-routine.

 

#0030 – RST #30. RÉSERVÉ A L’UTILISATEUR.

 

L’utilisateur peut faire ce qu’il veut avec les octets compris entre #0030 et #0037 inclus.

 

#0038 – RST #38. POINT D’ENTRÉE DES INTERRUPTIONS GÉNÉRÉES PAR LE MATÉRIEL.

CE: rien.
CS: tous les regs sont préservés.

 

#003B – ROUTINE DE TRAITEMENT DES INTERRUPTIONS EXTÉRIEURES.

CE: rien.
CS: AF, BC, DE, HL sont modifiés.