Maschell
7d07f6525b
Remove unnecessary std::unique_ptr usages
2024-04-25 16:19:26 +02:00
Maschell
a66bd1f275
Simplify NotificationUtils
2024-04-25 16:19:26 +02:00
Maschell
acc372c836
Simplify the StorageAPI
2024-04-25 16:19:26 +02:00
Maschell
cc5acd0980
- use const auto& where possible
...
- avoid using const std::unique_ptr& and const std::shared_ptr&
- avoid wrapping results in std::optional
- prefer std::string_view over const std::string&
- update FSUtils::LoadFileToMem to write into std::vector<uint8_t>
- use std::span when possible
- Avoid unnessecary copies in PluginDataFactory
- allocate plugins as HeapMemoryFixedSize which bascially is a std::unique_ptr with fixed size
2024-04-25 16:19:26 +02:00
Maschell
07de996bf9
Add support for notifications on error
2023-08-16 11:03:28 +02:00
Maschell
4b2480fda0
Add additional checks to make sure thread clean up callbacks are valid
2023-07-18 12:48:54 +02:00
Maschell
2071c6cbf8
Update to use the latest libfunctionpatcher
2023-01-07 13:44:05 +01:00
Maschell
47ad061f5c
Use WUMS 0.3.2
2023-01-07 13:44:05 +01:00
Maschell
bd0a6ce3bf
Call the DEINIT_HOOK before restoring the function patches
2023-01-04 02:10:12 +01:00
Maschell
0e56538cb1
Keep track of acquired RPLs and release them on exit
2022-10-05 21:01:41 +02:00
Maschell
0a254e59f4
Fix resetting the trampoline data to avoid a crash when re-loading plugins 50+ times
2022-10-03 22:04:26 +02:00
Maschell
5303e05508
Call the DEINIT_PLUGIN hook after before unloading a plugin
2022-10-03 22:04:26 +02:00
Maschell
7aaa35197d
Log the current module version on each application start
2022-09-19 16:14:33 +02:00
Maschell
cda9c3e055
Rewrite the plugin backend, use smart pointers is possible, don't persist in structs and simplify code
2022-05-14 15:43:30 +02:00
Maschell
48eb915a70
Use DEBUG_FUNCTION_LINE_ERR on error.
2022-04-23 09:11:36 +02:00
Maschell
86a946a9fb
Store the plugin configs at the correct location when running inside an environment
2022-02-26 16:43:08 +01:00
Maschell
b0d1391e5a
Call deinitLogging on exit not request exit
2022-02-26 16:43:08 +01:00
Maschell
ae3719c833
Only call init malloc/newlib/stdcpp on init
2022-02-26 16:43:08 +01:00
Maschell
4f5ba85c39
Only call fini when the plugin will be unloaded
2022-02-26 16:43:08 +01:00
Maschell
2547c7edca
Format the code via clang-format
2022-02-04 16:35:53 +01:00
Maschell
aca917c8aa
Load the plugins from the environment directory
2022-01-30 13:31:58 +01:00
Maschell
614f58ea8e
Formatting, fix spelling, clean up
2022-01-27 12:47:33 +01:00
Maschell
93eca9c403
Deinit logging, only do logging when built with make DEBUG=1
2022-01-23 21:43:54 +01:00
Maschell
b49f561430
WUPS 0.7.0 support
2022-01-23 21:16:38 +01:00
Maschell
79eb5758b7
Use std::shared_ptr
2021-12-15 17:09:30 +01:00
Maschell
64f78ccec4
Patch Kernel to resolve symbols names of plugins
2021-12-15 17:04:30 +01:00
Maschell
1f2b65b308
Use the LoggingModule if possible
2021-11-06 23:16:37 +01:00
Maschell
aa90e2478b
Formatting and cleanup
2021-09-25 14:26:18 +02:00
Maschell
13ed348f43
Add support for the config and storage API. Bump version to 0.6
2021-09-24 20:37:54 +02:00
Maschell
a968fb3277
Add missing "WUMS_USE_WUT_DEVOPTAB()" hook, use latest WUPS/WUMS version in Dockerfile
2021-09-17 16:45:11 +02:00
Maschell
5247775b03
Support for WUPS 0.5, compile with latest wut version
2021-04-17 14:05:39 +02:00
Maschell
b48a53b63d
Try to allocate memory for the plugins via the memory mapping module
2021-04-01 00:37:22 +02:00
Maschell
f11649bc36
Support WUPS 0.4, remove some unused code.
2021-03-16 17:55:32 +01:00
Maschell
189af02743
Reduce logging
2021-02-19 19:41:04 +01:00
Maschell
f0b78caec3
Updating logging messages, call DCFlushRange on the actual heap instead of a hardcoded address, general clean up.
2021-01-10 13:17:47 +01:00
Maschell
4ef9a90378
Fix patching of dynamic functions by resetting there status on exit
2020-12-28 14:38:49 +01:00
Maschell
75bbf9b457
Call ApplicationEnd-hooks inside WUMS_APPLICATIONS_ENDS, remove __init_wut()/__fini_wut() calls
2020-12-28 14:38:08 +01:00
Maschell
e9bd4651ca
Clean up and formatting
2020-12-26 14:17:50 +01:00
Maschell
0467178650
Add missing __init_wut and __fini_wut calls
2020-12-26 13:27:50 +01:00
Maschell
4d13709c00
Check the module information struct version
2020-06-07 14:10:31 +02:00
Maschell
4edc55f02e
Get module_information_t pointer from args instead of "guessing" it
2020-06-06 22:10:41 +02:00
Maschell
506b8eaf9a
Use definitions from WUMS if possible
2020-06-06 16:40:25 +02:00
Maschell
42866ffbac
Don't clear the .bss section anymore, call the wut init functions only once, except the devop one
2020-06-03 19:33:09 +02:00
Maschell
2b517b5699
Remove the elfio reader from the PluginData class, use it when it's needed
2020-06-03 18:34:31 +02:00
Maschell
b2562f6275
Adopt to new chnages of WUMS
2020-06-03 18:21:43 +02:00
Maschell
7a7a1f7a63
Organize imports and format code
2020-05-28 20:51:31 +02:00
Maschell
80a0712519
Make sure to use plugins only in proccess 2 and 15.
2020-05-28 20:49:52 +02:00
Maschell
c3cca4926c
Build with WiiUModuleSystem, export a bunch of useful functions to control the backend
2020-05-17 21:08:13 +02:00
Maschell
9a5d3a843f
Add support for loading a list of plugin data on the next application change
2020-05-17 20:49:31 +02:00
Maschell
3af7de28d8
Move global variables into a own file
2020-05-17 20:40:05 +02:00