Sonic Dreamcaster
381e0704b9
osPfsAllocateFile_recomp: add check for max files
2025-07-23 05:50:10 -03:00
Sonic Dreamcaster
1834cef9c9
Pak.cpp: cleanup
2025-07-22 19:24:12 -03:00
Sonic Dreamcaster
ece48700a8
forgot to fix osPfsInitPak_recomp
2025-07-22 15:23:10 -03:00
Sonic Dreamcaster
33228560d5
pak queue as int32_t
2025-07-22 15:15:36 -03:00
Sonic Dreamcaster
c2a525ed2d
Pak: int32_t queue
2025-07-22 14:45:37 -03:00
Sonic Dreamcaster
9a658b406f
ARRAY_COUNT
2025-07-22 07:08:31 -03:00
Sonic Dreamcaster
19d26be0ae
simplify code and fix DeleteFile bug
2025-07-22 06:07:41 -03:00
Sonic Dreamcaster
7361eba6e4
forgot this check
2025-07-21 18:38:28 -03:00
Sonic Dreamcaster
bf84e072d1
add padding to OSPfsState
2025-07-21 04:14:15 -03:00
Sonic Dreamcaster
e48e7b5137
fully working and tested with mk64 and <?>
2025-07-21 03:58:09 -03:00
Sonic Dreamcaster
c964f29220
quick fix
2025-07-20 23:00:08 -03:00
Sonic Dreamcaster
b18f6b3ff8
Refactor. State: OK
2025-07-20 19:30:14 -03:00
Sonic Dreamcaster
118ad933de
WIP C++ changes
2025-07-19 23:49:59 -03:00
Sonic Dreamcaster
7e4a78680a
WIP C++ changes
2025-07-19 23:22:06 -03:00
Sonic Dreamcaster
ed7db194c4
get rid of file_no in IsFileEmpty()
2025-07-18 03:45:47 -03:00
Sonic Dreamcaster
da54226f8a
Implement controller pak functions
2025-07-18 03:21:54 -03:00
Wiseguy
ba2acaeb5c
Fix unplugged controller memory writes, add some missing math routines, and slightly weaken DMA alignment requirements ( #117 )
...
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
---------
Co-authored-by: LittleCube <littlecubehax@gmail.com>
2025-06-29 22:04:54 -04:00
Wiseguy
94b30d7061
Add exports to get the return value of functions from return hooks ( #116 )
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-06-23 01:42:05 -04:00
Wiseguy
4ba1b54d22
Sort hooks and callbacks by mod order, with return hooks in reverse order ( #115 )
2025-06-23 01:37:59 -04:00
Wiseguy
c5e268aa0f
Fix issue where functions that were regenerated for hooking use the wrong index when triggering events ( #112 )
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-05-03 02:45:08 -04:00
Wiseguy
327c34db2d
Fix native exports not getting cleared and bss sometimes not getting zero'd ( #110 )
validate / ubuntu (arm64, Debug) (push) Waiting to run
validate / ubuntu (arm64, Release) (push) Waiting to run
validate / ubuntu (x64, Debug) (push) Waiting to run
validate / ubuntu (x64, Release) (push) Waiting to run
validate / windows (x64, Debug) (push) Waiting to run
validate / windows (x64, Release) (push) Waiting to run
validate / macos (arm64, Debug) (push) Waiting to run
validate / macos (arm64, Release) (push) Waiting to run
validate / macos (x64, Debug) (push) Waiting to run
validate / macos (x64, Release) (push) Waiting to run
2025-05-02 15:07:52 -04:00
Wiseguy
0aa75b98ba
Add export to get mod folder path ( #109 )
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-04-26 19:06:23 -04:00
Darío
02d797aedc
Add support for embedded mods. ( #108 )
...
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
* Add support for embedded mods.
* Fix autogenerated mod manifests
---------
Co-authored-by: Mr-Wiseguy <mrwiseguyromhacking@gmail.com>
2025-04-22 23:53:43 -04:00
Wiseguy
4b57f50722
Allow freeing null pointers in the recomp_free export to match the C spec for free ( #107 )
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
2025-04-13 22:09:15 -04:00
Wiseguy
3c49f87ac6
Fix default value of mod enabled_by_default field ( #105 )
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-04-09 20:16:25 -04:00
Wiseguy
d2f9a32b90
Add default enabled state to mod manifest ( #104 )
validate / ubuntu (arm64, Debug) (push) Waiting to run
validate / ubuntu (arm64, Release) (push) Waiting to run
validate / ubuntu (x64, Debug) (push) Waiting to run
validate / ubuntu (x64, Release) (push) Waiting to run
validate / windows (x64, Debug) (push) Waiting to run
validate / windows (x64, Release) (push) Waiting to run
validate / macos (arm64, Debug) (push) Waiting to run
validate / macos (arm64, Release) (push) Waiting to run
validate / macos (x64, Debug) (push) Waiting to run
validate / macos (x64, Release) (push) Waiting to run
2025-04-09 04:35:21 -04:00
Wiseguy
234ed4a95e
Make mod config value getters const ( #103 )
2025-04-09 03:39:14 -04:00
Wiseguy
bb6b3b1645
Add mod API export to get the save file path ( #102 )
2025-04-09 01:15:10 -04:00
Wiseguy
1f2a5838ab
Added a mechanism to swap save files at runtime and a corresponding mod API export ( #101 )
validate / ubuntu (x64, Release) (push) Waiting to run
validate / ubuntu (arm64, Debug) (push) Waiting to run
validate / ubuntu (arm64, Release) (push) Waiting to run
validate / ubuntu (x64, Debug) (push) Waiting to run
validate / windows (x64, Debug) (push) Waiting to run
validate / windows (x64, Release) (push) Waiting to run
validate / macos (arm64, Debug) (push) Waiting to run
validate / macos (arm64, Release) (push) Waiting to run
validate / macos (x64, Debug) (push) Waiting to run
validate / macos (x64, Release) (push) Waiting to run
2025-04-08 02:21:06 -04:00
Wiseguy
cacb14fee5
Add mod API export to let a mod get its own version ( #100 )
2025-04-08 01:04:37 -04:00
Wiseguy
af075623dc
Add callback for mod reordering and functions to get mod file path and order index ( #99 )
validate / windows (x64, Release) (push) Has been cancelled
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-04-06 22:14:13 -04:00
Wiseguy
8506c1b588
Fix race condition where update_gfx could be called after renderer shutdown ( #98 )
2025-04-06 19:42:15 -04:00
Wiseguy
db1b1a1082
Expose functionality needed for runtime mod installation ( #97 )
...
validate / ubuntu (arm64, Release) (push) Waiting to run
validate / ubuntu (x64, Debug) (push) Waiting to run
validate / ubuntu (x64, Release) (push) Waiting to run
validate / ubuntu (arm64, Debug) (push) Waiting to run
validate / windows (x64, Debug) (push) Waiting to run
validate / windows (x64, Release) (push) Waiting to run
validate / macos (arm64, Debug) (push) Waiting to run
validate / macos (arm64, Release) (push) Waiting to run
validate / macos (x64, Debug) (push) Waiting to run
validate / macos (x64, Release) (push) Waiting to run
* DnD prototype.
* Remaining changes needed for runtime mod installation
* Change path unordered map to use strings as keys instead to fix MacOS compilation
---------
Co-authored-by: Dario <dariosamo@gmail.com>
2025-04-06 03:53:28 -04:00
Wiseguy
6f8393f691
Allow renderers to pick the graphics API ( #96 )
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-03-23 21:39:30 -04:00
Wiseguy
2ed84f46c5
Implement mod configuration, mod reordering, and extended exports ( #95 )
...
* init recomp config_store
* Use a custom hash class to enable hetereogenous lookup
* Added config registry/option files
* switch to using usings
* dropdown config type
* Added TextField option type
* parse/validate button config type
* wip callback registry
* Add auto enabled.
* Cleanup.
* Add support for config schema.
* Add float arg1 helpers
* Config storage for mods.
* Proper enum parsing.
* Persist mod order and enable.
* Enable new mods by default.
* Mods directory.
* Parse thumbnail when opening mods.
* Auto-enabled mods.
* Implement extended function exports that pass the caller mod's index as an extra argument
* Fix mod configs not saving and default value not getting parsed
* Implement API to allow mods to read their config values
* Fix config value parsing to allow integral values for double fields
* Change construction of ModConfigQueueSaveMod.
* Fix N64Recomp commit after rebase
---------
Co-authored-by: Dario <dariosamo@gmail.com>
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
2025-03-23 21:30:27 -04:00
David Chavez
ec56fb39b0
Add Metal as a renderer ( #94 )
validate / ubuntu (arm64, Release) (push) Has been cancelled
validate / ubuntu (x64, Debug) (push) Has been cancelled
validate / ubuntu (x64, Release) (push) Has been cancelled
validate / windows (x64, Debug) (push) Has been cancelled
validate / ubuntu (arm64, Debug) (push) Has been cancelled
validate / windows (x64, Release) (push) Has been cancelled
validate / macos (arm64, Debug) (push) Has been cancelled
validate / macos (arm64, Release) (push) Has been cancelled
validate / macos (x64, Debug) (push) Has been cancelled
validate / macos (x64, Release) (push) Has been cancelled
2025-03-14 18:08:18 +01:00
Wiseguy
52ee0a675f
Fix missing chrono include on some STL implementations ( #92 )
2025-03-05 21:22:51 -05:00
Wiseguy
a7b9470f92
Fix osDpSetStatus bit handling ( #88 )
2025-02-18 17:34:36 -05:00
Wiseguy
a2f201db84
Add on init callback to GameEntry, fix thread_queue_remove not actually removing the thread ( #87 )
2025-02-17 21:34:22 -05:00
Wiseguy
0afeb089a5
Fix jump table handling in regenerated relocatable functions ( #86 )
2025-02-11 22:45:45 -05:00
Wiseguy
5360099ee2
Fix issues with hooking functions that were patched by the base recomp ( #85 )
2025-02-11 01:11:24 -05:00
Wiseguy
7319630e2e
Fix issue with regenerating patched functions with no base functions regenerated, add 1kB of padding between mods to mitigate OOB accesses in mods, update N64Recomp ( #84 )
2025-01-30 03:02:40 -05:00
Wiseguy
3474514013
Populate display_name for autogenerated manifests ( #83 )
2025-01-26 23:00:13 -05:00
Wiseguy
6eca1df47f
Edited mod error messages to reflect new manifest filename, updated N64Recomp commit ( #82 )
2025-01-26 22:51:39 -05:00
Wiseguy
5eada509c0
Rename manifest to mod.json, refactor config parsing, add display_name, description, short_description fields ( #81 )
2025-01-26 22:14:08 -05:00
Wiseguy
cdfe416809
Mod function hooking ( #80 )
...
* Prevent mods from replacing functions patched by the base recomp unless they're marked as Force
* Implement function hooking for functions replaced by mods
* Add support for hooking non-relocated functions that aren't replaced by a mod
* Only create the regenerated code handle if any functions need to be regenerated
* Implement relocs for function regeneration in hooking
* Implement hooking of functions patched by the base recomp
* Fix base event index tracking when loading mods
* Update to N64Recomp main branch after merge
2025-01-26 22:03:36 -05:00
Ethan Lafrenais
7eb4bc3459
Runtime support for RSP overlays ( #77 )
2025-01-16 00:32:33 -05:00
Wiseguy
50029c70fd
Update sse2neon.h ( #79 )
2025-01-13 02:11:36 -05:00
Ethan Lafrenais
9721c8de3b
Add GameEntry.thread_create_callback ( #78 )
2025-01-12 23:43:53 -05:00
Wiseguy
d17a3f34cb
Integrate the live recompiler for mod loading ( #76 )
2025-01-02 21:25:20 -05:00