Commit Graph

42 Commits

Author SHA1 Message Date
Michael Scire
f67c400289 erpt: begin SubmitFsinfo (SubmitMmcDetailInfo) 2023-10-27 16:22:09 -07:00
Michael Scire
099982f909 windows: add brave new mingw compat hook for gcc 12.2.0+ 2023-03-13 17:17:06 -07:00
Michael Scire
1ac83a92e5 strat: fix linux clang build 2022-04-29 16:14:20 -07:00
Michael Scire
652828c4f3 strat: fix clang build 2022-03-23 11:25:20 -07:00
Michael Scire
2d8a1c85de kern: good night sweet prince 2022-03-23 09:16:07 -07:00
Michael Scire
4577648cc2 windows: link libgcc/libstdc++ statically 2022-03-23 09:15:56 -07:00
Michael Scire
bdd66fb5ea symbols: use same strategy on windows as on macOS 2022-03-23 09:15:51 -07:00
Michael Scire
071f9fb2f0 use cxxabi for demangling on linux/windows 2022-03-23 09:15:50 -07:00
Michael Scire
1f2822fafe abort/error: print backtrace, abuse templates, overhaul result/diag (macos not done yet) 2022-03-23 09:15:49 -07:00
Michael Scire
7a689dc29e libs: add ongoing work to facilitate hactool rewrite 2022-03-23 09:15:48 -07:00
Michael Scire
d7a9c7ec4c ams: support building unit test programs on windows/linux/macos 2022-03-23 09:15:46 -07:00
Michael Scire
e534df9f21 build: remove unnecessary g-dwarf4 flags 2022-03-23 09:15:40 -07:00
Michael Scire
2905319d46 strat: use ams::Main() instead of main(argc, argv) 2021-10-07 23:06:29 -07:00
Michael Scire
8a8631ebcb strat: build sysmodules with -Wextra/-Werror 2021-10-07 23:06:29 -07:00
Michael Scire
9ca9c59a19 fusee_cpp: implement mtc erista patram writes 2021-09-06 16:32:38 -07:00
Michael Scire
635aeb09b9 fusee-cpp: add basic structural stubs 2021-09-06 16:32:33 -07:00
Michael Scire
808bc02011 build: use DWARFv4 explicitly for IDA compatibility with debug elfs 2021-07-06 07:28:31 -07:00
Michael Scire
7d6c938029 exo: revert section sorting 2021-05-12 09:09:43 -07:00
Michael Scire
12bcd395d6 exo: sort sections by alignment 2021-05-12 09:09:41 -07:00
Michael Scire
07073a7580 sm: update to excise unnecessary library code 2021-05-12 09:09:41 -07:00
Michael Scire
4a48e0ee5d exo: remove duplicate flags 2021-04-29 03:04:55 -07:00
Michael Scire
f4fab6faae exo: fix for newer binutils 2021-04-29 03:04:55 -07:00
Michael Scire
d8e35f2277 exo/meso: update for gcc 11 compatibility 2021-04-29 03:04:54 -07:00
Michael Scire
92addb538e stratosphere: discard unnecessary .eh_frame segment 2021-01-13 10:41:30 -08:00
Michael Scire
a911d2da7e kern: build as -Os instead of -O2 2020-12-02 06:53:18 -08:00
Michael Scire
3cfd412e6a libexo/sc7fw: support release/debug/audit 2020-12-02 06:52:53 -08:00
SciresM
9ee32fee0f Meso build targets (#1196)
* meso: commit wip (thanks fincs) rewrite to support build targets

* meso: commit mostly-working build system

* meso: correct .o dependencies in kernel/kldr

* libstratosphere: fix building after PCH related build changes

Co-authored-by: fincs <fincs@devkitpro.org>
2020-12-02 06:52:42 -08:00
Michael Scire
4a91046154 kern: implement svc trace 2020-09-07 10:51:37 -07:00
Michael Scire
f2b9036355 exo: build with -Wextra 2020-09-07 10:51:37 -07:00
Michael Scire
dc59a2d2e5 kern: build with -Wextra 2020-09-07 10:51:36 -07:00
Michael Scire
5c8eca0935 kern: build without unwind tables for lto 2020-08-01 15:31:40 -07:00
Michael Scire
3d96ce7512 exo2: implement SmcReencryptDeviceUniqueData 2020-06-14 22:54:04 -07:00
Michael Scire
bc653fa855 exo2: Initial work on the exosphere rewrite.
exo2: Implement uncompressor stub and boot code up to Main().

exo2: implement some more init (uart/gic)

exo2: implement more of init

exo2: improve reg api, add keyslot flag setters

exo2: implement se aes decryption/enc

exo2: fix bugs in loader stub/mmu mappings

exo2: start skeletoning bootconfig/global context types

arch: fix makefile flags

exo2: implement through master key derivation

exo2: implement device master keygen

exo2: more init through start of SetupSocSecurity

exo2: implement pmc secure scratch management

se: implement sticky bit validation

libexosphere: fix building for arm32

libexo: fix makefile flags

libexo: support building for arm64/arm

sc7fw: skeleton binary

sc7fw: skeleton a little more

sc7fw: implement all non-dram functionality

exo2: fix DivideUp error

sc7fw: implement more dram code, fix reg library errors

sc7fw: complete sc7fw impl.

exo2: skeleton the rest of SetupSocSecurity

exo2: implement fiq interrupt handler

exo2: implement all exception handlers

exo2: skeleton the entire smc api, implement the svc invoker

exo2: implement rest of SetupSocSecurity

exo2: correct slave security errors

exo2: fix register definition

exo2: minor fixes
2020-06-14 22:53:53 -07:00
SciresM
926d5a55d6 mem: implement most of StandardAllocator (#860)
This was tested using `https://github.com/node-dot-cpp/alloc-test` plus a few other by-hand tests.

It seems to work for the case we care about (sysmodules without thread cache-ing).

External users are advised to build with assertions on and contact SciresM if you find issues.

This is a lot of code to have gotten right in one go, and it was written mostly after midnight while sick, so there are probably un-noticed issues.
2020-03-30 20:41:21 -07:00
Michael Scire
36154c9115 stratosphere template: allow for per-module defines 2020-03-09 18:03:39 -07:00
Michael Scire
c86352c06e meso: use -fno-non-call-exceptions, -fno-use-cxa-atexit 2020-03-02 19:50:48 -08:00
Michael Scire
8bffa6991f kernel: use .rel.ro 2020-03-02 19:50:48 -08:00
Michael Scire
59663619d9 meso: skeleton buildsystem for kernel 2020-03-02 19:50:41 -08:00
Michael Scire
c0a69c8a32 buildsystem: more fixes 2020-01-03 13:05:29 -08:00
Michael Scire
5bb14b180a meso: build with -ffixed-x18 2020-01-03 13:05:26 -08:00
Michael Scire
6eb76feb03 kernelldr: skeleton build system in prep for dev 2020-01-03 13:05:20 -08:00
Michael Scire
07af583bb8 Add stratosphere makefile, move common/include to libs 2019-12-09 03:54:45 -08:00