44Fermer46
FarewellLe 23/07/2009 à 16:03
Lionel Debroux (./41) :
rester en mode superviseur le temps de l'exécution du handler, modifier sur la pile superviseur l'adresse de retour (sans oublier, si c'est nécessaire, par exemple pour les ROM_CALLs en F-Line, de pousser l'adresse de retour du ROM_CALL sur la pile utilisateur), et utiliser RTE;

Oui, sauf que là, tu pars du principe que ton romcall a été lancé en tant qu'utlisateur, alors qu'à la base, t'en sais rien (tant que tu vas pas lire le bit S du SR de la pile superviseur)
Lionel Debroux (./41) :
On peut aussi pousser sur la pile d0-d7/a0-a6 tout au début du handler, les modifier comme nécessaire sur la pile superviseur pour le retour, et les restaurer juste avant le RTE.

-> en gras : d'une certaine manière, oui
-> le reste : encore une fois, qu'est-ce qui te dis qu'on est en utilisateur à la base ? cheeky

Le truc marrant, ça serait qu'on code ça chacun de notre côté et qu'on compare. cheeky
(1. ok, je suppose que t'as pas trop le temps
2. yen bien que moi que ça doit faire marrer ce genre de trip casse-tête en asm trilove)