Commit Graph

66 Commits

Author SHA1 Message Date
Maschell
1524f0a6a9 Update plugin (un)loading logic to keep plugins loaded if possible 2024-11-28 20:26:17 +01:00
Maschell
447e1eb218 Code cleanup 2024-11-28 19:44:14 +01:00
Maschell
43a18b56d7 Small fixes to the .wps loading, return nullptr instead of OSFatal, add asserts instead of OSFatal 2024-05-08 18:08:03 +02:00
Maschell
f9b67d57ea Add support for WUPS 0.8.1 2024-05-05 14:49:59 +02:00
Maschell
2b29db165c Check if a plugin has a meta section 2024-04-27 17:50:29 +02:00
Maschell
c6708dce46 Fix PluginContainer::operator=(PluginContainer &&src) 2024-04-25 16:19:26 +02:00
Maschell
d4d829a39f Make sure PluginInformation setter are private 2024-04-25 16:19:26 +02:00
Maschell
8cacf6efe8 Split up declaration and definition for some classes 2024-04-25 16:19:26 +02:00
Maschell
7d07f6525b Remove unnecessary std::unique_ptr usages 2024-04-25 16:19:26 +02:00
Maschell
acc372c836 Simplify the StorageAPI 2024-04-25 16:19:26 +02:00
Maschell
921b5ce157 Implement new ConfigAPI and new Config Menu 2024-04-25 16:19:26 +02:00
Maschell
d1f701abab Fix getNearestFunctionSymbolData 2024-04-25 16:19:26 +02:00
Maschell
ed13894dc3 Implementation of new StorageAPI 2024-04-25 16:19:26 +02:00
Maschell
553d887526 Store the WUPS version a plugin was compiled with inside the MetaInformation 2024-04-25 16:19:26 +02:00
Maschell
36e99e95a2 Update PluginInformation to return std::optional instead of raw pointer 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
1e7c77b39f Improve error message when parsing a plugin failed 2023-08-16 11:03:28 +02:00
Maschell
07de996bf9 Add support for notifications on error 2023-08-16 11:03:28 +02:00
Maschell
d8a906f1db Extend the wupsbackend api to provide some extra functions to query plugin information 2023-02-19 18:44:19 +01:00
Maschell
b579bbdfa9 Update to latest WUPS and libfunctionpatcher 2023-02-17 11:52:35 +01:00
Maschell
2071c6cbf8 Update to use the latest libfunctionpatcher 2023-01-07 13:44:05 +01:00
Maschell
333359c75d Avoid using streams in ELFIO to massively reduce the binary size 2023-01-04 16:35:06 +01:00
Maschell
c9ccf0f657 Update to latest ELFIO and undo any changes directly to ELFIO 2023-01-04 03:14:27 +01:00
Maschell
616fc832d1 Ignore files that don't end with ".wps" or start with "." or "_" 2022-09-24 13:19:12 +02:00
Maschell
9cd0d43111 Fix loading plugins with ".wut_load_bounds" section 2022-05-14 15:43:30 +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
a7494c59cb Minor code cleanup 2022-04-23 09:11:36 +02:00
Maschell
48eb915a70 Use DEBUG_FUNCTION_LINE_ERR on error. 2022-04-23 09:11:36 +02:00
Maschell
a6ced98864 Use proper alignmend buffer for reading/writing 2022-02-26 16:43:08 +01:00
Maschell
6df6d871aa Include cleanup, fix compiling with latest wut, 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
614f58ea8e Formatting, fix spelling, clean up 2022-01-27 12:47:33 +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
fe2e7d6fa9 WUPS 0.6.1 support 2021-10-01 17:25:48 +02: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
5247775b03 Support for WUPS 0.5, compile with latest wut version 2021-04-17 14:05:39 +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
75735e4e4d Remove some unneeded logging 2021-01-10 18:20:54 +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
881337ca41 Allocate memory for storing plugins on the default heap 2021-01-01 01:59:36 +01:00
Maschell
ec443161af Fix potential memory leaks 2021-01-01 01:59:09 +01:00
Maschell
db0f9f70d4 Read plugins into a aligned buffer to improve reading speed. 2020-12-28 14:46:30 +01:00
Maschell
f7b4b568d2 Remove \n in log messages 2020-12-28 14:40:53 +01:00
Maschell
e9bd4651ca Clean up and formatting 2020-12-26 14:17:50 +01:00
Maschell
c76edf09c4 Actually read the target process from the plugin while function patching 2020-06-19 17:04:39 +02:00
Maschell
ce73ac48e0 Use the function patcher module for the plugin function patches 2020-06-13 16:57:53 +02:00