Commit Graph

999 Commits

Author SHA1 Message Date
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 529aa1bd21 Tidy profile output
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-22 10:27:19 +01:00
Adrian.Conlon 23b5a5d579 Tidy the test harness a little.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-22 10:16:02 +01:00
Adrian.Conlon 8927f412d4 Use a shared test harness.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-21 23:55:25 +01:00
Adrian.Conlon 5a3713fc8a First stab at efficiency timing support for 8080 and z80 test runners.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-21 21:05:07 +01:00
Adrian.Conlon 052df61250 Remove get/getWord and set/setWord from memory class. Just use address and data lines on the memory.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-20 14:09:44 +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 67fa2a7afe Incorporate disassembly into address profile output.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-19 17:37:41 +01:00
Adrian.Conlon c7e65f5447 Consistency changes to the projects.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-19 13:53:37 +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 5f288cf0e3 Some more small tidy ups.
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
2017-06-16 20:31:32 +01:00
Adrian.Conlon 327d391ecb Remove another chunk of shared code. This time by ensuring the basic layout of registers is consistent.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-16 13:52:10 +01:00
Adrian.Conlon c52f0a36aa Small performance change to 8080 reserved flags.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-16 13:35:08 +01:00
Adrian.Conlon dc1f7ad1d5 Remove some commented header includes.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-16 01:59:11 +01:00
Adrian.Conlon 675b82b5af Move to a more standard flag representation for the 8080 2017-06-16 01:58:12 +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 e6eab35d0e Correct a couple of warnings in the 8080 code
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-14 20:13:37 +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 8f3aef1c3e Make LR35902 a little more like the Z80
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-11 23:56:11 +01:00
Adrian.Conlon eb8a93726d Correct a few small LR35902 issues.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-11 22:07:48 +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 b1aa523dcc Small simplifications to base Processor class.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-10 12:42:55 +01:00
Adrian.Conlon 49d7a4c169 Whoops: missed a couple of flag adjustments.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-09 16:19:35 +01:00
Adrian.Conlon 838580cc3d More changes to bring LR35902 in line with the Z80 implementation.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-09 16:01:12 +01:00
Adrian.Conlon 93bac42547 Bring LR35902 a little more in line with the Z80 implementation.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-09 11:42:32 +01:00
Adrian.Conlon 1c8d842bde Tidy header usage a little.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-09 10:29:28 +01:00
Adrian.Conlon f3fe475d44 Implement enough changes to build LR35902 2017-06-09 10:23:51 +01:00
Adrian.Conlon 1c0fb41027 Remove all nuget package usage.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-08 22:11:31 +01:00
Adrian.Conlon d4d92f21e6 Merge branch 'master' of https://github.com/MoleskiCoder/EightBit
# Conflicts:
#	Z80/src/Z80.vcxproj
2017-06-08 21:55:33 +01:00
Adrian.Conlon 27e79a683d Don't use nuget for boost: more trouble than it's worth!
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-08 21:54:05 +01:00
Adrian.Conlon 0cd546dad5 Another stab at nuget package management as git submodules.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-08 20:16:24 +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 633ba49784 Tidy up fuse test precompiled headers and properly place the location of the test files.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-05 23:32:35 +01:00
Adrian.Conlon 982bccf0c9 First stab at adding Fuse Test runner.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-05 23:24:08 +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 4c6f44c394 Add 8080 test runner
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-05 17:31:21 +01:00
Adrian.Conlon 8d89f0d98c Unify the release build configurations.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-04 23:37:57 +01:00
Adrian.Conlon 46b7acb69a Sort out shared pre-compiled header usage
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-04 23:37:25 +01:00
Adrian.Conlon 3325b07a28 Ensure we use the pre-constructed I/O ports object.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-04 22:59:56 +01:00
Adrian.Conlon 786249a25e Correct VS2015 build issues.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-06-04 22:58:12 +01:00
Adrian Conlon 1275d8399f Update README.md 2017-06-04 21:42:37 +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