Commit Graph

  • 688c4a2537 Fixed incorrect size used for finding section segments Mr-Wiseguy 2024-08-24 22:26:42 -0400
  • 49c3628a76 Fix handling of section load addresses to match objcopy behavior, added event parsing to dependency tomls, minor cleanup Mr-Wiseguy 2024-08-24 03:15:56 -0400
  • eb8aba6550 Add more comments to the offline mod recompiler's output Mr-Wiseguy 2024-08-23 03:23:12 -0400
  • 3f56034bd0 Add local symbol addresses array to offline mod recompiler output and rename original one to reference section addresses Mr-Wiseguy 2024-08-23 03:12:12 -0400
  • 293b97817b Allow cross-section relocations, encode exact target section in mod relocations, add way to tag reference symbol relocations Mr-Wiseguy 2024-08-23 03:11:12 -0400
  • 008b1177fa Move file header writing outside of function recompilation Mr-Wiseguy 2024-08-22 23:24:54 -0400
  • ad0e38dde7 Add runtime-driven fields to offline mod recompiler, fix event symbol relocs using the wrong section in the mod tool Mr-Wiseguy 2024-08-22 00:23:23 -0400
  • 21504041b9 Add events (from dependencies and exported) and callbacks to the mod symbol format and add support to them in elf parsing Mr-Wiseguy 2024-08-21 01:29:12 -0400
  • f300b6dccc Some cleanup by making some Context members private Mr-Wiseguy 2024-08-18 14:11:03 -0400
  • 5f1b9a845b Move mod context fields into base context, move import symbols into separate vector, misc cleanup Mr-Wiseguy 2024-08-17 13:25:04 -0400
  • 623013a371 Add strict mode and ability to generate exports for normal recompilation (for patches) Mr-Wiseguy 2024-08-11 14:45:07 -0400
  • 8fcf73de4d Add first pass offline mod recompiler (generates C from mods that can be compiled and linked into a dynamic library) Mr-Wiseguy 2024-07-24 01:11:41 -0400
  • f92bd0c7b9 Add dependencies to the mod symbol format, finish exporting and importing of mod symbols Mr-Wiseguy 2024-07-24 01:11:07 -0400
  • 4b4dcff7ca Implemented writing import and exports in the mod tool Mr-Wiseguy 2024-07-22 23:56:48 -0400
  • ab80ff962e Make mod tool emit relocs and patch binary for non-relocatable symbol references as needed Mr-Wiseguy 2024-07-22 00:01:47 -0400
  • a7a4134123 WIP elf to mod tool, currently working without relocations or API exports/imports Mr-Wiseguy 2024-07-17 00:54:43 -0400
  • d8dcb43d5a Move elf parsing into a separate library Mr-Wiseguy 2024-07-16 22:24:25 -0400
  • 04daa21908 Refactor elf parsing into static Context method for reusability Mr-Wiseguy 2024-07-16 21:20:32 -0400
  • ff7aae11df Restructure mod symbols to make replacements global instead of per-section Mr-Wiseguy 2024-07-12 22:27:20 -0400
  • a88bc6e16a Implement mod symbol parsing Mr-Wiseguy 2024-07-09 16:40:17 -0400
  • 07f2569647 Remove some unused code and document which Context fields are actually required for recompilation Mr-Wiseguy 2024-07-08 22:20:19 -0400
  • ff5797a2aa Changed recomp port naming to N64Recomp Mr-Wiseguy 2024-07-08 16:54:35 -0400
  • 9b0a349a5e Moved parts of recomp_port.h into new internal headers in src folder Mr-Wiseguy 2024-07-08 16:51:17 -0400
  • bb2fc8c67b Removed unnecessary config input to recompilation functions Mr-Wiseguy 2024-07-08 16:37:41 -0400
  • ddb8a08482 Move recompiler core logic into a core library and make the existing CLI consume the core library Mr-Wiseguy 2024-07-07 17:27:49 -0400
  • bce3baa99a Fix mov.d using the wrong input operand Mr-Wiseguy 2024-06-19 21:42:09 -0400
  • 4fd4d6a883 Created Generator interface, separated operation types and tables and C generation code into new files Mr-Wiseguy 2024-06-12 00:05:22 -0400
  • bd44f0bb59 Added store instruction operation table Mr-Wiseguy 2024-06-10 01:27:38 -0400
  • 812cc442d0 Finished moving float arithmetic instructions to operation tables Mr-Wiseguy 2024-06-09 16:15:52 -0400
  • 9b1137eb6a Added CHECK_FR generation to binary operation processing, moved float comparison instructions to binary op table Mr-Wiseguy 2024-06-09 01:42:18 -0400
  • 90a77a0e6e Add operands for other uses of float registers Mr-Wiseguy 2024-06-09 00:29:44 -0400
  • 2997975199 Fixed likely swap on bgezal, fixed extra indent branch close and missing indent on branch statement Mr-Wiseguy 2024-06-06 23:58:02 -0400
  • fb5af956b1 Added and implemented conditional branch instruction table Mr-Wiseguy 2024-06-04 21:46:31 -0400
  • 024ba3959f More binary op types, moved binary expression string generation into separate function Mr-Wiseguy 2024-05-23 18:20:29 -0400
  • 239a637e29 Initial implementation of unary operation table Mr-Wiseguy 2024-05-23 00:51:33 -0400
  • 7268649c44 Initial implementation of binary operation table Mr-Wiseguy 2024-05-22 21:24:11 -0400
  • e4b6f35899
    Merge 552d5efde2 into f8d439aeee David Chavez 2024-08-15 01:13:45 -0400
  • 99e645b65b
    Merge fb7f4d0c0a into f8d439aeee David Chavez 2024-08-15 01:13:42 -0400
  • f8d439aeee
    Add option to output multiple functions per file, defaults to 50 (#88) Wiseguy 2024-08-15 00:17:09 -0400
  • 04be428bef Add option to output multiple functions per file, defaults to 50 Mr-Wiseguy 2024-08-13 23:22:59 -0400
  • 424a509b22 Allow zero-sized symbols in a specific range for patches, fixed cases where errors didn't terminate the recompiler Mr-Wiseguy 2024-08-13 23:12:08 -0400
  • 4161ef68cc Made recompilation header include configurable Mr-Wiseguy 2024-08-13 02:14:34 -0400
  • dfd90057c9 Rewrote jal resolution to improve handling for overlapping overlays Mr-Wiseguy 2024-08-13 01:54:04 -0400
  • 5f950e9886 Allow zero-sized symbols in a specific range for patches, fixed cases where errors didn't terminate the recompiler Mr-Wiseguy 2024-08-13 23:12:08 -0400
  • fd2ad050cf Made recompilation header include configurable Mr-Wiseguy 2024-08-13 02:14:34 -0400
  • b55393fb2c Rewrote jal resolution to improve handling for overlapping overlays Mr-Wiseguy 2024-08-13 01:54:04 -0400
  • dea30ba3ef
    Update README.md ckeyboard 2024-08-11 21:29:56 -0400
  • 1199a86a9c
    Merge 95d04c2aee into ba4aede49c Anghelo Carvajal 2024-07-31 19:31:04 +0000
  • 95d04c2aee Add the TODO angie 2024-07-31 15:30:59 -0400
  • dd71e92b44 Add [INFO] to tail call messages angie 2024-05-21 10:30:36 -0400
  • ce7402cf78 Warn if an STT_FUNC has zero size. angie 2024-05-21 10:27:50 -0400
  • 727b4b750f Fix mov.d using the wrong input operand instruction-refactor Mr-Wiseguy 2024-06-19 21:42:09 -0400
  • d6be2d7a83 Created Generator interface, separated operation types and tables and C generation code into new files Mr-Wiseguy 2024-06-12 00:05:22 -0400
  • c4f85867f3 Added store instruction operation table Mr-Wiseguy 2024-06-10 01:27:38 -0400
  • dbd53ef9c4 Finished moving float arithmetic instructions to operation tables Mr-Wiseguy 2024-06-09 16:15:52 -0400
  • 43598c65d9 Added CHECK_FR generation to binary operation processing, moved float comparison instructions to binary op table Mr-Wiseguy 2024-06-09 01:42:18 -0400
  • d91f1cf3a8 Add operands for other uses of float registers Mr-Wiseguy 2024-06-09 00:29:44 -0400
  • c3de49c944 Fixed likely swap on bgezal, fixed extra indent branch close and missing indent on branch statement Mr-Wiseguy 2024-06-06 23:58:02 -0400
  • 3167fadd47 Added and implemented conditional branch instruction table Mr-Wiseguy 2024-06-04 21:46:31 -0400
  • fb73230097 More binary op types, moved binary expression string generation into separate function Mr-Wiseguy 2024-05-23 18:20:29 -0400
  • 81f95a42e4 Initial implementation of unary operation table Mr-Wiseguy 2024-05-23 00:51:33 -0400
  • 347a792f80 Initial implementation of binary operation table Mr-Wiseguy 2024-05-22 21:24:11 -0400
  • ba4aede49c
    Add symbol reference file mechanism for elf recompilation (#82) Wiseguy 2024-07-02 21:42:22 -0400
  • 66c4cdf9a9 Fix review typo Mr-Wiseguy 2024-07-02 21:39:15 -0400
  • c28507de2a Add option to control unpaired LO16 warnings Mr-Wiseguy 2024-07-02 21:31:54 -0400
  • 388c16c13f Fix mthi/mtlo implementation Mr-Wiseguy 2024-06-29 16:35:13 -0400
  • d30d85bdfb Fix compilation error on some compilers Mr-Wiseguy 2024-06-28 21:34:53 -0400
  • a384076f20 Added reference symbol and output binary mechanisms for resolving relocations in patches Mr-Wiseguy 2024-06-28 21:19:59 -0400
  • 4522b501a8 Added data symbol context dumping Mr-Wiseguy 2024-06-23 16:22:59 -0400
  • 873219d4c5 Consolidate context dumping toggle into a single bool, begin work on data symbol context dumping Mr-Wiseguy 2024-06-23 14:24:11 -0400
  • 16819a0515
    Add libgultra_d functions to ignored_funcs (#60) Anghelo Carvajal 2024-06-21 08:38:15 -0400
  • 6848942f51 Add libgultra_d functions to ignored_funcs Angie 2024-05-20 21:01:31 -0400
  • fb7f4d0c0a Use better paths fit for being submoduled fix/cmake-paths-submodule dcvz 2024-06-11 23:40:52 +0200
  • ecc9dc49e5
    Bump actions/checkout to v4 (#76) Scott Brenner 2024-06-10 03:31:50 -0700
  • ca096fd078 CI: Fix Windows CI after image updates dcvz 2024-06-07 10:42:47 +0200
  • 18595eac2f
    Bump actions/checkout to v4 Scott Brenner 2024-06-06 20:02:02 -0700
  • 2a2df89349
    Remove disable_warnings header include (#75) David Chavez 2024-06-05 00:02:37 +0200
  • 01d768d98c Remove disable_warnings header include dcvz 2024-06-04 22:00:48 +0200
  • 8dfed04919
    Update headers to use new namespace in N64ModernRuntime (#74) David Chavez 2024-06-03 21:46:42 +0200
  • fd6ef7c713 Update headers to use new namespace dcvz 2024-06-01 20:02:52 +0200
  • 0cd1440f13
    Merge branch 'N64Recomp:main' into main Rucadi 2024-06-02 16:21:41 +0200
  • 6eb7d5bd3e
    Implement hook insertion (#73) Gilles Siberlin 2024-06-01 05:31:50 +0200
  • 5c687ee962
    CI: Add Linux arm64 (#69) David Chavez 2024-05-31 22:48:42 +0200
  • a97bd793a7 Emit dummy value if relocatable_sections_ordered is empty Gillou68310 2024-05-31 16:24:16 +0200
  • f32e47f930 Replace after_vram by before_vram Gillou68310 2024-05-31 15:50:29 +0200
  • 079bf0e8cd Add _matherr to renamed_funcs Gillou68310 2024-05-29 11:55:30 +0200
  • 3f237c31f1 Fix recompiled code indentation Gillou68310 2024-05-29 11:36:16 +0200
  • 4a832ac2fa Implement function hook insertion Gillou68310 2024-05-28 14:51:58 +0200
  • a7691dc5a0 Add arm64 linux dcvz 2024-05-25 01:02:30 +0200
  • 90ab1de54e
    Use correct configs on CI David Chavez 2024-05-24 22:49:08 +0200
  • 552d5efde2 Incorporate suggestions from @VelocityRa chore/small-cmake-updates dcvz 2024-05-19 16:48:27 +0200
  • 1467b3ed86 rebase fixes dcvz 2024-05-19 16:44:53 +0200
  • 890caa6f44 Merge branch 'main' into chore/small-cmake-updates dcvz 2024-05-19 16:44:15 +0200
  • e516435bb9 Perform submodule init after start David Chavez 2024-05-19 13:06:30 +0000
  • 6201717c21 Add devcontainer definition dcvz 2024-05-19 11:59:52 +0200
  • 94b59d56f7
    Mask the lower 3 bits of the de RSP operand (#55) Anghelo Carvajal 2024-05-17 22:38:19 -0400
  • f82dcfaec7 yeet toml11 Angie 2024-05-17 22:32:33 -0400
  • 31423d55bb Do the mask ahead of time Angie 2024-05-17 22:27:28 -0400
  • 657455433c Mask the lower 3 bits of the de RSP operand Angie 2024-05-17 22:13:39 -0400
  • e0e52d1fc3
    Symbol file toml update (#52) Mr-Wiseguy 2024-05-16 22:33:08 -0400