Updated Options and usage (markdown)

Aurora 2016-09-26 15:31:03 +02:00
parent 8ead285609
commit fbcef7e9a5

@ -30,57 +30,60 @@ A message can be displayed on the bottom screen when the PIN is being asked by p
- **New 3DS CPU**: Exclusive to **New 3DS** consoles.
This allows you to configure the processor the same way NTR CFW does:
- **Off** disables the patch,
- **Clock** enables New 3DS clock speed for all games
- **L2** adds extra cache to the CPU _(Don't use this if your device crashes)_
- **Clock+L2** enables the N3DS clock speed and adds extra cache to the CPU. _(Pick **Clock** if your device crashes)_
- **Off** disables the patch.
- **Clock** enables New 3DS clock speed for all games.
- **L2** adds extra cache to the CPU _(Don't use this if your device crashes)_.
- **Clock+L2** enables the N3DS clock speed and adds extra cache to the CPU. _(Pick **Clock** if your device crashes)_.
---
- **Developer features**:
- **ErrDisp**: patches ErrDisp to display debugging information on the top screen
- **ErrDisp**: patches ErrDisp to display debugging information on the top screen.
- **UNITINFO**: patches the value of CFG_UNITINFO sent to the ARM11 on boot to make applications believe they are running on a developer unit.
This makes ErrDisp display debugging information and allows you to run certain system software for development units, but also prevents using the eShop, amiibo, etc.
- **None**: doesn't apply either patch; also disables the exception handlers (see below)
- **None**: doesn't apply either patch; also disables the exception handlers (refer to the [Other features and notes](https://github.com/AuroraWright/Luma3DS/wiki/Other-features-and-notes) page)
---
- **Autoboot SysNAND**: Determines if you want to boot **SysNAND** or **EmuNAND** by when **holding no buttons** on Luma3DS boot).
- **Autoboot SysNAND**: Determines if you want to boot **SysNAND** or **EmuNAND** by default (when **holding no buttons** on Luma3DS boot).
- If the option is **on**, **holding L** boots **the default EmuNAND**.
- If the option is **off**, **holding L** boots **SysNAND**.
---
- **Use SysNAND FIRM if booting with R (A9LH)**:
- **On**: uses the **FIRM from SysNAND** to boot EmuNAND **with R** (You can't boot 10.x with 9.x NATIVE_FIRM).
- **Off**: uses the **FIRM from the default EmuNAND** to boot SysNAND **with R** (You can't boot 10.x with 9.x NATIVE_FIRM). You can override the EmuNAND to take the FIRM from on boot by holding down a button on the **directional pad**, **Up**, **Right**, **Down**, **Left** for EmuNANDs 1, 2, 3 and 4 respectively.
- **On**: uses the **FIRM from SysNAND** to boot EmuNAND **with R** (you usually can't boot a newer NAND with an older NATIVE_FIRM).
- **Off**: uses the **FIRM from the default EmuNAND** to boot SysNAND **with R** (you usually can't boot a newer NAND with an older NATIVE_FIRM).
You can override the EmuNAND to take the FIRM from on boot by holding down a button on the **directional pad**, **Up**, **Right**, **Down**, **Left** for EmuNANDs 1, 2, 3 and 4 respectively.
---
- **Enable FIRMs and modules loading from SD**: If the option is **on**:
- If present in the `luma` folder, one of `firmware.bin`, `firmware_twl.bin`, `firmware_agb` and `firmware_safe.bin` (depending on the firmware being launched) will be used instead of the one stored in CTRNAND. If using NUS-encrypted FIRMs, a matching **cetk** file for each FIRM is needed a matching cetk file for each encrypted FIRM is needed (`/luma/cetk`, `/luma/cetk_twl`, `/luma/cetk_agb`, `/luma/cetk_safe` respectively).
- If present in the `luma` folder, one of `firmware.bin`, `firmware_twl.bin`, `firmware_agb` and `firmware_safe.bin` (depending on the firmware being launched) will be used instead of the one stored in CTRNAND.
If using NUS-encrypted FIRMs, a matching **cetk** file for each encrypted FIRM is needed (`/luma/cetk`, `/luma/cetk_twl`, `/luma/cetk_agb`, `/luma/cetk_safe` respectively).
- If present in the `/luma/sysmodules` folder, standalone system modules will be loaded instead of the ones built-in to FIRM (not supported for SAFE_FIRM and NATIVE_FIRM versions older than 3.x).
---
- **Use custom path**: If the option is **on**, you can change the default location of the Luma3DS payload (which is `arm9loaderhax.bin` on the root of the SD) by typing it in a `path.txt` file in `luma`, it must start with a `/` and not exceed 55 characters. This path is also picked up if not booting via A9LH.
- **Use custom path**: If the option is **on**, you can change the default location of the Luma3DS payload (which is `arm9loaderhax.bin` on the root of the SD) by typing it in a `path.txt` file in `luma`, it must **start with a** `/` and not exceed **55 characters**.
This path is also picked up if not booting via A9LH.
---
- **Enable region/language emulation and external .code**: Enables the following two features:
- The region/language emulation feature allows some games which need a specific language to be set to work, and **DLCs for foreign games** to load. To use it:
- Create a folder named **locales** inside `luma`
- Create a folder named **locales** inside `luma`.
- Create a .txt file with game's **title id** as the name (look them up on **www.3dsdb.com**).
- Inside the file,
- Put **3 characters for the region** ("JPN", "USA", "EUR", "AUS", "CHN", "KOR", "TWN")
- Put **an empty space**
- Put **3 characters for the region** ("JPN", "USA", "EUR", "AUS", "CHN", "KOR", "TWN").
- Put **an empty space**.
- Put **2 characters for the language** ("JP", "EN", "FR", "DE", "IT", "ES", "ZH", "KO", "NL", "PT", "RU", "TW").
- For example, to play Pokémon™ Y in Japanese language and region:
- Create `0004000000055E00.txt`
- Put in `JPN JP`
- Save
- Create `0004000000055E00.txt`.
- Put in `JPN JP`.
- Save.
- The external .code feature allows you to use patched binaries for games. To use it:
- Create a folder named **code_sections** inside `luma`
- Create a folder named **code_sections** inside `luma`.
- Obtain a patched code.bin for the game, and rename it with game's **title id** as the file name (look them up on **www.3dsdb.com**).
- For example, to use a patched binary with Pokémon™ Y, rename it to `0004000000055E00.bin`.
@ -95,7 +98,8 @@ This makes ErrDisp display debugging information and allows you to run certain s
- **SyEX** (where **X** can be **2**, **3** or **4**): **SysNAND** booted with EmuNAND X's FIRM,
- **EmuS**: **first EmuNAND** booted with **the SysNAND FIRM**,
- **EmXS** (where **X** can be **2**, **3** or **4**): **EmuNAND X** booted with **the SysNAND FIRM**.
- You can also display a custom version string for each NAND, by creating text files named `customversion_sys.txt`, `customversion_emu.txt`, `customversion_emu2.txt`, `customversion_emu3.txt` or `customversion_emu4.txt` inside `luma`. The version strings can't exceed 39 characters.
- You can also display a custom version string for each NAND, by creating text files named `customversion_sys.txt`, `customversion_emu.txt`, `customversion_emu2.txt`, `customversion_emu3.txt` or `customversion_emu4.txt` inside `luma`.
The version strings can't exceed **39 characters**.
---
@ -103,12 +107,4 @@ This makes ErrDisp display debugging information and allows you to run certain s
---
- **Patch SVC/service/archive/ARM9 access**: disables SVC, service, archive and exHeader ARM9 access checks (the service and archive patches don't work on New 3DS FIRMs between 9.3 and 10.4)
## Exception handlers
Exception handlers give invaluable information when debugging crashes (reads/writes at invalid addresses, execution at invalid indresses, undefined instructions, etc.).
Luma3DS handle CPU exceptions for itself, chainloaded arm9 payloads, and NATIVE_FIRM too. For NATIVE_FIRM, it handles `svcBreak` and kernel panics as well.
To parse a crash dump produced by Luma3DS, use [this parser script](https://raw.githubusercontent.com/AuroraWright/Luma3DS/master/exceptions/exception_dump_parser.py).
- **Patch SVC/service/archive/ARM9 access**: disables SVC, service, archive and exHeader ARM9 access checks (the service and archive patches don't work on New 3DS FIRMs between 9.3 and 10.4).