ThunderZ :
Le ARM pur est plus sympas et pour etre franc je n'ai jamais employer le thumb sur GP32.
Tout à fait d'accord, mais sur GBA les instructions THUMB sont utilisées plus souvent que sur gp vu que les cartouches sont lues en 16 bits, et donc il faudrait à chaque fois deux lectures pour executer une instruction ARM.
En fait le problème qui se posait, c'était juste que si je remplace les SWI par des BL, il faut que je fasse gaffe car SWI change tout seul le mode du processeur en ARM, alors que BL ne le fait pas, et on risque de lancer une fonction écrite en ARM en mode THUMB.
C'est pour ça que je disait que je devrais écrire toutes les fonctions en ARM et en THUMB.
Maintenant il est vrai que rien ne m'empêche de juste écrire dans le corps de la fonction THUMB un BX vers la fonction ARM équivalente.
De toute façon pour l'instant avec la petite modif de bios que j'ai fait, je peux me passer de tout ça, mais j'y reviendrai plus tard.
J'aurais encore une autre question à poser à propos des timers :
Il faut que je provoque un timer à toute les lignes du LCD afin de mettre à jour les registres vidéo de la GBA, malheureusement GpTimerOptSet n'a pas l'air d'apprécier qu'on mette trop de "ticks per second", du coup je mets à jour VCOUNT que toutes les 32 lignes, ce qui peut parfois poser des problèmes.
Est-ce qu'il y aurait moyen de dépasser cette limite ? Est-ce qu'il y aurait déjà quelqu'un qui ait fait une fonction pour configurer les timers ?
Au pire j'ai une source qui configure les timers sans utiliser le SDK (
http://www.deadcoderssociety.tk/ un programme qui émule du VSYNC). En lisant un peu la doc de samsung, je dois pouvoir configurer les timers "à la barbare"