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
fb2ea68627
Deprecate WUPS_LOADER_HOOK_INIT_STORAGE hook and implemenation
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
efcde57f74
Config: Delete corrupted config files
2023-08-16 11:03:28 +02:00
Maschell
7b3558b892
Bump version
2023-07-19 18:35:45 +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
64667d6169
Fix compiling with latest wut, Update Dockerfile
2023-07-18 12:48:54 +02:00
Maschell
32150a8c82
Bump Version
2023-03-23 15:04:12 +01:00
Maschell
debc0eda5e
Config: Fix opening empty config categories, display information text
2023-03-12 13:16:42 +01:00
Maschell
21fec8e451
Config: Fix possible crash when navigating the config menu
2023-03-12 13:16:42 +01:00
Maschell
12c565681f
Bump version
2023-02-19 18:57:27 +01: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
cc007a5987
Bump version to 0.2.1
2023-01-10 18:32:46 +01: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
a2081206ed
Fix memory leak in DrawUtils::print function
2023-01-05 22:09:23 +01:00
Maschell
e951299ea9
Improve config menu by adding a loading screen
2023-01-05 22:09:23 +01:00
Maschell
43ddb8f1dd
Improve config menu navigation
2023-01-05 22:09:23 +01:00
Maschell
a039901388
Fix the scroll indicator in config menu
2023-01-05 22:09:23 +01:00
Maschell
e12b8a9d84
Update the config menu UI to show the correct controls
2023-01-05 22:09:23 +01:00
Maschell
e7186d67fb
Use libschrift instead of Freetype for font rendering
2023-01-04 22:12:14 +01:00
Maschell
333359c75d
Avoid using streams in ELFIO to massively reduce the binary size
2023-01-04 16:35:06 +01:00
Maschell
be5574ee9f
Remove address translator from ELFIO
2023-01-04 16:35:06 +01:00
Maschell
8367e0e32c
Remove all save functions from ELFIO. We don't need them anyway
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
43e2825ec5
Add break in CallHook switch-case
2023-01-04 02:10:12 +01:00
Maschell
bd0a6ce3bf
Call the DEINIT_HOOK before restoring the function patches
2023-01-04 02:10:12 +01:00
Maschell
9635766217
Update version string
2022-10-09 16:40:31 +02:00
Maschell
0e56538cb1
Keep track of acquired RPLs and release them on exit
2022-10-05 21:01:41 +02:00
Maschell
2882635f6f
Set a custom OSDynLoad Allocator when processing relocations
2022-10-03 22:04:26 +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
178085750d
Use switch-case for hook calling
2022-10-03 22:04:26 +02:00
Maschell
616fc832d1
Ignore files that don't end with ".wps" or start with "." or "_"
2022-09-24 13:19:12 +02:00
Maschell
9dc58d389f
Config: Move "onButtonPressed" check out of the loop
2022-09-23 22:45:26 +02:00
Maschell
030c9b4265
Config: Implement "onSelected" callback
2022-09-23 22:45:26 +02:00
Maschell
4a2f60592e
Config: Implement "isMovementAllowed" callback
2022-09-23 22:45:26 +02:00
Maschell
e7eeb10873
Config: Add support for X,Y, L3, R3, PLUS and MINUS in "onButtonPressed" callback
2022-09-23 22:45:26 +02:00
Maschell
e5b63ebf9f
Bump the version
2022-09-19 22:58:44 +02:00
Maschell
f6d8e850d2
Truncate the headline in config menu
2022-09-19 21:55:48 +02:00
Maschell
80d577b1dd
Ignore stick inputs for the config menu combo.
2022-09-19 21:55:48 +02:00
Maschell
e3d3f8a12e
Exit the config menu when you RELEASE the home button
2022-09-19 21:55:48 +02:00
Maschell
7aaa35197d
Log the current module version on each application start
2022-09-19 16:14:33 +02:00
Maschell
a818088f14
Display the correct version in the config menu
2022-09-19 16:14:33 +02:00
Maschell
c89db187b6
Fix opening the config menu with the classic controller
2022-09-19 16:03:39 +02:00
Maschell
5da5c0e117
Make sure the extensionType is valid before usin KPADData in the config menu
2022-09-19 16:03:39 +02:00
Maschell
edf06a5ee8
Check arguments for WUPSConfigItems exports
2022-09-19 12:58:06 +02:00
Maschell
60daf7aff6
Reduce stacksize for WUPSConfigItem
2022-09-19 12:58:06 +02:00
Maschell
37fb50eebe
Fix displaying the config menu on games which run in native 1080p
2022-09-18 21:11:35 +02:00
Maschell
29b0dd6114
ConfigMenu: Render a proper message if not configurable plugins are loaded
2022-08-29 00:49:48 +02:00
Maschell
df01d3785a
ConfigMenu: Remove unused option to enable plugins
2022-08-29 00:49:48 +02:00
Maschell
17aa2c0231
ConfigMenu: Redraw the next frame after button has been pressed
2022-08-29 00:49:48 +02:00
Maschell
876d7f0c29
Avoid memory leak in StorageUtils
2022-08-26 22:31:18 +02:00
Maschell
4103493388
Use latest WUPS version
2022-08-26 22:31:18 +02:00
Maschell
ff5d23cae2
Optimize file reading
2022-08-08 12:02:25 +02:00
Maschell
3f3c335a8f
Update Dockerfile to use latest wut version
2022-07-25 13:24:51 -07: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
fb6373ec63
Fix elfLinkOne to support a tramp in both directions
2022-05-14 15:43:30 +02:00
Maschell
ad63f27a8d
Add the module name to the logs
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
598c928d79
Control verbose logging via buildflags
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
a6ced98864
Use proper alignmend buffer for reading/writing
2022-02-26 16:43:08 +01:00
Maschell
a916a6e42b
Stop calling deinit when unloading plugins
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
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
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
84afdb3179
Fix building with logs
2022-01-26 14:09:36 +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
719ae8e4da
Decrease the maximum plugin description length to 100 byte.
2021-12-11 13:00:54 +01:00
Maschell
1f2b65b308
Use the LoggingModule if possible
2021-11-06 23:16:37 +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
ed792716fe
Code cleanup
2021-09-18 12:21:27 +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
51e1c4c1f2
Tweak some compiler options
2021-04-17 13:38:36 +02:00
Maschell
fe64a68d41
Stop logging every hook call
2021-04-01 00:44:05 +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
75735e4e4d
Remove some unneeded logging
2021-01-10 18:20:54 +01:00