DBG: split debugger commands and debugger code into two files
This commit is contained in:
parent
0b06237277
commit
f0f6a15244
File diff suppressed because it is too large
Load Diff
|
@ -31,65 +31,43 @@ typedef struct _THREADNAME_INFO
|
|||
#pragma pack(pop)
|
||||
|
||||
//functions
|
||||
SIZE_T dbggetprivateusage(HANDLE hProcess, bool update = false);
|
||||
void dbginit();
|
||||
uint dbgdebuggedbase();
|
||||
void dbgdisablebpx();
|
||||
void dbgenablebpx();
|
||||
bool dbgisrunning();
|
||||
bool dbgisdll();
|
||||
void DebugUpdateGui(uint disasm_addr, bool stack);
|
||||
void dbgsetskipexceptions(bool skip);
|
||||
void dbgsetstepping(bool stepping);
|
||||
void dbgsetispausedbyuser(bool b);
|
||||
void dbgsetisdetachedbyuser(bool b);
|
||||
void dbgclearignoredexceptions();
|
||||
void dbgaddignoredexception(ExceptionRange range);
|
||||
bool dbgisignoredexception(unsigned int exception);
|
||||
bool dbgcmdnew(const char* name, CBCOMMAND cbCommand, bool debugonly);
|
||||
bool dbgcmddel(const char* name);
|
||||
CMDRESULT _ChangeThreadPriority( uint, int );
|
||||
|
||||
//callbacks
|
||||
CMDRESULT cbDebugInit(int argc, char* argv[]);
|
||||
CMDRESULT cbStopDebug(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugRun(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugErun(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetBPXOptions(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDeleteBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugEnableBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDisableBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugBplist(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStepInto(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeStepInto(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStepOver(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeStepOver(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSingleStep(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeSingleStep(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugHide(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDisasm(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetMemoryBpx(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugRtr(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeRtr(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetHardwareBreakpoint(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugAlloc(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugFree(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugMemset(int argc, char* argv[]);
|
||||
CMDRESULT cbBenchmark(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugPause(int argc, char* argv[]);
|
||||
CMDRESULT cbMemWrite(int argc, char* argv[]);
|
||||
CMDRESULT cbStartScylla(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDeleteHardwareBreakpoint(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDeleteMemoryBreakpoint(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugAttach(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDetach(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDump(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStackDump(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugContinue(int argc, char* argv[]);
|
||||
CMDRESULT cbBpDll(int argc, char* argv[]);
|
||||
CMDRESULT cbBcDll(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSwitchthread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugResumethread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSuspendthread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugKillthread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetPriority(int argc, char* argv[]);
|
||||
void cbStep();
|
||||
void cbRtrStep();
|
||||
void cbSystemBreakpoint(void* ExceptionData);
|
||||
void cbMemoryBreakpoint(void* ExceptionAddress);
|
||||
void cbHardwareBreakpoint(void* ExceptionAddress);
|
||||
void cbUserBreakpoint();
|
||||
void cbLibrarianBreakpoint(void* lpData);
|
||||
DWORD WINAPI threadDebugLoop(void* lpParameter);
|
||||
bool cbDeleteAllBreakpoints(const BREAKPOINT* bp);
|
||||
bool cbEnableAllBreakpoints(const BREAKPOINT* bp);
|
||||
bool cbDisableAllBreakpoints(const BREAKPOINT* bp);
|
||||
bool cbBreakpointList(const BREAKPOINT* bp);
|
||||
bool cbDeleteAllMemoryBreakpoints(const BREAKPOINT* bp);
|
||||
DWORD WINAPI threadAttachLoop(void* lpParameter);
|
||||
void cbDetach();
|
||||
|
||||
//variables
|
||||
extern PROCESS_INFORMATION* fdProcessInfo;
|
||||
extern HANDLE hActiveThread;
|
||||
extern char szFileName[MAX_PATH];
|
||||
|
||||
#endif // _DEBUGGER_H
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,50 @@
|
|||
#ifndef _DEBUGGER_COMMANDS_H
|
||||
#define _DEBUGGER_COMMANDS_H
|
||||
|
||||
#include "command.h"
|
||||
|
||||
//command callbacks
|
||||
CMDRESULT cbDebugInit(int argc, char* argv[]);
|
||||
CMDRESULT cbStopDebug(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugRun(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugErun(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetBPXOptions(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDeleteBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugEnableBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDisableBPX(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugBplist(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStepInto(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeStepInto(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStepOver(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeStepOver(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSingleStep(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeSingleStep(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugHide(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDisasm(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetMemoryBpx(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugRtr(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugeRtr(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetHardwareBreakpoint(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugAlloc(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugFree(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugMemset(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugBenchmark(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugPause(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStartScylla(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDeleteHardwareBreakpoint(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDeleteMemoryBreakpoint(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugAttach(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDetach(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugDump(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugStackDump(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugContinue(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugBpDll(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugBcDll(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSwitchthread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugResumethread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSuspendthread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugKillthread(int argc, char* argv[]);
|
||||
CMDRESULT cbDebugSetPriority(int argc, char* argv[]);
|
||||
|
||||
#endif //_DEBUGGER_COMMANDS_H
|
|
@ -15,6 +15,7 @@
|
|||
#include "plugin_loader.h"
|
||||
#include "assemble.h"
|
||||
#include "_dbgfunctions.h"
|
||||
#include "debugger_commands.h"
|
||||
|
||||
static MESSAGE_STACK* gMsgStack=0;
|
||||
static COMMAND* command_list=0;
|
||||
|
@ -93,8 +94,8 @@ static void registercommands()
|
|||
dbgcmdnew("StepOut\1rtr", cbDebugRtr, true); //rtr
|
||||
dbgcmdnew("eStepOut\1ertr", cbDebugeRtr, true); //rtr + skip first chance exceptions
|
||||
dbgcmdnew("DebugContinue\1con", cbDebugContinue, true); //set continue status
|
||||
dbgcmdnew("LibrarianSetBreakPoint\1bpdll", cbBpDll, true); //set dll breakpoint
|
||||
dbgcmdnew("LibrarianRemoveBreakPoint\1bcdll", cbBcDll, true); //remove dll breakpoint
|
||||
dbgcmdnew("LibrarianSetBreakPoint\1bpdll", cbDebugBpDll, true); //set dll breakpoint
|
||||
dbgcmdnew("LibrarianRemoveBreakPoint\1bcdll", cbDebugBcDll, true); //remove dll breakpoint
|
||||
dbgcmdnew("switchthread\1threadswitch", cbDebugSwitchthread, true);
|
||||
dbgcmdnew("suspendthread\1threadsuspend", cbDebugSuspendthread, true);
|
||||
dbgcmdnew("resumethread\1threadresume", cbDebugResumethread, true);
|
||||
|
@ -155,7 +156,7 @@ static void registercommands()
|
|||
dbgcmdnew("Fill\1memset", cbDebugMemset, true); //memset
|
||||
|
||||
//plugins
|
||||
dbgcmdnew("StartScylla\1scylla\1imprec", cbStartScylla, false); //start scylla
|
||||
dbgcmdnew("StartScylla\1scylla\1imprec", cbDebugStartScylla, false); //start scylla
|
||||
|
||||
//general purpose
|
||||
dbgcmdnew("cmp", cbInstrCmp, false); //compare
|
||||
|
@ -190,8 +191,7 @@ static void registercommands()
|
|||
dbgcmdnew("modcallfind", cbInstrModCallFind, true); //find intermodular calls
|
||||
|
||||
//undocumented
|
||||
dbgcmdnew("bench", cbBenchmark, true); //benchmark test (readmem etc)
|
||||
dbgcmdnew("memwrite", cbMemWrite, true); //memwrite test
|
||||
dbgcmdnew("bench", cbDebugBenchmark, true); //benchmark test (readmem etc)
|
||||
dbgcmdnew("dprintf", cbPrintf, false); //printf
|
||||
dbgcmdnew("setstr\1strset", cbInstrSetstr, false); //set a string variable
|
||||
dbgcmdnew("getstr\1strget", cbInstrGetstr, false); //get a string variable
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
<ClCompile Include="command.cpp" />
|
||||
<ClCompile Include="console.cpp" />
|
||||
<ClCompile Include="debugger.cpp" />
|
||||
<ClCompile Include="debugger_commands.cpp" />
|
||||
<ClCompile Include="disasm_fast.cpp" />
|
||||
<ClCompile Include="disasm_helper.cpp" />
|
||||
<ClCompile Include="instruction.cpp" />
|
||||
|
@ -56,6 +57,7 @@
|
|||
<ClInclude Include="data.h" />
|
||||
<ClInclude Include="dbghelp\dbghelp.h" />
|
||||
<ClInclude Include="debugger.h" />
|
||||
<ClInclude Include="debugger_commands.h" />
|
||||
<ClInclude Include="DeviceNameResolver\DeviceNameResolver.h" />
|
||||
<ClInclude Include="disasm_fast.h" />
|
||||
<ClInclude Include="disasm_helper.h" />
|
||||
|
|
|
@ -126,6 +126,9 @@
|
|||
<ClCompile Include="patches.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="debugger_commands.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="_exports.h">
|
||||
|
@ -263,5 +266,8 @@
|
|||
<ClInclude Include="patches.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="debugger_commands.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
Loading…
Reference in New Issue