Commit Graph

42 Commits

Author SHA1 Message Date
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
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
Anghelo Carvajal
d7b223fde5
Implement bgezal/bgezall (#23) 2024-05-12 22:07:46 -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
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
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
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
fedeb72451 Fixed out of bounds error in writing section load addresses 2023-02-06 22:13:06 -05:00
Mr-Wiseguy
602be9c2c6 Implemented relocatable overlays (OoT runs) 2023-02-04 00:14:03 -05:00
Mr-Wiseguy
d2603ce07c More libultra function implementations, euc-jp decoding for print output, improved build times for output project 2023-01-16 23:01:21 -05:00
Mr-Wiseguy
c6de2b6189 WIP overlay support and some libultra function implementations for other games 2023-01-12 23:39:49 -05:00
Mr-Wiseguy
0af9d489b3 Made recompiled output run the game's entrypoint, various reorganization, clang warning fixes 2022-11-25 15:31:16 -05:00
Mr-Wiseguy
6e45fac005 "Fixed" implementation of lwl/swl (fixes initial test games), implemented more controller functionality 2022-11-20 22:56:13 -05:00
Mr-Wiseguy
aad1bac933 Integrated SDL2 and switch to a test rom, fixed some issues in recompilation 2022-11-20 12:51:08 -05:00
Mr-Wiseguy
d0c3eb73ec Integrated RT64 (not included in repo), sign extended addresses 2022-11-19 18:12:47 -05:00
Mr-Wiseguy
39b67c8468 Implemented SP, DP, and SI events
Inject a thread pause into infinite loops to allow the idle thread to
yield for event processing
Removed all preemption usage from the scheduler
2022-11-18 16:12:39 -05:00
Mr-Wiseguy
5d9ea96abc Added temp for switch case operand, fixed compilation issues in output 2022-11-15 19:55:48 -05:00
Mr-Wiseguy
2300a4b6c9 Implemented register state tracking to identify jump tables for jr instructions 2022-11-15 19:55:48 -05:00
Mr-Wiseguy
84fd433dcc Implemented jal function lookup 2022-11-15 19:55:48 -05:00
Mr-Wiseguy
8a0f0da0cc Implemented initial set of instructions and ignored functions 2022-11-15 19:55:48 -05:00
Mr-Wiseguy
4b1dc14019 Added ELFIO and fmtlib libraries 2022-11-15 19:55:48 -05:00
Mr-Wiseguy
e48fdabdae Initial project setup with rabbitizer submodule 2022-11-15 19:55:48 -05:00