debug_interface.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include <cstring>
  3. #include <string>
  4. class DebugInterface
  5. {
  6. protected:
  7. virtual ~DebugInterface() {}
  8. public:
  9. virtual void disasm(unsigned int /*address*/, char *dest, int /*max_size*/) {strcpy(dest, "NODEBUGGER");}
  10. virtual void getRawMemoryString(int /*memory*/, unsigned int /*address*/, char *dest, int /*max_size*/) {strcpy(dest, "NODEBUGGER");}
  11. virtual int getInstructionSize(int /*instruction*/) {return 1;}
  12. virtual bool isAlive() {return true;}
  13. virtual bool isBreakpoint(unsigned int /*address*/) {return false;}
  14. virtual void setBreakpoint(unsigned int /*address*/){}
  15. virtual void clearBreakpoint(unsigned int /*address*/){}
  16. virtual void clearAllBreakpoints() {}
  17. virtual void toggleBreakpoint(unsigned int /*address*/){}
  18. virtual bool isMemCheck(unsigned int /*address*/) {return false;}
  19. virtual void toggleMemCheck(unsigned int /*address*/){}
  20. virtual unsigned int readMemory(unsigned int /*address*/){return 0;}
  21. virtual void writeExtraMemory(int /*memory*/, unsigned int /*value*/, unsigned int /*address*/) {}
  22. virtual unsigned int readExtraMemory(int /*memory*/, unsigned int /*address*/){return 0;}
  23. virtual unsigned int readInstruction(unsigned int /*address*/){return 0;}
  24. virtual unsigned int getPC() {return 0;}
  25. virtual void setPC(unsigned int /*address*/) {}
  26. virtual void step() {}
  27. virtual void runToBreakpoint() {}
  28. virtual void breakNow() {}
  29. virtual void insertBLR(unsigned int /*address*/, unsigned int /*value*/) {}
  30. virtual void showJitResults(unsigned int /*address*/) {};
  31. virtual int getColor(unsigned int /*address*/){return 0xFFFFFFFF;}
  32. virtual std::string getDescription(unsigned int /*address*/) = 0;
  33. };