I2C Registers: Difference between revisions
Document more interrupts from MCU_FIRM disassembly |
|||
| Line 337: | Line 337: | ||
| rw | | rw | ||
| Interrupt mask for register 0x10 (0=enabled,1=disabled) | | Interrupt mask for register 0x10 (0=enabled,1=disabled) | ||
bit00: Power button press | bit00: Power button press (for 27 "ticks") | ||
bit01: Power button held (the 3DS turns off regardless after a fixed time) | bit01: Power button held (for 375 "ticks"; the 3DS turns off regardless after a fixed time) | ||
bit02: HOME button press | bit02: HOME button press (for 5 "ticks") | ||
bit03: HOME button release | bit03: HOME button release | ||
bit04: WiFi switch button | bit04: WiFi switch button | ||
bit05: Shell close | bit05: Shell close | ||
bit06: Shell open | bit06: Shell open | ||
bit07: Fatal hardware condition([[Services#Notifications|?]]) | bit07: Fatal hardware condition([[Services#Notifications|?]]) (sent when the MCU gets reset by the Watchdog timer) | ||
bit08: Charger removed | bit08: Charger removed | ||
bit09: Charger plugged in | bit09: Charger plugged in | ||
bit10: | bit10: RTC alarm (when some conditions are met it's sent when the current day and month and year matches the current RTC time) | ||
bit11: ??? ( | bit11: ??? (accelerometer related) | ||
bit12: HID update | bit12: HID update | ||
bit13: Battery dead(?) | bit13: Battery dead(?) | ||
bit14: ?? | bit14: Battery stop charging(?) (independent of charger state) | ||
bit15: Battery start charging(?) | |||
Nonmaskable(?) interrupts | |||
bit16: ??? | |||
bit17: ??? (opposite even for bit16) | |||
bit22: Volume slider position change | bit22: Volume slider position change | ||
bit23: ??? Register 0x0E update | |||
bit25: ??? ( | bit24: ??? (the off event for below bit) | ||
bit25: ??? (triggered when something related to the GPU is turned on) | |||
bit26: ??? (???) | bit26: ??? (???) | ||
bit27: ??? (???) | bit27: ??? (???) | ||
bit28: ??? (???) | bit28: ??? (???) | ||
bit29: | bit29: Battery percentage status change (triggered at 10%, 5%, and 0% while discharging) | ||
bit30: bit set by mcu sysmodule | bit30: bit set by mcu sysmodule | ||
bit31: bit set by mcu sysmodule | bit31: bit set by mcu sysmodule | ||
| Line 485: | Line 488: | ||
|- | |- | ||
| 0x38 | | 0x38 | ||
- | - 0x3C | ||
| s | | s | ||
| rw | | rw | ||
| RTC alarm registers | | RTC alarm registers | ||
byte 0: minutes | byte 0: minutes(???) | ||
byte 1: hours | byte 1: hours(???) | ||
byte 2: | byte 2: day | ||
byte 3: month | |||
byte 4: year | |||
|- | |- | ||
| 0x3B | | 0x3B | ||
| Line 497: | Line 502: | ||
| rw | | rw | ||
| Could be used on very old MCU_FIRM versions to upload [[MCU_Services#MCU_firmware_versions|MCU firmware]] if some conditions are met. | | Could be used on very old MCU_FIRM versions to upload [[MCU_Services#MCU_firmware_versions|MCU firmware]] if some conditions are met. | ||
|- | |- | ||
| 0x3D | | 0x3D | ||