TIMER Registers: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
kinda important!
No edit summary
Line 13: Line 13:
| 0x10003000 + 4*n
| 0x10003000 + 4*n
| 2
| 2
|
| Boot9, Kernel9
|-
|-
| style="background: green" | Yes
| style="background: green" | Yes
Line 19: Line 19:
| 0x10003002 + 4*n
| 0x10003002 + 4*n
| 2
| 2
|
| Boot9, Kernel9
|}
|}


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


== TIMER_CNT ==
== TIMER_CNT ==
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|+ REG_TMxCNT
Bit
BIT
Description
DESCRIPTION
|-
|-
| 0-1
| 1-0
| Prescaler select (0=F/1, 1=F/64, 2=F/256, 3=F/1024)
| Prescaler select (0=F/1, 1=F/64, 2=F/256, 3=F/1024)
|-
|-
Line 37: Line 36:
| Count-up (0=Disabled, 1=Enabled)
| Count-up (0=Disabled, 1=Enabled)
|-
|-
| 3-5
| 5-3
| Not used
| Not used
|-
|-

Revision as of 02:48, 6 January 2017

There are 4 timers. These timers run at a frequency of ~67027.964kHz.

Registers

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

TIMER_VAL

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

TIMER_CNT

Bit Description
1-0 Prescaler select (0=F/1, 1=F/64, 2=F/256, 3=F/1024)
2 Count-up (0=Disabled, 1=Enabled)
5-3 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.