This page describes the format of savegames contained in NAND.
Image offset
|
Length
|
Description
|
0x00
|
0x10
|
AES-CMAC
|
0x10
|
0xF0
|
Zero padding
|
DISF
- This is located @ 0x100 in the image, following the CMAC header.
Start
|
Length
|
Description
|
0x000
|
4
|
Magic ("DISF")
|
0x004
|
4
|
Magic Number (0x40000)
|
0x008
|
32
|
Hash
|
0x028
|
8
|
Primary Partition Table Offset
|
0x030
|
8
|
Primary Partition Table Size
|
0x038
|
8
|
Secondary Partition Table Offset
|
0x040
|
8
|
Secondary Partition Table Size
|
0x048
|
8
|
Save Partition Offset
|
0x050
|
8
|
Save Partition Size
|
0x258
|
|
End
|
DPFS
- This is located @ 0x200 in the image, following DISF.
- Block sizes are log2
Start
|
Length
|
Description
|
0x00
|
4
|
Magic ("DPFS")
|
0x04
|
4
|
Magic Number (0x10000)
|
0x08
|
8
|
Offset 0
|
0x10
|
8
|
Size 0
|
0x18
|
8
|
Block Size 0
|
0x20
|
8
|
Offset 1
|
0x28
|
8
|
Size 1
|
0x30
|
8
|
Block Size 1
|
0x38
|
8
|
Offset 2
|
0x40
|
8
|
Size 2
|
0x48
|
8
|
Block Size 2
|
IVFC
- Generally follows DPFS, similar to 3DS.
JNGL
Start
|
Length
|
Description
|
0x00
|
4
|
Magic ("JNGL")
|
0x04
|
4
|
Magic Number (0x10000)
|
SAVE
- Generally follows JNGL, structure is different from 3DS.
Start
|
Length
|
Description
|
0x00
|
4
|
Magic ("SAVE")
|
0x04
|
4
|
Magic Number (0x60000)
|
RMAP
- There are generally two RMAP blocks in sequence.
Start
|
Length
|
Description
|
0x00
|
4
|
Magic ("RMAP")
|
0x04
|
4
|
Magic Number (0x10000)
|