IO Registers: Difference between revisions
No edit summary |
|||
| Line 443: | Line 443: | ||
=0x10012000= | =0x10012000= | ||
Keys seem to be stored here? Access to this region is disabled once the ARM9 writes 0x2 to [[CONFIG|REG_SYSPROT9]] | Keys seem to be stored here? Access to this region is disabled once the ARM9 writes 0x2 to [[CONFIG|REG_SYSPROT9]]. | ||
Originally the | Originally the console-unique TWL keyinit + region disable was done by Kernel9. However, with the [[New_3DS]] FIRM ARM9 binary this is now done in the [[FIRM]] ARM9 binary loader, which also uses the 0x10012000 region for key generation. | ||
{| class="wikitable" border="1" | |||
! Offset | |||
! Size | |||
! Description | |||
|- | |||
| 0x0 | |||
| 0x8 | |||
| On development units ([[CONFIG|UNITINFO]]!=0) ARM9 uses the first 8-bytes from 0x10012000 for the TWL keydata. This doesn't seem to be used by NATIVE_FIRM on retail, besides New3DS key-generation in the [[FIRM|ARM9-loader]]. | |||
|- | |||
| 0x8 | |||
| 0xF8 | |||
| ? | |||
|- | |||
| 0x100 | |||
| 0x8 | |||
| Before writing REG_SYSPROT9 bit1, the ARM9 copies the 8-byte TWL-keydata to here. | |||
|} | |||