Thomas Harte
|
de55a1adc4
|
Require a model for decoding; shift a bunch of immediates into ExtendedOperation.
|
2022-04-15 09:40:37 -04:00 |
|
Thomas Harte
|
d1613025ee
|
For now, assume the .q actions can be handled inside Preinstruction.
|
2022-04-13 09:29:12 -04:00 |
|
Thomas Harte
|
cc4431c409
|
Expand decode to accept a wider array of operations, and then funnel them down.
|
2022-04-12 16:17:30 -04:00 |
|
Thomas Harte
|
3d5986c55d
|
Some minor style changes, plus I think I've talked myself into an expanded Operation-tracking enum. Probably.
|
2022-04-12 14:54:11 -04:00 |
|
Thomas Harte
|
9aeb6ee532
|
Formally prepare for one- and two-operand instructions.
|
2022-04-12 09:14:46 -04:00 |
|
Thomas Harte
|
e7f6cc598d
|
Make first attempt to complete broad phase of decoding.
|
2022-04-12 09:08:46 -04:00 |
|
Thomas Harte
|
cd465dd121
|
Decode page E.
|
2022-04-12 09:04:40 -04:00 |
|
Thomas Harte
|
174b48a14a
|
Populate lines 9 and D.
|
2022-04-12 08:57:40 -04:00 |
|
Thomas Harte
|
bca18e7aba
|
Fill in line decoders for 5, 6 and 7.
This leaves 9, D and E to go.
|
2022-04-12 08:44:32 -04:00 |
|
Thomas Harte
|
17e761d6c6
|
Add enough code to pages 0–3 to shift problem to decode().
|
2022-04-12 08:36:44 -04:00 |
|
Thomas Harte
|
c50556dde4
|
Create empty line decoders.
|
2022-04-12 08:16:29 -04:00 |
|
Thomas Harte
|
dd5bdd67d7
|
Add B page and a large chunk of 4.
|
2022-04-12 07:49:08 -04:00 |
|
Thomas Harte
|
21ac9363e9
|
Add page 8.
|
2022-04-11 16:32:57 -04:00 |
|
Thomas Harte
|
8e3cccf4d6
|
Begins a formalised 68k decoder.
|
2022-04-11 15:00:55 -04:00 |
|
Thomas Harte
|
945e935312
|
Merge pull request #1020 from TomHarte/RotateMask
Improve PowerPC rotate mask generation.
|
2022-04-10 15:24:17 -04:00 |
|
Thomas Harte
|
bb5cf570e5
|
Remove conditional, make generic enough for both 32- and 64-bit operation.
|
2022-04-10 15:18:23 -04:00 |
|
Thomas Harte
|
a5ed288db2
|
Merge pull request #1018 from TomHarte/PowerPCTests
Import Dingusdev PowerPC tests
|
2022-04-10 09:45:39 -04:00 |
|
Thomas Harte
|
7002d6d306
|
Improve accuracy of comment.
|
2022-04-10 09:37:18 -04:00 |
|
Thomas Harte
|
1b8d8f3a04
|
Default to 32-bit versions.
|
2022-04-10 09:35:58 -04:00 |
|
Thomas Harte
|
284440336d
|
Correct rotate_mask().
|
2022-04-10 09:31:39 -04:00 |
|
Thomas Harte
|
140ae7a513
|
Clarify template parameters.
|
2022-04-10 08:57:09 -04:00 |
|
Thomas Harte
|
21328d9e37
|
Normalise macros, remove unused AssertEqualOperationNameO.
|
2022-04-09 21:25:00 -04:00 |
|
Thomas Harte
|
5177fe1db7
|
Update tests.
|
2022-04-09 21:11:58 -04:00 |
|
Thomas Harte
|
7de50b5e2e
|
Provide 64-bit me, mb and sh. Add direct getter for rotate masks.
|
2022-04-09 21:08:01 -04:00 |
|
Thomas Harte
|
4652a84b43
|
Add exposition.
|
2022-04-09 19:20:13 -04:00 |
|
Thomas Harte
|
9e0755bc86
|
Introduce overlooked: ld, ldu, rldclx, rldcrx, rldicx, rldiclx, rldicrx, rldimix.
|
2022-04-09 18:28:51 -04:00 |
|
Thomas Harte
|
da0f7d7907
|
Rearrange into alphabetical order.
|
2022-04-09 10:20:03 -04:00 |
|
Thomas Harte
|
88d72bf31d
|
Fill in more mnemonics.
|
2022-04-08 10:01:52 -04:00 |
|
Thomas Harte
|
aac2f7dd73
|
Add missing validations.
|
2022-04-08 09:47:04 -04:00 |
|
Thomas Harte
|
1f44ad1723
|
Completes test cases.
|
2022-04-06 21:09:58 -04:00 |
|
Thomas Harte
|
4ab1857a11
|
Complete MPC601 commentary.
|
2022-04-06 20:53:44 -04:00 |
|
Thomas Harte
|
d23c714ec7
|
Build in an optional post hoc validation.
TODO: validate.
|
2022-04-05 11:23:54 -04:00 |
|
Thomas Harte
|
ac524532e7
|
Handle the synonym test cases.
|
2022-04-04 08:09:59 -04:00 |
|
Thomas Harte
|
59a1fde2a1
|
Fix is_zero_mask.
|
2022-04-03 20:37:09 -04:00 |
|
Thomas Harte
|
31276de5c3
|
Complete 'misc instructions' tests.
|
2022-04-03 20:33:32 -04:00 |
|
Thomas Harte
|
c581aef11d
|
Test as far as mffs.
|
2022-04-03 18:29:40 -04:00 |
|
Thomas Harte
|
7f6a955a71
|
Complete the cmp set.
|
2022-04-03 15:50:03 -04:00 |
|
Thomas Harte
|
125d97cc41
|
Complete floating point tests.
|
2022-04-03 08:55:28 -04:00 |
|
Thomas Harte
|
de7d9ba471
|
Add further floating point tests.
|
2022-04-03 08:06:59 -04:00 |
|
Thomas Harte
|
ad54b44235
|
Begin documentation and testing of the floating point instructions.
|
2022-04-02 19:58:21 -04:00 |
|
Thomas Harte
|
42532ec0f5
|
Test floating point loads and stores.
|
2022-04-02 15:40:17 -04:00 |
|
Thomas Harte
|
b84fa619da
|
Test integer loads and stores.
|
2022-04-02 15:27:12 -04:00 |
|
Thomas Harte
|
8a1409184f
|
Add decoding of lwa.
|
2022-04-02 10:31:55 -04:00 |
|
Thomas Harte
|
8a3c16a5bc
|
Add lwa.
|
2022-04-02 10:26:47 -04:00 |
|
Thomas Harte
|
6343c65ce2
|
Document further; mftb is optional.
|
2022-04-02 10:09:58 -04:00 |
|
Thomas Harte
|
20b4736a1f
|
Test tw, twi.
|
2022-04-02 10:09:35 -04:00 |
|
Thomas Harte
|
d5967f7834
|
Correct decoding of stwcx. and stdcx.
|
2022-04-01 20:37:36 -04:00 |
|
Thomas Harte
|
d5f7650ac1
|
Test synchronising loads and stores, further expand documentation.
|
2022-04-01 18:30:48 -04:00 |
|
Thomas Harte
|
6330caffde
|
Test logical immediates.
|
2022-04-01 17:52:38 -04:00 |
|
Thomas Harte
|
8f580c256c
|
Remove explanations; saying nothing is better than giving incomplete advice.
|
2022-04-01 17:49:34 -04:00 |
|