Difference between revisions of "Savegames"

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 129: Line 129:
  
 
* Generally follows DPFS, similar to 3DS.
 
* Generally follows DPFS, similar to 3DS.
 +
 +
==== JNGL ====
 +
 +
* Generally follows IVFC
 +
 +
{| class="wikitable"
 +
|-
 +
! Start
 +
! Length
 +
! Description
 +
|-
 +
| 0x00
 +
| 4
 +
| Magic ("JNGL")
 +
|-
 +
| 0x04
 +
| 4
 +
| Magic Number (0x10000)
 +
|-
 +
|}
 +
 +
==== SAVE ====
 +
 +
* Generally follows JNGL, structure is different from 3DS.
 +
 +
{| class="wikitable"
 +
|-
 +
! Start
 +
! Length
 +
! Description
 +
|-
 +
| 0x00
 +
| 4
 +
| Magic ("SAVE")
 +
|-
 +
| 0x04
 +
| 4
 +
| Magic Number (0x60000)
 +
|-
 +
|}
 +
 +
==== RMAP ====
 +
 +
* There are generally two RMAP blocks in sequence.
 +
 +
{| class="wikitable"
 +
|-
 +
! Start
 +
! Length
 +
! Description
 +
|-
 +
| 0x00
 +
| 4
 +
| Magic ("RMAP")
 +
|-
 +
| 0x04
 +
| 4
 +
| Magic Number (0x10000)
 +
|-
 +
|}

Revision as of 23:56, 2 July 2017

This page describes the format of savegames contained in NAND.

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.

JNGL

  • Generally follows IVFC
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)