Commit Graph

122 Commits

Author SHA1 Message Date
Maschell
5c281ec661 Increase maximum size of wumsloader 2022-05-08 18:47:09 +02:00
Maschell
ef91f1ef11 Improve error handling by using std::nothrow everywhere 2022-05-08 18:47:09 +02:00
Maschell
99791f5edf Format OnLeavingScope 2022-05-08 18:47:09 +02:00
Maschell
846725f881 Make deleting the module buffer a bit more rebust 2022-05-08 18:47:09 +02:00
Maschell
e5ac7dc723 Only execute the WUMSLoader for the Game and Menu process 2022-05-08 13:33:38 +02:00
Maschell
d7a4c8abda Fix compiler warnings 2022-05-08 13:33:38 +02:00
Maschell
7571b3d12b Compile with -O2 flag 2022-05-08 13:33:38 +02:00
Maschell
b1b99343d6 Rewrite of the WUMSLoader to simplify the code and have more memory for modules 2022-05-07 23:15:17 +02:00
Maschell
b247427427 Fix the module reading code 2022-02-26 16:37:48 +01:00
Maschell
dcec3f7165 Reduce the amount of fini/ini calls 2022-02-13 14:42:27 +01:00
Maschell
df71cb0af1 Make sure to use a aligned buffer for reading files 2022-02-11 20:06:19 +01:00
Maschell
00dec53199 Format the code via clang-format 2022-02-04 21:48:37 +01:00
Maschell
66e5d5b9f3 Fix building with make DEBUG=1 2022-01-30 13:51:48 +01:00
Maschell
83fb0de4c1 Fix spelling, formatting 2022-01-27 12:52:45 +01:00
Maschell
581e7fc40e Move -fno-exceptions -fno-rtti to CXXFlags 2022-01-27 12:50:37 +01:00
Maschell
13299660d5 Fix building with DEBUG=1 2022-01-24 18:58:12 +01:00
Maschell
903856df4b [CI] Change asset content_type to zip 2022-01-23 22:28:45 +01:00
Maschell
575e9914f0 Minor formatting and logging cleanup 2022-01-23 22:17:48 +01:00
Maschell
d6ace2f0ef Move "-fno-exceptions -fno-rtti" from CFLAGS to CXXFLAGS 2022-01-23 22:17:17 +01:00
Maschell
f8fb941b07 Only do logging when built with make DEBUG=1, deinit logging properly 2022-01-23 22:16:51 +01:00
Maschell
91ad24571c Add missing __fini() call 2022-01-23 22:15:28 +01:00
Maschell
883ecc3791 Move the relocator to not override the EnvrionmentLoader 2022-01-23 22:11:33 +01:00
Maschell
9f7912cb60 Support for WUMS 0.3.1 2022-01-23 22:07:38 +01:00
Maschell
7f76c9f8c8 Rewrite InitHook calling, add functions to call hooks only when a condition is true 2022-01-21 19:14:57 +01:00
Maschell
8eeb8d95dc Update the Dockerfile 2021-12-29 17:20:59 +01:00
Maschell
1c629420f2 Change the release-artifact directory structure 2021-12-28 18:41:48 +01:00
Maschell
f2abd5945a Make it compatible with the EnvironmentLoader 2021-12-28 18:38:22 +01:00
Maschell
8fa1485942 Update Dockerfile 2021-12-07 18:40:57 +01:00
Maschell
460c235430 Use std::shared_ptr 2021-12-07 18:23:18 +01:00
Maschell
862363629e WUMS 0.3 support: Store function symbol data inside global struct. Optimize relocator to only read needed data from global struct 2021-12-07 18:01:15 +01:00
Maschell
1ba91d26c2 Stop clearing .sbss/.bss section twice. Optimize cache flushes 2021-12-07 17:59:27 +01:00
Maschell
4c34943c86 Try to log via the logging module, also log to syslog via OSReport 2021-11-06 23:37:52 +01:00
Maschell
2f389672df Use WUMS 0.2.1 2021-10-31 16:10:39 +01:00
Maschell
b405363a60 Update Dockerfile 2021-09-24 16:35:01 +02:00
Maschell
4542bc4d1a Formatting 2021-09-23 18:38:29 +02:00
Maschell
30d7e3b7bd Fix R_PPC_REL24 relocations 2021-09-18 12:01:04 +02:00
Maschell
f5c8df9416 Code cleanup 2021-09-18 11:55:01 +02:00
Maschell
74f7b8a662 Implement support for WUMS 0.2 2021-09-17 16:22:54 +02:00
Maschell
b17b522d6b Tweaking some compiler options 2021-04-17 13:25:54 +02:00
Maschell
a45d0d092d Use the latest wut version 2021-04-17 11:53:51 +02:00
Maschell
b560e1d2ba Reduce the amount for logs 2021-04-01 00:41:13 +02:00
Maschell
4eff524ab3 Code cleanup 2021-02-19 17:01:21 +01:00
Maschell
07adc02d53 Add Support for WUMS_MODULE_SKIP_WUT_INIT macro 2021-02-19 17:01:11 +01:00
Maschell
5f9e2f8725 Use a custom heap for the relocator and modules 2021-02-19 10:05:02 +01:00
Maschell
18b1b25160 Update the Dockerfile to use the latest devkitppc and WUMS images 2021-01-01 20:22:41 +01:00
Maschell
f48a375a34 Just skip modules if imports fail instead of crashing the console on purpose 2021-01-01 02:07:02 +01:00
Maschell
fddf436554 Call INIT_WUT and FINI_WUT for modules, make sure APPLICATION_ENDS and FINI_WUT hooks are actually called by a sepeate module 2021-01-01 02:06:03 +01:00
Maschell
98c8de7479 Implementation of InitBeforeRelocationDoneHook and SkipEntrypoint module options 2020-12-26 16:01:46 +01:00
Maschell
6e352b0085 Only use OSDynload_Acquire if really needed 2020-12-26 13:22:12 +01:00
Maschell
42d73fa539 relocator: UseOSDynLoad_IsModuleLoaded instead of OSDynLoad_Acquire 2020-12-26 13:18:47 +01:00