Thomas Harte
|
8a18685902
|
Relocated RegisterSizes to Numeric.
|
2022-04-28 15:10:08 -04:00 |
|
Thomas Harte
|
0df8173536
|
Merge branch 'master' into Amiga
|
2021-11-24 08:58:03 -05:00 |
|
Thomas Harte
|
313dbe05e0
|
Switch to more consistent inlining.
|
2021-09-23 22:36:15 -04:00 |
|
Thomas Harte
|
adf7124e2c
|
Eliminate 6502Base.cpp.
|
2021-09-23 22:33:33 -04:00 |
|
Thomas Harte
|
60b09d9bb0
|
Increases compile-time logging options.
|
2021-08-01 21:22:33 -04:00 |
|
Thomas Harte
|
f576baf214
|
I'm not yet sure this is the best approach, but starts trying to make use of Lorenz's 6526 tests.
|
2021-07-30 21:21:16 -04:00 |
|
Thomas Harte
|
d50b059a17
|
Imports 6502-esque test for decimal SBC overflow.
All applicable krom tests now pass.
|
2020-11-03 20:37:30 -05:00 |
|
Thomas Harte
|
ddc44ce0d1
|
Reshuffles enum to make macro tests marginally easier.
|
2020-11-03 20:17:09 -05:00 |
|
Thomas Harte
|
3889646d6b
|
Takes a swing at incorporating krom's 65816 test suite. At least as far as ADC.
|
2020-11-02 21:09:32 -05:00 |
|
Thomas Harte
|
9a2f32795f
|
Revokes stack-local storage non-optimisation.
|
2020-10-15 21:03:10 -04:00 |
|
Thomas Harte
|
28da1a724a
|
Introduces Jeek816 test case.
|
2020-10-12 21:43:44 -04:00 |
|
Thomas Harte
|
5dc3cd3a2f
|
Starts using Jeek816 for a basic native-mode audit. Fixes absolute long addressing.
|
2020-10-11 22:02:46 -04:00 |
|
Thomas Harte
|
3039a445f0
|
Ups the 65816 test machine to a full 16mb RAM.
|
2020-10-11 21:18:01 -04:00 |
|
Thomas Harte
|
6892ac13e8
|
Corrects BIT. All 65816-applicable Wolfgang Lorenz tests now pass.
|
2020-10-10 17:47:33 -04:00 |
|
Thomas Harte
|
7966592fae
|
Corrects ROL d.
|
2020-10-10 11:22:23 -04:00 |
|
Thomas Harte
|
c01bc784b9
|
Slightly reduces branching.
|
2020-10-09 22:21:55 -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
|
7dde7cc743
|
Implements altered direct indexed addressing in emulation mode.
|
2020-10-08 22:02:14 -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
|
19aea85184
|
Corrects CMP, CPX, CPY carry flags.
|
2020-10-07 21:23:29 -04:00 |
|
Thomas Harte
|
f7b119ffe1
|
Moves temporary logging, fixes branch instructions.
|
2020-10-07 19:57:58 -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
|
ef1a514785
|
Introduces 6502Selector, for picking either a 6502 or a 65816 based on a single template parameter.
|
2020-09-28 21:35:46 -04:00 |
|
Thomas Harte
|
6635876e7e
|
Performs a bare factoring out of the 6502 bus handler.
|
2020-09-28 18:43:53 -04:00 |
|
Thomas Harte
|
ad8a2e2cb9
|
Corrects a long-standing naming obscurity.
|
2020-09-27 22:19:42 -04:00 |
|
Thomas Harte
|
91229a1dbd
|
Adds overt fallthrough attributes.
|
2020-06-19 23:22:29 -04:00 |
|
Thomas Harte
|
73131735fa
|
Further qmake warning corrections.
|
2020-05-30 19:31:17 -04:00 |
|
Thomas Harte
|
267006782f
|
Starts to add Qt target; resolves many build warnings.
|
2020-05-30 00:37:06 -04:00 |
|
Thomas Harte
|
8b76d4007e
|
Starts adding State for the 68000.
|
2020-05-14 22:46:40 -04:00 |
|
Thomas Harte
|
7c9d9ee048
|
Adds basic Z80 state.
|
2020-05-13 20:15:22 -04:00 |
|
Thomas Harte
|
25996ce180
|
Further doubles down on construction syntax for type conversions.
|
2020-05-09 23:00:39 -04:00 |
|
Thomas Harte
|
cc357a6afa
|
Removes boilerplate from header.
|
2020-04-02 19:15:57 -04:00 |
|
Thomas Harte
|
dfc1c7d358
|
Separates 6502 State object to make it optional.
Also makes a few minor const improvements while I'm poking around.
|
2020-04-02 19:11:27 -04:00 |
|
Thomas Harte
|
7ed8e33622
|
Eliminates unused 6502 counter.
|
2020-04-02 18:49:28 -04:00 |
|
Thomas Harte
|
a491650c8b
|
Adds safety asserts.
|
2020-03-30 21:39:31 -04:00 |
|
Thomas Harte
|
95c68c76e1
|
Corrects use of StructImpl.
|
2020-03-30 00:27:40 -04:00 |
|
Thomas Harte
|
edc553fa1d
|
Removes duplicative 'register'.
|
2020-03-29 22:58:00 -04:00 |
|
Thomas Harte
|
4f2ebad8e0
|
Takes a shot a set_state.
|
2020-03-29 22:50:30 -04:00 |
|
Thomas Harte
|
cfb75b58ca
|
Pulls all 6502 MicroOp sequences into the main operations_ table.
This will make state restoration somewhat more tractable.
|
2020-03-29 18:36:41 -04:00 |
|
Thomas Harte
|
4fbe983527
|
Provisionally adds State and get_state to the 6502.
`set_state` may be a little more complicated, requiring a way to advance in single-cycle steps **without applying bus accesses**.
|
2020-03-28 00:33:27 -04:00 |
|
Thomas Harte
|
a51fe70498
|
Standardises cast syntax.
|
2020-03-06 21:55:00 -05:00 |
|
Thomas Harte
|
b971e2a42c
|
Adds get_is_resetting to the Z80, eliminating the CPC's custom version.
|
2020-02-29 19:58:25 -05:00 |
|
Thomas Harte
|
4aeb9a7c56
|
Genericises RegisterPair.
|
2019-03-09 21:16:11 -05:00 |
|
Thomas Harte
|
ee89be6730
|
Removes many stray spaces.
|
2018-11-23 22:32:32 -05:00 |
|
Thomas Harte
|
364859467f
|
Corrects Rockwell and WDC references.
Also shuffles the NES CPU type up into the top position, so this is a strict progression in terms of functionality.
|
2018-09-27 22:36:45 -04:00 |
|
Thomas Harte
|
8787d85e64
|
Eliminates #undefs as being (i) unnecessary, now this is a source file; and (ii) incomplete in any case.
|
2018-08-17 22:24:42 -04:00 |
|
Thomas Harte
|
0e7f54f375
|
Implements STP and WAI, and ensures all unimplemented 65C02 instructions are NOP for all 65C02s.
|
2018-08-17 21:49:06 -04:00 |
|
Thomas Harte
|
b3bdfa9f46
|
Corrected: it's three-cycle 65C02 branches that ignore interrupts, not two.
|
2018-08-16 20:47:49 -04:00 |
|
Thomas Harte
|
592ec69d36
|
Causes the 65C02 not to accept interrupts immediately after untaken branches.
|
2018-08-15 22:42:04 -04:00 |
|