Commit Graph

31 Commits

Author SHA1 Message Date
Maschell
b1d89c9d4d Improve the ConfigItem callback system.
- The callback is now only called when then config menu has been closed and value has actually changed (or an newer value has been read from SD). This increased the performance!
- The WUPSConfigItemBoolean and WUPSConfigItemMultipleValues callbacks now provide a pointer to the causes config item.
2018-09-14 13:02:06 +02:00
Maschell
44f373d3e2 Fix issue #25 2018-09-14 10:38:01 +02:00
Maschell
4b835cfc6b Add a config item type for multiple choice configs (e.g. select a resolution) 2018-07-17 15:27:51 +02:00
Maschell
7a04c99d86 Add a config item for boolean values. 2018-07-17 15:27:19 +02:00
Maschell
e6e488a453 Add the possibility of configurations to the plugins!
Adds the configuration menu.
2018-07-17 15:26:52 +02:00
Maschell
8c99eb42d1 Add argument to the WUPS_OpenOverlay function which can be used to pass data to the callback. 2018-07-15 16:04:22 +02:00
Maschell
28a2e85eae Add documentation of the WUPS_InitFS and WUPS_InitOverlay function 2018-06-30 19:41:33 +02:00
Maschell
763c5c2006 Add hook that provides functions with kernel access to the plugin 2018-06-30 19:40:59 +02:00
Maschell
3f1d27f7b2 Replace the "void *" of the fs and overlay access with proper function pointers 2018-06-30 16:49:49 +02:00
Maschell
0dc08b804b Move wups include into a seperate folder to avoid collisions 2018-06-28 22:04:47 +02:00
Maschell
fc36464c55 Stop rely on wut for building the WUPS library 2018-06-20 16:16:16 +02:00
Maschell
25c3488c3c Fix types 2018-06-20 15:28:59 +02:00
Maschell
0d46322cbb Add support for plugins that use wut libraries.
Add the requirement to have wut installed
Modify the plugin makefile, now you need to enable malloc wrapping manually
Change the calling behaviour of the "WUPS_APP_STATUS_CLOSED" hook. PPCExit does NOT get called when opening an application from the system menu.
Add error output to the UDPLogger on failure.
2018-06-17 12:47:45 +02:00
Maschell
6ca382bf6e Formatting, added bash script for installing/updating the dependencies (based on the travis script) 2018-03-11 17:12:46 +01:00
Maschell
b9b8bceebf [Loader] Added mkdir support to the plugins 2018-03-08 16:38:26 +01:00
Maschell
fd5acd8932 Added "ON_FUNCTIONS_PATCHED" hook 2018-03-07 18:53:43 +01:00
Maschell
1024338498 Added new macros for FS and overlay access.
Now the plugin don't need to use the INITIALIZE_PLUGIN hook for fs and overlay access, but use the WUPS_FS_ACCESS()/WUPS_ALLOW_OVERLAY() macro.
2018-02-25 15:18:52 +01:00
Maschell
2aadfcf68e Added new hook-methods, added more information to the example_plugin
- Split up the WUPS includes into multiple seperate files, renamed some structs
- Added the hooks functions. (INITIALIZE_PLUGIN, DEINITIALIZE_PLUGIN, ON_VYSNC, ON_APP_STATUS_CHANGED, ON_APPLICATION_ENDING). INITIALZE is now "ON_APPLICATION_START". See the example for more information.
- Updated all plugins to fit the new hook. Some profit of the new hooks and are simpler now. (For example SwipSwapMe doesn't need to check if it's the first boot)
- arguments of the ON_APPLICATION_START have changed. It's not a pointer anymore and now has the boolean fields sd_mounted/usb_mounted which indicate if the device was mounted and it available via sd:/ or usb:/
- Some minor cleanups and formatting.
2018-02-25 13:07:49 +01:00
Maschell
409527fb21 [ALL] Added overlay callback
- Improved the overlay example. It's now using the wups api.
- Not working on TV when the game is rendered in 1080p. (Maybe add option to force screen to 720p?)
2018-02-20 12:41:58 +01:00
Maschell
2b1b46363d [ALL] Renamed the EntryData into FunctionData, fixed some comments.
- Also
2018-02-18 19:03:51 +01:00
Maschell
d64f221a92 [ALL] Added more fields to the metadata
- Now the plugin it holds the build timestamp and a description
- Added descriptions for all plugins
2018-02-18 18:43:51 +01:00
Maschell
41da4db58c Replaced all instances of the word "module" with "plugin" 2018-02-18 16:10:27 +01:00
Maschell
797e58f576 [General] Moving the FS-wrapper into an own lib, no more macro madness
The library now needs to be build with "make" and installed with "make install".
Make sure to include the -lwups into the plugin projecs.
If you call "WUPS_InitFS(args);" in the INITIALIZE method, the plugin has full SD/USB access.
2018-02-16 21:51:35 +01:00
Maschell
46358ce67a Added SD/USB support for plugins!
Now the plugins inherit the SD/USB access from the loader.
Check
(args != NULL && (args->device_mounted & WUPS_SD_MOUNTED) > 0)
in your INITIALZE method if you have SD access, and
(args != NULL && (args->device_mounted & WUPS_USB_MOUNTED) > 0)
for usb access.
You can simply use open, read etc. then with "sd:/" and "usb:".
No (un)mounting required.
NTFS support is NOT implemented yet.

So:
HID to VPAD plugin can now read configurations
SDCafiine now has support for libfat (other games than SSBU + FAT32 USB)
2018-02-14 22:52:16 +01:00
Maschell
7aec6a2bfd [General] Updated the wups_loader_entry_t struct
Removed the union
2018-02-12 20:51:24 +01:00
Maschell
81b5bed341 [WUPS] Added Macro for the Initialization hook 2018-02-10 17:00:17 +01:00
Maschell
b6119fde91 [Example Plugin] Updated the example plugin to override the OSFatal function.
The new OSFatal function logs the old message, and the calls the "real" OSFatal with a new String.
[General] - Added the .sdata section to the wups.ld
- Added all library_types to the enum
- Updated the wups_loader_entry_t struct to store the needed data
- Simplified the WUPS_MUST_REPLACE macro
- Removed unneeded stuff
2018-02-10 14:56:07 +01:00
Maschell
83a9aa7b7b [WUPS] Make the include c++ compatible 2018-02-04 22:18:43 +01:00
Maschell
72fb6ee5ea [WUPS] Fixed the module compiling 2018-02-04 16:44:37 +01:00
Maschell
0a31469246 [WUPS] rename the structs to be comaptible to C++ 2018-02-04 16:37:47 +01:00
Maschell
679b90cb9f [Example plugin] Added a very basic plugin based on brainslug 2018-02-04 10:14:45 +01:00