Liste complète des vecteurs du gestionnaire Clavier. Les vecteurs sont décris par l'adresse d'appel, l'action, les conditions d'entrée et celles de sortie. Rappelons que ces vecteurs sont appelés par CALL aussi bien en Basic qu'en Assembleur.

Cependant, les routines qui nécessitent des conditions d'entrées (initialisation de registres) ne seront pas appelables directement en BASIC, à moins d'utiliser les paramètres du CALL.



ADRESSE DEFINITION CONDITIONS D'ENTREE CONDITIONS DE SORTIE
BB00 Initialisation du gestionnaire clavier   AF,BC,DE,HL sont modifiés
BB03 Reset du gestionnaire clavier   AF,BC,DE,HL sont modifiés
BB06 Le gestionnaire clavier attend un caractère tapé au clavier   Si C est vrai,A=caractère tapé
BB09 Teste si un caractère est disponible depuis le clavier  
  • Si un caractère est disponible alors Carry est vrai
  • sinon Carry est faux et A est modifié
  • BB0C Réserve un caractère pour le prochain appel de la routine précédente A contient le caractère à sauver  
    BB0F Positionne une chaîne de caractères associée à un code B contient le code qui doit être associé à une chaîne de caractères
    C contient la longueur de la chaîne
    HL contient son adresse
  • Si positionné alors C est vrai.
  • Si la chaîne est trop longue ou le code invalide alors C est faux A,BC,DE et HL sont modifiés
  • BB12 Lit un caractère depuis une chaîne de caractères expansée.Les caractères contenus dans la chaîne de caractères sont numérotés en partant de 0 A contient le code d'expansion
    L contient le numéro du caractère
  • Si le caractère est trouvé, A contient le caractère et C est vrai
  • Si le code est mauvais ou si la chaîne de caractères n'est pas assez longue alors C est faux et A est modifié
  • DE est modifié
    BB15 Allocation d'un tampon pour une chaîne de caractères expansée DE contient l'adresse du tampon et HL sa longueur Si tout est correct alors C est vrai sinon il est faux
    A,BC,DE et HL sont modifiés
    BB18 Attente d'un caractère en provenance du clavier   C est vrai et A=caractère tapé
    BB1B Teste si une touche en provenance du clavier est disponible  
  • Si une touche est disponible alors C est vrai et A contient le caractère
  • Sinon C est faux
  • BB1E Teste si une touche est pressée ou la manette de jeux actionnée A contient le numéro de la touche qui doit être testée
  • Si la touche n'est pas pressée alors C est vrai
  • Si la touche est pressée alors C est faux et A et HL sont modifiés
  • C contient l'état des touches SHIFT et CONTROLE
    BB21 Vérifie si la touche de verrouillage des majuscules est enfoncée (CAPS LOCK)   L contient l'état de la touche SHIFT et A contient l'état de la touche de verrouillage des majuscules.
  • A=00 si elle n'est pas enfoncée
  • A=FF si elle est enfoncée
  • AF est modifié
    BB24 Lecture de l'état de la manette de jeux   H contient l'état de la manette de jeux n°0
    L contient l'état de la manette de jeux n°1
    A contient l'état de la manette de jeux n°0
    BB27 Positionne le code qui sera fourni lors de la pression d'une touche sans CTRL ni SHIFT A contient le numéro de la touche
    B contient le code ASCII que cette touche fournira
    AF et HL sont modifiés
    BB2A Fournit le code correspondant au numéro de touche pressée A contient le numéro de la touche A contient le code ASCII correspondant à la touche
    HL et F sont modifiés
    BB2D Positionne le code qui sera fourni lors de la pression d'une touche conjointement à la pression de la touche SHIFT A contient le numéro de la touche
    B contient le code ASCII que cette touche fournira
    AL et HL sont modifiés
    BB30 Fournit le code correspondant à une touche pressée conjointement à la touche SHIFT A contient le numéro de la touche A contient le code ASCII correspondant à la touche
    HL est modifié
    BB33 Positionne le code que fournira une touche enfoncée conjointement à la touche CTRL A contient le numéro de la touche A contient le code ASCII correspondant à la touche
    HL est modifié
    BB36 Fournit le code ASCII correspondant à la touche pressée conjointement à la touche CTRL A contient le numéro de la touche A contient le code ASCII correspondant à la touche
    HL est modifié
    BB39 Positionne l'entrée dans la table des touches qui doivent se répéter A contient le numéro de la touche
    Si la touche peut être répétée,B=FF sinon B=00
    AF,BC et HL sont modifiés
    BB3C Teste si une touche dont le numéro est fourni peut ou non être répétée A contient le numéro de la touche
  • Si la touche peut être répétée,O est faux
  • Si elle ne peut pas être répétée,O est vrai
  • Dans tous les cas C est faux
    AF et HL sont modifiés
    BB3F Positionne le temps de délai avant la première répétition ainsi que le temps prévu entre deux répétitions H contient le délai avant la première répétition
    L contient la vitesse de répétition
    Temps exprimés en cinquantième de seconde
    AF est modifié
    BB42 Lecture de la vitesse de répétition et du temps prévu avant la première répétition   H contient le délai avant la première répétition(en 1/50 ème de seconde)
    L contient la vitesse de répétition
    AF est modifié
    BB45 Positionne le mécanisme du BREAK DE contient l'adresse de la routine de traitement du BREAK
    C contient l'adresse de ROM sélectionnée pour cette routine
    AF,BC,DE et HL sont modifiés
    BB48 Désarmement du mécanisme du BREAK   AF et HL sont modifiés
    BB4B Génère une interruption de BREAK si le BREAK a été armé au moyen de la routine BB45.   AF et HL sont modifiés