Based on 3DS Homebrew Launcher code by Smealum. The original version is from mashers. This version removed some unused code used by Homebrew Launcher that isn't necessary in a simple bootloader, and added some interesting new features.
Any question can be done in the official topic in GBAtemp forum.
- Supports both
.3dsx
files and binary payloads (for example,/Cakes.dat
, /ReiNand.dat
,/rxTools/sys/code.bin
, etc.).- Supports advanced features in
.3dsx
files, like network support. - Boot delay, to increase the boot rate chance of CFWs like rxTools and CakesFW.
- Allows up-to 16+1 (16 using keys plus 1 default) homebrews in O3DS, up-to 22+1 homebrews in N3DS.
- Support for boot screens, including an ASCII art (default) or custom images in BGR format:
- (Optional, but recommended) Install HomeMenuHax and set up autoboot.
- Modify, according to your needs, the included
boot_config.ini
file. - Copy both
boot.3dsx
andboot_config.ini
to the root of your SD card. - For splash screen, look inside
splash
folder for some ready to use.bin
files (including source file/preview in.png
format), or use the includedimg2bgr.sh
script to convert your own images (or convert them using this site). Dont't forget to editboot_config.ini
to includesplash_file
option in the desired entry.
- Boot up your homebrew hax as usual.
- If you do nothing, then
boot_default.3dsx
(or anything that you setup in[DEFAULT]
section) will be launched. - If you want to load an alternative launcher, hold down a button (configured
according your
boot_config.ini
) to boot it.
First, clone this repository including the submodules:
$ git clone --recursive https://github.com/m45t3r/BootCtr.git
Compile a new binary using the included Makefile
and devkitPro.
If devkitPro is correctly installed all you need to do is:
$ make
And copy the new boot.3dsx
file to your SD card. Do not forget to copy
boot_config.ini
too.
Alternatively you can run the command below too (needs zip
and git
installed):
$ make release
To generate a .zip file including all source code and auxiliary files, ready for distribution.
The original source code (Homebrew Launcher) does not have a proper
license, and since this code is derived from it I can't simple change the
license for something that I would like. The README.md
from HBL says:
"Feel free to use code from hbmenu for your own projects, so long as you give credit to its original authors."
In the section below we give proper credits to everyone that helped creating this project. Of course, all of my modifications is distributed in a similar license, so go ahead and fork and do something interesting.
CakeBrah does not seem to have a proper license too. However, brahma
uses a license similar to MIT (see README-brahma
for details), and
CakeBrah is a derived work so it should use a similar license.
inih is distributed under New BSD License, while libkhax (not used directly, however it is a dependency of CakeBrah) uses MIT license.
- @smealum and everyone that worked in the Homebrew Launcher
- @mashers, for the original source code of HBL-Emergency
- @Cpasjuste, for some ideas from his CtrBootManager
- @benhoyt, for inih
- @mid-kid and others, for CakeBrah
- @pbanj from GBAtemp for the logo and splash screen