Site Tools


documentation:hardware:opera:clio

Timers

There are 16 16bit hardware timers. Odd numbered timers can trigger software interrupts found in 0x0340_0040. Timers can be chained together with the 'cascade' bit creating larger timers. They can also auto reset using the 'reload' flag and reload register associated with each timer.

The hardware timers are not well documented and the public timer API appears quite a bit more high level. The VDLP patent however does include some OS code which references timers a bit: WO09512876A1

Memory Mapping

AddressDescriptionNotes
0x0340_0040bits 3 through 10 represent software interrupts for odd numbered timers 0xF through 0x1 respectively.
0x0340_0100 - 0x0340_017F16 word aligned 16bit timers. Each timer is made up of of 2 words. The first word is the timer count. The second word is the “reload” value.Function 0x030043a8 in FZ-10 ROM sets timer 0xE count and reload set to 0x3D (61) by BIOS.
0x0340_0200Used to set timer configuration bits for timer 0x0 - 0x7. Each nibble representing 1 timer. The lowest nibble being for timer 0x0. Highest nibble for 0x7.
0x0340_0204Used to clear the configuration bits for timer 0x0 - 0x7. Layout same as above.
0x0340_0208Used to set timer configuration bits for timer 0x8 - 0xF. Each nibble representing 1 timer. The lowest nibble being for timer 0x8. Highest nibble for 0xF.Function 0x030043a8 in FZ-10 ROM writes 0x73000000 (enabling timer 0xE and 0xF).
0x0340_020CUsed to clear the configuration bits for timer 0x8 - 0xF. Layout same as above.
0x0340_0220Unsure. Possibly used to set the tick rate for the timers.Function 0x030043a8 in FZ-10 ROM sets to 0x150 (336) by BIOS.

Configuration

  • bit 0: decrement / enable
  • bit 1: reload - When timer counter reaches zero reload count with “reload” value. If not set then set counter to 0xFFFF and clear decrement / enable bit.
  • bit 2: cascade - decremented when the previous timer underflows
  • bit 3: flabcode - ?? unknown

Notes


documentation/hardware/opera/clio.txt · Last modified: 2022/01/16 18:55 by trapexit