ARM9 OS: Difference between revisions

Hallowizer (talk | contribs)
Threads: remove some extra unknown fields that are part of structs
Hallowizer (talk | contribs)
Time: made a mistake in my labels which led to incorrect info about timers 2 and 3
Line 94: Line 94:


== Time ==
== Time ==
Time is kept with timers 2 and 3, while alarm interrupts are handled by timer 1; timer 0 is presumably reserved for the DMA sound channels. The OS orders the alarms by alert time, so that it only needs to keep track of the frontmost alarm.
Timer 0 is used to keep track of global time by manually incrementing a global, while timer 1 is used to generate an interrupt for alarms. The OS orders the alarms by alert time, so that it only needs to keep track of the frontmost alarm.


<pre>
<pre>