[Release] fastboot3DS - open source bootloader / chainloader

Discussion in '3DS - Homebrew Development and Emulators' started by d0k3, Dec 24, 2017.

  1. Leafgreen26

    Leafgreen26 GBAtemp Regular

    Member
    2
    Jul 17, 2017
    United States
    Cool. And thanks.
     
  2. Kazuma77

    Kazuma77 GBAtemp Maniac

    Member
    5
    May 11, 2008
    United States
    Actually, it doesn't look like I can PM you (you must have it disabled or something), so, send me one.

    OK, let me try to get back on topic here. Tie this all together. The issue I take with the whole "one script to rule them all" approach is that, while it's all there, it's all buried under waves of menus. It's like browsing the web with a browser that can't bookmark. There's no quick way to access the parts you use on a regular basis.

    I adopted this philosophy with my own scripts: If a set of features starts to feel like it's own app, make it one. Put it all into a script by itself, compile it into a script runner, and call it done. Don't try to add anything further. Things that get too big and complicated often end up stumbling over their own two feet (look at what happened to WoW). My AIO project currently uses 6 standalone script runners. Could I merge them all into my "Options" collection? Easily. But the flexibility would suffer, because they could no longer be hotkeyed individually. And you would probably have to navigate 3 or 4 layers of menus just to reach an actual function. IMHO, once you've hit 2, it's time to stop, because things are just getting too far buried.

    With most chainloaders providing no shortage of hotkeys, it's usually not a problem that I don't have every feature in one jumbled-together mass of endless menus. But button combos would theoretically make things even more flexible.

    As I said, what's especially frustrating here, is that this one already does button combos. With a couple of arrows added to the interface, it could have upwards of 140 hotkeys easily. Want to split that megascript up into 24 pieces, compile them to SSRs, and hotkey them all? This already has 90-95% of the code it would take to empower you to do that.

    Sure, right now, most users are only using 1 hotkey (because they followed a manual guide, which I can respect for wanting to keep things simple, but, manual methods are history, because my AIO both keeps it simple by using SSRs to fully automate the process, and still manages to provide everything including the kitchen sink). But I'd like to encourage developers and users alike to think outside the box. "If you build it, they will come." as the famous phrase goes. You may not see any rational reason to cover all 144 possible hotkeys today. But, you know, back in the early 90s, we couldn't imagine ever filling a 1 Gigabyte hard drive either. Generate the capacity, and the uses for it will show up on their own. If there is one thing that has remained true throughout computing history, it is that there is no such thing as too much space.

    I guess I could just hotkey X, Y, and B conventionally, then throw two CBM9 menus on up and down. Not the direction I would choose. Guess I could also point slot 1 straight to BootCTR9 so it won't boot itself if selected as a conventional chainloader. What I really want is to create an option in my AIO that just uses Fastboot3DS and nothing else. But I need more slots to make that a reality. It's an All-in-One, not a Some-in-One.
     
    Last edited by Kazuma77, Mar 29, 2018
  3. Inthescene

    Inthescene Advanced Member

    Newcomer
    1
    Feb 18, 2018
    Canada
    htraE
    When I use fastboot3DS 9 out of 10 times it won't go past the boot animation, just stuck on a bar of static on the left side of the screen. Is there a way to fix this?
     
  4. Billy Acuña

    Billy Acuña GBAtemp Addict

    Member
    9
    Oct 10, 2015
    Mexico
    Actually you have a less painful and faster alternative for mass decrypting with ctrtool (last commit supports boot9.bin) on PC thanks to the bootroms.
     
  5. Wolfvak

    Wolfvak nyaa~

    Member
    8
    Oct 25, 2015
    Uruguay
    You're almost certainly using an older version, upgrade to the latest.
     
  6. Inthescene

    Inthescene Advanced Member

    Newcomer
    1
    Feb 18, 2018
    Canada
    htraE
    Ok, I upgraded to BAX, and it all works! The only problem which isn't a big one is that it's darker than before.
     
  7. Kazuma77

    Kazuma77 GBAtemp Maniac

    Member
    5
    May 11, 2008
    United States
    Well, I have that compiled, but I did not see a parameter to simply decrypt without extracting. So, if you could tell me how to go about that, I'd appreciate it.

    Regardless, I kind-of see D9 vs GM9 as an app-centered computing vs. data-centered computing thing. If you prefer to open the app then have it load the data most of the time, you probably use D9 more. If you prefer to double-click data files and let file associations open them in the correct app for you, you probably use GM9 more. I'm a heavy Total Commander/Krusader user myself. Still, even I don't store my web bookmarks as .url files. So, I'm going to leave it in my AIO unless someone can present a genuine reason to remove it (like d0k3 did for AGBSave9 -- the saves being incompatible with emulators). People that don't use it can always set "up" to something else (just hold R at boot, second option from the top).
     
  8. Filo97

    Filo97 Zelda's totally my sister! Not lying!

    Member
    7
    Oct 8, 2015
    Italy
    Hyrule Castle
    What would i need to do to switch back to boot9strap? Need boot9.bin
     
  9. Lilith Valentine

    Lilith Valentine GBATemp's Wolf-husky™ Melodramatic fool

    Member
    23
    Sep 13, 2009
    Antarctica
    ¯\_(ツ)_/¯
    Filo97 likes this.
  10. Inthescene

    Inthescene Advanced Member

    Newcomer
    1
    Feb 18, 2018
    Canada
    htraE
    So the only benefit of b9s over this is dumping the bootroms and otp? I have a gm9 script for that so unless there's other benefits I don't know of, I guess I wont be using b9s anymore.
     
  11. Filo97

    Filo97 Zelda's totally my sister! Not lying!

    Member
    7
    Oct 8, 2015
    Italy
    Hyrule Castle
    Wait, there is a boot9 dumper script?
    Well, gonna reinstall fastboot3ds again, then.
     
    Last edited by Filo97, Apr 8, 2018
  12. Inthescene

    Inthescene Advanced Member

    Newcomer
    1
    Feb 18, 2018
    Canada
    htraE
    Yeah, it's in this gm9 megascript.
     

    Attached Files:

  13. Filo97

    Filo97 Zelda's totally my sister! Not lying!

    Member
    7
    Oct 8, 2015
    Italy
    Hyrule Castle
    It copies a file from M:, but last time i checked with fastbood3ds, in M: there was no boot9.bin or boot11.bin but with b9s there is. So even with it you can't get boot9 on fastoot3ds i think.
     
  14. Inthescene

    Inthescene Advanced Member

    Newcomer
    1
    Feb 18, 2018
    Canada
    htraE
    Oh, guess you gotta switch back. I already dumped mine so is there ever gonna be a case where I need to redump it?
     
  15. Filo97

    Filo97 Zelda's totally my sister! Not lying!

    Member
    7
    Oct 8, 2015
    Italy
    Hyrule Castle
    Don't think so And i have already dumped it by now so, not a problem now. Just make sure to upload it in the cloud somewhere, to make sure not to lose it.
     
  16. Lilith Valentine

    Lilith Valentine GBATemp's Wolf-husky™ Melodramatic fool

    Member
    23
    Sep 13, 2009
    Antarctica
    ¯\_(ツ)_/¯
    I would like to mention that the boot9/11 script does not work on FB3DS and only works with B9S.
    That being said, there's no harm switching between FB and B9S, there's also no harm in keeping B9S and setting FB as he boot.firm.
     
    Inthescene likes this.
  17. Inthescene

    Inthescene Advanced Member

    Newcomer
    1
    Feb 18, 2018
    Canada
    htraE
    Ok, I have 3 questions about setting FB as boot.firm.

    1) Is it gonna be the same just with the benefit of dumping bootroms?
    2) If so, will it be a significantly slower boot time?
    3) Would holding home still bring up the menu?
     
    Last edited by Inthescene, Apr 8, 2018
  18. Lilith Valentine

    Lilith Valentine GBATemp's Wolf-husky™ Melodramatic fool

    Member
    23
    Sep 13, 2009
    Antarctica
    ¯\_(ツ)_/¯
    I actually have not done that deep of testing into setting fastboot as the boot.firm, as I really didn't find that many benefits to doing it. Once I dumped my own bootroms and backed the up, I had no reason to keep using B9S and just flashed Fastboot onto my systems. I could do some more detailed testing, but I won't be able to do that until either later today or some other time in the week.
    I can can answer the 3rd question though, which is that all features will still work the same regardless of how you booted into it. So holding "Home" will bring up the menu, even if you booted through B9S, Luma3DS, or GM9
     
  19. Kazuma77

    Kazuma77 GBAtemp Maniac

    Member
    5
    May 11, 2008
    United States
    1. Pretty much. But since you only need to dump the boot ROMs once (unless something happens to your backups), it makes far more sense just to dump them then switch back. Keep in mind that OFI CAN install both, so, all you'd really have to do is move the FB3DS .firm file into and out of the "ofi" folder using GM9, then re-run OFI (which you could add to the 0:/gm9/payloads folder for convenience, so you can run it straight from GM9's "Payloads" menu), to switch back and forth (it doesn't hurt anything leaving B9S in there permanently, since OFI looks for FB3DS first).

    The new version of SysNAND Updater that is included in InScripted R12 eliminates the need for moving the file around, though. It allows you to switch back and forth between B9S, GM9, and Fastboot3DS at the drop of a hat, having a menu that lets you select which one you want. It also has the added functionality of letting you include custom SD card configurations for each, which I have done for convenience.

    2. This is a subjective question that depends on your perception of time. However, unless you have a cybernetic brain like Lt. Commander Data (or Major Kusanagi), or can switch into bullet time at will like Neo, you are extremely unlikely to notice the difference adding an extra chainloader to the boot process makes. Though if you're not going to run your chainloader as a firm, BootCTR9 will give you more hotkeys (and it can also load Gateway).

    Then again, there's nothing stopping you from running both (regardless of which way you choose to run FB3DS). Just make BootCTR9 the autoboot payload, and have it default to your primary CFW. Now you have 17 hotkeys available (though that gets reduced to 16 if you want to reserve Select for Luma, and 14 if you have an EmuNAND since you need to reserve L to enter it and A to leave it).

    The current InScripted release supports running FB3DS either way (and use BootCTR9 for extra hotkeys by default, though this is easily changed, and will hopefully just be a temporary workaround). As usual, the BootCTR9 hotkeys can be set from the Settings script runner, eliminating the need to manually configure them from a computer.

    3. Of course. B9S doesn't use the "Home" hotkey for anything, so it won't obstruct you from loading the menu at all (neither would GM9 or Luma, but have fun updating Luma if you put it on the firms).

    And my apologies if it seems like I'm over-promoting my own project, but, I take great pride in my work. Would you want to download something from someone who didn't?
     
    Last edited by Kazuma77, Apr 18, 2018
    Gray_Jack, d0k3 and Inthescene like this.
  20. d0k3
    OP

    d0k3 3DS Homebrew Legend

    Member
    12
    Dec 3, 2004
    Germany
    We've got a new beta release for fastboot3DS v1.1. This is new:
    • Support for custom splashscreens (Luma splashcreens work)
    • Support for FIRM from FCRAM (A9NC support)
    • Extended FCRAM support on N3DS
    • Added Bootrom / OTP dumper via SuperHax
    • Vasty improved boot times thanks to improved SDMMC.c driver
    • Faster NAND backups and restores thanks to improved SDMMC.c driver
    • Tons of under-the-hood improvements and smaller bugfixes
    Keep in mind this is a beta release, and some stuff may still be rough around the edges. Please report any issues you may find either here, or contact us via some other means. Ideas are also welcome, but there won't be any new features until the stable v1.1 release is out. Have fun testing!
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice