Difference between revisions of "Savegames"
Jump to navigation
Jump to search
Line 322: | Line 322: | ||
| 4 | | 4 | ||
| Magic Number (0x10000) | | Magic Number (0x10000) | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | === Files === | ||
+ | |||
+ | * The root file/folder index is generally 2 | ||
+ | |||
+ | ==== File/Folder Table Entry ==== | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Start | ||
+ | ! Length | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0x00 | ||
+ | | 4 | ||
+ | | Parent Folder Index | ||
+ | |- | ||
+ | | 0x04 | ||
+ | | 64 | ||
+ | | Filename | ||
+ | |- | ||
+ | | 0x44 | ||
+ | | 4 | ||
+ | | File/Folder Index? | ||
+ | |- | ||
+ | | 0x48 | ||
+ | | 4 | ||
+ | | File offset index in offset table, 0 for folders | ||
+ | |- | ||
+ | | 0x4c | ||
+ | | 8 | ||
+ | | File size, or number of files for folders | ||
+ | |- | ||
+ | | 0x54 | ||
+ | | 8 | ||
+ | | Unknown | ||
+ | |- | ||
+ | | 0x5c | ||
+ | | 4 | ||
+ | | Next File Index, same as folder index for folders | ||
|- | |- | ||
|} | |} |
Revision as of 21:07, 4 July 2017
This page describes the format of savegames contained in NAND. NAND savegames do not use an container with the entire file encrypted. A lot of the saveimage appears to have uninitialized data, resulting in a lot of encrypted data in the saveimage.
AES CMAC header
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.
Start | Length | Description |
---|---|---|
0x00 | 4 | Magic ("IVFC") |
0x04 | 4 | Magic Number (0x20000) |
0x08 | 8 | Master hash size? |
0x10 | 8 | Level 1 offset |
0x18 | 8 | Level 1 size |
0x20 | 4 | Level 1 block size, in log2 |
0x24 | 4 | Reserved |
0x28 | 8 | Level 2 offset |
0x30 | 8 | Level 2 size |
0x38 | 4 | Level 2 block size, in log2. |
0x3C | 4 | Reserved |
0x40 | 8 | Level 3 offset |
0x48 | 8 | Level 3 size |
0x50 | 4 | Level 3 block size, in log2. |
0x54 | 4 | Reserved |
0x58 | 8 | Level 4 offset |
0x60 | 8 | Level 4 size |
0x68 | 4 | Level 4 block size, in log2. |
0x6C | 4 | Reserved |
0x70 | 48 | Unknown, reserved? |
0xA0 | 32 | Hash |
JNGL
- Generally follows IVFC
Start | Length | Description |
---|---|---|
0x00 | 4 | Magic ("JNGL") |
0x04 | 4 | Magic Number (0x10000) |
0x08 | 8 | Savedata Size |
0x10 | 8 | Unknown, Size |
0x18 | 8 | Savedata Blocksize? |
0x20 | 4 | Unknown |
0x24 | 4 | Unknown |
0x28 | 8 | Unknown |
0x30 | 464 | Padding? |
SAVE
- Generally follows JNGL, structure is different from 3DS.
Start | Length | Description |
---|---|---|
0x00 | 4 | Magic ("SAVE") |
0x04 | 4 | Magic Number (0x60000) |
0x08 | 8 | Unknown, number |
0x10 | 8 | Unknown, block size |
0x18 | 8 | Unknown, block size |
0x20 | 8 | Unknown |
RMAP
- There are generally two RMAP blocks in sequence.
Start | Length | Description |
---|---|---|
0x00 | 4 | Magic ("RMAP") |
0x04 | 4 | Magic Number (0x10000) |
Files
- The root file/folder index is generally 2
File/Folder Table Entry
Start | Length | Description |
---|---|---|
0x00 | 4 | Parent Folder Index |
0x04 | 64 | Filename |
0x44 | 4 | File/Folder Index? |
0x48 | 4 | File offset index in offset table, 0 for folders |
0x4c | 8 | File size, or number of files for folders |
0x54 | 8 | Unknown |
0x5c | 4 | Next File Index, same as folder index for folders |