ROM Hack [Release] 3DS Simple CIA Converter

  • Thread starter Thread starter Riku
  • Start date Start date
  • Views Views 1,614,754
  • Replies Replies 869
  • Likes Likes 165
If you built a 3ds/cia without partition 2, it won't have the file to distribute for download play... That's up to the tool you use for packaging, the manual way I recommend in "romhaching a cxi" will work!
What do you mean by that? Like converting a .3ds to .cxi to .cia? Or decrypting a
cxi then inputting partition 2 into the decrypted files from the .cxi into the same folder to rebuild it into a .3ds then to a .cia?

Or am I just overthinking this? Will decrypting a .cxi & modding the contents, then rebuilding it into a .3ds, then converting it into a .cia would work? xD Sorry if I said too much. Lol
 
Will decrypting a .cxi & modding the contents, then rebuilding it into a .3ds, then converting it into a .cia would work?
A cxi is partition 0 of a (standard executable application's) 3ds/cia
Partition 1 is conventionally the digital manual, 2 is the application to be distrbuted for download play
So you must be sure to extract and reinsert partition 2 too for download play to work!

By the way, no need to build .3ds and convert to cia, makerom can create cia directly
 
A cxi is partition 0 of a (standard executable application's) 3ds/cia
Partition 1 is conventionally the digital manual, 2 is the application to be distrbuted for download play
So you must be sure to extract and reinsert partition 2 too for download play to work!

By the way, no need to build .3ds and convert to cia, makerom can create cia directly
ok. Would I need to have devkitpro and python 2.7 still installed? I never used makerom before. I tried to use it before, but it was too confusing back then to understand how it works.

EDIT: I meant to say local multiplayer, not download play. I forgot to mention that difference. Sorry...
 
Last edited by Deleted member 350372,
Hey. I know this was a while ago, but I knew what the problem was. I was converting my mods using an outdated method. I built my mods into a .3ds then used 3ds simple cia converter to convert into a .cia file. Fortunately, everything works when I press "CR" using Asia81's hacking tools to convert my mods STRAIGHT into a decrypted .cia file. I then reencrypt the cia by using decrypt9, then finally install it using FBI. I tested this out and works 100%. I basically installed Mario Kart 7, but with a modified title ID. Instead of it ending in 30800, I changed it to end in 36900. xD Also I renamed the CTR code from CTR-P-AMKE to CTR-P-EDMK (EDMK being Edited Mario Kart) :P

Sorry if any of the title ID endings or CTR game ID endings are against the rules here for GBATemp. :(
 
Last edited by Deleted member 350372,
After looking at how unnecessarily complicated current CIA converting methods are, I decided to write this tool. It's very simple and doesn't use Python or .NET Framework or any other programs and scripts, just my own code in a single exe file.

EGYsPCU.png


I decided to take slightly different approach to keep things simple and only use ExHeader XORpads. They are 1MB each in size and multiple ROM files supported during 'ncchinfo.bin' creation, so you can make xorpads for a bunch of games in one go. With version 4.0 I added ability to patch minimum required kernel version (FW Spoof) and 'RegionFree', which requires *.exefs_norm.xorpad's. 'FW Spoof' function checks FW version game requires to run and only applied if original value exceeds entered (2D02:FW8.0-8.1, 2E02:FW9.0-9.2, 3002:FW9.3, 3102:FW9.5, 3202:FW9.6-9.8).

1) Put your 3DS games into 'roms' folder and press 'Create ncchinfo.bin file' button to create 'ncchinfo.bin' from 3DS ROMs.

2) Use rxTools along with created 'ncchinfo.bin' to generate ExHeader XORpads, put it in root of SD card, launch rxTools and follow 'Decryption Options-->Generate Xorpads'. At the end of process you may see 'Could not open SDinfo.bin!' message. It's okay, just ignore it.

3) Put *.xorpad files you generated on 3DS from SD root into 'xorpads' folder, press 'Convert 3DS ROM to CIA' button, select folder with *.3ds files and wait for program to finish.

>>> Detailed guide with pictures <<<

UPDATE (2015-07-03)
Version 4.3 is out

Changelog:
  • Added zero-key encrypted ROM support, no xorpad required.
  • Added error skip so program doesn't stop converting remain files.
  • Added application Major version writing into TMD.
Version 4.3, 2015-07-03
----------------------------------
- Added zero-key encrypted ROM support, no xorpad required.
- Added error skip so program doesn't stop converting remain files.
- Added application Major version writing into TMD.

Version 4.0, 2015-06-28
----------------------------------
- Added Download Play support.
- Added input 3DS ROM folder selection dialog.
- Added searching for *.3ds|*.3dz files in subfolders.
- Improved partition type detection.
- Improved 'FW Spoof' function.
- Set RegionFree to default without ability to disable it.
- Code cleanup and minor optimizations.
This Looks quite nice, might try this at some point :).
 
This Looks quite nice, might try this at some point :).
Are u sure dude? If you scroll up, I had download play issues making .cia files from that program. I would recommend you use Asia81 3ds hack tools to decrypt, do whatever, and then encrypt it back into a .cia format. Download play doesn't break for some games like Mario Kart 7 for this method. Also don't forget to NCCH encrypt your decrypted cia in decrypt9 BEFORE installing using FBI! I personally find this method to work better and save time rather than doing 2 steps that can be put into one. Not forcing you obviously to do this, but I would highly recommend it. :D

P.S. press "CR" for reencryption. For the major and minor version thingys, unless known, I just press enter without typing anything in. Just another helpful tip I found.
 
Last edited by Deleted member 350372,
I was wondering. Are there any benefits of converting a 3DS file to a CIA this way to just downloading a CIA of the internet? For example: are you less detectable by Nintendo with this method?
 
I was wondering. Are there any benefits of converting a 3DS file to a CIA this way to just downloading a CIA of the internet? For example: are you less detectable by Nintendo with this method?
With a custom firmware, using .CIAs you can install whichever game you wish.
 
  • Like
Reactions: Rourke
Hey guys, I don't have access to an PC for the next 3-5 months so I have to do all with my Android phone. But now I want to covert MHXX from .3ds to . CIA without an PC, so is this possible ?

I'm going to attach the file so soon as possible

Gesendet von meinem FRD-L09 mit Tapatalk
 
@Riku now that all the keys from the bootrom are known, will you update your converter to automatically decrypt a .3ds file and convert it to a CIA?

Here is a xorpad generator written in python from back in the day when the keyscrambler got figured out. It should work with all the keys now:

https://pastebin.com/K3pVsnkq

I don't even know if xorpads are required anymore, since on the 3ds you can use on of d0k3s tool to decrypt an entire .3ds file. This should now also be possible on a PC.
 
Last edited by FR0ZN,
@Riku now that all the keys from the bootrom are known, will you update your converter to automatically decrypt a .3ds file and convert it to a CIA?

Here is a xorpad generator written in python from back in the day when the keyscrambler got figured out. It should work with all the keys now:

https://pastebin.com/K3pVsnkq

I don't even know if xorpads are required anymore, since on the 3ds you can use on of d0k3s tool to decrypt an entire .3ds file. This should now also be possible on a PC.
this tool will likely not be getting updates anytime soon.
And maybe he don't give a shit anymore. I'm not spending my time coding this, don't expect any updates.
I think the better choice is to go with a converter that supports using the bootrom keys instead of one that still relies on xorpads.
 
  • Like
Reactions: Zidapi

Site & Scene News

Popular threads in this forum