TIMER Registers

From 3dbrew
Jump to navigation Jump to search

There are 3 timers.

Registers

Old3DS Name Address Width Used by
Yes TIMER_VAL(n) 0x10003000 + 4*n 2
Yes TIMER_CNT(n) 0x10003002 + 4*n 2

Timer value

Writing to REG_TMxVAL loads a starting value for one of the 4 timers, while reading it will show the current timer value.

Timer control

REG_TMxCNT
BIT DESCRIPTION
0-1 Prescaler select (0=F/1, 1=F/64, 2=F/256, 3=F/1024)
2 Count-up (0=Disabled, 1=Enabled)
3-5 Not used
6 IRQ enable (0=Disabled, 1=IRQ on timer value overflow)
7 Start/Stop (0=Stop, 1=Start)

Count-up

When count-up is enabled, the timer value will increase every time the previous timer overflows.