routine de gestion pad
Publié : ven. 14 janv. 2011 10:08
Bonjour.
Devant l'horreur de la routine de HUC, j'ai fait une routine custom pour une compile CDROM ..
Pour s'en convaincre il suffit de jetter un coup d'oeil à la routine HUC dans le fichier include/pce/joypad.asm
Cette routine est à appeler via l'interruption vsync ..
J'utilise une variable globale HUC test_pad pour récupérer les valeur du pad, mais la fonction huc joy(x), fonctionne toujours, donc on peu supprimer la variable.
ATTENTION, dans cet exemple test_pad est de type byte, donc on ne lit que le pad 0 avec ..
Les autres pads sont lus via joyold .
Et joyena, indique le nombre de pads à prendre en compte, ici 1 ..
Bien sur il faut commenter l'ancien appel, soit la ligne jsr read_joypad dans le startup.asm si utilisation du gestionnaire d'interruption de huc ..
Devant l'horreur de la routine de HUC, j'ai fait une routine custom pour une compile CDROM ..
Pour s'en convaincre il suffit de jetter un coup d'oeil à la routine HUC dans le fichier include/pce/joypad.asm
Code : Tout sélectionner
; // Fonction perso de lecture du joypad 0
test_pad:
lda #01 ; // indique le nombre de pad à prendre en compte : ici 1
sta joyena
jsr ex_joysns ; // Appel de la routine de lecture des pad du system CD ..
lda joyold ; // Lecture de la touche pressée
sta _test_pad ; // Récupération dans une variable HUC pour traitement
rts
J'utilise une variable globale HUC test_pad pour récupérer les valeur du pad, mais la fonction huc joy(x), fonctionne toujours, donc on peu supprimer la variable.
ATTENTION, dans cet exemple test_pad est de type byte, donc on ne lit que le pad 0 avec ..
Les autres pads sont lus via joyold .
Et joyena, indique le nombre de pads à prendre en compte, ici 1 ..
Bien sur il faut commenter l'ancien appel, soit la ligne jsr read_joypad dans le startup.asm si utilisation du gestionnaire d'interruption de huc ..