Annexe Hardware Clavier
Lire une ligne de clavier
; on assume qu'au moment où on rentre dans cette routine, le port A est en sortie ; comme c'est ce qu'on configure à la fin de cette routine, c'est ce qui se passe ; dès le deuxième appel à cette routine, si ce n'était pas le cas ld a,#49 ; ligne 9 de la matrice, c'est le joystick! ld bc,#F40E out (c),c ; sélectionner le registre 14 sur le port A ld bc,#F6C0 out (c),c ; la valeur qu'on va envoyer est un registre out (c),0 ; validation obligatoire sur Plus sinon bug! ld bc,#F792 out (c),c ; mettre le port A en lecture dec b ; B=#F6 out (c),a ; envoyer la ligne clavier (nous c'est #49) ld b,#F4 ; adresse de lecture du port A in a,(c) ; lecture de la ligne! ld bc,#F782 ; PPI configuré port A en sortie out (c),c dec b out (c),0 retLire toutes les lignes du clavier ne prendra qu'environ 200 nops
lectureMatriceClavier di ; Vous n'avez pas besoin de couper les interruptions ; si il n'y a pas de routine sonore sous interruption ld hl,matriceClavier ld bc,#f782 out (c),c ld bc,#f40e ld e,b out (c),c ld bc,#f6c0 ld d,b out (c),c out (c),0 ld bc,#f792 out (c),c ld a,#40 ld c,d .loop ld b,d out (c),a ; sélectionner la ligne ld b,e ini ; lire et stocker dans notre tableau inc a inc c jr nz,.loop ld bc,#f782 out (c),c ei ; pas besoin d'activer les interruptions si on ne les a pas coupées retmatriceClavier defs 10,#FF Schéma d'interface du PPI dans le CPC avec ses différents portSi vous souhaitez encore plus de détails sur le PPI, [cliquez ici] pour consultez l'article technique de Quasar CPC dont ce schéma est gracieusement extrait. 
Matrice du clavier AZERTY Français de France
Bit: Ligne | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | #40 | F Dot | Entrée | F3 | F6 | F9 | Curseur Bas | Curseur Droite | Curseur Haut | | #41 | F0 | F2 | F1 | F5 | F8 | F7 | Copie | Curseur Gauche | | #42 | Contrôle | $ @\ | Shift | F4 | # > | Retourne | * < | CLR | | #43 | : / | = + | M | ù % | P | ^ ¦ | ) [ | - _ | | #44 | ; . | , ? | K | L | I | O | ç 9 | à 0 | | #45 | Espace | N | J | H | Y | U | è 7 | ! 8 | | #46 | V | B (Joy2 fire3) | F (Joy2 fire2) | G (Joy2 fire1) | T (Joy2 right) | R (Joy2 left) | ( 5 (Joy2 down) | ] 6 (Joy2 up) | | #47 | X | C | D | S | Z | E | " 3 | ' 4 | | #48 | W | CAPS-LOCK | Q | TAB | A | Échappe | é 2 | & 1 | | #49 | DEL | Joy1 fire3 | Joy1 fire2 | Joy1 fire1 | Joy1 right | Joy1 left | Joy1 down | Joy1 up |
Matrice du clavier QWERTY britannique
Bit: Ligne | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | #40 | F. | ENTER | F3 | F6 | F9 | Curseur Bas | Curseur Droite | Curseur Haut | | #41 | F0 | F2 | F1 | F5 | F8 | F7 | COPY | Curseur Gauche | | #42 | Contrôle | \ ` | SHIFT | F4 | ] } | RETURN | [ { | CLR | | #43 | . > | / ? | : * | ; + | P | @ ¦ | - = | ^ £ | | #44 | , < | M | K | L | I | O | 9 ) | 0 _ | | #45 | Espace | N | J | H | Y | U | 7 ' | 8 ( | | #46 | V | B (Joy2 fire3) | F (Joy2 fire2) | G (Joy2 fire1) | T (Joy2 right) | R (Joy2 left) | 5 % (Joy2 down) | 6 & (Joy2 up) | | #47 | X | C | D | S | W | E | 3 # | 4 $ | | #48 | Z | CAPSLOCK | A | TAB | Q | ESC | 2 " | 1 ! | | #49 | DEL | Joy1 fire3 | Joy1 fire2 | Joy1 fire1 | Joy1 right | Joy1 left | Joy1 down | Joy1 up |
Matrice du clavier Danois
Bit: Ligne | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | #40 | F Dot | ENTER | F3 | F6 | F9 | Curseur Bas | Curseur Droite | Curseur Haut | | #41 | F0 | F2 | F1 | F5 | F8 | F7 | COPY | Curseur Gauche | | #42 | Contrôle | ; + | SHIFT | F4 | : * | RETURN | @ \ | CLR | | #43 | . > | / ? | Æ | Ø | P | Å | - = | ^ £ | | #44 | , < | M | K | L | I | O | 9 ) | 0 _ | | #45 | Espace | N | J | H | Y | U | 7 ' | 8 ( | | #46 | V | B (Joy2 fire3) | F (Joy2 fire2) | G (Joy2 fire1) | T (Joy2 right) | R (Joy2 left) | 5 % (Joy2 down) | 6 & (Joy2 up) | | #47 | X | C | D | S | W | E | 3 # | 4 $ | | #48 | Z | CAPSLOCK | A | TAB | Q | ESC | 2 " | 1 ! | | #49 | DEL | Joy1 fire3 | Joy1 fire2 | Joy1 fire1 | Joy1 right | Joy1 left | Joy1 down | Joy1 up |
Matrice du clavier Espagnol
Bit: Ligne | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | #40 | F Dot | INTRO | F3 | F6 | F9 | Curseur Bas | Curseur Droite | Curseur Haut | | #41 | F0 | F2 | F1 | F5 | F8 | F7 | COPIA | Curseur Gauche | | #42 | Contrôle | \ ` | MAYS | F4 | ] + | RETURN | [ * | CLR | | #43 | . > | / ? | Ñ | ; : | P | @ ¦ | - = | ^ ₧ | | #44 | , < | M | K | L | I | O | 9 ) | 0 _ | | #45 | Espace | N | J | H | Y | U | 7 ' | 8 ( | | #46 | V | B (Joy2 fire3) | F (Joy2 fire2) | G (Joy2 fire1) | T (Joy2 right) | R (Joy2 left) | 5 % (Joy2 down) | 6 & (Joy2 up) | | #47 | X | C | D | S | W | E | 3 # | 4 $ | | #48 | Z | FIJA MAYS | A | TAB | Q | ESC | 2 " | 1 ! | | #49 | BORR | Joy1 fire3 | Joy1 fire2 | Joy1 fire1 | Joy1 right | Joy1 left | Joy1 down | Joy1 up |
Roudoudou CPCrulez[Content Management System] v8.74-desktop/c Page créée en 123 millisecondes et consultée 248 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. |
|
|