Adrian.Conlon
35efc86195
Simplify the use of the REFRESH register
...
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-27 14:02:29 +01:00
Adrian.Conlon
c803387023
A few modifications:
...
1) Simplify REFRESH register handling via bit fields.
2) Use static methods in the Z80 emulator, if at all possible
3) Use a decoded opcode lookup, rather than decoding per instruction
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-26 23:22:32 +01:00
Adrian.Conlon
a7d9cb0116
Fix an optimisation instruction ordering issue: fetchByte on both rhs/lhs.
...
This caused two failing tests in the debug build of the fuse test suite.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-24 21:38:42 +01:00
Adrian.Conlon
af375ab10f
Some more shared code.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-22 19:00:53 +01:00
Adrian.Conlon
f776379e96
Share flag adjustments across implementations using templated methods.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-22 16:57:38 +01:00
Adrian.Conlon
a4f8770eb0
Correct a couple of small compilation issues.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-19 18:08:13 +01:00
Adrian.Conlon
c9bf24d1fa
Tidy up register and static method access.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-19 13:53:00 +01:00
Adrian.Conlon
23108a8536
Bring performance back to par by: inlining and static flag register access, where possible.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-18 18:14:39 +01:00
Adrian.Conlon
71e6902aeb
Simplify and remove a bunch of code. Getting there!
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-15 22:21:26 +01:00
Adrian.Conlon
705351d179
Small tidy up on the block instructions to separate PC changes.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-14 22:33:02 +01:00
Adrian.Conlon
1643844eaf
Whoops: Roll back a "simplification" to the IX/IY + displacement handlers. Caused to failing "fuse" tests.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-14 20:14:32 +01:00
Adrian.Conlon
66d3a5ae29
Couple of small simplifications.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-13 23:43:21 +01:00
Adrian.Conlon
828e081a6e
More tidying of shareable code
2017-06-12 14:33:00 +01:00
Adrian.Conlon
0291970427
Further work on uniting the 8080 family processor family.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-11 21:08:40 +01:00
Adrian.Conlon
627e41bf35
Introduce an IntelProcessor base class to allow known good implementation to be shared.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-11 09:45:34 +01:00
Adrian.Conlon
54f446b035
Simplify xhtl, a little, to switch between HL/IX/IY
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-08 12:59:16 +01:00
Adrian.Conlon
d8977d32d3
More MEMPTR clarifications.
...
This time to avoid temporary variables, in a similar manner to Z80 hardware.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-07 22:54:55 +01:00
Adrian.Conlon
211c75d84d
Add Z80 processor and tests.
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-05 22:39:15 +01:00
Adrian.Conlon
105032f08a
Dump of all my C++ emulators, only Intel8080 integrated so far...
...
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-04 21:38:34 +01:00