yaze 0.2.0
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
debugger.h
Go to the documentation of this file.
1#ifndef YAZE_APP_EMU_DEBUG_DEBUGGER_H_
2#define YAZE_APP_EMU_DEBUG_DEBUGGER_H_
3
4#include "app/emu/audio/apu.h"
5#include "app/emu/cpu/cpu.h"
6#include "app/emu/video/ppu.h"
7
8namespace yaze {
9namespace app {
10namespace emu {
11
12class Debugger {
13 public:
14 Debugger() = default;
15 // Attach the debugger to the emulator
16 // Debugger(CPU &cpu, PPU &ppu, Apu &apu);
17
18 // Set a breakpoint
19 void SetBreakpoint(uint16_t address);
20
21 // Remove a breakpoint
22 void RemoveBreakpoint(uint16_t address);
23
24 // Step through the code
25 void Step();
26
27 // Inspect memory
28 uint8_t InspectMemory(uint16_t address);
29
30 // Modify memory
31 void ModifyMemory(uint16_t address, uint8_t value);
32
33 // Inspect registers
34 uint8_t InspectRegister(uint8_t reg);
35
36 // Modify registers
37 void ModifyRegister(uint8_t reg, uint8_t value);
38
39 // Handle other debugger tasks
40 // ...
41
42 private:
43 // References to the emulator's components
44 // CPU &cpu;
45 // PPU &ppu;
46 // Apu &apu;
47
48 // Breakpoints, watchpoints, etc.
49 // ...
50};
51
52} // namespace emu
53} // namespace app
54} // namespace yaze
55
56#endif // YAZE_APP_EMU_DBG_H_
void ModifyMemory(uint16_t address, uint8_t value)
void ModifyRegister(uint8_t reg, uint8_t value)
void SetBreakpoint(uint16_t address)
uint8_t InspectMemory(uint16_t address)
void RemoveBreakpoint(uint16_t address)
uint8_t InspectRegister(uint8_t reg)
Definition common.cc:21