Ci-dessous, les différences entre deux révisions de la page.
neo-geo:68k-interrupts [2023/08/03 22:20] – créée frater | neo-geo:68k-interrupts [2023/08/03 22:22] (Version actuelle) – frater | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
- | The cartridge systems use 3 ''' | + | The cartridge systems use 3 auto-vectored interrupt levels. The CD systems use 3 additional vectored interrupts. |
- | Interrupts must to be acknowledged for them to re-trigger in the future by writing to register | + | Interrupts must to be acknowledged for them to re-trigger in the future by writing to register REG_IRQACK. |
- | *bit 2: Acknowledge v-blank interrupt | + | |
- | *bit 1: Acknowledge [[timer interrupt]] | + | |
- | *bit 0: Acknowledge reset interrupt | + | * bit 1: Acknowledge [[timer interrupt]] |
+ | * bit 0: Acknowledge reset interrupt | ||
Multiple bits can be set: | Multiple bits can be set: | ||
- | <syntaxhighlight> | + | <code 68000> |
move # | move # | ||
- | </syntaxhighlight> | + | </code> |
+ | |||
+ | Bits 8~10 of the 68k's SR register can be used to mask them: | ||
- | Bits 8~10 of the [[68k]]' | + | <code 68000> |
- | <syntaxhighlight> | + | |
move # | move # | ||
move # | move # | ||
- | </syntaxhighlight> | + | </code> |
Note that the 68k's interrupt mask is different from the interrupt configuration bits in {{Reg|REG_LSPCMODE}}. | Note that the 68k's interrupt mask is different from the interrupt configuration bits in {{Reg|REG_LSPCMODE}}. | ||
- | =Vertical blank interrupt= | + | ===== Vertical blank interrupt |
The v-blank interrupt is almost always used. It occurs when the rendering of a frame is about to start (~60 times per second). See [[display timing]]. | The v-blank interrupt is almost always used. It occurs when the rendering of a frame is about to start (~60 times per second). See [[display timing]]. | ||
- | =[[Timer interrupt]]= | + | ===== Timer interrupt |
The timer interrupt' | The timer interrupt' | ||
Ligne 37: | Ligne 39: | ||
* ... | * ... | ||
- | =AES/MVS interrupt levels= | + | ===== AES/MVS interrupt levels ===== |
*Level 1: V-blank | *Level 1: V-blank | ||
Ligne 43: | Ligne 46: | ||
*Level 3: Pending after reset | *Level 3: Pending after reset | ||
- | =CD interrupt levels= | + | ===== CD interrupt levels ===== |
The V-blank and Timer levels ''' | The V-blank and Timer levels ''' | ||
Ligne 54: | Ligne 58: | ||
*Vector 23: Used but not understood | *Vector 23: Used but not understood | ||
- | [[Category: | ||
- | [[Category: | ||