FIRM: Difference between revisions
WulfyStylez (talk | contribs) |
|||
| Line 154: | Line 154: | ||
The following is all of the differences for Old3DS/New3DS Process9 with [[9.3.0-21|9.3.0-X]]: | The following is all of the differences for Old3DS/New3DS Process9 with [[9.3.0-21|9.3.0-X]]: | ||
* The FIRM-launch code called at the end of the New3DS proc9 main() has different mem-range checks. | * The FIRM-launch code called at the end of the New3DS proc9 main() has different mem-range checks. | ||
* In the New3DS proc9, the v6.0/v7.0 keyinit function at the very beginning(before the original code) had additional code added for setting [[Flash_Filesystem|CTRNAND]] [[AES_Registers|keyslot]] 0x5, with keydata from . | * In the New3DS proc9, the v6.0/v7.0 keyinit function at the very beginning(before the original code) had additional code added for setting [[Flash_Filesystem|CTRNAND]] [[AES_Registers|keyslot]] 0x5, with keydata from .data. After setting the keyY, the keyY in .data is cleared. | ||
* In New3DS proc9, the functions for getting the gamecard crypto keyslots / NCCH keyslot can return New3DS keyslots when New3DS flags(NCSD/NCCH) are set. | * In New3DS proc9, the functions for getting the gamecard crypto keyslots / NCCH keyslot can return New3DS keyslots when New3DS flags(NCSD/NCCH) are set. | ||
* The code/data for the binary near the end of arm9mem is slightly different, because of memory-region sizes. | * The code/data for the binary near the end of arm9mem is slightly different, because of memory-region sizes. | ||
* The only difference in . | * The only difference in .data(besides the above code binary) is that the New3DS proc9 has an additional 0x10-byte block for the keyslot 0x5 keyY, see above. | ||
== NATIVE_FIRM and SAFE_MODE_FIRM == | == NATIVE_FIRM and SAFE_MODE_FIRM == | ||