From a5854afd2f7ec6174e2146b35ac6df1fc36a2783 Mon Sep 17 00:00:00 2001 From: thedax Date: Tue, 19 Mar 2019 05:46:12 -0400 Subject: [PATCH] Update BCT.md to bring it into the modern age. (#482) * Bring BCT.md into the modern age. It was terribly outdated. * Added notes on debugging modes --- docs/components/fusee/BCT.md | 59 ++++++++++++++++++++++++++++++++---- 1 file changed, 53 insertions(+), 6 deletions(-) diff --git a/docs/components/fusee/BCT.md b/docs/components/fusee/BCT.md index 35c9f8246..05ac9f4fb 100644 --- a/docs/components/fusee/BCT.md +++ b/docs/components/fusee/BCT.md @@ -1,19 +1,51 @@ # BCT.ini -BCT.ini is the configuration file used by fusée-primary and fusée-secondary. It is read by fusee-primary.bin to setup and boot fusee-secondary.bin and is also read by fusee-secondary.bin to configure Exosphère or to specify the environment it should boot. +BCT.ini is the configuration file used by fusée-primary and fusée-secondary. It is read by fusee-primary.bin to setup and boot fusee-secondary.bin and is also read by fusee-secondary.bin to configure Exosphère, specify the environment it should boot, or configure other miscellaneous options such as setting a custom boot splashscreen. ## Configuration -This file is located at the root of your SD. +This file is located in the `atmosphere` folder on your SD card. The default configuration file will look similar to this. ``` BCT0 [stage1] -stage2_path = fusee-secondary.bin +stage2_path = atmosphere/fusee-secondary.bin stage2_addr = 0xF0000000 stage2_entrypoint = 0xF0000000 + +[exosphere] +; Note: Disabling debugmode will cause parts of ams.tma to not work, in the future. +debugmode = 1 +debugmode_user = 0 + +[stratosphere] +; To force-enable nogc, add nogc = 1 +; To force-disable nogc, add nogc = 0 ``` -Add the following lines and replace the `X` according to the following list if you have trouble booting past the firmware version detection. + +## Adding a Custom Boot Splashscreen +Add the following lines to BCT.ini and change the value of `custom_splash` to the actual path and filename of your boot splashscreen. +``` +[stage2] +custom_splash = /path/to/your/bootlogo.bmp +``` + +The boot splashscreen must be a BMP file, it must be 720x1280 (1280x720 rotated 90 degrees left/counterclockwise/anti-clockwise) resolution, and be in 32-bit ARGB format. You can use image editing software such as GIMP or Photoshop to export the image in this format. + +## Configuring "nogc" Protection +Nogc is a feature provided by fusée-secondary which disables the Nintendo Switch's Game Card reader. Its purpose is to prevent the reader from being updated when the console has been updated without burning fuses from a firmware lower than 4.0.0, to a newer firmware that is at least 4.0.0 or higher. By default, Atmosphere will protect the Game Card reader automatically, but you are free to change it. + +To change its functionality, add the following line to the `stratosphere` section and change the value of `X` according to the following list. +``` +nogc = X +``` +``` +1 = force-enable nogc, so Atmosphere will always disable the Game Card reader. +0 = force-disable nogc, so Atmosphere will always enable the Game Card reader. +``` + + +## Changing Target Firmware +Add the following line to the `exosphere` section and replace the `X` according to the following list if you have trouble booting past the firmware version detection. `target_firmware` is the OFW major version. ``` -[exosphere] target_firmware = X ``` ``` @@ -22,5 +54,20 @@ target_firmware = X 3.X.X = 3 4.X.X = 4 5.X.X = 5 -6.0.0 = 6 +6.X.X = 6 +6.2.0 = 7 +7.X.X = 8 +``` + +Note that 6.X.X indicates 6.0.0 through 6.1.0. + +## Configuring Debugging Modes +By default, Atmosphere signals to the Horizon kernel that debugging is enabled while leaving usermode debugging disabled, since this can cause undesirable side-effects. If you wish to change these behaviours, go to the `exosphere` section and change the value of `X` according to the following list. +``` +debugmode = X +debugmode_user = X +``` +``` +1 = enable +0 = disable ```