ROM Hack [Release] ExInjector - Inject original exheaders into repacked roms

slainfu

Member
Newcomer
Joined
Jan 19, 2015
Messages
20
Trophies
0
Age
41
XP
100
Country
Hi all,
I rewrite this app to use in python, not shure but xorpad generation it's no necessary, obtain the same results as original app in my testsin OSX yosemite and copiled tools for this OS, this need ctrtool
https://gist.github.com/swarzesherz/447fafcb73e2f5f3f7bf

Btw, enjoy and test


I've just tested this against a cxi I built earlier that ExInjector was failing on (Linux user doing it remotely via SSH, failed due to a popup Window in wine). It appears to have worked, and the subsequent makerom cia command worked on it too. I'll test it later, but aside from my xterm staying green, it looks good so far.

So, we have all the tools we need now open sourced and in C/Python. Good job. :) If anyone else had been struggling with makerom from latest Git compiling but segfaulting in Linux, I fixed that earlier too.
 

swarzesherz

Member
Newcomer
Joined
Apr 12, 2014
Messages
12
Trophies
0
Age
38
XP
617
Country
Mexico
Now upload pack with 3ds to cia v2.00 with binaries for OSX(testesd 10.9.5 and 10.10.1), linux x86(Ubuntu i686, Gento i686), linux x64(Ubuntu x86_64, Gentoo x86_64),
This version maybe work in other nix distributions similar to my tests.
Original source: https://gbatemp.net/threads/release...nto-repacked-roms.373839/page-13#post-5166605
ExInjector python version: https://gist.github.com/swarzesherz/447fafcb73e2f5f3f7bf
3ds to cia bash version: https://gist.github.com/swarzesherz/cccc328d6718e9e1f896

Enjoy and test
 

Attachments

  • 3ds_to_cia_v2.00.rar
    1.4 MB · Views: 1,296

slainfu

Member
Newcomer
Joined
Jan 19, 2015
Messages
20
Trophies
0
Age
41
XP
100
Country
Just to confirm, swarzesherz's ExInjector.py script works great. I've not tested his 3ds to cia tool yet as I convert to CIA manually, but I might get around to it.

If there's any demand for a full binary/Python toolset of all required utilities (Linux 32-bit and 64-bit), ask and I'll pack them all into a tarball and post them. No real need to depend on Wine for anything now.
 

swarzesherz

Member
Newcomer
Joined
Apr 12, 2014
Messages
12
Trophies
0
Age
38
XP
617
Country
Mexico
Just to confirm, swarzesherz's ExInjector.py script works great. I've not tested his 3ds to cia tool yet as I convert to CIA manually, but I might get around to it.

If there's any demand for a full binary/Python toolset of all required utilities (Linux 32-bit and 64-bit), ask and I'll pack them all into a tarball and post them. No real need to depend on Wine for anything now.
In previous post included pack with all tools compiled and as you say no required wine for anything ;)
 
  • Like
Reactions: slainfu

Shadowtrance

Well-Known Member
Member
Joined
May 9, 2014
Messages
2,493
Trophies
0
Location
Hervey Bay, Queensland
XP
1,807
Country
Is there any way to convert .3ds to .cia without generating the xorpads, this process on 3ds is boring :/

How exactly do you propose to decrypt the rom without the xorpads? :P

And no, there isn't.

You CAN however do multiple roms at the same time by simple selecting them all (say you have 5), select them all > drag n drop them onto the ctrkeygen.py then do the usual process of copying ncchinfo.bin to sd card etc etc
 

slainfu

Member
Newcomer
Joined
Jan 19, 2015
Messages
20
Trophies
0
Age
41
XP
100
Country

swarzesherz

Member
Newcomer
Joined
Apr 12, 2014
Messages
12
Trophies
0
Age
38
XP
617
Country
Mexico

hippy dave

BBMB
Member
Joined
Apr 30, 2012
Messages
9,871
Trophies
2
XP
29,155
Country
United Kingdom
Now upload pack whit 3ds to cia v2.00 with binaries for OSX(testesd 10.9.5 and 10.10.1), linux x86(Ubuntu i686, Gento i686), linux x64(Ubuntu x86_64, Gentoo x86_64),
This version maybe work in other nix distributions similar to my tests.
Original source: https://gbatemp.net/threads/release...nto-repacked-roms.373839/page-13#post-5166605
ExInjector python version: https://gist.github.com/swarzesherz/447fafcb73e2f5f3f7bf
3ds to cia bash version: https://gist.github.com/swarzesherz/cccc328d6718e9e1f896

Enjoy and test

Testing, many thanks for this - I haven't been bothered to make my own cias manually after the first one or two, and this makes it a lot easier!

Found one little typo so far :)
Code:
./Make2.0.sh: line 330: pyhton: command not found

Besides that I've had a couple of successful builds, about to try installing one B-)
 

swarzesherz

Member
Newcomer
Joined
Apr 12, 2014
Messages
12
Trophies
0
Age
38
XP
617
Country
Mexico
Testing, many thanks for this - I haven't been bothered to make my own cias manually after the first one or two, and this makes it a lot easier!

Found one little typo so far :)
Code:
./Make2.0.sh: line 330: pyhton: command not found

Besides that I've had a couple of successful builds, about to try installing one B-)

Thanks, fixed and updated source of Make2.0.sh: https://gist.github.com/swarzesherz/cccc328d6718e9e1f896
And re upload package
 

slainfu

Member
Newcomer
Joined
Jan 19, 2015
Messages
20
Trophies
0
Age
41
XP
100
Country
I've taken the rsfgen.py posted earlier and cleaned it up a tad, adding --help and other arguments to make it easier to script for. Seems to work fine here, and supports both spoofing and region-free. Please test and let me know how it goes.

Code:
$ bin/rsfgen.py --help
usage: rsfgen.py [-h] -r FILE -e FILE -o FILE [-f FILE] [-s]
 
RSF file generator for 3DS exheader manipulation
 
optional arguments:
  -h, --help            show this help message and exit
  -r FILE, --rom FILE  3DS rom file
  -e FILE, --exheader FILE
                        decrypted exheader.bin file
  -o FILE, --rsf FILE  RSF file to use as a template and to write to
  -f FILE, --regionfree FILE
                        icon.bin file to apply region free patch
  -s, --spoof          apply firmware spoofing
 

Attachments

  • rsfgen.py.zip
    2.3 KB · Views: 918
  • Like
Reactions: cearp

slainfu

Member
Newcomer
Joined
Jan 19, 2015
Messages
20
Trophies
0
Age
41
XP
100
Country
Thanks, fixed and updated source of Make2.0.sh: https://gist.github.com/swarzesherz/cccc328d6718e9e1f896
And re upload package


Your x64 makerom binary segfaults during the creation of the cxi. If you check a post of mine from a few days ago, you need to comment out line 130 in ncch.c for makerom for it not to segfault in x64 Linux. You *may* have to do that for the x86 binary too, but I've not tested that. It's clearly a platform dependant bug, so I'll look to finding a nicer, OS agnostic way of fixing that one.
 
  • Like
Reactions: Melon__Bread

Apache Thunder

I have cameras in your head!
Member
Joined
Oct 7, 2007
Messages
4,426
Trophies
3
Age
36
Location
Levelland, Texas
Website
www.mariopc.co.nr
XP
6,792
Country
United States
So any idea on on how to modify DLC CIAs? I want to modify the 1.2 patch for Pokemon X. I know where to modify the "version" the exheader reports so I can make the 1.2 patch into a higher version so that I can run the game without the 1.3 patch. Problem is I can't inject the modified exheader into Pokemon X 3DS because it crashes. It works fine without injecting it, but once I do, it freezes at 3DS boot logo. :(

I've been able to do this with Pokemon Omega Ruby. Odd that I can't with Pokemon X... :(

So I'm instead trying to go the route of modifying the patch. So help on either method would be appreciated. :)
 

n1i1c1o1

New Member
Newbie
Joined
Apr 13, 2015
Messages
2
Trophies
0
XP
52
Country
Gambia, The
I tried it for Pokemon Omega Ruby, but it didnt work - An Error accured, shut your system off etc.
Im using my 3DS on Version 4.5.0-8E with CFW - no Flashcard.
I really hope u can help me...
Nico
 

n1i1c1o1

New Member
Newbie
Joined
Apr 13, 2015
Messages
2
Trophies
0
XP
52
Country
Gambia, The
pokemon games dont work on cfw, let alone 7.x encrypted games
how can i see the encription type of a game? is there a list or something for games that do work?
on what kind of flahcard would it work?
 

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,725
Trophies
2
XP
8,510
Country
Tuvalu
from what i understand, the only reason we need to inject the exheader is because, when specifying the exheader in makerom initially, makerom messes it up and does not do it properly?
if so, why don't people just improve makerom to handle exheaders properly, instead of making a separate tool?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    S @ salazarcosplay: how are you doing @K3Nv2