suivant: Pourquoi et quand les
monter: Introduction
précédent: Introduction
Lors de certains évenements, un bit interne du Saturn2 est mis à un et une interruption est
générée. Le Saturn sauve l'adresse en cours (dans un étage
de RSTK) et saute sur la routine de gestion des interruptions en
#0000Fh (on ne peut pas changer l'adresse). Quand le Saturn est
dans la routine d'interruption3, il ne peu pas y avoir une autre interruption. On peut
sortir de ce mode par l'instruction RTI4.
Ces évenements provoquants des interruptions sont les suivants (si
je n'en ai pas oublié...). Certains sont masquables5 :
- Appui sur une touche,
- Batteries faibles.
D'autres ne le sont pas :
- Mise à 0 d'une des deux horloges,
- Insertion ou retrait d'une carte (pour les 48gx),
- Réception d'un caractère par le port RS232 ou le port IR,
- Pression sur ON,
- Batteries très faibles.
Il existe enfin une dernière façon de provoquer une interruption. On
peut en effet en produire une de façon soft en allant écrire un 1
dans le bit 0 (SWINT6) de
CARDCTL7 en #0010E. Ceci peut permettre de
gèrer d'autres évenements à l'aide des interruptions.
suivant: Pourquoi et quand les
monter: Introduction
précédent: Introduction
Yves Brissaud
2001-11-09