Thomas Harte
5330267d16
Implements BCLR.
2019-04-15 18:11:02 -04:00
Thomas Harte
84f4a25bc9
Completes TST.
2019-04-15 16:28:20 -04:00
Thomas Harte
1460a88bb3
Takes a run at JSR and RTS.
2019-04-15 15:14:38 -04:00
Thomas Harte
a223cd90a1
Adds predecrement TSTs, increases QL running time, reduces logging.
2019-04-15 12:36:08 -04:00
Thomas Harte
328d297490
Implements the first few addressing modes for TST.
2019-04-15 10:03:52 -04:00
Thomas Harte
3d240f3f18
Corrects decoding of DBcc.
2019-04-15 09:49:23 -04:00
Thomas Harte
45f35236a7
Corrects decoding of ADDA and SUBA.
2019-04-15 09:44:06 -04:00
Thomas Harte
fba210f7ce
Corrects MOVE.l Dn, (An)[+].
2019-04-15 09:30:49 -04:00
Thomas Harte
8a09e5fc16
Implements Scc.
2019-04-14 22:39:13 -04:00
Thomas Harte
1003e70b5e
Implements MOVEM to R.
2019-04-14 20:02:18 -04:00
Thomas Harte
823f91605b
Still slow pedalling slightly, adds further MOVEM storage.
2019-04-14 14:31:13 -04:00
Thomas Harte
53f75034fc
Commits at least to decoding MOVEM.
2019-04-14 14:09:28 -04:00
Thomas Harte
78649a5b54
Fleshes out MOVE, (XXX) a little further.
2019-04-12 17:16:03 -04:00
Thomas Harte
2ba66c4457
Corrects MOVEA, adds extra test safeguards.
2019-04-12 16:10:17 -04:00
Thomas Harte
2c78ea1a4e
Completes conversion away from magic constants.
2019-04-12 15:48:29 -04:00
Thomas Harte
73f50ac44e
Commits further to elimination of magic constants.
2019-04-12 13:45:28 -04:00
Thomas Harte
1098cd0c6b
Begins rooting out magic constants.
2019-04-11 22:31:17 -04:00
Thomas Harte
652ebd143c
Corrects addressing mode support for LEA.
2019-04-11 11:58:34 -04:00
Thomas Harte
43f619a081
Implements ASL, ASR, LSL and LSR.
2019-04-10 22:31:04 -04:00
Thomas Harte
a07de97df4
Implements the fixed part of register shifts.
2019-04-09 22:12:37 -04:00
Thomas Harte
7a0319cfe5
Kicks the work of dealing with ASL/etc into the runtime.
2019-04-09 21:48:08 -04:00
Thomas Harte
f750671f33
Stepping gingerly onwards, adds a double-decoding test.
...
As a result of that, collapses BRA into Bcc. Which provisionally looks correct.
2019-04-09 16:54:41 -04:00
Thomas Harte
7886fe677a
Cleans up commenting.
2019-04-08 22:51:18 -04:00
Thomas Harte
73c027f8e3
Implements CMPA and CMPM. [Provisionally] completing the CMPs.
2019-04-08 22:40:38 -04:00
Thomas Harte
eda88cc462
Implements MOVE to CCR.
2019-04-07 22:24:17 -04:00
Thomas Harte
652f4ebfed
Implements CLR, NEG, NEGX and NOT.
2019-04-07 22:07:39 -04:00
Thomas Harte
06a2f59bd0
Implements DBcc.
2019-04-06 23:21:01 -04:00
Thomas Harte
03f365e696
Corrects source/destination order of CMP setup.
2019-04-06 20:00:15 -04:00
Thomas Harte
49a22674ba
Corrects MOVE destinations.
2019-04-06 18:33:53 -04:00
Thomas Harte
ec494511ec
Implements CMP.
2019-04-06 10:41:19 -04:00
Thomas Harte
2d153359f8
Adds BTST.
2019-04-04 21:43:22 -04:00
Thomas Harte
068ce23716
Adds a few more MOVEs.
2019-04-04 19:49:19 -04:00
Thomas Harte
03be2e3652
Adds decoding of ADDA and SUBA.
2019-04-03 22:39:01 -04:00
Thomas Harte
4ef2c0bed8
Completes ADD and SUB.
2019-04-03 21:41:59 -04:00
Thomas Harte
bfd405613c
Reuse of addresses is also no longer implicit.
2019-04-03 21:27:11 -04:00
Thomas Harte
73e1c8c780
Corrects now-unimplemented ADD/SUB.
2019-04-03 19:43:54 -04:00
Thomas Harte
689ba1d4a2
Effective address adjustments now have to be explicit.
2019-04-03 19:13:10 -04:00
Thomas Harte
39b9d00550
Moves some way towards mapping out ADD and SUB, fixing a bug with address register modification.
2019-04-02 21:50:58 -04:00
Thomas Harte
8f1faefa1c
Implements further MOVEs and fixes a potential error in program formation.
2019-03-31 22:34:28 -04:00
Thomas Harte
c6f977ed4b
Corrects CMPI and documentation; implements JMP.
2019-03-31 21:13:26 -04:00
Thomas Harte
cb240cd32a
Switches to a more explicit tokeniser, to allow for greater flexibility momentarily.
2019-03-30 23:11:39 -04:00
Thomas Harte
bc6349f823
Adds RESET, fixes branches and attempts to fix CMPI.
2019-03-29 23:40:54 -04:00
Thomas Harte
a93a1ae40f
Completes MOVE.blw <ea>, Dn/An/(An)/(An)+, implements MOVEq.
2019-03-29 23:13:41 -04:00
Thomas Harte
25254255fe
Implements a few additional MOVEs.
2019-03-27 21:26:04 -04:00
Thomas Harte
42634b500c
Implements LEA.
2019-03-26 22:07:28 -04:00
Thomas Harte
be4b38c76a
Adds BRA and Bcc.
2019-03-25 22:54:49 -04:00
Thomas Harte
7163b1132c
Takes a run at CMPI.
...
Also factors out a couple of mode things, clarifies on where things from the
prefetch are assembled to, and switches to ordering implemented instructions
alphabetically.
2019-03-24 23:05:57 -04:00
Thomas Harte
3ccec1c996
Implements MOVE to SR, fleshing out the final bits of storage for the status word.
2019-03-24 18:20:54 -04:00
Thomas Harte
47359dc8f1
Adds tests for MOVE.l (An), Dn, and thereby correct their implementation.
2019-03-23 21:41:47 -04:00
Thomas Harte
43532c8455
Starts to make incursions into MOVE[A].l.
2019-03-23 21:03:52 -04:00