Commit Graph

158 Commits

Author SHA1 Message Date
Maschell
0a4652c10a Add a function to unload all plugins from memory in the PluginManagement 2020-05-03 14:16:11 +02:00
Maschell
ead8b14f98 Add the PluginHeapHandle as an argument instead of using the global variable 2020-05-03 14:14:22 +02:00
Maschell
037e1f2ce8 Fix calculating the size needed to store the plugins in memory. 2020-05-03 13:51:39 +02:00
Maschell
80eb885dd2 Refactor loading plugins 2020-05-03 12:37:20 +02:00
Maschell
0c0680be77 Even more formatting 2020-05-03 12:30:15 +02:00
Maschell
4bf4a0eeea Formatting 2020-05-03 12:25:38 +02:00
Maschell
c1c7594926 Save the address of memory allocated on the plugin heap 2020-05-03 12:23:50 +02:00
Maschell
53f454f6ed Fix logic behin calling hooks, improve logging when calling hooks. 2020-05-03 11:40:44 +02:00
Maschell
e556490d27 Call the CRT hooks at each application start, not just once. 2020-05-03 11:34:43 +02:00
Maschell
7c0476fab4 Formatting of hooks.cpp, improving logs when a hook is not implemented 2020-05-03 11:16:22 +02:00
Maschell
4f5de0f889 Add intial support for function patching via plugins 2020-05-03 11:13:55 +02:00
Maschell
6d8fd08f25 Increase the maximum number of relocations from 500 to 1000. Refactor some code to a "PluginManagement" class. 2020-05-03 10:21:05 +02:00
Maschell
89445b77c2 Calling FINI_WUT_DEVOPTAB at the end of a application is softlocking.
MEM2 is cleared anyway so this shouldn't be a memory leak. Needs further research
2020-04-29 18:07:03 +02:00
Maschell
2705a91c13 First iteration of the WUPS-Backend as a .rpx/module for the SetupPayload
- Function replacements are not implemented yet
- Serveral features like the config menu are missing

Still WIP
2020-04-29 18:02:36 +02:00
Maschell
a83d11379e Fix typo 2019-11-19 18:35:07 +01:00
Maschell
fbb6c98314 Add .bss/.sbss clearing 2019-11-18 21:10:11 +01:00
Maschell
69ed56522a Fix some compiler warnings 2019-11-18 11:39:09 +01:00
Maschell
8cd0367514 Add support for new CRT hook, increase the maximum hooks per plugin to 25 2019-11-17 23:05:13 +01:00
Maschell
7d7a668210 Add new IPC function to get information for a plugin by filepath 2019-11-16 15:14:17 +01:00
Maschell
532d6f8454 Add new IPC function 2019-11-16 15:13:52 +01:00
Maschell
aed66958e9 Serverval small stuff 2019-11-16 15:13:16 +01:00
Maschell
5cb55e3081 Increase the maximum function name length 2019-11-16 15:12:51 +01:00
Maschell
8b6f465892 Adapt to new WUPS hooks. 2019-11-16 15:12:30 +01:00
Maschell
73640c01f5 Update ipc interface, some functions are not static in the PluginLoader 2019-11-16 15:04:04 +01:00
Maschell
82f5f6eb05 Remove some debug messages 2019-11-16 15:02:53 +01:00
Maschell
d305958ea4 Add new functions to the dynamic_libs 2019-11-16 15:01:36 +01:00
Maschell
6b6038a004 Add support for patching functions at a physical address 2019-11-16 15:01:01 +01:00
orboditilt
614f75364b Fix the filename. 2019-08-18 22:39:09 +02:00
orboditilt
2edccb1b68 Add a README 2019-08-18 22:38:48 +02:00
orboditilt
b7aa6401fe Just the backend of the plugin system. 2019-08-15 10:45:18 +02:00
Maschell
0c0f9f36e2 Add missing libs for linking to fix compiling 2019-05-14 22:29:28 +02:00
Maschell
2e51b9918d Update Readme: bulding instructions 2019-05-14 22:29:02 +02:00
Maschell
284912c3ea Stub libntfs usage. 2019-05-14 22:28:30 +02:00
Maschell
597e98d60a Fix the path to the portlibs.zip 2019-03-01 19:32:02 +01:00
Maschell
16fb3a7080 Formatting 2019-03-01 19:31:45 +01:00
Maschell
9442c5d62a Not log every hook call anymore 2019-03-01 19:27:01 +01:00
Maschell
8b0df7b6b8 Fix return type of checkMagic function 2019-03-01 19:26:36 +01:00
Maschell
81ce92aae7 Added support for the WUPS_LOADER_HOOK_VID_DRC_DRAW and WUPS_LOADER_HOOK_VID_TV_DRAW which allow a plugin to draw on the screen. 2019-03-01 19:26:15 +01:00
Maschell
c29e3e77cd Add function TextureUtils::copyToTexture which allows to copy a given ColorBuffer to a GX2Texture 2019-03-01 19:23:21 +01:00
Maschell
e647925e50 Implement function "HasHookCallHook(wups_loader_hook_type_t hook_type)" which returns true when a plugin exists that has implemented the given hook 2019-03-01 19:20:32 +01:00
Maschell
492571207d Implement support for DrawTexture hook 2019-03-01 19:18:03 +01:00
Maschell
fb71817c33 Implementation of the ConvertImageToTexture function 2019-02-08 20:13:25 +01:00
Maschell
7ccc9e0b92 Fixed header 2019-02-08 19:15:59 +01:00
Maschell
7f491da297 Added support for the Video Memory hook. 2019-02-08 16:43:45 +01:00
Maschell
40bb31885a Patch __OSPhysicalToEffectiveCached,__OSPhysicalToEffectiveUncached, OSEffectiveToPhysical and OSIsAddressValid to be compatible with out own mapped memory. 2019-02-08 16:42:39 +01:00
Maschell
14d4ab0b5c Do memory mapping on default, remove some debug output and tests. 2019-02-08 16:40:37 +01:00
Maschell
2fc11412f3 Add PhysicaltoEffective and EffectiveToPhysical for own mapped memory. 2019-02-08 16:34:52 +01:00
Maschell
64e4ed5f71 Add memory region for area usable for the GPU 2019-02-08 12:49:49 +01:00
Maschell
2c743ec133 FIX: mark our mapped memory properly as executable 2019-02-08 12:44:14 +01:00
Maschell
9ed45f82de Load values from SD only once at the beginning. 2019-02-07 17:03:43 +01:00