239 lines
No EOL
17 KiB
Text
239 lines
No EOL
17 KiB
Text
---
|
|
title: "Installing arm9loaderhax" #
|
|
lang: en
|
|
permalink: /installing-arm9loaderhax.html
|
|
---
|
|
|
|
The final Step of this guide is to install arm9loaderhax and setup Luma3DS to run just milliseconds into the boot. This is accomplished by using SafeA9LHInstaller by [AuroraWright](https://github.com/AuroraWright/).
|
|
{: .notice}
|
|
|
|
This will install [AuroraWright's Fork](https://github.com/AuroraWright/arm9loaderhax) of arm9loaderhax.
|
|
{: .notice--info}
|
|
|
|
We will also setup the ability to launch payloads from arm9loaderhax, giving us the ability to unbrick our SysNAND from situations that would normally brick us by restoring from backup.
|
|
{: .notice--info}
|
|
|
|
**You cannot use another console's OTP or you will brick GUARANTEED.**
|
|
{: .notice--danger}
|
|
|
|
#### Overview of steps
|
|
|
|
In this section, we will go through the process that all the other steps have led up to: actually installing arm9loaderhax.
|
|
|
|
This is nearly the best possible kind of device exploit because it is permanently installable into the NAND firm partitions, and runs before most of the OS loads, allowing it to not only work on *all* versions once installed, but also protect itself and recover from most situations that would brick a non-A9LH 3DS such as a nonfunctional home menu or bad title install.
|
|
|
|
The file `arm9loaderhax.bin` is what is launched by arm9loaderhax itself after it finishes loading off of NAND, and can be any valid arm9 payload. This file can be replaced at any time, although Luma3DS allows for the launch of other arm9 payloads using the Luma3DS chainloader.
|
|
|
|
In this case, we use Luma3DS by [AuroraWright](https://github.com/AuroraWright/) to boot a patched SysNAND directly, allowing us to completely bypass the need for any kind of EmuNAND, vastly simplifying the usage of a hacked 3DS in addition to saving SD card space.
|
|
|
|
Once arm9loaderhax is installed and Luma3DS is setup with the correct options, we then restore our previous backup.
|
|
|
|
During this process, we also setup programs such as the following:
|
|
|
|
+ **FBI** *(installs CIA formatted games and applications)*
|
|
+ **Luma3DS Updater** *(updates your CFW installation easily)*
|
|
+ **Hourglass9** *(multipurpose tool which can do NAND and cartridge functions)*
|
|
|
|
#### What you need
|
|
|
|
* <i class="fa fa-magnet" aria-hidden="true" title="This is a magnet link. Use a torrent client to download the file."></i> - [`aeskeydb.bin`](magnet:?xt=urn:btih:18b3a17f78e2376e05feaa150749d9fd689b25dc&dn=aeskeydb.bin&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=http%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Fzer0day.ch%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=http%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.com%3A2710%2Fannounce&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=http%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.aletorrenty.pl%3A2710%2Fannounce&tr=http%3A%2F%2Ftracker.aletorrenty.pl%3A2710%2Fannounce&tr=http%3A%2F%2Ftracker1.wasabii.com.tw%3A6969%2Fannounce&tr=http%3A%2F%2Ftracker.baravik.org%3A6970%2Fannounce&tr=http%3A%2F%2Ftracker.tfile.me%2Fannounce&tr=udp%3A%2F%2Ftorrent.gresille.org%3A80%2Fannounce&tr=http%3A%2F%2Ftorrent.gresille.org%2Fannounce&tr=udp%3A%2F%2Ftracker.yoshi210.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.filetracker.pl%3A8089%2Fannounce)
|
|
* <i class="fa fa-magnet" aria-hidden="true" title="This is a magnet link. Use a torrent client to download the file."></i> - [`fbi-2.4.2-injectable.zip`](magnet:?xt=urn:btih:f978b4cf5eda72823240b9c649f3fd2940a9f525&dn=fbi-2.4.2-injectable.zip&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=http%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Fzer0day.ch%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=http%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.com%3A2710%2Fannounce&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=http%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.aletorrenty.pl%3A2710%2Fannounce&tr=http%3A%2F%2Ftracker.aletorrenty.pl%3A2710%2Fannounce&tr=http%3A%2F%2Ftracker1.wasabii.com.tw%3A6969%2Fannounce&tr=http%3A%2F%2Ftracker.baravik.org%3A6970%2Fannounce&tr=http%3A%2F%2Ftracker.tfile.me%2Fannounce&tr=udp%3A%2F%2Ftorrent.gresille.org%3A80%2Fannounce&tr=http%3A%2F%2Ftorrent.gresille.org%2Fannounce&tr=udp%3A%2F%2Ftracker.yoshi210.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.filetracker.pl%3A8089%2Fannounce)
|
|
* <i class="fa fa-magnet" aria-hidden="true" title="This is a magnet link. Use a torrent client to download the file."></i> - [`data_input_v3.zip`](magnet:?xt=urn:btih:a1195c9f7ab650fa7c7bf020b51fc19ea8d9440c&dn=data%5Finput%5Fv3.zip&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=http%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Fzer0day.ch%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=http%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.com%3A2710%2Fannounce&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=http%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.aletorrenty.pl%3A2710%2Fannounce&tr=http%3A%2F%2Ftracker.aletorrenty.pl%3A2710%2Fannounce&tr=http%3A%2F%2Ftracker1.wasabii.com.tw%3A6969%2Fannounce&tr=http%3A%2F%2Ftracker.baravik.org%3A6970%2Fannounce&tr=http%3A%2F%2Ftracker.tfile.me%2Fannounce&tr=udp%3A%2F%2Ftorrent.gresille.org%3A80%2Fannounce&tr=http%3A%2F%2Ftorrent.gresille.org%2Fannounce&tr=udp%3A%2F%2Ftracker.yoshi210.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.filetracker.pl%3A8089%2Fannounce)
|
|
* The latest fork of [SafeA9LHInstaller](https://github.com/Plailect/SafeA9LHInstaller/releases/latest) *(the `.7z` file)*
|
|
* The latest release of [arm9loaderhax](https://github.com/AuroraWright/arm9loaderhax/releases/latest) *(the `.7z` file)*
|
|
* The latest release of [Luma3DS](https://github.com/AuroraWright/Luma3DS/releases/latest) *(the `.7z` file)*
|
|
* The latest release of [hblauncher_loader](https://github.com/yellows8/hblauncher_loader/releases/latest)
|
|
* The latest release of [Hourglass9](https://github.com/d0k3/Hourglass9/releases/latest)
|
|
* The latest release of [Luma3DS Updater](https://github.com/Hamcha/lumaupdate/releases/latest)
|
|
* The latest release of [DspDump](https://github.com/Cruel/DspDump/releases/latest)
|
|
* The latest release of [FBI](https://github.com/Steveice10/FBI/releases/latest)
|
|
* The Homebrew [Starter Kit](http://smealum.github.io/ninjhax2/starter.zip)
|
|
|
|
#### Instructions
|
|
|
|
##### Section I - Prep work
|
|
|
|
{% capture notice-5 %}
|
|
**Ensure you are using an SD card that is not corrupted!**
|
|
|
|
**If you use a corrupted SD card without fixing it, you may BRICK!**
|
|
|
|
**If you think your SD card may be corrupted, check your SD card for errors using [H2testw (Windows)](h2testw-(windows)), [F3 (Linux)](f3-(linux)), or [F3X (Mac)](f3x-(mac))!**
|
|
{% endcapture %}
|
|
|
|
<div class="notice--danger">{{ notice-5 | markdownify }}</div>
|
|
|
|
1. **If it exists, copy the `/files9/` folder on your SD card to a safe location on your computer and back it up to multiple locations (such as online file storage); the files inside could save you from total data loss if you break your system**
|
|
2. Create a folder named `cias` on the root of your SD card if it does not already exist
|
|
3. Delete the `3ds` folder from the root of your SD card if it exists
|
|
5. Copy _the contents of_ the `starter` folder in `starter.zip` to the root of your SD card
|
|
+ This will include a brand new `3ds` folder to replace the one you just deleted
|
|
6. Copy _the contents of_ the SafeA9LHInstaller `.7z` to the root of your SD card
|
|
7. Copy the `a9lh` folder from the data_input `.zip` to the root of your SD Card
|
|
8. Copy _the contents of_ the arm9loaderhax release `.7z` to `a9lh` folder on your SD card
|
|
9. Copy `hblauncher_loader.cia` from the hblauncher_loader `.zip` to the `/cias/` folder on your SD card
|
|
10. Copy `lumaupdater.cia` from the Luma3DS Updater `.zip` to the `/cias/` folder on your SD card
|
|
11. Copy `FBI.cia` from the FBI `.zip` to the `/cias/` folder on your SD card
|
|
12. Copy `arm9loaderhax.bin` from the Luma3DS `.7z` to the root of your SD card, overwrite existing files
|
|
13. Create a folder named `luma` on the root of your SD card
|
|
14. Create a folder named `payloads` in the `luma` folder on your SD card
|
|
15. Copy `Hourglass9.bin` from the Hourglass9 `.zip` to the `/luma/payloads/` folder on your SD card and rename `Hourglass9.bin` to `start_Hourglass9.bin`
|
|
17. Copy `aeskeydb.bin` to the `/files9/` folder on your SD card
|
|
18. Copy `DspDump.3dsx` to the `/3ds/` folder on your SD card
|
|
19. Copy _the contents of_ `fbi-2.4.2-injectable.zip` to the `/files9/` folder on your SD card
|
|
|
|
##### Section II - Installing arm9loaderhax
|
|
|
|
1. Reinsert your SD card into your 3DS
|
|
2. You should be on 2.1.0
|
|
3. Go to `http://2xrsa.3ds.guide` on your 3DS
|
|
+ If you get the error "This service is not available in your region", use the System Settings to set your device's country to match the NAND region you installed with 2.1.0 ctrtransfer
|
|
+ If you get another error, [follow this troubleshooting guide](troubleshooting#ts_browser)
|
|
+ If you get a glitched screen, [follow this troubleshooting guide](troubleshooting#ts_safe_a9lh_screen)
|
|
+ If you are on a 2DS or New 3DS and Wireless Communication is off, you can re-enable the wireless by removing the battery and unplugging the charger for several seconds then booting back up
|
|
4. Press (Select) to Full Install
|
|
5. The installer will now install arm9loaderhax on your device (this is very fast)
|
|
6. Shut down your console by pressing any button
|
|
7. Copy your console specific `otp.bin` from the `/a9lh/` folder on your SD card to a safe location on your computer and back it up to multiple locations (such as online file storage), then reinsert your SD card into your 3DS
|
|
|
|
##### Section III - Configuring Luma3DS
|
|
|
|
1. Boot your device while holding (Select) to enter the Luma3DS configuration menu
|
|
+ Make sure to start holding the button before pressing power
|
|
+ If you get a black screen, [follow this troubleshooting guide](troubleshooting#ts_sys_a9lh)
|
|
+ If you boot to SafeA9LHInstaller, [follow this troubleshooting guide](troubleshooting#ts_safe_a9lh)
|
|
2. Use the (A) button and the D-Pad to turn on the following:
|
|
+ **"Autoboot SysNAND"**
|
|
+ **"Use SysNAND FIRM if booting with R"**
|
|
+ **"Show NAND or user string in System Settings"**
|
|
3. If you are using a **New 3DS**, you can *also* enable the following:
|
|
+ **"New 3DS CPU" to "Clock+L2(x)"**
|
|
+ This will increase the framerate of many games, but may cause instability in others
|
|
+ If some games do not work properly, disable this option and try again
|
|
+ **This breaks the Homebrew Launcher on 11.3!**
|
|
4. Press (Start) to save and reboot
|
|
+ If you get a black screen, just continue to the next section
|
|
+ If you get a "Failed to mount CTRNAND" error, just continue to the next section
|
|
|
|
##### Section IV - Restoring the System
|
|
|
|
If, before following this guide, you already had an EmuNAND setup and would like to move the contents of your previous EmuNAND to your new SysNAND CFW, now is the time to [follow Move EmuNAND](move-emunand) instead of doing the first four steps in this section.
|
|
{: .notice--info}
|
|
|
|
1. Boot your device while holding (Start) to enter Hourglass9
|
|
2. Go to "SysNAND Backup/Restore"
|
|
3. Go to "SysNAND Restore (keep a9lh)"
|
|
4. Input the key combo given, then select the `NANDmin.bin` image when prompted by pressing (A)
|
|
5. Press (Start) to reboot
|
|
+ If you get a black screen, [follow 9.2.0 ctrtransfer](9.2.0-ctrtransfer)
|
|
6. If your backup was of a version between 3.0.0 and 4.5.0, your console will not boot until you manually download the required firmware:
|
|
+ Download [this file](http://nus.cdn.c.shop.nintendowifi.net/ccs/download/0004013800000002/00000056) and rename it to `firmware.bin`
|
|
+ Download [this file](http://nus.cdn.c.shop.nintendowifi.net/ccs/download/0004013800000002/cetk)
|
|
+ Copy `firmware.bin` and `cetk` to the `/luma/` folder on your SD card
|
|
+ Delete both of these files after updating your 3DS
|
|
7. Update your 3DS by going to System Settings, then "Other Settings", then going all the way to the right and using "System Update"
|
|
+ Updates while using A9LH + Luma (what you have) are safe, stop asking about it
|
|
+ The warning about never updating a New 3DS from 2.1.0 does not apply after restoring your NAND backup.
|
|
+ If this gives you an error, set your DNS settings to "auto"
|
|
+ If this still gives you an error and your NAND is below 9.2.0, [follow 9.2.0 ctrtransfer](9.2.0-ctrtransfer)
|
|
|
|
##### Section V - Injecting FBI
|
|
|
|
1. Boot your device while holding (Start) to enter Hourglass9
|
|
2. Go to "SysNAND Backup/Restore", then select the "Health&Safety Dump" option to dump Health & Safety to `hs.app` **(you can use Up and Down / Left and Right to change the name)**
|
|
3. Press (B), then select the "Health&Safety Inject" option
|
|
4. Input the key combo given
|
|
5. Select the FBI injectable `.app` for your region
|
|
6. Press (A) and confirm to inject
|
|
7. Press (Start) to reboot
|
|
8. If you still launch to the stock Health & Safety app and have downgraded with Gateway in the past, [follow this troubleshooting guide](troubleshooting#gw_fbi)
|
|
|
|
##### Section VI - Finalizing setup
|
|
|
|
1. Open Health and Safety (which is now FBI)
|
|
2. Select "SD"
|
|
3. Select "cias"
|
|
4. Select "\<current directory>"
|
|
5. Select the "Install all CIAs" option, then press (A) to confirm
|
|
6. Return to the SD directory with (B)
|
|
7. Navigate to `arm9loaderhax.bin`, then press (A) on it and select the "Copy" option
|
|
8. Return to the FBI main menu with (B)
|
|
9. Select "CTR NAND"
|
|
10. Select "\<current directory>"
|
|
11. Select the "Paste" option, then press (A) to confirm
|
|
12. Exit with the home button
|
|
13. Launch the Homebrew Launcher from the home menu
|
|
14. Select "DSP Dump"
|
|
15. Press (Start) when prompted to exit
|
|
16. Press (Start) to open the Homebrew Launcher exit menu
|
|
17. Press (A) while holding (Start) to reboot into Hourglass9
|
|
18. Go to "SysNAND Backup/Restore", then select "Health&Safety Inject"
|
|
19. Select `hs.app` (the original one that doesn't contain FBI), then press (A) and confirm to inject
|
|
20. Press (Select) on the main menu to eject your SD card
|
|
21. Press (Start) to reboot with the SD card removed
|
|
+ Booting the device at least once with the SD card removed will allow you to configure the CTRNAND based Luma3DS installation
|
|
19. Use the (A) button and the D-Pad to turn on the following:
|
|
+ **"Show NAND or user string in System Settings"**
|
|
23. If you are using a **New 3DS**, you can *also* enable the following:
|
|
+ **"New 3DS CPU" to "Clock+L2(x)"**
|
|
+ This will increase the framerate of many games, but may cause instability in others
|
|
+ If some games do not work properly, disable this option and try again
|
|
+ **This breaks the Homebrew Launcher on 11.3!**
|
|
24. Reinsert your SD card, then press (Start) to save and reboot!
|
|
|
|
___
|
|
|
|
If DSi / DS functionality has broken (such as DS carts or DSiWare no longer working), [follow this troubleshooting guide](troubleshooting#twl_broken)
|
|
{: .notice--warning}
|
|
|
|
{% capture notice-10 %}
|
|
You can now use Luma3DS Updater to update your Luma3DS to the latest version just by opening it and pressing (A).
|
|
This is not the same thing as a System Update; it just downloads and extracts the newest Luma3DS files.
|
|
This will only update the Luma3DS files on the SD Card. If you boot the device without an SD card, it will use the version you placed in CTR NAND.
|
|
{% endcapture %}
|
|
|
|
<div class="notice--info">{{ notice-10 | markdownify }}</div>
|
|
|
|
{% capture notice-6 %}
|
|
You will now boot a Custom Firmware based SysNAND by default.
|
|
You can now hold (Select) on boot to launch the Luma3DS configuration menu.
|
|
You can now hold (Start) on boot to launch Hourglass9.
|
|
{% endcapture %}
|
|
|
|
<div class="notice--info">{{ notice-6 | markdownify }}</div>
|
|
|
|
You can update your arm9loaderhax installation in the future by following the instructions on the [Updating A9LH](updating-a9lh) page.
|
|
{: .notice--info}
|
|
|
|
To use [NTR CFW](https://github.com/44670/BootNTR/), get `ntr.bin` from the appropriate `.zip` on [this](https://github.com/44670/BootNTR/releases) page and copy it to the root of your SD card, then install `BootNTR.cia` from [this](https://github.com/astronautlevel2/BootNTR/releases/latest) page.
|
|
{: .notice--info}
|
|
|
|
Keep your `NANDmin.bin` file, it can be restored by Hourglass9 to save you from a brick in the future.
|
|
{: .notice--info}
|
|
|
|
You can remove your NAND backups from `/files9/` as long as you still have them backed up to a safe location.
|
|
{: .notice--info}
|
|
|
|
{% capture notice-7 %}
|
|
**You can remove any extra files and folders from the root of the SD card that are *not* in the following list:**
|
|
|
|
+ 3ds
|
|
+ files9
|
|
+ hblauncherloader
|
|
+ luma
|
|
+ Nintendo 3DS
|
|
+ arm9loaderhax.bin
|
|
+ boot.3dsx
|
|
|
|
{% endcapture %}
|
|
|
|
<div class="notice--info">{{ notice-7 | markdownify }}</div>
|
|
|
|
For information on changing your device to another region, check out the [Region Changing](region-changing) page.
|
|
{: .notice--success}
|
|
|
|
For information on keeping your A9LH installation up to date, check out the [Updating A9LH](updating-a9lh) page.
|
|
{: .notice--success}
|
|
|
|
For information on using Luma3DS's various features, check out [its wiki](https://github.com/AuroraWright/Luma3DS/wiki/Options-and-usage).
|
|
{: .notice--success} |