Changes

Jump to navigation Jump to search
1 byte added ,  16:15, 3 September 2021
m
fix typos
Line 12: Line 12:  
!  FW Introduced
 
!  FW Introduced
 
!  Old3DS
 
!  Old3DS
!  [[AES#Keyslot|AES Keyslots]] (Encryotion / CMAC)
+
!  [[AES#Keyslot|AES Keyslots]] (Encryption / CMAC)
 
!  KeyY generation method
 
!  KeyY generation method
 
!  Repeating CTR
 
!  Repeating CTR
Line 55: Line 55:       −
=== KeyY Generation methid ===
+
=== KeyY Generation method ===
    
The [[NCSD]] partition flags determine the method used to generate this keyY.
 
The [[NCSD]] partition flags determine the method used to generate this keyY.
Line 141: Line 141:  
The 3DS employs a wear leveling scheme on the savegame FLASH chips(only used for CARD1 gamecards). This is done through the usage of blockmaps and a journal. The blockmap is located at offset 0 of the flash chip, and is immediately followed by the journal. The initial state is dictated by the blockmap, and the journal is then applied to that.
 
The 3DS employs a wear leveling scheme on the savegame FLASH chips(only used for CARD1 gamecards). This is done through the usage of blockmaps and a journal. The blockmap is located at offset 0 of the flash chip, and is immediately followed by the journal. The initial state is dictated by the blockmap, and the journal is then applied to that.
   −
There are two versions of wear leveling have been observed. V1 is used for 128KB and 512 KB CARD1 flash chips. V2 is used for 1MB CARD1 flash chips (uncommon. Pokemon Sun/Moon is an exampe).
+
There are two versions of wear leveling have been observed. V1 is used for 128KB and 512 KB CARD1 flash chips. V2 is used for 1MB CARD1 flash chips (uncommon. Pokemon Sun/Moon is an example).
    
First, there are two 32-bit integers whose purposes are currently unknown. They generally increase the value as the savegame is written more times, so probably counter for how many times the journal became full and got flushed into the block map, and/or how many times <code>alloc_cnt</code> has wrapped around.  
 
First, there are two 32-bit integers whose purposes are currently unknown. They generally increase the value as the savegame is written more times, so probably counter for how many times the journal became full and got flushed into the block map, and/or how many times <code>alloc_cnt</code> has wrapped around.  
2

edits

Navigation menu