Installing boot9strap (DSiWare Game Injection)


For support in English, ask for help at Nintendo Homebrew on Discord.
If you appreciate this guide, I accept Donations.


Required Reading

Note that if you have any payload files other than GodMode9.firm in the /luma/payloads/ folder on your SD card, holding (Start) on boot will display a “chainloader menu” where you will have to use the D-Pad and the (A) button to select “GodMode9” for these instructions.

To use the magnet links on this page, you will need a torrent client like Deluge.

To extract the .7z files linked on this page, you will need a file archiver like 7-Zip or The Unarchiver.

If you do not use the correct .firm corresponding to the target 3DS, you will BRICK! Ensure you download and use the correct one!

What You Need

Instructions

Section I - Prep Work

Use a save manager to backup any saves you care about on the target 3DS (it will be formatted!)

  1. Power off the source 3DS
  2. Insert the source 3DS’s SD card into your computer
  3. Copy GodMode9.firm from the GodMode9 .zip to the /luma/payloads/ folder on the source 3DS’s SD card
  4. Copy the gm9 folder from the GodMode9 .zip to the root of the source 3DS’s SD card
  5. Copy the .app and savedata folder from DSiWare injection .zip to the root of the source 3DS’s SD card
  6. Reinsert the source 3DS’s SD card
  7. Boot the source 3DS while holding (Start) to launch GodMode9
  8. Press (Home) to bring up the action menu
  9. Select “Scripts…”
  10. Select “GM9Megascript”
  11. Select “Backup Options”
  12. Select “SysNAND Backup”
  13. Press (A) to confirm
    • This process will take some time
    • If you get an error, make sure that you have at least 1.3GB of free space on your SD card
  14. Press (A) to continue
  15. Press (B) to return to the main menu
  16. Select “Exit”
  17. Press (A) to relock write permissions if prompted
  18. Hold (R) and press (B) at the same time to eject the source 3DS’s SD card
  19. Put the source 3DS’s SD card into your computer
  20. Put the target 3DS’s SD card into your computer
  21. Backup every file on both 3DS’s SD cards to two separate folders on your computer (keep track of which is which)!
  22. Reinsert each SD card back into their corresponding 3DS
  23. Press (Start) on the source 3DS to reboot

Section II - Injecting the game and save

  1. Boot the source 3DS while holding (Start) to launch GodMode9
  2. If you are prompted to create an essential files backup, press (A) to do so, then press (A) to continue once it has completed
  3. If you are prompted to fix the RTC date&time, press (A) to do so, then set the date and time, then press (A) to continue
    • Note that, if you had to fix the RTC date and time, you will have to fix the time in the System Settings as well after this guide
  4. Navigate to [0:] SDCARD
  5. Press (Y) on the DSiWare injection .app to copy it
  6. Press (B) to go back to the main menu
  7. Navigate to SYSNAND TWLN -> title -> 00030004 -> <8-character-id>
  8. Navigate to content
  9. Press (A) on the .app file in the folder
  10. Select “Inject data @offset”
  11. Press (A) to select the offset 00000000
  12. Press (A) to unlock SysNAND writing, then input the key combo given
  13. Press (B) to go back to the main menu
  14. Navigate to [2:] SYSNAND TWLN -> title -> 00030004 -> <8-character-id>
  15. Navigate to data
  16. Press (A) on public.sav
  17. Select “Mount as FAT image”
  18. Press (B) to go back to the main menu
  19. Navigate to [0:] SDCARD
  20. Press (Y) on the file(s) in the savedata folder to copy them
    • If there is a savedata folder inside of the savedata folder, it is not by mistake. You should copy the second savedata folder, not the files inside of that.
  21. Press (B) to go back to the main menu
  22. Navigate to [7:] FAT IMAGE
  23. Use the (X) button to delete everything inside of FAT IMAGE
  24. Press (Y) to paste a copy of the contents of the savedata folder to FAT IMAGE
  25. Select “Copy path(s)”
  26. Press (A) to unlock image writing, then input the key combo given
  27. Press (Start) to reboot the source 3DS
  28. Launch your DSiWare game on the source 3DS
  29. Tap the screen or press any button to start the game and test if the save is functional
    • If your game has an error about boot.nds or a white screen, then the exploit has been successful
    • If your game has an error about corrupted or inaccessible save data, confirm that you copied the contents of the savedata folder and not the savedata folder itself
    • If your game behaves normally and does not give you an error about boot.nds, then you should stop and figure out what went wrong
    • If you get a black screen, follow this troubleshooting guide

Section III - System Transfer

  1. If the target 3DS has a Nintendo Network ID on it, you must format the device using System Settings:
    • Go to the last page of “Other Settings” and select “Format System Memory”, then follow all instructions
  2. Read the following:
    • Your CFW 3DS = the source 3DS = “Source System”
    • Your Stock 3DS = the target 3DS = “Target System”
    • Move DSiWare titles if prompted!
    • Do NOT delete the source system’s SD card contents if prompted
    • Make sure neither device’s battery dies during the transfer
    • Old 3DS or Old 2DS (source) to New 3DS or New 2DS (target) only: if asked which method you wish to use to transfer the SD card data:
    • Do NOT choose the “Low-Capacity microSD Card Transfer” or minimal option (option 2), it will only transfer tickets and likely will not transfer the DSiWare save.
    • Fast Method: If you have the ability to move the data from the SD card (source) to the microSD card (target), when prompted use the “PC-Based Transfer” option (option 3).
    • Slowest Method: If you don’t have the ability to move the data on a PC use the full “Wireless Transfer” option (option 1).
  3. Go to this link and follow Nintendo’s official instructions for System Transferring from one system to another while keeping in mind what you just read

Section IV - Restoring the source 3DS

  1. On the source 3DS, complete initial setup
  2. Do one of the following
    • Do the rest of the sections and then the full guide on the target 3DS, then wait one week (do not restore your NAND backup before system transferring), then System Transfer from the target 3DS back to the source 3DS (remember you cannot transfer back from a New 3DS or New 2DS to an Old 3DS or Old 2DS)
    • Call Nintendo and tell them you no longer have access to the device that your NNID is linked to (which is the target 3DS in this case), and would like it linked to a different device (which is the source 3DS in this case)
    • You can also just remove the NNID from the source 3DS if you’d prefer it remain on the target 3DS
  3. Reboot the source 3DS while holding (Start) to launch GodMode9
  4. Navigate to [0:] SDCARD -> gm9 -> out
  5. Press (A) on <date>_<serialnumber>_sysnand_###.bin to select it, then select “NAND image options…”, then select “Restore SysNAND (safe)”
  6. Press (A) to unlock SysNAND overwriting, then input the key combo given
    • This will not overwrite your boot9strap installation
  7. Input the key combo given to unlock SysNAND (lvl1) writing
    • This process will take some time
  8. Once it has completed, press (A) to continue
  9. Press (A) to relock write permissions if prompted
  10. Press (Start) to reboot the source 3DS

Section V - Flashing the target 3DS’s FIRM

  1. Copy boot.firm from the Luma3DS .7z to the root of the target 3DS’s SD card
  2. Copy boot.nds (B9STool) to the root of the target 3DS’s SD card
  3. Copy boot.3dsx to the root of the target 3DS’s SD card
  4. Launch b9sTool by starting your DSiWare game on the target 3DS
    • If prompted, you may have to tap the screen to trigger the exploit
  5. Select “Install boot9strap” and confirm
  6. Exit b9sTool, then power off your device

Section VI - Configuring Luma3DS

  1. Boot the target 3DS while holding (Select) to launch the Luma configuration menu
  2. Use the (A) button and the D-Pad to turn on the following:
    • “Show NAND or user string in System Settings”
  3. Press (Start) to save and reboot

Continue to Finalizing Setup