Commit Graph

65 Commits

Author SHA1 Message Date
Wiseguy
f8d439aeee
Add option to output multiple functions per file, defaults to 50 (#88) 2024-08-15 00:17:09 -04:00
Mr-Wiseguy
424a509b22 Allow zero-sized symbols in a specific range for patches, fixed cases where errors didn't terminate the recompiler 2024-08-15 00:00:25 -04:00
Mr-Wiseguy
4161ef68cc Made recompilation header include configurable 2024-08-15 00:00:25 -04:00
Mr-Wiseguy
dfd90057c9 Rewrote jal resolution to improve handling for overlapping overlays 2024-08-15 00:00:25 -04:00
Wiseguy
ba4aede49c
Add symbol reference file mechanism for elf recompilation (#82)
* Consolidate context dumping toggle into a single bool, begin work on data symbol context dumping
* Added data symbol context dumping
* Fix mthi/mtlo implementation
* Add option to control unpaired LO16 warnings
2024-07-02 21:42:22 -04:00
Anghelo Carvajal
16819a0515
Add libgultra_d functions to ignored_funcs (#60) 2024-06-21 08:38:15 -04:00
Scott Brenner
ecc9dc49e5
Bump actions/checkout to v4 (#76) 2024-06-10 12:31:50 +02:00
dcvz
ca096fd078 CI: Fix Windows CI after image updates 2024-06-07 10:42:47 +02:00
David Chavez
2a2df89349
Remove disable_warnings header include (#75) 2024-06-05 00:02:37 +02:00
David Chavez
8dfed04919
Update headers to use new namespace in N64ModernRuntime (#74) 2024-06-03 21:46:42 +02:00
Gilles Siberlin
6eb7d5bd3e
Implement hook insertion (#73)
* Implement function hook insertion

* Fix recompiled code indentation

* Add _matherr to renamed_funcs

* Replace after_vram by before_vram

* Emit dummy value if relocatable_sections_ordered is empty
2024-05-31 23:31:50 -04:00
David Chavez
5c687ee962
CI: Add Linux arm64 (#69) 2024-05-31 22:48:42 +02:00
Anghelo Carvajal
94b59d56f7
Mask the lower 3 bits of the de RSP operand (#55) 2024-05-17 22:38:19 -04:00
Mr-Wiseguy
e0e52d1fc3
Symbol file toml update (#52)
* Symbol input file mechanism

* Migration to new toml lib

---------

Co-authored-by: dcvz <david@dcvz.io>
2024-05-16 22:33:08 -04:00
Anghelo Carvajal
26c5c2cbb8
Implement tail calls in the middle of functions and allow recomping libgcc math routines (#43) 2024-05-14 18:56:23 -04:00
Anghelo Carvajal
5d46de6de0
Add more renamed_funcs (#35) 2024-05-14 15:06:47 -04:00
Tharo
d4fab15fcc
RSPRecomp: Add some features to help debug unhandled indirect jump targets (file+line of instruction and register dump) (#33) 2024-05-13 21:00:00 -04:00
David Chavez
706e7c5069
Add Initializers for Structs - Fix issue with Apple Clang (#31)
Fixes #30 also adds CI
2024-05-13 20:55:43 -04:00
Anghelo Carvajal
d7b223fde5
Implement bgezal/bgezall (#23) 2024-05-12 22:07:46 -04:00
Mr-Wiseguy
3ab0edf18a Changed RSPRecomp to take a toml config file instead of using hardcoded options 2024-05-12 20:30:02 -04:00
Tharo
dbf0e623c8
Implement doubleword multiply and divide, and conversions between doubleword and single/double precision floats (#16) 2024-05-11 14:08:15 -04:00
Mr-Wiseguy
5838e4223a Add license and readme 2024-05-10 17:19:30 -04:00
Mr-Wiseguy
0f813247a1 Added CMake build system, fixed warnings on clang, removed VS solution/projects 2024-04-20 21:05:50 -04:00
Mr-Wiseguy
32841e85b4 Changed RSP recompiler to emit different macros for loads and stores to handle unaligned access 2024-04-20 20:02:28 -04:00
Mr-Wiseguy
47c9033b61 Improved reloc pairing 2024-04-20 20:00:48 -04:00
Mr-Wiseguy
50d55bd171 Added manual sections input option, fixed bug with multiplications and added mthi/lo instructions 2024-04-20 20:00:29 -04:00
Mr-Wiseguy
72fe4ed79c Added some missing float comparison instructions and fixed functions incorrectly getting detected as the entrypoint 2024-03-11 00:15:31 -04:00
Mr-Wiseguy
9a4f650c9b Fixed relocatable section file path error using the wrong value, added an include for funcs.h to single-file output mode 2023-11-24 15:11:36 -05:00
Mr-Wiseguy
be275c198a Added single-file mode and absolute symbol options (for patch recompilation) 2023-11-12 14:50:50 -05:00
Mr-Wiseguy
d249363fe5 Misc upgrades including mips3 float mode support, skip overwriting existing files if they're identical to the current recompiled output 2023-10-29 20:53:17 -04:00
Mr-Wiseguy
9321a60f28 Properly implement unaligned load/store instructions 2023-05-21 17:42:25 -04:00
Mr-Wiseguy
3db07f5b26 Fixed signedness issue in formatted entrypoint address 2023-04-27 23:17:26 -04:00
Mr-Wiseguy
54b6825d63
Merge pull request #10 from M0liusX/main
Fix MSVC v143 errors with fmt
2023-04-27 23:16:18 -04:00
M0liusX
30b1fceaf2 Fix MSVC v143 errors with fmt 2023-04-27 12:53:43 -05:00
Mr-Wiseguy
302dd091c2 Implement application of single-instruction patches 2023-03-24 20:28:36 -04:00
Mr-Wiseguy
9949813018 Implemented parsing of instruction patches in config file 2023-03-24 19:22:30 -04:00
Mr-Wiseguy
7df3e28c76 Implemented function stubbing 2023-03-24 18:04:21 -04:00
Mr-Wiseguy
fba0085946 Added toml11 and implemented initial config file parsing, replaces command-line arg inputs 2023-03-24 17:11:17 -04:00
Mr-Wiseguy
f4324ee599 Split OoT into its own repo 2023-03-22 01:15:04 -04:00
Mr-Wiseguy
85a04d74e7 Fixed missing rounding_mode variable in generated code 2023-03-21 23:37:52 -04:00
Mr-Wiseguy
52644095f0 Added MM aspMain parameters to rsp recomp, added voice and flash to special function lists 2023-02-19 22:43:08 -05:00
Mr-Wiseguy
5c5f6a51ad Fixed an occasional startup crash caused by the game running before the events thread was finished initializing 2023-02-15 23:41:46 -05:00
Mr-Wiseguy
38f6304d44 Modified audio handling to use SDL_QueueAudio to simplify code and changed remaining bytes calculation to reduce audio latency 2023-02-15 23:41:14 -05:00
Mr-Wiseguy
7babd24bd1 Implemented audio ucode recomp and audio interface, removed restrict usage due to issues with release builds 2023-02-15 17:59:25 -05:00
Mr-Wiseguy
217a30b032 Implemented RSP microcode recompilation 2023-02-14 01:06:41 -05:00
Mr-Wiseguy
877524cf94 Fixed section address initialization, created project to start RSP recompilation work 2023-02-09 23:15:13 -05:00
Mr-Wiseguy
fedeb72451 Fixed out of bounds error in writing section load addresses 2023-02-06 22:13:06 -05:00
Mr-Wiseguy
3f73f99cc6 Added null jpeg task implementation to prevent crashes 2023-02-06 22:12:30 -05:00
Mr-Wiseguy
b5a482e72c Fixed crash caused by bad osSpTaskYielded implementation 2023-02-06 18:17:56 -05:00
Mr-Wiseguy
2ebeffee89 Implemented sram saving 2023-02-06 18:17:31 -05:00