Skip to content

Conversation

@jakcron
Copy link

@jakcron jakcron commented Aug 15, 2019

No description provided.

profi200 and others added 30 commits October 9, 2015 18:21
[makerom/ctrtool] fixes + enhancements
[makerom] Fixed CpuSpeed typo.
…ks. (Works around fread/fwrite buffer size limitations)
jakcron and others added 30 commits April 12, 2022 11:48
Add support for silencing CTRTool output
* Move files around to new directory structure

* Rework libyaml into a stand-alone dep for makerom.

* Rework libpolarssl to be standalone dependency for makerom.

* Update includes.

* Delete makefile

* Add new makefile for makerom.

* Update MakeROM github actions script.

* Fix again.

* Update MakeROM's makefile

* Tweak makerom build script

* Tweak MakeROM build script.

* Fix typo

* Update MakeROM makefiles.

* Tweak CTRTool build script.

* Tweak build script

* Tweak CTRTool build script.

* Tweak CTRTool build script

* Add libmbedtls to makerom deps

* Partially migrate makerom to libmbedtls

* Break out libblz as an external dependency for makerom.

* Tweak makerom build script.

* Move dependencies to the top level.

* Put everything back.

* misc

* Update makerom documentation.

* Link to ctrtool/makerom readmes from the root readme.

* Update root readme again.

* Migrate makerom to modern mbedtls

* Bump makerom version to 0.18.1

* Change signing errors to be warnings when they fail.

* Add error verbosity to errors when generating CIA files.

* Fix bug in RSA code.

* misc.

* Remove polarssl now migration to mbedtls complete.

* Surface more makerom errors.

* [makerom] Tolerate CCI signing errors as a warning.

* Add missing return.

* Import initial data key_x (prod/dev included)

* [makerom] Fix initial data generation.
* [makerom] Correctly initialize prod initial_data_key_x

* [makerom] Properly select CCI CryptoType when not manually specified.

* [makerom] Bump version to v0.18.2
* [makerom] Update makefiles to address impl func warnings on linux.

* [makerom] bump version to v0.18.3
* Add util functions to CTRTool

* [ctrtool] Honour -p flag when processing CIA files.

* Bump CTRTool version to v1.1.1
* add 9.6.0 cci changes

* adjust crypto type validation

* ugh

---------

Co-authored-by: Liam <47696410+0Liam@users.noreply.github.com>
* [makerom] Add -baremetal flag

This is a workaround to us not supporting multiple phdr per "segment".

K9 and legacy FIRM k11 don't have memory management and have everything
be RWX. We can exploit how they load CIPs to have the segment be
anything, and be able to be loaded at any VMA (first segment defines LMA
and entrypoint, however). With this flag, the first phdr in the .elf
file is always chosen as the "code" segment and so on.

For example, we can have a FCRAM segment where the image is initially
loaded and jumped to, as the first segment, then an AXIWRAM segment. For
TwlBg, Nintendo seems to have a RWX phdr inside the code "segment" that
it relocates to AXIWRAM, but we don't support this.

"-baremetal" implies "-nocodepadding".

* [makerom] Add -pagesize option

Kernel9 uses pagesize=0x100 instead of the usual 0x1000.

* [makerom] Remove 32 interrupt ID limitation
SDK 0.10-era CXIs specify the full exheader size of 0x800 in the NCCH header, so allow that.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.