Commit Graph

36 Commits

Author SHA1 Message Date
Mr-Wiseguy
3167fadd47 Added and implemented conditional branch instruction table 2024-07-04 12:44:08 -04:00
Mr-Wiseguy
fb73230097 More binary op types, moved binary expression string generation into separate function 2024-07-04 12:44:08 -04:00
Mr-Wiseguy
81f95a42e4 Initial implementation of unary operation table 2024-07-04 12:44:04 -04:00
Mr-Wiseguy
347a792f80 Initial implementation of binary operation table 2024-07-04 12:43:19 -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
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
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
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
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
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
M0liusX
30b1fceaf2 Fix MSVC v143 errors with fmt 2023-04-27 12:53:43 -05: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
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
602be9c2c6 Implemented relocatable overlays (OoT runs) 2023-02-04 00:14:03 -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