Skip to content

Releases: 3DSGuy/Project_CTR

CTRTool v1.1.1

334f6f0
Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CTR Initial Process (.cip)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v1.1.0

  • [BugFix] Honour plain flag (-p/--plain) when processing CIA content encryption

MakeROM v0.18.3

ac9c607
Compare
Choose a tag to compare

Change Log since v0.18.2

  • [BuildSystem] makefile for makerom and libyaml updated to define -D_GNU_SOURCE for linux builds.
    • This addresses issue #122 where some functions were implcitly defined causing segfaults on linux.

MakeROM v0.18.2

e9a830f
Compare
Choose a tag to compare

Change Log since v0.18.1

  • [BugFix] Correctly initialize prod InitialData KeyX.
  • [BugFix] Properly select CCI CryptoType when not manually specified.

MakeROM v0.18.1

cc707c1
Compare
Choose a tag to compare

Change Log since v0.18

  • [BugFix] Fixes bug where initial data wasn't generated correctly ( #107 ).
  • [Change] Failures in generating RSA signatures is now a warning, not an error.
  • [Change] MakeROM will now give more information about fatal errors. This should help diagnose confusing errors.
  • [Change] MakeROM will warn users if the CCI crypto-type isn't supported by the target.

CTRTool v1.1.0

8a9f9bd
Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CTR Initial Process (.cip)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v1.0.4

  • [NEW] Add CLI option -q/--quiet which enables silent mode ( #113 )
  • [Change] When displaying ExHeader fields, Access info was renamed to FS access
  • [Change] CTRTool now distingushes between three types of output
    • General output (information about a file)
      • These are printed to stdout.
      • These are the only output silenced in silent mode.
    • Warnings & Progress Indicators
      • These are printed to stderr.
      • This information is only shown in verbose mode.
      • These are prefixed in output with a tag [ctrtool::ClassNameHere LOG] ...
      • Progress indicators include output like Extracting X to Y...
    • Errors
      • These are printed to stderr.
      • These will always be shown.
      • These are prefixed in output with a tag [ctrtool::ClassNameHere ERROR] ...
      • Note verification errors are only shown in verify mode.
        • Errors with IVFC blocks will invalidate the whole IVFC layer, which is displayed as one error. To display where each block is invalid use verbose output mode.
        • Errors with ExtendedHeader FsAccess bits invalidate the whole bit-field, which is displayed as one error. To display where each bit is invalid use verbose output mode.
        • Errors with ExtendedHeader ServiceAccess entries invalidate the whole set, which is displayed as one error. To display where each entry is invalid use verbose output mode.

CTRTool v1.0.4

5840526
Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CTR Initial Process (.cip) (These are the processes bundled with the kernel image)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v1.0.3

  • [BugFix] Fixed bug where CCI CryptoType 1,2 weren't processed correctly when evaulating InitialData. #116

CTRTool v1.0.3

8876f0e
Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CIP (.cip) (These are the processes bundled with the kernel image)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v1.0.2

  • [BugFix] Fixed bug where extracting exefs/.code did not decompress when compressed flag was set. #114

CTRTool v1.0.2

Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CIP (.cip) (These are the processes bundled with the kernel image)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v1.0.1

  • [BugFix] Fixed bug where SeedDB wasn't imported correctly. #111

CTRTool v1.0.1

e3b8e32
Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CIP (.cip) (These are the processes bundled with the kernel image)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v1.0.1

  • [BugFix] Fixed bug where common-key 04 & 05 weren't initialised correctly.

CTRTool v1.0.0

54e8e31
Compare
Choose a tag to compare

About

CTRTool is a general purpose reading/extraction tool for Nintendo 3DS file formats.

Supported File Formats

  • ExeFs (.exefs)
  • RomFs (.romfs) (and RomFS wrapped in IVFC)
  • NCCH Format Variants:
    • CTR Executable Image (.cxi)
    • CTR File Archive (.cfa)
    • CIP (.cip) (These are the processes bundled with the kernel image)
  • NCCH ExtendedHeader (.exhdr)
  • CTR Importable Archive (.cia)
  • NCSD Format Variants:
    • CTR Card Image (.cci/.3ds/.3dz)
    • CTR System Update (.csu)
  • ES TitleMetaData (.tmd)
  • ES eTicket (.tik)
  • Firmware Images (.firm)
  • CRR (.crr)

Change Log since v0.7

  • Painstakingly remastered in glorious 4K UHD with Dolby Atmos!
  • General system stability improvements to enhance the user's experience.
  • [BugFix] Files larger than 2GB can now be verified (#85)
  • [Environment] Windows 32bit and 64bit binaries now provided (#24)
  • [NEW] Added support for processing (and validating) .tik files directly (not just as part of a CIA file).
  • [NEW] Added support for processing (and validating) .crr files.
  • [NEW] Added support for validating signatures for ES Certificate, ES eTicket and ES TitleMetaData.
  • [NEW] Added support for processing data after NCSD header, including processing & decrypting InitialData.
  • [NEW] Added support for validating FIRM signature and decryption of sections.
    • There is a CLI option for specifying the FIRM type (nand/nor/ngc/sdmc) (--firmtype)
  • [Change] All Generic AES Keys and RSA Public keys are included with CTRTool. So they can no longer be supplied by the user (except for NCCH seeds):
    • Specifying a keyset file (-k, --keyset) is now deprecated. (Generic AES/RSA keys are initialised internally.)
    • Specifying a common key (--commonkey) is now deprecated. (All common keys are initialised internally.)
    • Specifying the NCCH AES key (--ncchkey) is now deprecated. (All secure NCCH keys are initialised internally.)
    • Specifying the NCCH fixed system AES key (--ncchsyskey) is now deprecated. (The NCCH system key is initialised internally.)
  • [Change] Content extract now works for CCI/3DS files like it did for CIA files.
    • Option --contents works to extract content for CCI/3DS too.
  • [Change] CXI/CFA content in CIA files are now processed automatically (if decryptable) like the are for CCI/3DS files.
    • Option -n, --ncch to select the CXI/CFA to process for CCI/3DS files now works for CIA files too.
  • [Change] Displaying data in ES eTicket & ES TitleMetaData has changed completely, the previous format wasn't too informative.
  • [Change] Some file types have slight changes to formatting of information.
  • [Change] Some CLI flags/options have been deprecated because they are no longer relevant
    • Enabling the extract mode (-x, --extract) is now deprecated. It was always redundant.
    • Specifying the unit size (--unitsize) is now deprecated. With all known NCCH/NCSD, CTRTool can properly determine the unit size.
  • [Removed] CWAV support was not included in this refactor
    • I may add it back if there is enough demand.