3ds To Cia Converter Could Not Read Exheader File

How To Convert Cia To 3DS Playable Files.UPDATE Video. Exheader File Fix (EASY) by kaiangel7. How To Convert a 3DS Game Into a Cia by kaiangel7. USA Download Size: 1.68 GB EUR Download Size: 842.0 MB Update Size v1.5: 30.2 MB Password: 3dscia.to MEGA Google Drive. Convert.3ds to.cia with just an exheader xorpad (old crappy method) - 3ds-to-cia-quick.sh.

convert .3ds to .cia with just an exheader xorpad (old crappy method)
3ds to cia converter v4.1 could not read exheader file
3ds-to-cia-quick.sh

3ds To Cia Converter V4.1 Could Not Read Exheader File

# Manual and DLPChild for some reason don't work.
# it must be a make_cia issue since I tried using makerom and hex editing and it worked fine
if [ !-f'$1' ];then
echo'no'
exit 1
fi
rm 0.cxi ncch.header exheader.bin exefs.bin romfs.bin logo.bcma.lz plain.bin converted.cia
EXHXOR=$(python2 get-exh-xorpad.py '$1')
3dstool -xvt012f cci orig.cxi manual.cfa dlpchild.cfa '$1'
3dstool -xvtf cxi orig.cxi --header ncch.header --exh exheader.bin --exh-xor $EXHXOR --exefs exefs.bin --romfs romfs.bin --logo logo.bcma.lz --plain plain.bin
if [ -s logo.bcma.lz ];then
USELOGO='--logo logo.bcma.lz'
fi
if [ -s manual.cfa ];then
USEMANUAL='--content1=manual.cfa --id_1=00000001 --index_1=0001'
fi
if [ -s dlpchild.cfa ];then
USEDLPCHILD='--content2=dlpchild.cfa --id_2=00000002 --index_2=0002'
fi
#cp exheader.bin exheader-old.bin
python2 exh-patch.py exheader.bin
3dstool -cvtf cxi conv.cxi --header ncch.header --exh exheader.bin --exh-xor $EXHXOR --exefs exefs.bin --romfs romfs.bin $USELOGO --plain plain.bin --not-update-exefs-hash --not-update-romfs-hash
make_cia --content0=conv.cxi --id_0=00000000 --index_0=0000 $USEMANUAL$USEDLPCHILD --savesize=$(python2 get-savesize.py exheader.bin) -o CONVERTED.cia
exh-patch.py
#!/usr/bin/env python2
importsys, os.path
iflen(sys.argv) !=2:
print('only need one argument for ExHeader')
sys.exit()
ifnotos.path.isfile(sys.argv[1]):
print('file doesn't exist')
sys.exit()
ifos.path.getsize(sys.argv[1]) !=0x800:
print('not 2048 bytes (ExHeader size)')
sys.exit()
f=open(sys.argv[1], 'r+b')
f.seek(0xD)
x=f.read(1)
y=ord(x)
print('original: '+hex(y))
y=y|2
print('shifted: '+hex(y))
f.seek(0xD)
f.write(chr(y))
f.close()
get-exh-xorpad.py
#!/usr/bin/env python2
from __future__ importprint_function
importbinascii, sys, os.path
iflen(sys.argv) !=2:
print('only need one argument for rom')
sys.exit()
ifnotos.path.isfile(sys.argv[1]):
print('file doesn't exist')
sys.exit()
rom=open(sys.argv[1], 'rb')
rom.seek(0x190)
tid=binascii.hexlify(rom.read(8)[::-1])
print(tid.upper()+'.Main.exheader.xorpad', end=')
rom.close()

3ds To Cia Converter Error Could Not Read Exheader File

get-savesize.py
#!/usr/bin/env python2
from __future__ importprint_function
importbinascii, sys, os.path
iflen(sys.argv) !=2:
print('only need one argument for ExHeader')
sys.exit()
ifnotos.path.isfile(sys.argv[1]):
print('file doesn't exist')
sys.exit()
exh=open(sys.argv[1], 'rb')
exh.seek(0x1C0)
ss=binascii.hexlify(exh.read(8)[::-1])
print(int(ss, 16)/1024, end=')
exh.close()
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment