EightBit/src/Processor.cpp
Adrian.Conlon 9b43b74c28 Rationalise some of the reset/initialise logic across pProcessor implementations.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
2017-09-01 16:01:40 +01:00

31 lines
530 B
C++

#include "stdafx.h"
#include "Processor.h"
EightBit::Processor::Processor(Memory& memory)
: m_memory(memory),
cycles(0),
m_halted(false),
m_power(false) {
PC().word = MEMPTR().word = 0;
}
void EightBit::Processor::reset() {
PC().word = MEMPTR().word = 0;
}
void EightBit::Processor::initialise() {
reset();
}
int EightBit::Processor::run(int limit) {
int current = 0;
while (powered() && current < limit) {
current += singleStep();
}
return current;
}
int EightBit::Processor::singleStep() {
return step();
}