diff --git a/src/apps/debugger/debugger_interface/DebuggerInterface.cpp b/src/apps/debugger/debugger_interface/DebuggerInterface.cpp index 6f1a8ce9ff..8bba417a5c 100644 --- a/src/apps/debugger/debugger_interface/DebuggerInterface.cpp +++ b/src/apps/debugger/debugger_interface/DebuggerInterface.cpp @@ -434,6 +434,16 @@ DebuggerInterface::GetCpuState(thread_id thread, CpuState*& _state) } +ssize_t +DebuggerInterface::ReadMemory(target_addr_t address, void* buffer, size_t size) +{ + DebugContextGetter contextGetter(fDebugContextPool); + + return debug_read_memory(contextGetter.Context(), + (const void*)(addr_t)address, buffer, size); +} + + status_t DebuggerInterface::_CreateDebugEvent(int32 messageCode, const debug_debugger_message_data& message, bool& _ignore, diff --git a/src/apps/debugger/debugger_interface/DebuggerInterface.h b/src/apps/debugger/debugger_interface/DebuggerInterface.h index 03897d6871..0b82923269 100644 --- a/src/apps/debugger/debugger_interface/DebuggerInterface.h +++ b/src/apps/debugger/debugger_interface/DebuggerInterface.h @@ -10,6 +10,8 @@ #include #include +#include "ArchitectureTypes.h" + class Architecture; class CpuState; @@ -46,6 +48,9 @@ public: CpuState*& _state); // returns a reference to the caller + ssize_t ReadMemory(target_addr_t address, void* buffer, + size_t size); + private: struct DebugContext; struct DebugContextPool;