bsnes/higan/processor/m68k/m68k.cpp

44 lines
682 B
C++

#include <processor/processor.hpp>
#include "m68k.hpp"
namespace Processor {
enum : uint { Byte, Word, Long };
enum : bool { Reverse = 1 };
#include "registers.cpp"
#include "memory.cpp"
#include "effective-address.cpp"
#include "instruction.cpp"
#include "instructions.cpp"
#include "disassembler.cpp"
auto M68K::power() -> void {
}
auto M68K::reset() -> void {
instructionsExecuted = 0;
for(auto& dr : r.d) dr = 0;
for(auto& ar : r.a) ar = 0;
r.sp = 0;
r.pc = 0;
r.c = 0;
r.v = 0;
r.z = 0;
r.n = 0;
r.x = 0;
r.i = 7;
r.s = 1;
r.t = 0;
}
auto M68K::supervisor() -> bool {
if(r.s) return true;
//todo: raise TRAP exception
return false;
}
}