lsnes/snes/cpu/debugger/debugger.hpp
2013-11-28 22:36:29 +02:00

24 lines
638 B
C++
Executable file

class CPUDebugger : public CPU, public ChipDebugger {
public:
bool property(unsigned id, string &name, string &value);
function<bool ()> step_event;
enum Usage {
UsageRead = 0x80,
UsageWrite = 0x40,
UsageExec = 0x20,
UsageFlagM = 0x02,
UsageFlagX = 0x01,
};
uint8 *usage;
uint24 opcode_pc; //points to the current opcode, used to backtrace on read/write breakpoints
bool opcode_edge; //true right before an opcode execues, used to skip over opcodes
void op_step();
uint8 op_read(uint32 addr, bool exec = false);
void op_write(uint32 addr, uint8 data);
CPUDebugger();
~CPUDebugger();
};