Skip to content

Releases: 3DSGuy/Project_CTR

makerom 0.15 and ctrtool

18 Jan 16:52
Compare
Choose a tag to compare

Includes binaries for Linux, Windows and OS X (all 64bit).

Change log:

  • [ctrtool/makerom] Builds are now time-stamped.
  • [makerom] Simplified help text.
  • [makerom] Fixed RomFS file limit bug.
  • [makerom] Added more information to verbose output.
  • [ctrtool] Added large file support.
  • [ctrtool] Added Unicode support to RomFS file extraction.
  • [makerom] Added a copyright-free logo to use when building CXIs. (Configure RSF with: "BasicInfo/Logo: Homebrew") (Credit: @yellows8)
  • [ctrtool] Command-line arguments "--listromfs" and "--romfsdir" can now be applied to NCCH files.
  • [ctrtool] Fixed Visual Studio support. (Credit: @Myriachan)
  • [ctrtool] Added command-line argument "--showsyscalls", which shows the names of system calls. (Credit: @Myriachan)
  • [makerom] Improved ELF processing code, fixed support for ctrulib >= 1.0.0 ELFs. (issues #14 and #20).
  • [makerom] Added AES key generator code (NCCH KeyXs not included).
  • [makerom] More common keys added to devkit key-chain (all 6 are included now).

Sample RSF Files: https://gist.github.com/jakcron/47392b861657746d8448

MakeROM v0.15

28 Apr 14:28
Compare
Choose a tag to compare

Change Log

  • Code cleanup & misc. bug fixes (thanks @plutoo)
  • Fixed bug where generating RomFS silently failed where the total number of files exceeded an arbitary value
  • Added unicode path support for RomFS generation
  • Added Homebrew NCCH Logo (credit: @yellows8).
  • Updated RSF nodes to support using homebrew logo
    • BasicInfo/Logo with new value Homebrew
  • Improved ELF processing through re-redesign of ELF processing code
  • Removed RSF keys as they are no longer required with improved ELF processing
    • Option/PageSize
  • Added new app-types for CLI argument -desc to utilise New3DS hardware (128MB/804MHz/L2 Cache)
    • ExtApp - New3DS version of App
    • ExtDemo - New3DS version of Demo
    • ExtDlpChild - (& alias ExtDlp) New3DS version of DlpChild
  • Removed app-types for CLI argument -desc as they was never properly supported
    • firm - Template for CXIs containing FW binaries (exefs:/.firm)
  • Added DevKit Ticket CommonKeys 2,3,4,5
  • Changed default behavour to not encrypt ROM files

CTRTool v0.5

28 Apr 13:11
Compare
Choose a tag to compare
CTRTool v0.5 Pre-release
Pre-release

Change Log

  • Code cleanup & misc. bug fixes
  • TMD field Title version now formatted as MAJOR.MINOR.MICRO
  • Builds of CTRTool are now time-stamped
  • Added Unicode support for RomFs
  • Added large (greater than 2GiB) file support
  • Fix bug where CLI options --listromfs & --romfsdir failed when processing RomFs archives embedded in encrypted NCCH files
  • Added CLI argument --plainrgn that allows extracting NCCH "plain region" data
  • Fixed Visual Studio support (thanks @Myriachan)
  • Added CLI switch --showsyscalls which toggles printing system call names instead of their numbers (thanks @Myriachan)

MakeROM v0.14

28 Apr 14:27
Compare
Choose a tag to compare
MakeROM v0.14 Pre-release
Pre-release

Change Log

  • Code cleanup & misc. bug fixes
  • Fixed bugs in RomFs generation
  • Update ExHeader specs to include New3DS flags
  • Update NCCH header processing to support newer format specs
  • Added support for "un-stripped" ELFs
  • Removed RSF keys as they are no longer required with improved ELF processing
    • ExeFs
    • ExeFs/Text
    • ExeFs/ReadOnly
    • ExeFs/ReadWrite
    • PlainRegion
  • Added RSF keys to support new format specs
    • AccessControlInfo/SystemModeExt
    • AccessControlInfo/CanAccessCore2
    • AccessControlInfo/UseExtSaveData
    • AccessControlInfo/EnableL2Cache
    • AccessControlInfo/CpuSpeed
  • Updated RSF keys to support newer format specs
    • TitleInfo/Platform with new value SNAKE
    • BasicInfo/ContentType with new value ExtendedSystemUpdate

makerom 0.14 and ctrtool re-release

20 Oct 14:24
Compare
Choose a tag to compare

makerom 0.14 and ctrtool x86_x64 for Windows and Linux.

Thanks to jakcron for all the work and the fixes!

Changelog:

  • ctrtool: Updated exheader validation and ncch spec/flag recognition #1
  • makerom: now supports unstripped ELFs #2
  • [makerom/ctrtool] fixes #3
  • [makerom/ctrtool] Made SystemMode(Ext) more meaningful. #4
  • [makerom/ctrtool] fixes + enhancements #5
  • Fixed CpuSpeed typo. #6

Sample rsf files:
Basic RSF: https://gist.github.com/jakcron/9f9f02ffd94d98a72632
Build System RSF: https://gist.github.com/jakcron/c3801fc54d0e4347e385

Edit:
ctrtool is now completely statically linked. No dlls needed.

CTRTool v0.4

28 Apr 13:11
Compare
Choose a tag to compare
CTRTool v0.4 Pre-release
Pre-release

Change Log

  • Code cleanup & misc. bug fixes (thanks @profi200)
  • Update ExHeader specs to support New3DS-only fields
    • EnableL2Cache
    • CpuSpeed (New3DS CPU ClockSpeed)
    • ExtSystemMode (New3DS specific system mode)
  • Updated ExHeader spec to support new ARM11 Kernel Flag bitfield value
    • AccessCore2 (bit 13)
  • Added validation of more ExHeader fields
    • SystemMode
    • ExtSystemMode
    • EnableL2Cache
    • CpuSpeed
    • CoreVersion
    • ServiceAccessControl
  • Update NCCH specs to detect new KeyY external seed based generation method
  • NCCH MakerCode is now formatted as a string rather than a uint16_t

makerom 0.13 and ctrtool

27 Jan 13:45
Compare
Choose a tag to compare

makerom 0.13 and ctrtool x86_x64 for Windows and Linux.

CTRTool v0.3

28 Apr 13:10
Compare
Choose a tag to compare
CTRTool v0.3 Pre-release
Pre-release

Change Log

  • Code cleanup & misc. bug fixes (thanks @xerpi, @profi200, @applestash)
  • Improved detection of CXI decryption failure (thanks @applestash)
  • Add support for processing ExeFs binaries directly (thanks @sbJFn5r)
    • Added new value (exefs) for CLI argument -t/--intype to allow specifying an ExeFs binary
    • Added CLI switch --decompresscode which forces decryption of ExeFS .code partition (used when processing a raw ExeFs binary)
  • Modifed CLI argument -n/--ncch to specify a NCSD partition index rather than a NCSD partition offset (thanks @applestash)
  • Added CLI argument --titlekey to allow manually specifying a CIA TitleKey
  • SaveDataSize field now displayed for TMD (thanks @applestash)
  • Updated NCCH spec to support new SecureCryptoType flag values (thanks @profi200)
    • Secure3 (0x0a) (New3DS only, since firmware 9.3.0)

Makerom v0.13

28 Apr 14:26
Compare
Choose a tag to compare
Makerom v0.13 Pre-release
Pre-release

Change Log

  • Code cleanup & misc. bug fixes
  • Updated ExeFS definition to have 8 partition instead of 10
  • Improved savedata size fallback when content cannot be decrypted
  • Fixed bug where RSF node SystemControlInfo/SaveDataSize was not honoured in some circumstances
  • Added -i as an alias to CLI argument -content
  • Changed ticketId generation code to match Nintendo's implementation.
  • Fixed RomFS metadata generation (generated RomFS is now valid) (thanks @enler)
  • Renamed RSF keys so that they are more clear
    • Rom -> RomFs
    • RomFs/HostRoot -> RomFs/RootPath
  • Updated RSF keys to no longer be required when generating CCI files
    • CardInfo/MediaSize
    • CardInfo/CardDevice

MakeROM v0.12

28 Apr 14:24
Compare
Choose a tag to compare
MakeROM v0.12 Pre-release
Pre-release

Change Log

  • Code cleanup & misc. bug fixes
  • Better NCCH AES key handling
  • Improved compatibility with ctrulib ELFs (.bss section no longer required)
  • Removed #ifdef DEBUG printf() statements
  • Implemented proper ticket content index generation (tickets can now include more than one content)
  • Relaxed -f argument by re-adding cxi and cfa as an alias of ncch