3DS:BAX

BAX is a homebrew program for the Nintendo 3DS (compatible with all models) that allows you to display video streams on load. Thanks to boot-time entrypoints, this can be done on boot, giving a similar impression to the loading animation of a PC or a mobile smartphone.

Please note that while it's designed to boot into another payload (usually Luma3DS) after running, per design it will not load the second payload alongside itself, but rather sequentially - the time to boot will always be extended by exactly the length of the video. It is also not feasible (though it is possible in theory) to have BAX start loading the HOME Menu while playing the video due to how NATIVE_FIRM handles GPU initialization.

Important Notes

 * BAX can only be booted from the SD card. Attempting to boot from elsewhere (CTRNAND, FIRM0/1 or an NTRBoot cartridge) will only cause problems.
 * Because of how NATIVE_FIRM works, if you reboot into the HOME Menu from AGB_FIRM (the GBA Virtual Console) while BAX is installed, the GBA save game will not be saved until you boot AGB_FIRM again.
 * BAX performs no GPU initialization, only register tweaks, and assumes the GPU has already been initialized by the time it boots. As a result, only B9S-compatible bootloaders are guaranteed to support BAX - but you should only be using boot9strap or fastboot3DS anyway, both of which are compatible.
 * As BAX loads before Luma3DS, it creates an extra 'grace period' before the START/SELECT button menus can open, similar to placing a splash before payloads.
 * To create animation files for BAX, see here.

Installation

 * -|I use fastboot3DS=

 Download the latest release of BAX from its (The   file) Insert your console's SD card into your computer Create a folder named  on the SD root Copy  from the   and your BAX animation files into the   folder Create a file named  inside the   folder and put the text sdmc:/boot.firm inside of it Boot into the fastboot3DS configuration menu by holding while powering on Go to  and select the first slot, then choose   and pick the SD file   Once selected, ensure  is checked and back out to the main menu</li> To test, go into  and select  ; your animation should load, then the system should load normally</li> Your SD card layout should now include this:</li> </ol>


 * Gnome-media-flash.svg (root)
 * Icons8 flat opened folder.svg bax
 * Icons8 flat file.svg BAX.firm (the file in the first boot slot of fastboot3DS)
 * Icons8 flat file.svg my_animation_1.bax
 * Icons8 flat file.svg my_animation_2.bax
 * Icons8 flat file.svg my_animation_3.bax
 * Icons8 flat file.svg boot.firm (Your existing Luma3DS file)
 * Icons8 flat file.svg boot.3dsx


 * -|I use boot9strap=

<ol> Download and the latest release of BAX from its (The   file)</li> Insert your console's SD card into your computer</li> Create a folder named  on the SD root</li> Move your existing  file into the   folder</li> Copy  from   into the root of your SD card</li> Rename the  you copied to  </li> Copy your BAX animation files to </li> Your SD card layout should now include this:</li> </ol>


 * Gnome-media-flash.svg (root)
 * Icons8 flat opened folder.svg bax
 * Icons8 flat file.svg boot.firm (Your existing Luma3DS file)
 * Icons8 flat file.svg my_animation_1.bax
 * Icons8 flat file.svg my_animation_2.bax
 * Icons8 flat file.svg my_animation_3.bax
 * Icons8 flat file.svg boot.3dsx
 * Icons8 flat file.svg boot.firm (Used to be named BAX.firm)

BAX is now installed! It will choose a random animation to play at boot, then continue to Luma3DS.

Configuration
If you create a text file,, that only contains a plaintext file path to a   file (such as  ), then when   boots it will boot that file instead of.