Mr-Wiseguy
f36cdf9ac1
Add CPU architecture detection and gate current mod function hooking behind x86_64 define
2024-09-09 22:06:52 -04:00
Mr-Wiseguy
26a05439c2
Implement mip32 relocs for mod loading and add mod functions to function lookup table
2024-09-09 02:00:28 -04:00
Mr-Wiseguy
a7e5a7770f
Implement mod loading on posix systems
2024-09-08 22:43:03 -04:00
Mr-Wiseguy
b9592c625d
Add dependencies and authors to manifest and update N64Recomp submodule
2024-09-04 02:28:28 -04:00
Mr-Wiseguy
986881e4e1
Expose function for getting the details for currently opened mods
2024-09-03 00:03:41 -04:00
Mr-Wiseguy
3718758cd5
Changed mod binary and mod symbol files to use fixed paths, removed them from the manifest
2024-09-02 22:04:47 -04:00
Mr-Wiseguy
09f5759d3a
Added version parsing with version number as argument to recomp initialization and minimum recomp versions for mods
2024-09-02 20:03:24 -04:00
Mr-Wiseguy
5699906f34
Removed per-game mod subdirectories and added the mod's corresponding game id to the manifest
2024-09-02 01:19:08 -04:00
Mr-Wiseguy
37ce5c2c1c
Add support for exporting functions from native libraries in mods
2024-09-01 20:05:32 -04:00
Mr-Wiseguy
073bd0e4c2
Add support for creating events in patches
2024-08-31 22:04:24 -04:00
Mr-Wiseguy
11c50bf349
Implement mod events and callbacks
2024-08-31 02:25:23 -04:00
Mr-Wiseguy
904f17a872
Implement importing functions from other mods
2024-08-30 02:59:34 -04:00
Mr-Wiseguy
3dc622d895
Reorganized mod code handle code
2024-08-29 23:47:54 -04:00
Mr-Wiseguy
e7afded4eb
Reorganized mod loading, added mod dependency validation
2024-08-28 23:54:57 -04:00
Mr-Wiseguy
60a25faebe
Update N64Recomp for new modding infrastructure, begin adding support for offline compiled mods
2024-08-28 01:12:18 -04:00
Mr-Wiseguy
7e063bfdae
Added function conflict detection, recovery from failed mod loading and message box with load errors
2024-08-17 13:29:28 -04:00
Mr-Wiseguy
b0d3e4610c
Add duplicate mod detection
2024-08-17 13:29:28 -04:00
Mr-Wiseguy
f34909ef42
Implemented per-game mod contexts
2024-08-17 13:29:28 -04:00
Mr-Wiseguy
621ee53bd3
Created ModContext and exposed functionality for searching mod folders, activating mods, and loading active mods
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
eac57752ef
Add N64Recomp as submodule and initial mod loading (temporarily using a DLL instead of Lua recompilation)
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
cc2d991972
Made rdram size an argument in recomp::start, reorganized some PI address constants
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
71cd05807f
Renamed load_mod to open_mod and ModLoadError to ModOpenError
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
729155f0f1
Add checks for required fields existing in manifest
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
52b365f42c
Added validation for mod contents and mod load error strings
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
374244fa71
Added ability to load mods from directories instead of zip files
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
c7737c9ca6
Add more mod loading error enums
2024-08-17 13:29:27 -04:00
Mr-Wiseguy
950c889235
Added miniz and implemented mod manifest loading from zip
2024-08-17 13:29:27 -04:00
Wiseguy
0a53855333
Add RECOMP_FUNC definition to recomp.h for disabling IPO ( #59 )
2024-08-13 23:30:33 -04:00
Wiseguy
47feaaaa0d
Allow registering multiple patch sections ( #57 )
2024-07-28 21:19:46 -04:00
Anghelo Carvajal
c7ab41ec05
Fix saving never failing ( #53 )
2024-06-21 19:31:16 -04:00
David Chavez
ce68e96c17
Remove WIP section in README ( #52 )
2024-06-20 17:16:43 +02:00
David Chavez
e94dc4055b
Implement osViRepeatLine ( #30 )
...
* Implement osViRepeatLine
* Address feedback
* Include helpers header
* Address feedback
2024-06-18 17:00:26 -04:00
Anghelo Carvajal
93fab7ecc4
Provide missing pfs stub functions ( #50 )
...
* `osPiRawStartDma_recomp` and `osEPiRawStartDma`
* `osPfsNumFiles` and `osPfsRepairId`
* whoops, wrong name
* Fix missing new line on message box
* Use actual pointers in osPfsNumFiles_recomp
2024-06-18 13:07:08 -04:00
Anghelo Carvajal
27282afa2b
Remove "permanent" and "temporary" threads tagging and add a way to name game threads ( #45 )
...
* System to specify thread types by the game
* Register threads callbacks
* Remove temporary and permanent threads
* Fix `pthread_setname_np` not liking names longer than 16 bytes
* Singular
* Rename events_callbacks arg
* Use `prctl` instead of `pthread_setname_np` for naming a thread
* Fix typo
2024-06-18 13:02:18 -04:00
David Chavez
c91627740f
Use non git@ submodule url for xxHash ( #48 )
2024-06-17 10:04:17 +02:00
David Chavez
0c1811ca6f
Fixes for Windows and size_t ( #46 )
2024-06-11 20:47:52 +02:00
David Chavez
5f350b858e
Fix segfault on joining saving thread ( #44 )
2024-06-11 07:05:53 +02:00
David Chavez
835c14b0a8
CI: Add macos workflow ( #43 )
2024-06-10 16:27:48 +02:00
Anghelo Carvajal
85d6ae9e20
Add multiple controllers support ( #41 )
...
* Add controller number to input callbacks
* connected_device_info_t
* Fix index
* Fix osContGetReadData
2024-06-10 09:58:07 -04:00
Anghelo Carvajal
4d756c8df2
Consolidate both patch register functions into a single function ( #40 )
...
* Consolidate both patch register functions into one
* register_patches
2024-06-10 09:52:27 -04:00
Anghelo Carvajal
b4dbddb555
Remove RT64 dependency ( #35 )
...
* `RendererContext` abstract class
* Delete rt64_layer
* Implement renderer creation callback
* Make `GraphicsConfig` an abstract class
* Remove rt64
* Add renderer callback to `ultramodern::set_callbacks`
* Fix rebase
* Change setup_result's visibility to protected
* Declare abstract `is_equal` method instead of operators
* Various fixes
* Fix issues
* trigger_config_action
* Move GraphicsConfig back to ultramodern
* Change `update_config` to return if any changes were applied
* Rename renderer_wrapper to renderer_context
* Remove SDL2 and other libraries
* Allow registering get_graphics_api_name
* Move WindowHandle to renderer namespace
* Comments explaining which callbacks are required
* Fix CI
* Update readme
* `ULTRAMODERN_QUICK_EXIT` macro
* Remove --config from readme
* Add `add_compile_definitions(NOMINMAX)`
2024-06-10 09:43:38 -04:00
David Chavez
b0fa96b613
Fix Windows CI ( #42 )
2024-06-07 18:53:51 +02:00
Anghelo Carvajal
2caf04e6da
Move controller implementations from librecomp to ultramodern ( #38 )
...
* Start moving some cont functions to ultramodern
* Implement osContStartQuery, osContSetCh
* Finish moving cont.cpp functions to ultramodern
* Add constexpr to _return
* Fix rumble not working
* Rename cont.cpp to input.cpp
* Test
2024-06-06 13:45:33 -04:00
Anghelo Carvajal
6ceb171571
Misc fixes ( #39 )
...
* Fixes
* Fix OoB
* Use calloc instead of malloc for initializing the overlays
2024-06-05 22:28:22 -04:00
David Chavez
ec7e81b45d
Revert sections.hpp to .h ( #34 )
2024-06-03 21:54:20 +02:00
David Chavez
9f0dd2fcd9
Use hpp suffix for cpp headers ( #33 )
2024-06-03 20:31:52 +02:00
David Chavez
53072cb289
Use file backup system for config files ( #29 )
2024-06-02 20:38:40 +02:00
dcvz
e0769a223b
Update librecomp header namespace to librecomp
2024-06-01 21:23:40 +02:00
dcvz
451a8356c7
Namespace librecomp headers under recomp
2024-06-01 19:48:53 +02:00
Anghelo Carvajal
d6f0f66e71
Merge pull request #27 from N64Recomp/upstreaming_zelda_changes
...
Upstream latest changes made to the ModernRuntime in the Zelda repo
2024-06-01 12:24:10 -04:00