Skip to main content

3DS tools

Extraction​

Extract NCCH (content) from CIA​

ctrtool --contents=contents /path/to/file.cia
mv contents.* ncch.bin

Extract NCCH​

3dstool -xtf cxi ncch.bin --header header.bin --exh exheader.bin --exefs exefs.bin --logo logo.bin --romfs romfs.bin

Extract RomFS​

3dstool -xtf romfs romfs.bin --romfs-dir romfs/

Extract code, icon from ExeFS​

3dstool -xtf exefs exefs.bin --exefs-dir exefs/

Creation​

Create RomFS file​

3dstool -ctf romfs romfs.bin --romfs-dir romfs/

Make NCCH from the ELF plus RomFS file​

makerom -f ncch -o ncch.bin -elf file.elf -romfs romfs.bin -rsf file.rsf

Make CIA from NCCH​

makerom -f cia -o file.cia -content ncch.bin:0:0

ftpd​

Installing​

Download and install the latest .cia (or .3dsx) from https://github.com/mtheall/ftpd/releases

Running​

  1. Make sure wifi is enabled on the 3DS

  2. Start ftpd

Connecting from Gnome file browser​

  1. Make sure ftpd is running

    The FTP address will be displayed on the screen

  2. Click Other Locations in the lower left

  3. Connect to Server: type in the FTP address

    ⚠ Make sure to add the port as well (typically 5000), e.g. ftp://192.168.0.123:5000

    • If you get this error: No route to host

      Open a terminal and ping the 3DS, e.g. ping -c 1 192.168.0.123