Thomas Harte
|
09fba72d58
|
Adds flag manipulation, ADC and SBC 65816 tests.
The latter two fail.
|
2020-10-10 11:30:15 -04:00 |
|
Thomas Harte
|
d17c90edf7
|
Corrects ROL d, x.
|
2020-10-10 11:25:14 -04:00 |
|
Thomas Harte
|
7966592fae
|
Corrects ROL d.
|
2020-10-10 11:22:23 -04:00 |
|
Thomas Harte
|
6efe4e1753
|
Fixes AND, EOR, ORA. Takes an unsuccessful shot at ROL.
|
2020-10-10 10:53:17 -04:00 |
|
Thomas Harte
|
536c4d45c1
|
Adds additional 65816 tests, some failing; seeks to improve carry behaviour in ASL and ROL.
|
2020-10-10 10:11:57 -04:00 |
|
Thomas Harte
|
a02f88fe7c
|
Confirms a couple more of the easy sets.
|
2020-10-10 09:34:29 -04:00 |
|
Thomas Harte
|
d9be6ab806
|
Confirms that a few other simple tests work immediately on the 65816.
|
2020-10-09 23:26:35 -04:00 |
|
Thomas Harte
|
290598429a
|
Applies indirect page zero emulation mode addressing constraint to ix addressing.
Lorenz's LDA tests now pass in emulation mode.
|
2020-10-09 23:22:48 -04:00 |
|
Thomas Harte
|
92e72959c3
|
Makes corrections to ix addressing mode and shift/roll flags.
|
2020-10-09 23:12:20 -04:00 |
|
Thomas Harte
|
776f014dbe
|
Attempts LDA tests against the 65816.
Result: ix is faulty. Which we already knew.
|
2020-10-09 22:23:54 -04:00 |
|
Thomas Harte
|
c01bc784b9
|
Slightly reduces branching.
|
2020-10-09 22:21:55 -04:00 |
|
Thomas Harte
|
abcd86a294
|
Fixes accumulator instructions.
|
2020-10-09 22:18:22 -04:00 |
|
Thomas Harte
|
451f83ba51
|
Corrects emulation-mode read-modify-writes not to empty the data buffer.
|
2020-10-09 22:14:42 -04:00 |
|
Thomas Harte
|
b439f40fe2
|
Corrects INC and DEC.
|
2020-10-09 22:04:25 -04:00 |
|
Thomas Harte
|
968166b06d
|
Resolves incorrectly flow after setting up an absolute address.
|
2020-10-09 21:48:35 -04:00 |
|
Thomas Harte
|
88293909f4
|
Enables running of a first test on the 65816.
|
2020-10-09 21:44:47 -04:00 |
|
Thomas Harte
|
9b6c48631d
|
Removes usage of a JAM instruction to spot end-of-tests.
|
2020-10-09 21:39:34 -04:00 |
|
Thomas Harte
|
0ed98cbfac
|
Attempts to fix direct indirect indexed; not yet successful I think.
|
2020-10-08 22:15:19 -04:00 |
|
Thomas Harte
|
7dde7cc743
|
Implements altered direct indexed addressing in emulation mode.
|
2020-10-08 22:02:14 -04:00 |
|
Thomas Harte
|
755627f12d
|
Corrects direct addressing.
|
2020-10-08 20:00:01 -04:00 |
|
Thomas Harte
|
f8004d7096
|
Implements RTI, corrects TAY.
|
2020-10-08 18:06:11 -04:00 |
|
Thomas Harte
|
0418f51ef2
|
Takes a shot at emulation-mode 'exceptions'.
It's just RTI and correct decimal SBC left of the official 6502s now, I think.
|
2020-10-08 17:52:13 -04:00 |
|
Thomas Harte
|
054e0af071
|
Corrects RTS behaviour: the return address on the stack is off by one.
Dormann's tests now proceed to a BRK.
|
2020-10-08 16:55:45 -04:00 |
|
Thomas Harte
|
907c3374c3
|
Attempts to clean up my JMP/JSR mess.
Also takes a step forwards in decimal SBC, but it's not right yet.
|
2020-10-08 16:48:46 -04:00 |
|
Thomas Harte
|
b578240993
|
Adds a further error.
Clearly I've severely overloaded 'JMP' and not fully thought through where it gets its addresses from.
|
2020-10-07 21:47:58 -04:00 |
|
Thomas Harte
|
f83ee97439
|
PHP pushes with the BRK flag set in emulation mode.
|
2020-10-07 21:37:50 -04:00 |
|
Thomas Harte
|
19aea85184
|
Corrects CMP, CPX, CPY carry flags.
|
2020-10-07 21:23:29 -04:00 |
|
Thomas Harte
|
1ba0a117e7
|
Corrects PLB, PLD, PLP.
|
2020-10-07 20:23:53 -04:00 |
|
Thomas Harte
|
b510b9d337
|
Adds PHD, PHK and 8-bit PHP and PLP.
|
2020-10-07 20:13:12 -04:00 |
|
Thomas Harte
|
b608e11965
|
Realises that not all non-incrementing PC fetches should be thrown away.
|
2020-10-07 20:06:27 -04:00 |
|
Thomas Harte
|
e68b3a2f32
|
Corrects JMP program.
|
2020-10-07 19:59:29 -04:00 |
|
Thomas Harte
|
f7b119ffe1
|
Moves temporary logging, fixes branch instructions.
|
2020-10-07 19:57:58 -04:00 |
|
Thomas Harte
|
a4cec95db1
|
Corrects load and transfer flag oversights.
|
2020-10-07 19:36:23 -04:00 |
|
Thomas Harte
|
84c4fa197b
|
Corrects DEX mapping, notes new Dormann failure case.
|
2020-10-07 18:48:03 -04:00 |
|
Thomas Harte
|
eac722cf59
|
Implements enough of ADC and SBC for the Dormann test definitively to fail.
|
2020-10-07 18:36:17 -04:00 |
|
Thomas Harte
|
7439a326a6
|
Implements BIT (in regular and immediate forms).
|
2020-10-07 18:15:18 -04:00 |
|
Thomas Harte
|
5ca1c0747f
|
Generalises CMP to implement CPX and CPY.
|
2020-10-07 18:09:56 -04:00 |
|
Thomas Harte
|
466ca38dfa
|
Corrects TXY and TYX; kudos to PatrickvL for the spot!
|
2020-10-07 18:05:42 -04:00 |
|
Thomas Harte
|
93b0839036
|
Knocks out some transfer operations.
I'm possibly only seven or eight away from being able to test with complete official-opcode-only 6502 code?
|
2020-10-06 22:29:34 -04:00 |
|
Thomas Harte
|
e068cbc103
|
Implements CMP and fixes a zero-flag error on 16-bit operations.
|
2020-10-06 21:47:26 -04:00 |
|
Thomas Harte
|
5c809e5fbf
|
Implements rolls and shifts.
|
2020-10-06 21:34:39 -04:00 |
|
Thomas Harte
|
3933bf49cf
|
Implements BRL.
|
2020-10-06 21:28:54 -04:00 |
|
Thomas Harte
|
7065ba4857
|
Implements the single-byte branches.
|
2020-10-06 21:24:43 -04:00 |
|
Thomas Harte
|
ebff83018e
|
Implements the bitwise operators.
|
2020-10-06 20:17:03 -04:00 |
|
Thomas Harte
|
9ce9167e3c
|
Formalises work left to do.
|
2020-10-06 19:12:19 -04:00 |
|
Thomas Harte
|
993eff1d3d
|
Starts slowly, with flag manipulation.
|
2020-10-06 16:25:30 -04:00 |
|
Thomas Harte
|
7be983ec00
|
Slightly improve exposition.
|
2020-10-05 22:25:20 -04:00 |
|
Thomas Harte
|
18e8d6ce06
|
Makes an effort to factor out the 6502's [lazy] flags.
This is preparatory to deciding which instructions, if any, are worth factoring out.
|
2020-10-05 22:23:33 -04:00 |
|
Thomas Harte
|
b7ba0d4327
|
Attempts to complete all addressing modes.
So, if bugs didn't exist, it'd just be members of the Operation enum to go.
|
2020-10-05 17:04:57 -04:00 |
|
Thomas Harte
|
825201f4f2
|
Adds direct indirect.
|
2020-10-04 22:11:41 -04:00 |
|