Skip to content
mymindstorm edited this page May 23, 2017 · 6 revisions

How to use BootCTR9

General Information

There are two official supported way you could use BootCTR9, using the "arm9bootloader.bin" and BootCTR9s a9lh fork, or using the "arm9loaderhax.bin" for normal a9lh forks. Besides this it should be possible to use BootCTR9 with other ways to load arm9 payloads, if you are able to load it from payload address 0.

Beside the payload itself you need to always put an boot_config.ini in one of the supported folders on your SD-card. This configuration file is needed to tell BootCTR9 which payload it should load in which case, and to configure all the other features of BootCTR9. For more informations about the configuration file, check out its wiki page

Normal a9lh + arm9loaderhax.bin

This method allows you to use BootCTR9 with any normal a9lh fork, but you are forced to put the "arm9loaderhax.bin" in your SD-cards root directory. You also don't need to copy the "arm9bootloader.bin" to your SD-card, since it's already included in the "arm9loaderhax.bin"

BootCTR9s a9lh + arm9bootloader.bin

This method allows you to keep your root directory as clean as possible, because you don't need an "arm9loaderhax.bin" on your SD-cards root. For this method you need to copy the "arm9bootloader.bin" in one of the supported folders.

Supported Folders

There are some files, that you could only put in certain folder.

The supported folders are the following:

  • /arm9loaderhax
  • /a9lh
  • /arm9bootloader
  • /

Splashscreens and Animations

To use splashscreens and animations, you simple need to set "splash" for an payload splash and "boot_splash" for an generell BootCTR9 splash (check out the configuration Page for the values). After this set "splash_image" or "boot_splash_image" to the filepath of your splashimage or animation. For animations its also possible to set the framerate, for this the bootloader searches for a plaintext file named "[animationpath].cfg" or a binary file named "[animationpath].cfgb".

The first two characters of the plaintext configuration will be used for the framerate, and after that "lzd" will identify an compressed animation.

In an binary configuration, the first Byte will be used as Framerate, and setting the second byte to 1 will identify compressed animations.

While its in theory possible to use animations with high framerates, the SD-cards read-speed is very limited, so that its possible that you need to use a lower framerate for your animation.

To stop an animation before it's finished, you jest need to press [START]+[SELECT].

File structure

Besides the payload and configuration file, you are completely free to organize your files, the way you want to, but a good way to do it would be something like this:

  • /(arm9loaderhaxfolder)/Payloads/
  • /(arm9loaderhaxfolder)/Splashscreens/
  • /(arm9loaderhaxfolder)/Animations/
  • /(arm9loaderhaxfolder)/boot_config.ini
  • /(arm9loaderhaxfolder)/arm9bootloader.bin (if needed)