4/2 - Assembleur Z80 : Définitions et rappels de base4/2.7 - Les banques ROM ou FIRMWARE FONCTIONS CLAVIER KM INITIALISE #BB00 - Initialisation complète du clavier. - Entrée : Aucune.
- Sortie : AF, BC, DE et HL écrasés. Les autres registres sont intacts.
En relation : KM RESET KM RESET #BB03 - Initialisation du clavier : Indirections et buffers. - Entrée : Aucune.
- Sortie : AF, BC, DE, HL écrasés. Les autres registres sont intacts.
En relation : KM DISARM , KM EXP BUFFER , KM INITIALISE KM WAIT CHAR #BB06 - Attend un caractère issu du clavier ou de l'extension courante. Cette routine attend jusqu'à ce qu'un caractère soit disponible, s'il ne l'est pas immédiatement. - Entrée : Aucune.
- Sortie : Carry à 1, les autres indicateurs sont écrasés.
- A contient le caractère. Les autres registres sont intacts.
En relation : KM CHAR RETURN KM READ CHAR KM WAIT KEY KM READ CHAR #BB09 - Essaie d'obtenir un caractère du buffer clavier ou de l'extension courante. Cette routine n'attend pas que le caractère soit disponible s'il n'y en a aucun de disponible immédiatement. - Entrée : Aucune.
- Sortie :
- Si un caractère était disponible : Carry à 1. A contient le caractère.
- Si aucun caractère n'était disponible : Carry à 0. A écrasé.
- Les autres flags sont écrasés. Les autres registres sont intacts.
En relation : KM CHAR RETURN KM READ KEY KM WAIT CHAR KM CHAR RETURN #BB0C - Sauve un caractère pour un futur appel à KM READ CHAR ou KM WAIT CHAR. - Entrée : A contient le caractère à mettre dans le buffer.
- Sortie : Tous les registres et les flags sont préservés.
En relation : KM READ CHAR KM WAIT CHAR KM SET EXPAND # BB0F - Valide une chaîne d'expansion associée à une clé d'expansion. - Entrée : B contient la clé d'expansion pour l'expansion à valider. C contient la longueur de la chaîne HL contient l'adresse de la chaîne.
- Sortie : Si l'expansion peut être réalisée : Carry = 1. Si la chaîne est trop longue ou le token invalide : Carry = 0. Dans tous les cas : A, BC, DE et HL détruits.
- Les autres registres sont intacts.
En relation : KM GET EXPAND KM READ CHAR KM WAIT CHAR KM GET EXPAND #BB12 - Lit un caractère d'une chaîne d'expansion. Les caractères de la chaîne sont numérotés à partir de 0. - Entrée : A contient le code d'expansion. L contient le numéro du caractère à lire.
- Sortie : Si le caractère a été trouvé : Carry = 1. A contient le caractère. Si la clé est invalidée ou si la chaîne n'est pas assez longue : Carry = 0. A est écrasé.
- Dans tous les cas : DE et les autres flags sont écrasés. Tous les autres registres sont intacts.
En relation : KM READ CHAR KM SET EXPAND KM EXP BUFFER #BB15 - Déclaration d'un buffer d'expansion (adresse et longueur) - Entrée : DE contient l'adresse du buffer HL contient la longueur du buffer.
- Sortie : Si tout s'est bien passé, Carry = 1 Si le buffer est trop petit, Carry = 0.
- Dans tous les cas, A, BC, DE, HL et les autres flags sont écrasés. Les autres registres sont préservés.
En relation : KM GET EXPAND KM SET EXPAND KM WAIT KEY #BB18 - Attend l'appui sur une touche du clavier. - Entrée : Aucune.
- Sortie: Carry=1. A contient le caractère ou la clé d'expansion. Les autres flags sont écrasés.
- Les autres registres sont préservés.
En relation : KM READ KEY KM WAIT CHAR KM READ KEY #BB1B - Essaye de lire immédiatement une touche dans le buffer clavier. - Entrée : Aucune.
- Sortie :
- Si le buffer n'est pas vide, Carry = 1. A contient le caractère ou le code d'expansion.
- Si le buffer est vide, Carry = 0. A écrasé.
- Dans tous les cas : Les autres flags sont écrasés. Les autres registres sont intacts.
En relation : KM READ CHAR KM WAIT KEY CPCrulez[Content Management System] v8.7-desktop/c Page créée en 459 millisecondes et consultée 838 foisL'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko. |
|