Skip to content
`boot.nds` to use the "FIRM partitions known-plaintext" exploit for DSi mode firm writing on 3ds
C Makefile Other
Branch: master
Clone or download
Pull request Compare This branch is 39 commits ahead, 1 commit behind Plailect:master.
Latest commit 1bfc1bd Aug 29, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
firm_old3ds quick oopsie Jul 31, 2018
build.bat py 2 or 3 is ok now Apr 25, 2019


  • WARNING: Never, under any circumstance, use this homebrew in conjunction with a youtube/video guide of any kind!

General Info

  • This app only writes to FIRM0, not FIRM1, so it should be safe given your FIRM1 is not corrupt or a9lh'd.
  • Never use this on anything but 3DS FIRM 11.10.0-YZ or 11.11.0-YE
  • NEVER use this if arm9loaderhax or sighax is installed (on any firmware)! The result will be a brick!


  • Just supply the current decrypted FIRMs for both new/old 3ds and put them in the firm_new and firm_old directories respectively. Then place the newest boot9strap.firm payload in the payload directory. Then compile with make FIRM_INFO="11.10 only" or whatever is actually the firmware range of the current native firm. The user does not have to supply any extra files like in previous versions. Needs the latest libfat version.

Important b9sTool 5.X.X differences to 4.X.X


  • This has been removed. This feature was made in the interest of safety, but the realization that the update trick can reliably restore corrupted firms made it redundant.
    It was also a pain in the ass.


  • This is dumped to your boot9strap folder when b9s is installed. It isn't used now but may be useful in the future. Don't delete it.
    The hex number in the filename is the first 4 bytes of the file's SHA1.

Cycling firm types:

  • When you install boot9strap multiple times, the standard behavior is that it will cycle between b9s and stock firm.
    Don't count on this though, it's just a property of xoring operations and really isn't intended.
    It is recommended you only install boot9strap once.

Firmware info:

  • 4.0.1 - 5.0.1 is for firmware 11.10 or 11.11(eur) ONLY (always check the firmware in the app menu to be sure as this can change as new firmwares are released!)
  • 4.0.0 is for firmwares 11.4 to 11.7 ONLY
  • Be careful using b9sTool between firmware updates - only use b9sTool on the firmware it's intended for.


  • zoogie, plailect
You can’t perform that action at this time.