Changes

755 bytes added ,  05:41, 15 August 2022
added an interrupt section
Line 114: Line 114:  
}
 
}
 
</pre>
 
</pre>
 +
 +
== Interrupts ==
 +
The interrupt handler called by the [[ARM9 BIOS]] calls a handler in a table mapping the raw IRQ IDs to handlers. Each handler is either a no-op (not listed in the table below) or a stub that calls <code>__OSDispatchInterrupt</code> with an OS interrupt ID. <code>__OSDispatchInterrupt</code> then calls the handler registered with <code>__OSSetInterruptHandler</code>.
 +
 +
{| class="wikitable sortable"
 +
! Hardware ID
 +
! Translated ID
 +
! Name
 +
|-
 +
| 3
 +
| 8
 +
| Timer 0 overflow
 +
|-
 +
| 4
 +
| 9
 +
| Timer 1 overflow
 +
|-
 +
| 5
 +
| 10
 +
| Timer 2 overflow
 +
|-
 +
| 6
 +
| 11
 +
| Timer 3 overflow
 +
|-
 +
| 8
 +
| 0
 +
| DMA 0
 +
|-
 +
| 9
 +
| 1
 +
| DMA 1
 +
|-
 +
| 10
 +
| 2
 +
| DMA 2
 +
|-
 +
| 11
 +
| 3
 +
| DMA 3
 +
|-
 +
| 28
 +
| 4
 +
| New DMA 0
 +
|-
 +
| 29
 +
| 5
 +
| New DMA 1
 +
|-
 +
| 30
 +
| 6
 +
| New DMA 2
 +
|-
 +
| 31
 +
| 7
 +
| New DMA 3
 +
|}
322

edits