DotNet 3DS Toolkit

From GameBrew

Revision as of 12:36, 3 April 2022 by HydeWing (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
.Net 3DS Toolkit
Last Updated2018/10/08
TypeFile Operation
1.4.6 / 1.5.0 Download

.Net 3DS Toolkit is a code library intended to simplify extracting and rebuilding 3DS ROMs, where ROMs can be extracted and repacked with a single command per operation, instead of using a dozen of commands.

It is currently being rewritten in .Net Core 2.2 (and .Net Standard 2.1 once it's out). Please see the Old folder for the original source and details.


  • Extract decrypted CCI files.
  • Extract decrypted CIA files.
  • Extract & Rebuild decrypted CXI files.
  • Extract & Rebuild decrypted RomFS files.
  • Extract & Rebuild decrypted ExeFS files.
  • Allow reading data of individual files for all above formats without extraction.

User guide

System requirements

  • .Net Framework 4.6.
  • Free space on the system drive. Cleanup happens as soon as possible, but especially for larger ROMs, you may need several GB free.

Supported formats for extraction

  • Decrypted CCI (aka .3DS).
  • Decrypted CXI (what Braindump gives you).
  • Decrypted CIA.
  • NDS ROM.

Supported formats for building

  • Decrypted CCI (aka .3DS) - For use with Citra. Can be used for Gateway and Sky 3DS (with CFW) if encrypted via Decrypt9.
  • 0-Key Encrypted CCI - For use with Gateway.
  • CIA - For use with CFW.
  • HANS RomFS, Code.Bin, and Homebrew Launcher Shortcut.
  • NDS ROM.


To extract:

ToolkitConsole.exe MyRom.3ds RawFiles

To repack as a CIA:

ToolkitConsole.exe RawFiles Repacked.cia

To repack as a 0-key encrypted CCI (for use with Gateway):

ToolkitConsole.exe RawFiles Repacked.3ds -key0
ToolkitConsole.exe RawFiles Repacked.3dz

Note: 3dz files will be invalid until a private header is applied.

To repack as a decrypted CCI (for use with Citra or Decrypt9):

ToolkitConsole.exe RawFiles Repacked.3ds

To repack for HANS:

ToolkitConsole.exe RawFiles G:/ MyHack

A GUI is available for anyone who doesn't want to bother with console commands. A .Net 4.6 code library is available for .Net developers making their own programs. See GitHub for library usage. Latest package will be on Sky Editor's MyGet feed and may be added to NuGet at some point.






  • for documentation.
  • SciresM for 3DS Builder (modified to use command-line arguments).
  • profi200 for Project_CTR's makerom.
  • dnasdw for 3dstool.
  • Asia81 for HackingToolkit3DS, which provided the usage for 3dstool.

External links