GitHub - ihaveamac/3dsconv: Python script to convert Nintendo 3DS CCI ('.cci', '.3ds') files to the CIA format 3dsconv 3dsconv.py is a Python 3 script that converts Nintendo 3DS CTR Cart Image files (CCI, '.cci', '.3ds') to the CTR Importable Archive format (CIA).
- Cia To 3ds Converter Github Freeware
- Cia To 3ds Converter Github Tutorial
- 3ds To Cia Converter Online
- Simple 3ds To Cia Converter
- Convert 3DS video for YouTube 3D. GitHub Gist: instantly share code, notes, and snippets.
- To convert 3ds to a cia use godmode9 to do it! And convert it on your 3ds! But to convert cia to 3ds! I'm still trying to find a way! If I do ill be back! JiveTheTurkey, Quantumcat and GilgameshArcher like this. #5 Jul 29, 2017.
- Convert.3ds to.cia with just an exheader xorpad (old crappy method) - 3ds-to-cia-quick.sh.
- You need to place the boot9.bin in the 3ds simple cia converter folder on your desktop. Put the 3ds roms in the roms folder then run the exe, then choose convert 3ds rom to cia. It will ask you to select a folder, select the roms folder, even if you dont see any files. Wait till it says finished.
convert .3ds to .cia with just an exheader xorpad (old crappy method)
3ds-to-cia-quick.sh
# 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 |
Cia To 3ds Converter Github Freeware
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() |
Cia To 3ds Converter Github Tutorial
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
3ds To Cia Converter Online
Simple 3ds To Cia Converter
Name | 3DS |
Full name | Autodesk 3D Studio Max |
File extension | .3ds |
MIME type | application/x-3ds, image/x-3ds |
Developed by | Autodesk Inc. |
Type of format | |
Description | 3DS is one of the file formats used by the Autodesk 3ds Max 3D modeling, animation and rendering software. It was the native file format of the old Autodesk 3D Studio DOS, which was popular until its successor replaced it in April 1996. Having been around since 1990, it has grown to become a de facto industry standard for transferring models between 3D programs, or for storing models for 3D resource catalogs. While the 3DS format aims to provide an import/export format, retaining only essential geometry, texture and lighting data, the related MAX format also contains extra information specific to Autodesk 3ds Max, to allow a scene to be completely saved/loaded. |
Technical details | 3ds is a binary file format. Format is based in chunks, where each section of data is embedded in a block that contains a chunk identifier and the length of the data, as well as the data itself. This allows parsers to skip chunks they don't recognize, and allows for extensions to the format. The chunks form a hierarchical structure, similar to an xml DOM tree. The first two bytes of the chunk are its ID. From that value the parser can identify the chunk and decide whether it will parse it or skip it. The next four bytes contain a little-endian integer that is the length of the chunk, including its data, the length of its sub-blocks and the 6-byte header. The next bytes are the chunk's data, followed by the sub-chunks, in a structure that may extend to several levels deep. |
Associated programs | AutoCAD, Unigraphics и SolidWorks. |
Wiki | https://en.wikipedia.org/wiki/.3ds |