Commit graph

197 commits

Author SHA1 Message Date
CRACKbomber
9db01820e4 Implement vpkuwum/vpkuwum128 and vpkuwus/vpkuwum128 2025-05-23 19:09:25 -04:00
CRACKbomber
0f42cc4d68 Implement vpkshss and vpkswus 2025-05-23 19:04:30 -04:00
CRACKbomber
541631f055 Implement all trap cards 2025-05-23 18:18:29 -04:00
CRACKbomber
ea988fa87e Implement subfze 2025-05-23 18:12:17 -04:00
CRACKbomber
68f4ff4062 Implement vsubshs 2025-05-23 17:51:39 -04:00
CRACKbomber
bb20abed18 Implement vminsh and vminuh 2025-05-23 17:47:46 -04:00
CRACKbomber
c68a087441 implement vmaxuh 2025-05-23 17:43:36 -04:00
CRACKbomber
e38d06e3d5 Implement vmaxsh 2025-05-23 17:41:00 -04:00
CRACKbomber
3cb492f94b Implement vctuxs/vcfpuxws128 2025-05-23 17:34:07 -04:00
CRACKbomber
daa4c009dc Implement vavugh 2025-05-23 15:13:22 -04:00
CRACKbomber
bc9494b003 Implement mulhd and mulhdu 2025-05-23 14:56:26 -04:00
CRACKbomber
5a3848ed4b Implement vcmpbfp/vcmpbfp128 - need to implement vscr saturation bit control 2025-05-23 14:51:45 -04:00
CRACKbomber
822dfadd72 Add missing case for vandc 2025-05-23 14:49:06 -04:00
CRACKbomber
ae465823e1 Implement subfme 2025-05-23 14:48:30 -04:00
CRACKbomber
3fbe687fe1 Implement rlwnm 2025-05-23 14:48:12 -04:00
CRACKbomber
18049b417a Implement lvebx/lvehx into the lvx instruction implementation. Memory wise they perform the same operation 2025-05-23 14:46:51 -04:00
CRACKbomber
1c06e84349 Implement eqv 2025-05-23 14:44:53 -04:00
CRACKbomber
4041671557 Implement addme 2025-05-23 14:44:33 -04:00
CRACKbomber
9aad004497 Implement addc 2025-05-23 14:44:09 -04:00
Skyth (Asilkan)
865319a39c
Update README.md (#139)
* Update README.md

* Update README.md

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>

---------

Co-authored-by: Hyper <34012267+hyperbx@users.noreply.github.com>
2025-04-17 11:29:46 +03:00
Jillian To
6df2397610
Added extra vpkd3d128 cases (5,2,2 and other 0,1) (#118)
* added extra vpkd3d128 cases from dev branch

* Fix whitespace

* fix whitespace again

* another whitespace fix

* cleaned up float16_4 case

* Fix whitespace

* Allow variable shift

* shift of 3 is not handled
2025-04-12 13:09:49 +03:00
The Spicy Chef
49c5e3b4f5
Added handling of normal compression for patching xex files (#126)
* Added handling of normal compression for patching xex files

* Added normal compression handling to XenonAnalyse

* Swap calloc for unique_ptr, tidied up code layout
2025-04-12 13:05:53 +03:00
nithax
0bfeaed44a
XEX2 Loading Fixes (#51)
* Fixes loading .xex import table names when a name is not aligned to 4
  bytes.
* Fixes loading .xex optional headers, adds missing case when the
  header_key & 0xFF == 1
* Fixes loading .xex base address and entry point to be the XEX2
  base/entry to successfully resolve all import thunks.
2025-04-04 17:01:18 +03:00
Skyth (Asilkan)
c017eb630a
PPC context header adjustments. (#123) 2025-03-21 17:40:55 +03:00
Skyth (Asilkan)
82b4cd3bb7
Fix return value from longjmp getting forgotten after setjmp. (#122)
Restoring env to ctx was causing this because the return value was getting assigned to r3 before the if check.
2025-03-21 17:38:08 +03:00
Mystixor
c3934c624f
fix bitmask of VD3D0 operand (#113) 2025-03-17 22:51:28 +03: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 dd7cac76ea.
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