mirror of
https://github.com/citra-emu/citra.git
synced 2024-11-26 18:00:07 +00:00
How to dump the Config Savegame
parent
51ee35e5eb
commit
f4fd21550b
@ -1,28 +0,0 @@
|
||||
### Required files:
|
||||
```
|
||||
.
|
||||
├── nand
|
||||
│ ├── 00000000000000000000000000000000
|
||||
│ │ └── title
|
||||
│ │ ├── 0004009b
|
||||
│ │ │ ├── 00010202
|
||||
│ │ │ │ └── content
|
||||
│ │ │ │ └── 00000000.app.romfs
|
||||
│ │ │ └── 00010402
|
||||
│ │ │ └── content
|
||||
│ │ │ └── 00000000.app.romfs
|
||||
│ │ └── 000400db
|
||||
│ │ └── 00010302
|
||||
│ │ └── content
|
||||
│ │ └── 00000000.app.romfs
|
||||
│ └── data
|
||||
│ └── 00000000000000000000000000000000
|
||||
│ └── sysdata
|
||||
│ └── 00010017
|
||||
│ └── 00000000
|
||||
│ └── config
|
||||
└── sysdata
|
||||
└── shared_font.bin
|
||||
|
||||
17 directories, 5 files
|
||||
```
|
69
Home-Folder.md
Normal file
69
Home-Folder.md
Normal file
@ -0,0 +1,69 @@
|
||||
### Required files:
|
||||
```
|
||||
.
|
||||
├── nand
|
||||
│ ├── 00000000000000000000000000000000
|
||||
│ │ └── title
|
||||
│ │ ├── 0004009b
|
||||
│ │ │ ├── 00010202
|
||||
│ │ │ │ └── content
|
||||
│ │ │ │ └── 00000000.app.romfs
|
||||
│ │ │ └── 00010402
|
||||
│ │ │ └── content
|
||||
│ │ │ └── 00000000.app.romfs
|
||||
│ │ └── 000400db
|
||||
│ │ └── 00010302
|
||||
│ │ └── content
|
||||
│ │ └── 00000000.app.romfs
|
||||
│ └── data
|
||||
│ └── 00000000000000000000000000000000
|
||||
│ └── sysdata
|
||||
│ └── 00010017
|
||||
│ └── 00000000
|
||||
│ └── config
|
||||
└── sysdata
|
||||
└── shared_font.bin
|
||||
|
||||
17 directories, 5 files
|
||||
```
|
||||
|
||||
### How to dump the Config Savegame
|
||||
|
||||
The Config Savegame is required to play some specific games in Citra. If you don't dump it, a dummy `config` file is created (sufficient to play various games) but you will get an error similar to the one below if the game you are trying to play requires a dumped Config Savegame.
|
||||
|
||||
Service.CFG <Error> core/hle/service/cfg/cfg.cpp:GetConfigInfoBlock:197: Config block 0xB0001 with flags 2 and size 2048 was not found
|
||||
|
||||
For now the procedure to dump the Config Savegame is Linux-only. It assumes you are familiar with the procedure of dumping a game as explained in the wiki page [How to Dump and Decrypt 3DS Games](https://github.com/citra-emu/citra/wiki/Decryption).
|
||||
|
||||
#### Tools required:
|
||||
|
||||
- [Gateway Launcher](http://www.gateway-3ds.com/downloads)
|
||||
- [Decrypt9](https://github.com/archshift/Decrypt9)
|
||||
- [3DSFAT16tool](https://github.com/d0k3/3DSFAT16tool)
|
||||
- [3dsfuse](https://github.com/3dshax/3ds)
|
||||
- A 3DS with a firmware of 9.2 or lower
|
||||
- A SD Card to contain the dumped NAND (> 1GB)
|
||||
|
||||
#### **Step 1 - Dumping NAND**
|
||||
Boot the [gateway launcher](http://www.gateway-3ds.com/downloads) using the Launcher.dat file placed at the root of the SD Card and accessing 'http://dukesrg.no-ip.org/3ds/go'.
|
||||
Select the option `Backup System NAND` and press `START` to dump your NAND to your SD card. The SD card should then contain a file `NAND.bin`.
|
||||
|
||||
#### Step 2 - **Generating NAND Xorpad**
|
||||
The NAND.bin file dumped in the previous step is encrypted. To decrypt it, we need to generate xorpads. Overwrite the Launcher.dat on your SD card with the one included in the [Decrypt9](https://github.com/archshift/Decrypt9) package. Boot the latter using the browser exploit as in Step 1.
|
||||
Select the `CTRNAND Padgen` option to generate the NAND xorpad. You will then have a `nand.fat16.xorpad` file.
|
||||
|
||||
#### Step 3 - **Decrypt and mount NAND**
|
||||
Having both `NAND.bin` and `nand.fat16.xorpad` on your computer, use [3DSFAT16tool](https://github.com/d0k3/3DSFAT16tool) to decrypt and mount your NAND.
|
||||
|
||||
gcc -std=gnu99 3DSFAT16tool.c -o 3DSFAT16tool
|
||||
./3DSFAT16tool -d NAND.BIN NAND.fat16.bin nand.fat16.xorpad
|
||||
sudo mount NAND.fat16.bin <some-mount-point>
|
||||
|
||||
You should now be able to browse the content of your NAND.
|
||||
|
||||
#### Step 4 - **Extract the Config Savegame**
|
||||
The Config Savegame file is `<some-mount-point>/data/<unique-ID>/sysdata/00010017/00000000` but it's in IVFC format and Citra want the bare file content so we need to extract the latter using [3dsfuse](https://github.com/3dshax/3ds).
|
||||
|
||||
./3dsfuse <some-mount-point>/data/<unique-id>/sysdata/00010017/00000000 --nowear <some-other-mount-point>
|
||||
|
||||
The extracted `config` file is `<some-other-mount-point>/part_00/config`.
|
Loading…
Reference in New Issue
Block a user