Add Z80 processor and tests.

Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
This commit is contained in:
Adrian.Conlon
2017-06-05 22:39:15 +01:00
parent 4c6f44c394
commit 211c75d84d
41 changed files with 4119 additions and 615 deletions
+8 -6
View File
@@ -7,18 +7,20 @@
#include <algorithm>
EightBit::Memory::Memory(uint16_t addressMask)
: m_address(0),
m_addressMask(addressMask),
m_data(&(m_bus[m_address])) {}
: m_addressMask(addressMask) {
m_address.word = 0;
m_data = &(m_bus[m_address.word]);
}
uint8_t EightBit::Memory::peek(uint16_t address) const {
return m_bus[address];
}
uint16_t EightBit::Memory::peekWord(uint16_t address) const {
auto low = peek(address);
auto high = peek(address + 1);
return Processor::makeWord(low, high);
register16_t returned;
returned.low = peek(address);
returned.high = peek(address + 1);
return returned.word;
}
EightBit::register16_t EightBit::Memory::getWord(uint16_t address) {