rom-converto
Convert, decrypt, verify and compress your 3DS ROMs
Why?
I got tired of the existing cdn files to cia converter tools. Most of them are ancient, require Python to be installed, depend on some specific folder structure and or batch file setup, don't generate tickets automatically, have zero error handling and are painfully slow on larger libraries. I just wanted a single binary I could run (or a GUI I could drag files into) without dealing with any of that.
So I wrote my own from scratch in Rust.
What it does
- Convert CDN content to CIA (single or recursive for batch)
- Auto generates tickets if none are present
- Decrypt .cia, .3ds, .cci and .cxi files for emulator use
- Convert between CIA and CCI/3DS in both directions
- Verify ROM integrity and legitimacy (classifies CIAs as Legit, Piratelegit or Standard)
- Show ROM info: titles in all languages, region lock, age ratings and the embedded icon
- Compress (and Decompress) decrypted ROMs to Z3DS format (seekable zstd) to save space (see Azahar Blog Post)
- Decrypt + compress + cleanup in one step directly from CDN files
- Batch mode for everything: decrypt, compress, decompress, verify and convert all take -R for whole directories
Comes as both a CLI and a desktop GUI app. The GUI has drag and drop, batch processing (drop a bunch of files at once), real time progress bars and works on Windows, macOS and Linux.
CLI Quick Start
Code:
rom-converto ctr cdn-to-cia <CDN_DIR> # basic conversion
rom-converto ctr cdn-to-cia <CDN_DIR> -D -Z -R # recursive, decrypt + compress
rom-converto ctr decrypt <INPUT> <OUTPUT> # decrypt a ROM
rom-converto ctr compress <INPUT> # compress to Z3DS
rom-converto ctr convert <INPUT> # CIA <-> CCI/3DS
rom-converto ctr verify <INPUT> # check integrity and legitimacy
rom-converto ctr info <INPUT> # titles, region, ratings, icon
Downloads
Grab the latest builds from GitHub Releases.
Available for Windows, Linux, macOS and FreeBSD. CLI builds are named rom-converto-cli-*, GUI builds rom-converto-gui-*.
Source
https://github.com/DevYukine/rom-converto (MIT)
Post here or open a GitHub issue if you run into anything and feel free to give some feedback if you like it
Last edited by DevYukine,







