Once the cause of the interrupt (or other exception) has been determined, it is mapped to one of 17 events defined for the Nintendo 64 system. Table 7-2 shows the events, why they occur, and the origin of the event.
Event Name | Event Cause | Origin |
---|---|---|
SW1 | System software interrupt 1 asserted | |
SW2 | System software interrupt 2 asserted | |
CART | Peripheral has generated an interrupt | OS |
COUNTER | Internal counter reached terminal count | VI/Timer manager |
SP | RCP SP interrupt; Task Done/Task Yield | Game |
SI | RCP SI interrupt; controller input available | Game |
AI | RCP AI interrupt; audio buffer swap | Game |
VI | RCP VI interrupt; vertical retrace | VI/Timer manager |
PI | RCP PI interrupt; ROM to RAM DMA done | PI manager |
DP | RCP DP interrupt; RDP processing done | Game |
PreNMI | NMI requested, will occur in 0.5 seconds | Game |
CPU_BREAK | CPU (R4300) has hit a breakpoint | Rmon |
SP_BREAK | RCP SP interrupt; RCP has hit a breakpoint | Rmon |
FAULT | N64 CPU has faulted | Rmon |
THREAD_STATUS | Thread created or destroyed | Rmon |
PROF_REQ | gperf() requests profiling data | Rmon |
PROF_ACK | gperf() notified receipt of profiling data | Rmon |