Tutorial
Updated
Create tiny GBA forwarders for EmuNAND
Background: When you try to launch a GBA Game through your EmuNAND (Whether it's downloaded from the eShop through the Ambassador Program or a custom GBA game installed through a CIA), the system reboots before it loads the title. Once it reboots it will look for the title in SysNAND, and you'll get an error message if you haven't also installed the game there.
Once you have the game installed in both SysNAND and EmuNAND, everything is hunky-dory and working, but I didn't like that I had to install the same title to my system twice and take up double the space on the SD card. That's where this method comes in. (I know GBA games aren't that big, it just bothered me) I wasn't planning on writing this up, but someone requested it so here it is.
What we're doing: We are going to create two CIA files. The actual game, which will be installed in SysNAND, and a forwarder of sorts that will be installed in EmuNAND.
Please Note: This tutorial partially assumes that you are already familiar with running GBA games through EmuNAND. If you are having trouble running GBA games through EmuNAND normally, this tutorial is not the place to start.
What you will need:
Steps:
At this point you should have two files:
Problems?
I'll write this later. Mostly the same steps as with custom games, but you'll get your official CIAs using FunkyCIA2 and deep decrypt them using Decrypt9WIP instead of using 3DS Simple GBA Converter
Tested with the following games:
Once you have the game installed in both SysNAND and EmuNAND, everything is hunky-dory and working, but I didn't like that I had to install the same title to my system twice and take up double the space on the SD card. That's where this method comes in. (I know GBA games aren't that big, it just bothered me) I wasn't planning on writing this up, but someone requested it so here it is.
What we're doing: We are going to create two CIA files. The actual game, which will be installed in SysNAND, and a forwarder of sorts that will be installed in EmuNAND.
Please Note: This tutorial partially assumes that you are already familiar with running GBA games through EmuNAND. If you are having trouble running GBA games through EmuNAND normally, this tutorial is not the place to start.
What you will need:
- 3DS Simple GBA Converter
- 3DS HackingToolkit by Asia81 (Link in the "What You Need" Section)
- 3DS Simple CIA Converter
Steps:
- Download all the tools above, and extract each of them to their own folder.
- Using the 3DS Simple GBA Converter, create a CIA using your GBA ROM, Generated Footer, Icons and Banners like you normally would.
- Copy the resulting CIA to the PackEnglishV4.8\PackHack folder.
- Remove spaces and special characters from the CIA filename to avoid problems with the tool. I.e: Mario & Luigi.CIA -> MarioLuigi.CIA
- Launch HackingToolkit3DS.exe, and enter CIA.
- Type the name of your CIA into the program without the extension.
- Your CIA will be unpacked. At "Decompress the code.bin file" choose N for No.
- Once this is complete you can close the HackingToolkit. We are done with the original CIA we made for now, so move it to a safe place and rename it to something distinguishable. I.e: Mario & Luigi - Superstar Saga - SysNAND.CIA
- Open the ExtractedExeFS folder, and delete the existing code.bin file. (This is essentially the rom)
- Create a blank file (Right Click -> New -> Text Document will do) and rename it to .code.bin (Two dots intentional, don't forget to get rid of .txt)
- Launch HackingToolkit3DS.exe again, and this time enter 3DSB to open the 3DS Builder.
- Click "Open RomFS" and choose the ExtractedRomFS Directory, and do the same for Open ExeFS.
- When you choose the ExtractedExeFS Directory, it will ask you if you want to Compress the code.bin file. Choose yes for this, and click through any remaining prompts.
- Select "Open ExHeader" and choose the DecryptedExHeader.bin file.
- When you choose "Save Location..." choose the "roms" directory within 3DS Simple CIA Converter. Don't forget to save your file with the .3DS Extension for now.
- Before we click "Go", we need to get our Serial #. Open the DecryptedExHeader.bin file with any text editor, and the first 4 letters will be what we need. For example, if we were doing this with Mario & Luigi: Superstar Saga, the first 4 letters would be AYNE. Therefore, we would want our Serial to be CTR-P-AYNE.
- Click "Go", and it will generate a GHASTLY HUGE 128 MB 3DS FILE. Don't worry, the point of this guide was to reduce used space on the SD card remember?
- Launch the 3DS Simple CIA Converter, and check the box that says FW Spoof.
- Select "Convert 3DS ROM to CIA" and choose the roms directory that we saved our 3DS file to.
At this point you should have two files:
- Mario & Luigi - Superstar Saga - SysNAND.CIA (The CIA we created in Step 2)
- Mario & Luigi - Superstar Saga - EmuNAND.CIA (The Forwarder CIA we just made)
Problems?
- Make sure you've patched AGB_FIRM properly for both SysNAND and EmuNAND!
- Make sure your GBA game will even run with the normal method of installing the full game to EmuNAND and SysNAND
- Read the directions again carefully!
- Go setup your 3DS with A9HL and bypass the need for a EmuNAND
Tested with the following games:
- All of the Ambassador GBA Titles
- Mario & Luigi: Superstar Saga
Last edited by TeconMoon,