CtrBootManager: 3ds boot manager/loader (HomeMenuHax)

Discussion in '3DS - Homebrew Development and Emulators' started by cpasjuste, Sep 28, 2015.

  1. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    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
    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

    Screenshot :

    [​IMG]

    Source code:

    https://github.com/Cpasjuste/CtrBootManager
    Thanks to smea since a lot of code comes from him, and all other people involved (Myria, Steveice10..)

    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
     

    Attached Files:

    Last edited by cpasjuste, Feb 25, 2016
    juniorcba, Messael, satan89 and 91 others like this.
  2. william341

    william341 Last remaining VinsClone

    Member
    385
    203
    Dec 26, 2014
    United States
    This WILL not and NEVER will run ninjhax 1 or CURRENT CFW on 9.3+.
     
    Lan Hikari, AidanLumina and Shubshub like this.
  3. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    True ! Thanks i updated the post.
     
    AidanLumina likes this.
  4. The Real Jdbye

    The Real Jdbye Always Remember 30/07/08

    Member
    GBAtemp Patron
    The Real Jdbye is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    12,289
    5,315
    Mar 17, 2010
    Norway
    Alola
    Nice.
    But code.bin is not Ninjhax homebrew is it? I thought that was the binary loaded by mset/browser exploit. So this is able to load those kind of files too?
     
    Blindspot., fmkid and cpasjuste like this.
  5. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    The rxtools mset installer is now named rxinstaller.bin. code.bin is rxtools playload. In fact it will load what brahama2/khax is able to load + 3dsx.
     
    Last edited by cpasjuste, Sep 28, 2015
  6. SomeGamer

    SomeGamer GBAtemp Guru

    Member
    5,795
    2,756
    Dec 19, 2014
    Hungary
    Can I use this on 10.1 for loading 3dsx files (not CFWs)?
     
  7. william341

    william341 Last remaining VinsClone

    Member
    385
    203
    Dec 26, 2014
    United States
    yes but i dont quite see why you would want to
     
    ihaveamac likes this.
  8. laharl22

    laharl22 GBAtemp Advanced Maniac

    Member
    1,622
    167
    Dec 19, 2014
    France
    For rxtools the line to enter are good the code.bin?
     
  9. xXDungeon_CrawlerXx

    xXDungeon_CrawlerXx GBAtemp Maniac

    Member
    1,261
    585
    Jul 29, 2015
    Liverpool
    Just to be sure.
    Can I boot PastaCFW with it on Firmware 9.2 + have Kernel Access?

    EDIT:
    Tried to boot RxTools with it.
    Got the following error at "khaxinit":
    "Step6 failed: e0e01bfd _:error while corrupt;freezing"

    How can I fix this?
     
    Last edited by xXDungeon_CrawlerXx, Sep 28, 2015
  10. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    You need to try it out but it may work yes (for testing only you don't need to add the PastaCFW "playload.bin" to the config file, just press UP/DOWN at the boot manager ui to choose "Select a file to boot" and browse to your PastaCFW "playload.bin").
     
  11. xXDungeon_CrawlerXx

    xXDungeon_CrawlerXx GBAtemp Maniac

    Member
    1,261
    585
    Jul 29, 2015
    Liverpool
    Tried to boot RxTools with it.
    Got the following error at "khaxinit":
    "Step6 failed: e0e01bfd _:error while corrupt;freezing"

    How can I fix this?

    EDIT:
    Same Problem with the "loader.bin" of PastaCFW
     
  12. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    It doesn't seems to work, i'll take a look sometime.
     
  13. xXDungeon_CrawlerXx

    xXDungeon_CrawlerXx GBAtemp Maniac

    Member
    1,261
    585
    Jul 29, 2015
    Liverpool
    Hope it'll work soon :D
    RxTools won't boot, too
     
  14. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    What's your congifuration ? (3ds, firwmare..). Here it work 100% of the time for now (not pasta tought)
     
  15. xXDungeon_CrawlerXx

    xXDungeon_CrawlerXx GBAtemp Maniac

    Member
    1,261
    585
    Jul 29, 2015
    Liverpool
    New3DS Firmware 9.0.0-25E. Using RxTools through MSET normally.
    Installed MenuHax through Cubic Ninja Ninjhax 1.1b.
    Copied your files (boot.3dsx and boot.cfg) to root of the SD (renamed the ninjax-boot to boot_hb.3dsx).
     
    Last edited by xXDungeon_CrawlerXx, Sep 28, 2015
  16. duffmmann

    duffmmann GBAtemp Psycho!

    Member
    3,814
    1,579
    Mar 11, 2009
    United States
    Alright, but can it run ninjhax 1 or Current CFW on a 9.2 or less? I'm not seeing any indication it can do that in the main post, and I really want to know!
     
  17. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    Oups, i think brahma2/khax doesn't work on n3ds ! I have to edit the first post.
     
  18. xXDungeon_CrawlerXx

    xXDungeon_CrawlerXx GBAtemp Maniac

    Member
    1,261
    585
    Jul 29, 2015
    Liverpool
    argh x_X
    That'S weird ._.
    PastaCFW and the other stuff worked great on N3DS.
    Would you implement it, please?
     
  19. cpasjuste
    OP

    cpasjuste GBAtemp Fan

    Member
    441
    643
    Aug 27, 2015
    France
    The problem is to get kernel access from homemenuhax with brahama2/khax (CakeBrah, thanks Steveice10 and other involved people) which doesn't seems to be supported yet on n3ds. I don't own a n3ds so it will be hard to fix :)
     
    Last edited by cpasjuste, Sep 28, 2015
  20. xXDungeon_CrawlerXx

    xXDungeon_CrawlerXx GBAtemp Maniac

    Member
    1,261
    585
    Jul 29, 2015
    Liverpool
    urgh, weird x__x
    the guys behind brahma2/khax should give more love to the N3ds ._.
    I really want a Quickboot-Method for CFWs on N3ds...