Commit Graph

105 Commits

Author SHA1 Message Date
dingusdev
eda9454f66 Fixed twi and tw; added more tests 2020-02-12 22:21:16 -07:00
dingusdev
40f399e0c4 Inserting missing instructions and fixing several opcodes 2020-02-12 22:08:40 -07:00
dingusdev
3d492b7f72 stwcx., slwi, and tw fixed 2020-02-12 20:58:51 -07:00
dingusdev
c8e03286e7 Condensed trap operations + added mnemonics for tw 2020-02-12 20:41:23 -07:00
dingusdev
c2eafcc45d Fixed shifting ops and eieio 2020-02-12 20:26:12 -07:00
Maxim Poliakovski
e4ee252b6c ppcdisasm: fix several instructions. 2020-02-13 04:13:26 +01:00
dingusdev
11b1623a69 All remaining 601 opcodes implemented
Plus adjustments to twi, bclr, and bcctr.
2020-02-12 19:31:54 -07:00
Maxim Poliakovski
1543acc696 ppcdisasm: fix bcctr and bclr instructions. 2020-02-13 03:16:47 +01:00
Maxim Poliakovski
4ecc48a6cc ppcdisasm: fix string buffer overflow in VS19. 2020-02-13 00:05:10 +01:00
Maxim Poliakovski
24652de392 Integrate disassembler tests. 2020-02-12 22:58:24 +01:00
dingusdev
513658b45f Quick fix to ori 2020-02-10 20:03:14 -07:00
dingusdev
30b1116393 Implemeted limited simplified mnemonics for rlwinm 2020-02-10 20:02:41 -07:00
Maxim Poliakovski
a934ed5bde ppcdisasm: fix Clang errors and warnings. 2020-02-10 20:01:02 -07:00
dingusdev
ad0659a702 Started bugfixing and refactoring 2020-02-10 20:00:49 -07:00
dingusdev
6473ea1a26 Added the last few opcodes 2020-02-10 20:00:28 -07:00
dingusdev
d277ab693e Implemented most remaining opcodes 2020-02-10 20:00:12 -07:00
dingusdev
cee51b643e Merging in 2020-02-10 19:59:02 -07:00
Maxim Poliakovski
c25aedac4b Fix some MSVC errors and warnings.
"This commit fixes as much as required to compile the project
in a cross-platform fashion. Some MSV-specific warnings are
simply ignored for now." -max
2020-02-10 19:58:41 -07:00
Maxim Poliakovski
4b0c607ea3 Bring back strcpy/strcat 2020-02-10 19:55:23 -07:00
dingusdev
1e93414f11 Further bugfixes 2020-02-10 19:52:09 -07:00
dingusdev
f3befe9c16 Support for floating-point loads and stores 2020-02-10 19:50:38 -07:00
dingusdev
96e9351190 Support for floating-point loads and stores 2020-02-10 19:47:51 -07:00
dingusdev
254b9d3b55 Update ppcdisasm.cpp 2020-02-10 19:44:54 -07:00
dingusdev
82b4f5717e Update ppcdisasm.cpp 2020-02-10 19:40:45 -07:00
Maxim Poliakovski
99559c1e0c Merging in odd commits 2020-02-10 19:37:50 -07:00
dingusdev
b16427e810 Further disassembler work 2020-02-10 19:33:14 -07:00
Maxim Poliakovski
825da69a10 debugger: disassembler integration. 2020-02-10 19:31:57 -07:00
Maxim Poliakovski
26bd402f44 ppcopcodes: optimize ppc_changecrf0() a bit. 2020-02-10 23:07:39 +01:00
Maxim Poliakovski
36fc7a9aaa Add XER[OV] clear tests. 2020-02-10 19:34:03 +01:00
Maxim Poliakovski
d0f1a34c02 Fix integer multiplications.
Add a couple of tests for verifying XER[OV] updating code
for mullwo[.].
2020-02-10 18:36:28 +01:00
Maxim Poliakovski
a72e2fd67d Simplify unsigned integer divisions. 2020-02-10 17:16:18 +01:00
Maxim Poliakovski
d4a2f400b5 Fix divw[.] and divwo[.] emulation.
Also adds a couple of tests for undocumented
CPU behaviour. Remove superfluous "sidiv".
2020-02-10 16:07:11 +01:00
dingusdev
a4d815344a Patched up DIVW(U)O(.) 2020-02-09 13:59:30 -07:00
Maxim Poliakovski
b057a8373d Simplify SUBF and remove not_this. 2020-02-09 08:05:20 +01:00
Maxim Poliakovski
32e64fc1b2 Make XER update code inline & private. 2020-02-09 08:01:26 +01:00
Maxim Poliakovski
49002860ed Fix carry update for subfc(.) and subfco(.). 2020-02-09 07:41:03 +01:00
dingusdev
6f16ba8c57 Fixed SUBFME(O)(.) 2020-02-08 22:06:01 -07:00
dingusdev
051edd5e38 Subtraction operation fixes in progress 2020-02-08 20:35:11 -07:00
Maxim Poliakovski
8d03d24c77 Complete tests for the integer instructions. 2020-02-08 23:23:58 +01:00
dingusdev
b364aa0ae4 Patching up Subtraction Opcodes 2020-02-03 22:32:56 -07:00
dingusdev
f52be627b5 Fixed subfo(.) 2020-02-03 17:28:41 -07:00
Maxim Poliakovski
1c5d0e640e Add tests for all subtraction variants. 2020-02-04 01:00:37 +01:00
Maxim Poliakovski
03439b2a49 Placeholders for SUBFEO[.], SUBFMEO[.] and SUBFZEO[.]. 2020-02-04 00:58:04 +01:00
Maxim Poliakovski
d25ce6a244 Add tests for shifts and fix their emulation. 2020-02-03 22:59:47 +01:00
Maxim Poliakovski
8c1c1e0a0d Fix and refactor additions with OE=1. 2020-02-03 19:42:33 +01:00
Maxim Poliakovski
4e4d0370be Modularize build system.
This way object files can be shared accross multiple executables.
2020-02-03 14:36:37 +01:00
dingusdev
eb476adf87 Small fix to addeo 2020-02-02 16:36:47 -07:00
dingusdev
60bf5dfa6a ADDO(.) and ADDCO(.) fixed
Temp fix to look into the issues with the addition ops and overflow flag issues.
2020-02-02 11:54:33 -07:00
dingusdev
fe6ea7d9f6 Division ops fixed 2020-02-01 10:51:59 -07:00
dingusdev
0b2de4ac4c Division Ops Fixes WIP 2020-01-31 21:06:06 -07:00