Line 39: |
Line 39: |
| This is the same value returned by [[MCUHWC:GetSoundVolume|MCUHWC:GetSoundVolume]] | | This is the same value returned by [[MCUHWC:GetSoundVolume|MCUHWC:GetSoundVolume]] |
| |- | | |- |
| + | | 0x0B |
| + | | size=1, ro |
| + | | Battery percentage |
| + | |- |
| + | | 0x0D |
| + | | size=1, ro |
| + | | System voltage |
| + | |- |
| | 0x0F | | | 0x0F |
− | | size=1, ?? | + | | size=1, ro |
− | | ??? | + | | Flags (it changes when plugging/unplugging charger) |
| |- | | |- |
| | 0x20 | | | 0x20 |
Line 60: |
Line 68: |
| |- | | |- |
| | 0x29 | | | 0x29 |
− | 0x2D
| + | | size=dynamic(?), rw |
− | | size=n/a, ?? | + | | Repeat register, any byte written here gets repeated indefinitely(?) |
− | | ??? | + | |- |
| + | | 0x2A |
| + | | size=1, rw |
| + | | Wifi LED state, non-0 value turns on the Wifi LED, AND'd with 0x0F |
| + | |- |
| + | | 0x2B |
| + | | size=1, rw |
| + | | Camera LED state, 0, 3, 6-0xF = off, 1 = slowly blinking, 2 = constantly on, 4 = flash once, 5 = delay before changing to 2 |
| |- | | |- |
| | 0x2C | | | 0x2C |
| | size=1, rw | | | size=1, rw |
| | 3D LED state, always AND'd with 0x0F | | | 3D LED state, always AND'd with 0x0F |
| + | |- |
| + | | 0x2D |
| + | | size=??, ro(?) |
| + | | ??? |
| |- | | |- |
| | 0x30 | | | 0x30 |
Line 75: |
Line 94: |
| (bugs out reg. 0x3E) | | (bugs out reg. 0x3E) |
| | size=2, ro | | | size=2, ro |
− | | Value rapidly changes, looks like RTC tick counter (resets to 0 when the seconds increase) | + | | RTC tick counter (resets to 0 when the seconds increase) |
| + | |- |
| + | | 0x3F |
| + | | size=1, rw |
| + | | Peripheral power related? bit0 seems to depower everything, and pressing the power key instantly turns the 3DS off |
| |- | | |- |
| | 0x46 | | | 0x46 |
Line 94: |
Line 117: |
| |- | | |- |
| | 0x60 | | | 0x60 |
− | (bugs out reg. 0x61) | + | | size=0x100, ro (first byte is wo) |
− | | size=0x100(?), ?? | + | | Looping queue register |
− | | ???, looping queue | + | Writing to first byte resets the queue position to the nth element |
| + | Reading from this register causes the values to shift up by one byte, and returns read-1 bytes from the bottom of the stack |
| + | |- |
| + | | 0x61 |
| + | | size=dynamic(?), rw |
| + | | Writing to this register pushes values on top of reg. 0x60's stack (most likely in byte order(?)) |
| |- | | |- |
| | 0x7F | | | 0x7F |
− | | size=35(?), ?? | + | | size=19(?), ro(?) |
− | | ??? (reading past the 35th byte is FF-filled) | + | | ??? |
| + | byte 06: battery related? (seems to decrase while charging and increase while discharging) |
| + | |
| + | byte 10: power LED related? 0 is off, 1 is red |
| + | |
| + | byte 13: RGB LED red factor |
| + | |
| + | byte 17: Wifi LED brightness |
| + | |
| + | byte 18: bit0: unset while power button is held, bit1: unset while home button is held, bit2: unset while Wifi slider is held, bit4: unset when charger is plugged in, bit6: unset when charging LED is active |
| |} | | |} |