68k interrupts: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
m (5 revisions: Import from wikkii) |
(No difference)
|
Revision as of 15:27, 26 June 2011
There are 3 interrupt levels on the AES and MVS. Only 2 on the CD hardware.
Interrupts need to be acknowledged by writing to register $3C000C (REG_IRQACK).
- bit2: Ack VBlank
- bit1: Ack RLI
- bit0: Ack level 3
move #$0007,REG_IRQACK ; Acknowledges all interrupts
Bits 8~10 of the SR register are used to mask them. $2000 enables them all, $2700 disables them.
Vertical Blank Interrupt
VBlank interrupt is almost always used. It occurs everytime a new frame is traced (~60Hz).
Raster Line Interrupt
The RLI interrupt's behavior can be programmed through memory mapped registers. It's made to occur at (the start/end ? of) specific horizontal lines of the video output. See the Sammy logo at the start of Viewpoint for an example of its use. Sengoku 3 and Neo Turf Masters are also known to rely on them to do scanline effects.
AES/MVS interrupts
- VBlank: 0
- RLI: 1
- Pending at startup ?: 2
CD interrupts
- VBlank: 1
- RLI: 0