More actions
No edit summary |
No edit summary |
||
Line 15: | Line 15: | ||
CtrBootManager is a boot manager for some 3DS homebrew applications, like HBL and CFW. | CtrBootManager is a boot manager for some 3DS homebrew applications, like HBL and CFW. | ||
Here is a boot manager / loader, mainly for the HomeMenuHax but it should also work from homebrew menu(for loading arm9 payloads for example). | |||
* 3ds with fw <= 9.2 ! | |||
* It currently allow you to configure boot entries (arm9 payload "*.bin/dat", tested with rxTools "code.bin" and homebrew menu "boot.3dsx") in a configuration file to be booted automatically, with a specified timer. | |||
* It can boot some arm9 payload "*.bin/dat" or ".3dsx" files from a crappy file manager if needed. | |||
* It can receive/execute .3dsx files from network (3dslink) | |||
==Installation:== | |||
* Install "HomeMenuHax", automatic one is better (no button to press for booting). | |||
* Edit "boot.cfg" to suits your needs (be careful to errors) | |||
* Copy "boot.3dsx" and "boot.cfg" to sdcard root | |||
==Custom backgrounds (Thanks to @Flat):== | |||
Images need to be in .bgr bin format. You can use this website to do so : | |||
https://xem.github.io/3DShomebrew/tools/image-to-bin.html | |||
This can also be accomplished with image magick using the convert command and then rotating the image 90 degrees. | |||
<code>convert yourimg.png -channel BGR -separate -channel RGB -combine -rotate 90 yourimg.rgb | |||
</code> | |||
Place it on your sdcard and edit your config to the path of the image. | |||
boot.cfg sample : | |||
https://github.com/Cpasjuste/CtrBootManager/blob/master/data/boot.cfg | |||
==Dependencies== | ==Dependencies== | ||
Line 29: | Line 59: | ||
* <code>cmake -DCMAKE_TOOLCHAIN_FILE=../DevkitArm3DS.cmake ../</code> | * <code>cmake -DCMAKE_TOOLCHAIN_FILE=../DevkitArm3DS.cmake ../</code> | ||
* <code>make</code> Binaries should now be in the <code>build</code> folder. | * <code>make</code> Binaries should now be in the <code>build</code> folder. | ||
===changelog=== | |||
<pre> | |||
1.9: added return to homemenu (needs ninjhax >= 2.6) | |||
------------------------------------------------------- | |||
1.8: added arm9 netloader (nc 192.168.1.2 80 < arm9.bin) | |||
1.8: updated to latest ctrulib + hax | |||
------------------------------------------------------- | |||
1.7: fix ui when no theme section found in cfg | |||
------------------------------------------------------- | |||
1.6: fix file browser | |||
1.6: add reboot/shutdown items to config | |||
------------------------------------------------------- | |||
1.5: minor fixes and improvements | |||
------------------------------------------------------- | |||
1.4: adds support for user images as a background (thanks @Flat) | |||
------------------------------------------------------- | |||
1.3: add colors to configuration file | |||
1.3: fix override button not working when timeout > 0 (thanks @Aroth) | |||
1.3: add old ctrulib as submodule (fix CakeBrah) | |||
1.3: add old CakeBrah as submodule (fix CakeBrah) | |||
------------------------------------------------------- | |||
1.2: change font | |||
------------------------------------------------------- | |||
1.1: add ("key") option to override autoboot entry | |||
------------------------------------------------------- | |||
1.0: add boot menu entry from the file manager (X) (.3dsx only) | |||
1.0: remove boot menu entry from boot menu (X) | |||
1.0: add a few more help/information to the bottom screen | |||
------------------------------------------------------- | |||
b09: add simple boot configuration screen ("More... -> Settings" menu) | |||
b09: (re-re-re-re) fix netloading code | |||
------------------------------------------------------- | |||
b08: fix broken wifi on a lot of 3dsx | |||
b08: fix booting some 3dsx | |||
b08: added 3dsx descriptor support (xml) | |||
b08: fix 3dsx netload | |||
b08: updated to latest ctrulib | |||
------------------------------------------------------- | |||
b07: add "autobootfix" option to config.cfg file | |||
b07: fix a bug when more than 22 files are in a directory (filer)... | |||
------------------------------------------------------- | |||
b06: added colored ui | |||
b06: alphasort files/dirs in filer | |||
b06: filter out .3dsx, .bin, .dat in filer | |||
b06: fix 3dsx loading (was broken after multiple launch) | |||
b06: few fix and improvements | |||
------------------------------------------------------- | |||
b05: fixed autoboot | |||
b05: fixed booting of arm9 payload from filer (which doesn't require specific offset) | |||
------------------------------------------------------- | |||
b04: fixed some .3dsx not booting | |||
------------------------------------------------------- | |||
b03: added reboot and power off | |||
b03: added 3dsx netloader (use 3dslink), thanks smea | |||
b03: added recovery button to config.cfg (to be used when timeout=0) | |||
b03: various menu changes cleanup and bug fixes | |||
-------------------------------------------------------- | |||
b02: fix cake-cfw loading | |||
b02: fix screen corruption | |||
b02: added arm9 offset in config file | |||
</pre> | |||
==#Credits== | ==#Credits== |
Revision as of 12:34, 25 April 2020
CtrBootManager
CtrBootManager is a boot manager for some 3DS homebrew applications, like HBL and CFW.
Here is a boot manager / loader, mainly for the HomeMenuHax but it should also work from homebrew menu(for loading arm9 payloads for example).
- 3ds with fw <= 9.2 !
- It currently allow you to configure boot entries (arm9 payload "*.bin/dat", tested with rxTools "code.bin" and homebrew menu "boot.3dsx") in a configuration file to be booted automatically, with a specified timer.
- It can boot some arm9 payload "*.bin/dat" or ".3dsx" files from a crappy file manager if needed.
- It can receive/execute .3dsx files from network (3dslink)
Installation:
- Install "HomeMenuHax", automatic one is better (no button to press for booting).
- Edit "boot.cfg" to suits your needs (be careful to errors)
- Copy "boot.3dsx" and "boot.cfg" to sdcard root
Custom backgrounds (Thanks to @Flat):
Images need to be in .bgr bin format. You can use this website to do so :
https://xem.github.io/3DShomebrew/tools/image-to-bin.html
This can also be accomplished with image magick using the convert command and then rotating the image 90 degrees.
convert yourimg.png -channel BGR -separate -channel RGB -combine -rotate 90 yourimg.rgb
Place it on your sdcard and edit your config to the path of the image.
boot.cfg sample :
https://github.com/Cpasjuste/CtrBootManager/blob/master/data/boot.cfg
Dependencies
- devkitpro-4.5 at least (ctrulib-1.0 at least)
- libconfig in portlibs (tried with v1.5)
Building
The recommended way:
mkdir build/
cd build/
cmake -DCMAKE_TOOLCHAIN_FILE=../DevkitArm3DS.cmake ../
make
Binaries should now be in thebuild
folder.
changelog
1.9: added return to homemenu (needs ninjhax >= 2.6) ------------------------------------------------------- 1.8: added arm9 netloader (nc 192.168.1.2 80 < arm9.bin) 1.8: updated to latest ctrulib + hax ------------------------------------------------------- 1.7: fix ui when no theme section found in cfg ------------------------------------------------------- 1.6: fix file browser 1.6: add reboot/shutdown items to config ------------------------------------------------------- 1.5: minor fixes and improvements ------------------------------------------------------- 1.4: adds support for user images as a background (thanks @Flat) ------------------------------------------------------- 1.3: add colors to configuration file 1.3: fix override button not working when timeout > 0 (thanks @Aroth) 1.3: add old ctrulib as submodule (fix CakeBrah) 1.3: add old CakeBrah as submodule (fix CakeBrah) ------------------------------------------------------- 1.2: change font ------------------------------------------------------- 1.1: add ("key") option to override autoboot entry ------------------------------------------------------- 1.0: add boot menu entry from the file manager (X) (.3dsx only) 1.0: remove boot menu entry from boot menu (X) 1.0: add a few more help/information to the bottom screen ------------------------------------------------------- b09: add simple boot configuration screen ("More... -> Settings" menu) b09: (re-re-re-re) fix netloading code ------------------------------------------------------- b08: fix broken wifi on a lot of 3dsx b08: fix booting some 3dsx b08: added 3dsx descriptor support (xml) b08: fix 3dsx netload b08: updated to latest ctrulib ------------------------------------------------------- b07: add "autobootfix" option to config.cfg file b07: fix a bug when more than 22 files are in a directory (filer)... ------------------------------------------------------- b06: added colored ui b06: alphasort files/dirs in filer b06: filter out .3dsx, .bin, .dat in filer b06: fix 3dsx loading (was broken after multiple launch) b06: few fix and improvements ------------------------------------------------------- b05: fixed autoboot b05: fixed booting of arm9 payload from filer (which doesn't require specific offset) ------------------------------------------------------- b04: fixed some .3dsx not booting ------------------------------------------------------- b03: added reboot and power off b03: added 3dsx netloader (use 3dslink), thanks smea b03: added recovery button to config.cfg (to be used when timeout=0) b03: various menu changes cleanup and bug fixes -------------------------------------------------------- b02: fix cake-cfw loading b02: fix screen corruption b02: added arm9 offset in config file
#Credits
- smea : code
- GEMISIS : code
- fincs : code
- mtheall : code
- Fluto : graphics
- Arkhandar : graphics
- dotjasp : graphics (regionfree icon)
Other credits:
Readme by gemarcano This project also uses Brahma. See its repository for its credits.