Commit Graph

144 Commits

Author SHA1 Message Date
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
Maschell
7df0cf32f2 [Workflow] Use Environment Files instead of ::set-env 2020-12-01 13:07:18 +01:00
Maschell
f38d44243e Display user selection if no default user is set. 2020-12-01 13:07:09 +01:00
Maschell
6a2a7ca1fd Fix checking the size of modules before linking 2020-12-01 13:06:58 +01:00
Maschell
c68e375567 Minor improvements 2020-12-01 13:06:40 +01:00
Maschell
fe7521b8a6 Use the latest version of WUMS in the Dockerfile 2020-08-12 17:36:26 +02:00
Maschell
bf870c148f Don't push the buider image anymore. 2020-08-12 17:30:17 +02:00
Maschell
becc30b8dc Add Github Action workflows for pushes and pull requests 2020-08-10 17:37:08 +02:00
Maschell
dbdb232a81 Use -lz directly to be compatible to latest wut version 2020-08-10 17:16:18 +02:00
Maschell
142c4e75bb Update the Makefile 2020-07-01 13:18:27 +02:00
Maschell
10db6e943a Fix the location of the module information 2020-07-01 13:18:14 +02:00
Maschell
40deae7e98 Update the Dockerfile 2020-06-26 20:28:28 +02:00
Maschell
d14f764960 Add a Dockerfile 2020-06-25 19:13:12 +02:00
Maschell
d1a5a7f1c2 Update the build flags for the relocator 2020-06-25 19:11:49 +02:00
Maschell
2b733e117a Fix compiler warnings 2020-06-25 19:11:31 +02:00
Maschell
1ed1b96bdb Move the gModuleData struct into a different location in memory, move defines into a new globals.h which both projects are using 2020-06-25 19:01:25 +02:00
Maschell
3853f3876e Use bin2s instead of xxd to include the relocator.elf 2020-06-25 18:57:41 +02:00
Maschell
d1581b392f Make sure to build the relocator if their files changes 2020-06-25 18:56:36 +02:00
Maschell
c3e7fe0f51 Add support for the WUMS_HOOK_RELOCATIONS_DONE hook 2020-06-10 16:20:20 +02:00
Maschell
00a8f16314 Do not replace the reloactions of the memory function (will be replaced by module) 2020-06-10 14:13:06 +02:00
Maschell
306b2c1e70 Improve logging 2020-06-07 15:42:47 +02:00
Maschell
b5f345e22a Formatting 2020-06-07 14:18:34 +02:00
Maschell
44b65558ef Fix compiler warnings 2020-06-07 14:17:02 +02:00
Maschell
e84b6f63bf Save the current module information struct version inside the struct. 2020-06-07 14:09:58 +02:00
Maschell
de4938474c Formatting 2020-06-07 13:59:02 +02:00
Maschell
e70ec9b345 Modules do now have a flag if they should be run before their entrypoint. 2020-06-07 13:58:55 +02:00
Maschell
6a6a41bf1d Outsource the function patching to the FunctionPatcherModule and DynLoadPatchModule 2020-06-06 22:14:26 +02:00
Maschell
b46639975e Adopt the hook-call of WUMS_HOOK_INIT to provide a pointer to the module_information_t struct 2020-06-06 22:12:18 +02:00
Maschell
3f6f956b70 Move module defines into WUMS 2020-06-06 17:02:31 +02:00