diff --git a/Options-and-usage.md b/Options-and-usage.md index 3b25dca..fdbd9c4 100644 --- a/Options-and-usage.md +++ b/Options-and-usage.md @@ -37,21 +37,13 @@ This allows you to configure the processor the same way NTR CFW does: --- -- **Developer features**: - - **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, and switches the CIA encryption to the developer one. -This makes ErrDisp display debugging information and allows you to install and run certain system software for development units, but also prevents using the eShop, amiibo, retail-encrypted CIAs etc. - - **None**: doesn't apply either patch and 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 default (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**: +- **Use SysNAND FIRM if booting with R**: - **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. @@ -70,33 +62,46 @@ This path will be attempted on both SD and CTRNAND, and is also picked up if not --- -- **Enable region/language emulation and external .code**: Enables the following two features: +- **Enable game patching**: Enables the following 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 .txt file with game's **title id** as the name (look them up on **www.3dsdb.com**). + - Create a folder named **`titles`** inside `luma`. + - Create a folder with the game's **title id** as the name (look them up on **www.3dsdb.com**) inside `titles`. + - Create a file named **`locale.txt`** in the game's folder. - Inside the file, - 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 **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/locale.txt`. - Put in `JPN JP`. - Save. + - The LayeredFS feature allows you to replace RomFS files with files on the SD card for most games. To use it: + - Create a folder named **titles** inside `luma`. + - Create a folder with the game's **title id** as the name (look them up on **www.3dsdb.com**) inside `titles`. + - Create a folder called **`romfs`** in the game's folder. + - Put the replacement files in the `romfs` folder. + - For example, to use LayeredFS with Pokémon™ Y, make a folder named `romfs` , put your replacement files in it, then put `romfs` in `0004000000055E00`. - The external .code feature allows you to use patched binaries for games. To use it: - - 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`. + - Create a folder named **titles** inside `luma`. + - Create a folder with the game's **title id** as the name (look them up on **www.3dsdb.com**) inside `titles`. + - 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 `code.bin` and put it in `0004000000055E00`. + - The code IPS patching feature allows you to use IPS patches on a game's code. To use it: + - Create a folder named **titles** inside `luma`. + - Create a folder with the game's **title id** as the name (look them up on **www.3dsdb.com**) inside `titles`. + - Obtain an IPS patch 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 patch with Pokémon™ Y, rename it to `code.ips` and put it in `0004000000055E00`. --- -- **Show NAND or user string in System Settings**: By default, this displays the current NAND/FIRM instead of "Ver." in System Settings. - - The strings that can be shown are: +- **Show NAND or user string in System Settings**: By default, this displays the current NAND/FIRM instead of "Ver." in System Settings. + - The strings that can be shown are: - **Sys**: **SysNAND** booted with with its own FIRM, - **Emu**: **first EmuNAND** booted with its own FIRM, - **EmuX** (where **X** can be **2**, **3** or **4**): **EmuNAND X** booted with its own FIRM, - **SysE**: **SysNAND** booted with the first EmuNAND's FIRM, - **SyEX** (where **X** can be **2**, **3** or **4**): **SysNAND** booted with EmuNAND X's FIRM, - - **EmuS**: **first EmuNAND** booted with **the SysNAND 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**. @@ -107,4 +112,13 @@ The version strings can't exceed **39 characters**. --- -- **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). \ No newline at end of file +- **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). + +--- + +- **Set developer UNITINFO**: patches the value of CFG_UNITINFO sent to the ARM11 on boot to make applications believe they are running on a developer unit, and switches the CIA encryption to the developer one. +This makes ErrDisp display debugging information and allows you to install and run certain system software for development units, but also prevents using the eShop, amiibo, retail-encrypted CIAs etc. + +--- + +- **Enable exception handlers**: enable the exception handlers. See [Others features and notes](https://github.com/AuroraWright/Luma3DS/wiki/Other-features-and-notes#exception-handlers) for more details.