2 #include "../../GDBServerFoundation/GDBServer.h"
3 #include "../../GDBServerFoundation/GDBStub.h"
4 #include "../../GDBServerFoundation/IGDBTarget.h"
5 #include <MSP430_Debug.h>
15 using namespace GDBServerFoundation;
27 bool m_bClosePending, m_bValid;
28 std::vector<bool> m_UsedBreakpoints;
36 virtual bool WaitForJTAGEvent();
37 void ReportLastMSP430Error(
const char *pHint);
38 virtual bool DoResumeTarget(RUN_MODES_t mode);
42 : m_bClosePending(false)
44 , m_BreakInPending(false)
45 , m_bFLASHErased(false)
46 , m_bFLASHCommandsUsed(false)
55 virtual GDBStatus GetLastStopRecord(TargetStopRecord *pRec);
56 virtual GDBStatus ResumeAndWait(
int threadID);
57 virtual GDBStatus Step(
int threadID);
58 virtual GDBStatus SendBreakInRequestAsync();
60 virtual const PlatformRegisterList *GetRegisterList()
66 virtual GDBStatus ReadFrameRelatedRegisters(
int threadID, RegisterSetContainer ®isters);
67 virtual GDBStatus ReadTargetRegisters(
int threadID, RegisterSetContainer ®isters);
68 virtual GDBStatus WriteTargetRegisters(
int threadID,
const RegisterSetContainer ®isters);
71 virtual GDBStatus ReadTargetMemory(ULONGLONG Address,
void *pBuffer,
size_t *pSizeInBytes);
72 virtual GDBStatus WriteTargetMemory(ULONGLONG Address,
const void *pBuffer,
size_t sizeInBytes);
75 virtual GDBStatus GetDynamicLibraryList(std::vector<DynamicLibraryRecord> &libraries);
76 virtual GDBStatus GetThreadList(std::vector<ThreadRecord> &threads);
77 virtual GDBStatus SetThreadModeForNextCont(
int threadID, DebugThreadMode mode, OUT
bool *pNeedRestoreCall, IN OUT INT_PTR *pRestoreCookie);
78 virtual GDBStatus Terminate();
80 virtual GDBStatus CreateBreakpoint(BreakpointType type, ULONGLONG Address,
unsigned kind, OUT INT_PTR *pCookie);
81 virtual GDBStatus RemoveBreakpoint(BreakpointType type, ULONGLONG Address, INT_PTR Cookie);
83 virtual GDBStatus ExecuteRemoteCommand(
const std::string &command, std::string &output);
88 virtual GDBStatus GetEmbeddedMemoryRegions(std::vector<EmbeddedMemoryRegion> ®ions);
89 virtual GDBStatus EraseFLASH(ULONGLONG addr,
size_t length);
90 virtual GDBStatus WriteFLASH(ULONGLONG addr,
const void *pBuffer,
size_t length);
91 virtual GDBStatus CommitFLASHWrite();