Config Savegame: Difference between revisions
Jump to navigation
Jump to search
| Line 98: | Line 98: | ||
| 0x8 | | 0x8 | ||
| CountryInfo | | CountryInfo | ||
|- | |||
| 0x000B0001 | |||
| 0x800 | |||
| 0x2? | |||
| Country name in UTF-16, every 0x80-bytes is an entry for each language(not all entries are set). | |||
|- | |||
| 0x000B0002 | |||
| 0x800 | |||
| 0x2? | |||
| State name in UTF-16, every 0x80-bytes is an entry for each language(not all entries are set). | |||
|- | |- | ||
| 0x000F0000 | | 0x000F0000 | ||
Revision as of 02:34, 9 February 2014
This page describes the format of the Cfg NAND savegame. These blocks can be accessed with the Cfg service commands.
Structure of save-file "/config"
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x2 | Total entries |
| 0x2 | 0x2 | ? |
| 0x4 | 0x4558 | Block entries |
| 0x455C | Data for the entries |
The filesize for this /config file is 0x8000-bytes.
Configuration block entry
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x4 | BlkID |
| 0x4 | 0x4 | Offset to the data for this block when size is >4, otherwise this word is the data for this block. |
| 0x8 | 0x2 | Size |
| 0xA | 0x2 | Flags |
Configuration blocks
| BlkID | Size | Flags | Description |
|---|---|---|---|
| 0x00080000 | 0xC00 | 0x2? | Wifi configuration slot0. |
| 0x00080001 | 0xC00 | 0x2? | Wifi configuration slot1. |
| 0x00080002 | 0xC00 | 0x2? | Wifi configuration slot2. |
| 0x00090000 | 0x8 | 0x2? | This contains a u64 ID, used by processes using NWMUDS:Initialize. The first word is the same as LocalFriendCodeSeed, while the latter is a separate random word. |
| 0x00090001 | 0x8 | 0xE | This console-unique u64 used by GenHashConsoleUnique is generated with the LocalFriendCodeSeed and with random data. |
| 0x000A0000 | 0x1C | 0xE | See below. |
| 0x000A0002 | 0x1 | 0xA | Language |
| 0x000B0000 | 0x4 | 0x8 | CountryInfo |
| 0x000B0001 | 0x800 | 0x2? | Country name in UTF-16, every 0x80-bytes is an entry for each language(not all entries are set). |
| 0x000B0002 | 0x800 | 0x2? | State name in UTF-16, every 0x80-bytes is an entry for each language(not all entries are set). |
| 0x000F0000 | 0x10 | 0x8? | Unknown, used by NS on dev-units for svcKernelSetState, where Type is 6. |
| 0x00110000 | 0x4 | ? | The low u16 indicates whether the system setup is required, such as when the system is booted for the first time or after doing a System Format: 0 = setup required, non-zero = no setup required. |
| 0x00110001 | 0x8 | 0xA? | TitleID of the menu to launch, used by NS on dev units. (This block can be edited on dev units with Config) |
The dev unit TID block only exists on dev units.
Languages
| ID | Description |
|---|---|
| 0 | ja |
| 1 | en |
| 2 | fr |
| 3 | de |
| 4 | it |
| 5 | es |
| 6 | zh |
| 7 | ko |
| 8 | nl |
| 9 | pt |
| 10 | ru |
CountryInfo
| Byte | Description |
|---|---|
| 0 | ? |
| 1 | ? |
| 2 | ? |
| 3 | Country code, same as DSi/Wii country codes. Value 0xff is invalid. |
0x000A0000 Block
| Byte | Description |
|---|---|
| 0x0-0x13 | UTF-16 username, with no NULL-terminator. |
| 0x14-17 | Usually zero? |
| 0x18-0x1B | ? |