172 Commits

Author SHA1 Message Date
Yohann Martel
32c2f49bec Fix bswap with MSVC compiler 2025-03-07 14:24:17 -05:00
Isaac Marovitz
1c571c8576
Better gitignore (#76)
Signed-off-by: Isaac Marovitz <isaacryu@icloud.com>
2025-03-07 01:43:35 +03:00
Skyth (Asilkan)
7b8e37aa37
Fix the unsafe base address assumption. (#69) 2025-03-06 17:56:18 +03:00
William Adam-Grenier
0bf1fd5477
Add Byte Patterns In Readme (#36)
* Add Byte Patterns In Readme

Adds the byte patterns for instructions to make it easier for newcomers to find the right functions address.

* Added Instructions

Added extra instruction for rest, save, restvmx and savevmx

* Fix Typo
2025-03-05 01:51:55 +03:00
squidbus
dc4460eefd
Disable alias attribute on macOS clang. (#19) 2025-03-04 18:57:36 +03:00
Skyth (Asilkan)
3ee19542c9
Check for the validity of save/restore function addresses. (#42) 2025-03-04 18:44:24 +03:00
Skyth (Asilkan)
2991a3b698
Remove unused <expected> header include. (#30) 2025-03-04 00:12:28 +03:00
Skyth (Asilkan)
04e716178b
Repository cleanup & README.md. (#5) 2025-02-27 00:11:11 +03:00
Skyth (Asilkan)
cd6fcb33bd
Port XEX patcher from Unleashed Recompiled. (#4)
* Port XEX patcher from Unleashed Recompiled.

* Fix compilation error on Linux.
2025-02-19 20:22:30 +03:00
Skyth
0fc545a6e2 Fix xpointer constructor for null pointers. 2025-01-28 18:34:39 +03:00
Skyth
73b75e197a Use __builtin_clz instead of __lzcnt32 for cntlzw instruction. 2025-01-23 14:35:46 +03:00
Skyth
3280a7cf9f Add support for placing midasm hooks after instructions. 2025-01-22 19:58:00 +03:00
Skyth
87e350906b Rebrand to XenonRecomp. 2025-01-19 22:39:12 +03:00
Skyth
7fb8af1bad Place function table after the executable. 2025-01-15 02:01:26 +03:00
Skyth
2cd41adf42 Remove bin2c, load the PPC context header by path. 2025-01-15 01:25:04 +03:00
Skyth
ca39a3b992 Check for TOML_EXCEPTIONS when loading TOMLs. 2025-01-13 21:15:19 +03:00
Skyth
b4b4aac788 Fix wrong assert in xex.cpp. 2025-01-13 21:14:07 +03:00
Skyth
de2840970f Load function pointers from the base pointer. 2025-01-02 14:32:34 +03:00
Skyth (Asilkan)
4650dc69fb
Linux support. (#3)
* Compiling and running on Linux.

* Fix xpointer constructor.

* Convert dependencies to submodules.

* Fix wchar_t usage for Linux.
2024-12-21 00:49:06 +03:00
Darío
45c00cfec6
Unicode support. (#2) 2024-12-15 17:37:36 +03:00
Skyth
847842cd28 Downgrade projects to C++17. 2024-12-13 18:31:55 +03:00
Skyth
02d23b3463 Move r3 to the top of PPC context for smaller code generation. 2024-12-04 12:35:17 +03:00
Hyper
ea3e60cb0d Revert "Add file_to_c"
This reverts commit dd7cac76ea37a92eabdda248d26efa2f2bf70d93.
2024-12-02 23:04:47 +00:00
Hyper
dd7cac76ea Add file_to_c 2024-12-02 21:45:28 +00:00
Hyper
675b482ec4 xdbf: use pragma push/pop 2024-11-26 06:41:47 +00:00
Hyper
23f3389171 xdbf_wrapper: resolve missing dependencies 2024-11-25 11:28:58 +00:00
Hyper
699c078c94 xdbf_wrapper: remove global 2024-11-25 11:21:52 +00:00
Hyper
dd85501f11 PowerUtils: implemented XDBF wrapper 2024-11-25 11:12:38 +00:00
DeaTh-G
7dd4f91ac6 add time fields struct 2024-11-24 11:25:45 +01:00
Sajid
4b47b24afd Allow overloads of ppc load/store macros 2024-11-24 16:16:08 +06:00
Sajid
e5317bda48 Detect MMIO writes via eieio 2024-11-24 15:36:50 +06:00
Hyper
4357a55eff PowerUtils: allow constructing null pointers with xpointer 2024-11-24 09:25:22 +00:00
Hyper
62e3188a81 PowerUtils: implemented endian swap for enums 2024-11-21 01:47:17 +00:00
Skyth
d8676283fd Implement a better way to combat Clang's unsafe code reordering. 2024-11-17 21:00:36 +03:00
Skyth
a7c970d324 Fix a few warnings. 2024-10-27 18:29:28 +03:00
Hyper
6810be7315 Update bin2h to allow changing the output array type 2024-10-17 16:59:45 +01:00
Skyth
6e49be2702 Allow midasm hook return behavior to be configured. 2024-10-17 17:39:31 +03:00
Skyth
516e23f1f7 Add midasm hook patching. 2024-10-06 18:54:47 +03:00
Sajid
1f5d7c32e8 Add additional xbox definitions 2024-10-01 15:24:43 +06:00
Skyth
183027d563 Remove hardcoded recompiler, load TOML file for configuration. 2024-10-01 00:09:18 +03:00
Sajid
54cb41c4db Recompiler: Fix accidental impl linkage 2024-09-30 20:41:32 +06:00
Sajid
8d8346c2a2 Recompiler: Use implementation aliases 2024-09-30 18:45:07 +06:00
Sajid
c4de70262f Recompiler: write ppc_context.h 2024-09-30 13:39:47 +06:00
Sajid
9d74b4ecb4 Add additional xbox structures 2024-09-30 10:55:30 +06:00
Sajid
ae0fb21f08 Fix xex header parser 2024-09-30 09:43:50 +06:00
Sajid
3a8c9941f7 don't build sample and tests if included as a library 2024-09-30 09:06:09 +06:00
Sajid
3e3c62ad82 CMakeLists fixes for dependants 2024-09-28 22:57:35 +06:00
Sajid
6898a7d97d Named recompiled entry point 2024-09-28 22:44:27 +06:00
Skyth
c83c3d51bc Fix vcsxwfp128 disassembly error. 2024-09-28 18:54:04 +03:00
Skyth
5414070cd3 Change vrefp/vrsqrtefp to precise variants for now. 2024-09-28 13:53:42 +03:00