ACORN is a specialized tool for creating multi-content XCI gamecard images from Nintendo Switch content files. It packages NSP, NCA, NSZ, and NCZ files into XCI gamecard format.
- Create Multi-XCI Files: Package multiple Nintendo Switch content files into XCI gamecard images
- Decompress Compressed Files: Automatically handles NSZ, XCZ, and NCZ decompression during processing
- Extract Game Metadata: Reads game titles and metadata from CONTROL NCA files
- Generate Proper Filenames: Creates descriptive filenames based on game content and metadata
| File Type | What It Is |
|---|---|
| NSP | Digital game files from the eShop |
| XCI | Game card backup files |
| NCA | Individual game content files |
| NSZ | Compressed NSP files (smaller size) |
| XCZ | Compressed XCI files (smaller size) |
| NCZ | Compressed NCA files (smaller size) |
Make sure you have Python 3.7 or newer installed on your computer.
- Download this project to your computer
- Open a command prompt/terminal in the ACORN folder
pip install -r requirements.txtNote: The requirements.txt includes all necessary dependencies:
- rich (for enhanced console output)
- zstandard (for NSZ/XCZ/NCZ decompression)
- pycryptodome (for NCA encryption handling)
- art (for ASCII banner display)
Create XCI from multiple NSP files:
python acorn.py game.nsp update.nsp dlc.nspSave to a specific folder:
python acorn.py -o C:\MyXCIs game.nsp update.nspUse a file list:
python acorn.py -tfile myfiles.txt| Command | What It Does | Example |
|---|---|---|
python acorn.py file1 file2 |
Create XCI from input files | python acorn.py game.nsp update.nsp |
-o folder |
Set output folder | -o C:\XCIs |
-tfile filename.txt |
Use a file list | -tfile games.txt |
-b number |
Set buffer size for file operations | -b 65536 |
Output: ACORN always creates XCI gamecard image files as output.
To process multiple files easily, create a text file (like games.txt) and list your files:
C:\Games\MyGame.nsp
C:\Games\MyGame_Update.nsp
C:\Games\MyGame_DLC.nsp
ACORN is built using publicly available documentation and open-source libraries. This project acknowledges:
- blawar - For nut.py and foundational Nintendo Switch file format research
- LucaFraga - For hacbuild and XCI creation techniques
- julesontheroad - For NSC_Builder/squirrel library and compression implementations
- Nintendo Switch Brew XCI Documentation - Official technical specification for the XCI gamecard format
- pycryptodome - Cryptographic operations for NCA file handling
- zstandard - Compression/decompression for NSZ/XCZ/NCZ formats
- rich - Enhanced console output and formatting
- art - ASCII art generation for the banner
- Nintendo Switch homebrew community for file format research and documentation
- Open-source implementations of Nintendo Switch file parsing techniques
- Community-developed compression standards for Nintendo Switch files
This project is licensed under the MIT License - see the LICENSE file for details.
ACORN is developed for educational purposes and to support legitimate backup and archival use cases.