Page 1 sur 1

routine de gestion pad

Publié : ven. 14 janv. 2011 10:08
par touko
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 :D

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
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 ..

Re: routine de gestion pad

Publié : ven. 14 janv. 2011 21:36
par Orion_
y'a encore plus simple ..

Le joyena n'est à appeler qu'une seule fois, et au boot de toute façon le pad 1 est activé.
ensuite pas besoin d'appeler joysns normalement, car à chaque vbl les valeurs de joy et autre sont updaté
il suffit donc juste de lire la variable joy.
en ce moment je code en asm sans utiliser mkit mais uniquement le bios cd, et ça marche plutôt bien.

Re: routine de gestion pad

Publié : sam. 15 janv. 2011 10:00
par touko
Ah, faudra que j'essayes alors, merci du tuyau :wink: ..

C'est sur que si tu peux te passer des librairies par defaut et faire les tiennes c'est bien mieux ,encore que celles de mkit sont pas trop mal,surtout par rapport à HUC ..

Mais bon moi j'en suis même pas à faire du tout mkit ,alors le reste :lol: ..

Tu vois qu'on s'y fait aux registres 8 bits :mrgreen:

Re: routine de gestion pad

Publié : sam. 15 janv. 2011 13:15
par Orion_
le 8bit on s'y fait oui mais bon, c'est quand même bien casse couille souvent %)
j'utilise que les macro de mkit, surtout pour les operations sur word, parceque sinon c'est au secours !
pour le reste c'est beaucoup d'appels au routine du bios, qui est vraiment bien foutu.
et un peu de truc fait à la main (repris d'une lib 100% asm que j'avais commencé y'a quelques année)

Re: routine de gestion pad

Publié : sam. 15 janv. 2011 13:20
par touko
Ouai, c'est vrai que dans certains cas c'est vachement chiant faut avouer ..
C'est vrai que pas mal de macros mkit sont bien foutues .

Sinon pour la lecture du pad, faut absolument appeler la fonction du bios, sans ça la lecture ne se fait plus vu que je désactive read_joypad, qui lit le pad pour la version hucard et cdrom (via le bios) ..