Changeset 35696 in vbox for trunk/src/VBox/Debugger
- Timestamp:
- Jan 24, 2011 6:03:33 PM (14 years ago)
- svn:sync-xref-src-repo-rev:
- 69622
- Location:
- trunk/src/VBox/Debugger
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Debugger/DBGCCommands.cpp
r35628 r35696 47 47 * Internal Functions * 48 48 *******************************************************************************/ 49 static DECLCALLBACK(int) dbgcCmdHelp(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);50 static DECLCALLBACK(int) dbgcCmdQuit(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);51 static DECLCALLBACK(int) dbgcCmdStop(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);52 static DECLCALLBACK(int) dbgcCmdDetect(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);53 static DECLCALLBACK(int) dbgcCmdCpu(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);54 static DECLCALLBACK(int) dbgcCmdInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);55 static DECLCALLBACK(int) dbgcCmdLog(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);56 static DECLCALLBACK(int) dbgcCmdLogDest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);57 static DECLCALLBACK(int) dbgcCmdLogFlags(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);58 static DECLCALLBACK(int) dbgcCmdFormat(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);59 static DECLCALLBACK(int) dbgcCmdLoadImage(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);60 static DECLCALLBACK(int) dbgcCmdLoadMap(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);61 static DECLCALLBACK(int) dbgcCmdLoadSeg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);62 static DECLCALLBACK(int) dbgcCmdLoadSyms(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);63 static DECLCALLBACK(int) dbgcCmdSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);64 static DECLCALLBACK(int) dbgcCmdUnset(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);65 static DECLCALLBACK(int) dbgcCmdLoadVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);66 static DECLCALLBACK(int) dbgcCmdShowVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);67 static DECLCALLBACK(int) dbgcCmdLoadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);68 static DECLCALLBACK(int) dbgcCmdUnloadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);69 static DECLCALLBACK(int) dbgcCmdShowPlugIns(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);70 static DECLCALLBACK(int) dbgcCmdHarakiri(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);71 static DECLCALLBACK(int) dbgcCmdEcho(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);72 static DECLCALLBACK(int) dbgcCmdRunScript(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);73 static DECLCALLBACK(int) dbgcCmdWriteCore(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);49 static DECLCALLBACK(int) dbgcCmdHelp(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 50 static DECLCALLBACK(int) dbgcCmdQuit(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 51 static DECLCALLBACK(int) dbgcCmdStop(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 52 static DECLCALLBACK(int) dbgcCmdDetect(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 53 static DECLCALLBACK(int) dbgcCmdCpu(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 54 static DECLCALLBACK(int) dbgcCmdInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 55 static DECLCALLBACK(int) dbgcCmdLog(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 56 static DECLCALLBACK(int) dbgcCmdLogDest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 57 static DECLCALLBACK(int) dbgcCmdLogFlags(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 58 static DECLCALLBACK(int) dbgcCmdFormat(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 59 static DECLCALLBACK(int) dbgcCmdLoadImage(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 60 static DECLCALLBACK(int) dbgcCmdLoadMap(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 61 static DECLCALLBACK(int) dbgcCmdLoadSeg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 62 static DECLCALLBACK(int) dbgcCmdLoadSyms(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 63 static DECLCALLBACK(int) dbgcCmdSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 64 static DECLCALLBACK(int) dbgcCmdUnset(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 65 static DECLCALLBACK(int) dbgcCmdLoadVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 66 static DECLCALLBACK(int) dbgcCmdShowVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 67 static DECLCALLBACK(int) dbgcCmdLoadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 68 static DECLCALLBACK(int) dbgcCmdUnloadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 69 static DECLCALLBACK(int) dbgcCmdShowPlugIns(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 70 static DECLCALLBACK(int) dbgcCmdHarakiri(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 71 static DECLCALLBACK(int) dbgcCmdEcho(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 72 static DECLCALLBACK(int) dbgcCmdRunScript(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 73 static DECLCALLBACK(int) dbgcCmdWriteCore(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 74 74 75 75 … … 222 222 const DBGCCMD g_aCmds[] = 223 223 { 224 /* pszCmd, cArgsMin, cArgsMax, paArgDescs, cArgDescs, pResultDesc,fFlags,pfnHandler pszSyntax, ....pszDescription */225 { "bye", 0, 0, NULL, 0, NULL, 0,dbgcCmdQuit, "", "Exits the debugger." },226 { "cpu", 0, 1, &g_aArgCpu[0], RT_ELEMENTS(g_aArgCpu), NULL, 0,dbgcCmdCpu, "[idCpu]", "If no argument, display the current CPU, else change to the specified CPU." },227 { "echo", 1, ~0, &g_aArgMultiStr[0], RT_ELEMENTS(g_aArgMultiStr), NULL, 0,dbgcCmdEcho, "<str1> [str2..[strN]]", "Displays the strings separated by one blank space and the last one followed by a newline." },228 { "exit", 0, 0, NULL, 0, NULL, 0,dbgcCmdQuit, "", "Exits the debugger." },229 { "format", 1, 1, &g_aArgAny[0], RT_ELEMENTS(g_aArgAny), NULL, 0,dbgcCmdFormat, "", "Evaluates an expression and formats it." },230 { "detect", 0, 0, NULL, 0, NULL, 0,dbgcCmdDetect, "", "Detects or re-detects the guest os and starts the OS specific digger." },231 { "harakiri", 0, 0, NULL, 0, NULL, 0,dbgcCmdHarakiri, "", "Kills debugger process." },232 { "help", 0, ~0, &g_aArgHelp[0], RT_ELEMENTS(g_aArgHelp), NULL, 0,dbgcCmdHelp, "[cmd/op [..]]", "Display help. For help about info items try 'info help'." },233 { "info", 1, 2, &g_aArgInfo[0], RT_ELEMENTS(g_aArgInfo), NULL, 0,dbgcCmdInfo, "<info> [args]", "Display info register in the DBGF. For a list of info items try 'info help'." },234 { "loadimage", 2, 3, &g_aArgLoadImage[0], RT_ELEMENTS(g_aArgLoadImage), NULL, 0,dbgcCmdLoadImage, "<filename> <address> [name]",235 236 237 { "loadmap", 2, 5, &g_aArgLoadMap[0], RT_ELEMENTS(g_aArgLoadMap), NULL, 0,dbgcCmdLoadMap, "<filename> <address> [name] [subtrahend] [seg]",238 239 240 241 { "loadplugin", 1, 1, &g_aArgPlugIn[0], RT_ELEMENTS(g_aArgPlugIn), NULL, 0,dbgcCmdLoadPlugIn,"<plugin1> [plugin2..N]", "Loads one or more plugins" },242 { "loadseg", 3, 4, &g_aArgLoadSeg[0], RT_ELEMENTS(g_aArgLoadSeg), NULL, 0,dbgcCmdLoadSeg, "<filename> <address> <seg> [name]",243 244 245 { "loadsyms", 1, 5, &g_aArgLoadSyms[0], RT_ELEMENTS(g_aArgLoadSyms), NULL, 0,dbgcCmdLoadSyms, "<filename> [delta] [module] [module address]", "Loads symbols from a text file. Optionally giving a delta and a module." },246 { "loadvars", 1, 1, &g_aArgFilename[0], RT_ELEMENTS(g_aArgFilename), NULL, 0,dbgcCmdLoadVars, "<filename>", "Load variables from file. One per line, same as the args to the set command." },247 { "log", 1, 1, &g_aArgLog[0], RT_ELEMENTS(g_aArgLog), NULL, 0,dbgcCmdLog, "<group string>", "Modifies the logging group settings (VBOX_LOG)" },248 { "logdest", 1, 1, &g_aArgLogDest[0], RT_ELEMENTS(g_aArgLogDest), NULL, 0,dbgcCmdLogDest, "<dest string>", "Modifies the logging destination (VBOX_LOG_DEST)." },249 { "logflags", 1, 1, &g_aArgLogFlags[0], RT_ELEMENTS(g_aArgLogFlags), NULL, 0,dbgcCmdLogFlags, "<flags string>", "Modifies the logging flags (VBOX_LOG_FLAGS)." },250 { "quit", 0, 0, NULL, 0, NULL, 0,dbgcCmdQuit, "", "Exits the debugger." },251 { "runscript", 1, 1, &g_aArgFilename[0], RT_ELEMENTS(g_aArgFilename), NULL, 0,dbgcCmdRunScript, "<filename>", "Runs the command listed in the script. Lines starting with '#' "252 253 { "set", 2, 2, &g_aArgSet[0], RT_ELEMENTS(g_aArgSet), NULL, 0,dbgcCmdSet, "<var> <value>", "Sets a global variable." },254 { "showplugins",0, 0, NULL, 0, NULL, 0,dbgcCmdShowPlugIns,"", "List loaded plugins." },255 { "showvars", 0, 0, NULL, 0, NULL, 0,dbgcCmdShowVars, "", "List all the defined variables." },256 { "stop", 0, 0, NULL, 0, NULL, 0,dbgcCmdStop, "", "Stop execution." },257 { "unloadplugin", 1, ~0, &g_aArgPlugIn[0], RT_ELEMENTS(g_aArgPlugIn), NULL, 0,dbgcCmdUnloadPlugIn, "<plugin1> [plugin2..N]", "Unloads one or more plugins." },258 { "unset", 1, ~0, &g_aArgMultiStr[0], RT_ELEMENTS(g_aArgMultiStr), NULL, 0,dbgcCmdUnset, "<var1> [var1..[varN]]", "Unsets (delete) one or more global variables." },259 { "writecore", 1, 1, &g_aArgWriteCore[0], RT_ELEMENTS(g_aArgWriteCore), NULL, 0,dbgcCmdWriteCore, "<filename>", "Write core to file." },224 /* pszCmd, cArgsMin, cArgsMax, paArgDescs, cArgDescs, fFlags, pfnHandler pszSyntax, ....pszDescription */ 225 { "bye", 0, 0, NULL, 0, 0, dbgcCmdQuit, "", "Exits the debugger." }, 226 { "cpu", 0, 1, &g_aArgCpu[0], RT_ELEMENTS(g_aArgCpu), 0, dbgcCmdCpu, "[idCpu]", "If no argument, display the current CPU, else change to the specified CPU." }, 227 { "echo", 1, ~0, &g_aArgMultiStr[0], RT_ELEMENTS(g_aArgMultiStr), 0, dbgcCmdEcho, "<str1> [str2..[strN]]", "Displays the strings separated by one blank space and the last one followed by a newline." }, 228 { "exit", 0, 0, NULL, 0, 0, dbgcCmdQuit, "", "Exits the debugger." }, 229 { "format", 1, 1, &g_aArgAny[0], RT_ELEMENTS(g_aArgAny), 0, dbgcCmdFormat, "", "Evaluates an expression and formats it." }, 230 { "detect", 0, 0, NULL, 0, 0, dbgcCmdDetect, "", "Detects or re-detects the guest os and starts the OS specific digger." }, 231 { "harakiri", 0, 0, NULL, 0, 0, dbgcCmdHarakiri, "", "Kills debugger process." }, 232 { "help", 0, ~0, &g_aArgHelp[0], RT_ELEMENTS(g_aArgHelp), 0, dbgcCmdHelp, "[cmd/op [..]]", "Display help. For help about info items try 'info help'." }, 233 { "info", 1, 2, &g_aArgInfo[0], RT_ELEMENTS(g_aArgInfo), 0, dbgcCmdInfo, "<info> [args]", "Display info register in the DBGF. For a list of info items try 'info help'." }, 234 { "loadimage", 2, 3, &g_aArgLoadImage[0], RT_ELEMENTS(g_aArgLoadImage), 0, dbgcCmdLoadImage, "<filename> <address> [name]", 235 "Loads the symbols of an executable image at the specified address. " 236 /*"Optionally giving the module a name other than the file name stem."*/ }, /** @todo implement line breaks */ 237 { "loadmap", 2, 5, &g_aArgLoadMap[0], RT_ELEMENTS(g_aArgLoadMap), 0, dbgcCmdLoadMap, "<filename> <address> [name] [subtrahend] [seg]", 238 "Loads the symbols from a map file, usually at a specified address. " 239 /*"Optionally giving the module a name other than the file name stem " 240 "and a subtrahend to subtract from the addresses."*/ }, 241 { "loadplugin", 1, 1, &g_aArgPlugIn[0], RT_ELEMENTS(g_aArgPlugIn), 0, dbgcCmdLoadPlugIn,"<plugin1> [plugin2..N]", "Loads one or more plugins" }, 242 { "loadseg", 3, 4, &g_aArgLoadSeg[0], RT_ELEMENTS(g_aArgLoadSeg), 0, dbgcCmdLoadSeg, "<filename> <address> <seg> [name]", 243 "Loads the symbols of a segment in the executable image at the specified address. " 244 /*"Optionally giving the module a name other than the file name stem."*/ }, 245 { "loadsyms", 1, 5, &g_aArgLoadSyms[0], RT_ELEMENTS(g_aArgLoadSyms), 0, dbgcCmdLoadSyms, "<filename> [delta] [module] [module address]", "Loads symbols from a text file. Optionally giving a delta and a module." }, 246 { "loadvars", 1, 1, &g_aArgFilename[0], RT_ELEMENTS(g_aArgFilename), 0, dbgcCmdLoadVars, "<filename>", "Load variables from file. One per line, same as the args to the set command." }, 247 { "log", 1, 1, &g_aArgLog[0], RT_ELEMENTS(g_aArgLog), 0, dbgcCmdLog, "<group string>", "Modifies the logging group settings (VBOX_LOG)" }, 248 { "logdest", 1, 1, &g_aArgLogDest[0], RT_ELEMENTS(g_aArgLogDest), 0, dbgcCmdLogDest, "<dest string>", "Modifies the logging destination (VBOX_LOG_DEST)." }, 249 { "logflags", 1, 1, &g_aArgLogFlags[0], RT_ELEMENTS(g_aArgLogFlags), 0, dbgcCmdLogFlags, "<flags string>", "Modifies the logging flags (VBOX_LOG_FLAGS)." }, 250 { "quit", 0, 0, NULL, 0, 0, dbgcCmdQuit, "", "Exits the debugger." }, 251 { "runscript", 1, 1, &g_aArgFilename[0], RT_ELEMENTS(g_aArgFilename), 0, dbgcCmdRunScript, "<filename>", "Runs the command listed in the script. Lines starting with '#' " 252 "(after removing blanks) are comment. blank lines are ignored. Stops on failure." }, 253 { "set", 2, 2, &g_aArgSet[0], RT_ELEMENTS(g_aArgSet), 0, dbgcCmdSet, "<var> <value>", "Sets a global variable." }, 254 { "showplugins",0, 0, NULL, 0, 0, dbgcCmdShowPlugIns,"", "List loaded plugins." }, 255 { "showvars", 0, 0, NULL, 0, 0, dbgcCmdShowVars, "", "List all the defined variables." }, 256 { "stop", 0, 0, NULL, 0, 0, dbgcCmdStop, "", "Stop execution." }, 257 { "unloadplugin", 1, ~0, &g_aArgPlugIn[0], RT_ELEMENTS(g_aArgPlugIn), 0, dbgcCmdUnloadPlugIn, "<plugin1> [plugin2..N]", "Unloads one or more plugins." }, 258 { "unset", 1, ~0, &g_aArgMultiStr[0], RT_ELEMENTS(g_aArgMultiStr), 0, dbgcCmdUnset, "<var1> [var1..[varN]]", "Unsets (delete) one or more global variables." }, 259 { "writecore", 1, 1, &g_aArgWriteCore[0], RT_ELEMENTS(g_aArgWriteCore), 0, dbgcCmdWriteCore, "<filename>", "Write core to file." }, 260 260 }; 261 261 … … 483 483 * @param cArgs Number of arguments in the array. 484 484 */ 485 static DECLCALLBACK(int) dbgcCmdHelp(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)485 static DECLCALLBACK(int) dbgcCmdHelp(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 486 486 { 487 487 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 623 623 NOREF(pCmd); 624 624 NOREF(pVM); 625 NOREF(pResult);626 625 return rc; 627 626 } … … 638 637 * @param cArgs Number of arguments in the array. 639 638 */ 640 static DECLCALLBACK(int) dbgcCmdQuit(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)639 static DECLCALLBACK(int) dbgcCmdQuit(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 641 640 { 642 641 pCmdHlp->pfnPrintf(pCmdHlp, NULL, "Quitting console...\n"); … … 645 644 NOREF(paArgs); 646 645 NOREF(cArgs); 647 NOREF(pResult);648 646 return VERR_DBGC_QUIT; 649 647 } … … 660 658 * @param cArgs Number of arguments in the array. 661 659 */ 662 static DECLCALLBACK(int) dbgcCmdStop(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)660 static DECLCALLBACK(int) dbgcCmdStop(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 663 661 { 664 662 /* … … 677 675 } 678 676 679 NOREF(pCmd); NOREF(paArgs); NOREF(cArgs); NOREF(pResult);677 NOREF(pCmd); NOREF(paArgs); NOREF(cArgs); 680 678 return rc; 681 679 } … … 692 690 * @param cArgs Number of arguments in the array. 693 691 */ 694 static DECLCALLBACK(int) dbgcCmdEcho(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)692 static DECLCALLBACK(int) dbgcCmdEcho(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 695 693 { 696 694 /* … … 707 705 return rc; 708 706 } 709 NOREF(pCmd); NOREF(p Result); NOREF(pVM);707 NOREF(pCmd); NOREF(pVM); 710 708 return pCmdHlp->pfnPrintf(pCmdHlp, NULL, "\n"); 711 709 } … … 722 720 * @param cArgs Number of arguments in the array. 723 721 */ 724 static DECLCALLBACK(int) dbgcCmdRunScript(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)722 static DECLCALLBACK(int) dbgcCmdRunScript(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 725 723 { 726 724 /* check that the parser did what it's supposed to do. */ … … 795 793 fclose(pFile); 796 794 797 NOREF(pCmd); NOREF(p Result); NOREF(pVM);795 NOREF(pCmd); NOREF(pVM); 798 796 return rc; 799 797 } … … 810 808 * @param cArgs Number of arguments in the array. 811 809 */ 812 static DECLCALLBACK(int) dbgcCmdDetect(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)810 static DECLCALLBACK(int) dbgcCmdDetect(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 813 811 { 814 812 /* check that the parser did what it's supposed to do. */ … … 833 831 else 834 832 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL, "Unable to figure out which guest OS it is, sorry.\n"); 835 NOREF(pCmd); NOREF(p Result); NOREF(paArgs);833 NOREF(pCmd); NOREF(paArgs); 836 834 return rc; 837 835 } … … 848 846 * @param cArgs Number of arguments in the array. 849 847 */ 850 static DECLCALLBACK(int) dbgcCmdCpu(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)848 static DECLCALLBACK(int) dbgcCmdCpu(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 851 849 { 852 850 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 890 888 * @param cArgs Number of arguments in the array. 891 889 */ 892 static DECLCALLBACK(int) dbgcCmdInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)890 static DECLCALLBACK(int) dbgcCmdInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 893 891 { 894 892 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 915 913 return pCmdHlp->pfnVBoxError(pCmdHlp, rc, "DBGFR3Info()\n"); 916 914 917 NOREF(pCmd); NOREF(pResult);915 NOREF(pCmd); 918 916 return 0; 919 917 } … … 930 928 * @param cArgs Number of arguments in the array. 931 929 */ 932 static DECLCALLBACK(int) dbgcCmdLog(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)930 static DECLCALLBACK(int) dbgcCmdLog(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 933 931 { 934 932 int rc = DBGFR3LogModifyGroups(pVM, paArgs[0].u.pszString); 935 933 if (RT_SUCCESS(rc)) 936 934 return VINF_SUCCESS; 937 NOREF(pCmd); NOREF(cArgs); NOREF(pResult);935 NOREF(pCmd); NOREF(cArgs); 938 936 return pCmdHlp->pfnVBoxError(pCmdHlp, rc, "DBGFR3LogModifyGroups(%p,'%s')\n", pVM, paArgs[0].u.pszString); 939 937 } … … 950 948 * @param cArgs Number of arguments in the array. 951 949 */ 952 static DECLCALLBACK(int) dbgcCmdLogDest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)950 static DECLCALLBACK(int) dbgcCmdLogDest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 953 951 { 954 952 int rc = DBGFR3LogModifyDestinations(pVM, paArgs[0].u.pszString); 955 953 if (RT_SUCCESS(rc)) 956 954 return VINF_SUCCESS; 957 NOREF(pCmd); NOREF(cArgs); NOREF(pResult);955 NOREF(pCmd); NOREF(cArgs); 958 956 return pCmdHlp->pfnVBoxError(pCmdHlp, rc, "DBGFR3LogModifyDestinations(%p,'%s')\n", pVM, paArgs[0].u.pszString); 959 957 } … … 970 968 * @param cArgs Number of arguments in the array. 971 969 */ 972 static DECLCALLBACK(int) dbgcCmdLogFlags(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)970 static DECLCALLBACK(int) dbgcCmdLogFlags(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 973 971 { 974 972 int rc = DBGFR3LogModifyFlags(pVM, paArgs[0].u.pszString); 975 973 if (RT_SUCCESS(rc)) 976 974 return VINF_SUCCESS; 977 NOREF(pCmd); NOREF(cArgs); NOREF(pResult);975 NOREF(pCmd); NOREF(cArgs); 978 976 return pCmdHlp->pfnVBoxError(pCmdHlp, rc, "DBGFR3LogModifyFlags(%p,'%s')\n", pVM, paArgs[0].u.pszString); 979 977 } … … 990 988 * @param cArgs Number of arguments in the array. 991 989 */ 992 static DECLCALLBACK(int) dbgcCmdFormat(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)990 static DECLCALLBACK(int) dbgcCmdFormat(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 993 991 { 994 992 LogFlow(("dbgcCmdFormat\n")); … … 1102 1100 } /* arg loop */ 1103 1101 1104 NOREF(pCmd); NOREF(pVM); NOREF(pResult);1102 NOREF(pCmd); NOREF(pVM); 1105 1103 return 0; 1106 1104 } … … 1117 1115 * @param cArgs Number of arguments in the array. 1118 1116 */ 1119 static DECLCALLBACK(int) dbgcCmdLoadImage(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1117 static DECLCALLBACK(int) dbgcCmdLoadImage(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1120 1118 { 1121 1119 /* … … 1152 1150 pszFilename, pszModName, &paArgs[1]); 1153 1151 1154 NOREF(pCmd); NOREF(pResult);1152 NOREF(pCmd); 1155 1153 return VINF_SUCCESS; 1156 1154 } … … 1167 1165 * @param cArgs Number of arguments in the array. 1168 1166 */ 1169 static DECLCALLBACK(int) dbgcCmdLoadMap(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1167 static DECLCALLBACK(int) dbgcCmdLoadMap(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1170 1168 { 1171 1169 /* … … 1219 1217 pszFilename, pszModName, &paArgs[1]); 1220 1218 1221 NOREF(pCmd); NOREF(pResult);1219 NOREF(pCmd); 1222 1220 return VINF_SUCCESS; 1223 1221 } … … 1234 1232 * @param cArgs Number of arguments in the array. 1235 1233 */ 1236 static DECLCALLBACK(int) dbgcCmdLoadSeg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1234 static DECLCALLBACK(int) dbgcCmdLoadSeg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1237 1235 { 1238 1236 /* … … 1275 1273 pszFilename, pszModName, &paArgs[1]); 1276 1274 1277 NOREF(pCmd); NOREF(pResult);1275 NOREF(pCmd); 1278 1276 return VINF_SUCCESS; 1279 1277 } … … 1290 1288 * @param cArgs Number of arguments in the array. 1291 1289 */ 1292 static DECLCALLBACK(int) dbgcCmdLoadSyms(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1290 static DECLCALLBACK(int) dbgcCmdLoadSyms(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1293 1291 { 1294 1292 /* … … 1363 1361 paArgs[0].u.pszString, Delta, pszModule, ModuleAddress); 1364 1362 1365 NOREF(pCmd); NOREF(pResult);1363 NOREF(pCmd); 1366 1364 return VINF_SUCCESS; 1367 1365 } … … 1378 1376 * @param cArgs Number of arguments in the array. 1379 1377 */ 1380 static DECLCALLBACK(int) dbgcCmdSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1378 static DECLCALLBACK(int) dbgcCmdSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1381 1379 { 1382 1380 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1457 1455 pDbgc->papVars[pDbgc->cVars++] = pVar; 1458 1456 1459 NOREF(pCmd); NOREF(pVM); NOREF(cArgs); NOREF(pResult);1457 NOREF(pCmd); NOREF(pVM); NOREF(cArgs); 1460 1458 return 0; 1461 1459 } … … 1472 1470 * @param cArgs Number of arguments in the array. 1473 1471 */ 1474 static DECLCALLBACK(int) dbgcCmdUnset(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1472 static DECLCALLBACK(int) dbgcCmdUnset(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1475 1473 { 1476 1474 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1515 1513 } /* arg loop */ 1516 1514 1517 NOREF(pCmd); NOREF(pVM); NOREF(pResult);1515 NOREF(pCmd); NOREF(pVM); 1518 1516 return 0; 1519 1517 } … … 1530 1528 * @param cArgs Number of arguments in the array. 1531 1529 */ 1532 static DECLCALLBACK(int) dbgcCmdLoadVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1530 static DECLCALLBACK(int) dbgcCmdLoadVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1533 1531 { 1534 1532 /* … … 1572 1570 return pCmdHlp->pfnPrintf(pCmdHlp, NULL, "Failed to open file '%s'.\n", paArgs[0].u.pszString); 1573 1571 1574 NOREF(pCmd); NOREF(pVM); NOREF(pResult);1572 NOREF(pCmd); NOREF(pVM); 1575 1573 return 0; 1576 1574 } … … 1587 1585 * @param cArgs Number of arguments in the array. 1588 1586 */ 1589 static DECLCALLBACK(int) dbgcCmdShowVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1587 static DECLCALLBACK(int) dbgcCmdShowVars(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1590 1588 { 1591 1589 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1595 1593 int rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL, "%-20s ", &pDbgc->papVars[iVar]->szName); 1596 1594 if (!rc) 1597 rc = dbgcCmdFormat(pCmd, pCmdHlp, pVM, &pDbgc->papVars[iVar]->Var, 1 , NULL);1595 rc = dbgcCmdFormat(pCmd, pCmdHlp, pVM, &pDbgc->papVars[iVar]->Var, 1); 1598 1596 if (rc) 1599 1597 return rc; 1600 1598 } 1601 1599 1602 NOREF(paArgs); NOREF(cArgs); NOREF(pResult);1600 NOREF(paArgs); NOREF(cArgs); 1603 1601 return 0; 1604 1602 } … … 1912 1910 * @param cArgs Number of arguments in the array. 1913 1911 */ 1914 static DECLCALLBACK(int) dbgcCmdLoadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1912 static DECLCALLBACK(int) dbgcCmdLoadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1915 1913 { 1916 1914 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1979 1977 * @param cArgs Number of arguments in the array. 1980 1978 */ 1981 static DECLCALLBACK(int) dbgcCmdUnloadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1979 static DECLCALLBACK(int) dbgcCmdUnloadPlugIn(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1982 1980 { 1983 1981 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 2031 2029 * @param cArgs Number of arguments in the array. 2032 2030 */ 2033 static DECLCALLBACK(int) dbgcCmdShowPlugIns(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2031 static DECLCALLBACK(int) dbgcCmdShowPlugIns(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2034 2032 { 2035 2033 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 2061 2059 * @param cArgs Number of arguments in the array. 2062 2060 */ 2063 static DECLCALLBACK(int) dbgcCmdHarakiri(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2061 static DECLCALLBACK(int) dbgcCmdHarakiri(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2064 2062 { 2065 2063 Log(("dbgcCmdHarakiri\n")); 2066 2064 for (;;) 2067 2065 exit(126); 2068 NOREF(pCmd); NOREF(pCmdHlp); NOREF(pVM); NOREF(paArgs); NOREF(cArgs); NOREF(pResult);2066 NOREF(pCmd); NOREF(pCmdHlp); NOREF(pVM); NOREF(paArgs); NOREF(cArgs); 2069 2067 } 2070 2068 … … 2080 2078 * @param cArgs Number of arguments in the array. 2081 2079 */ 2082 static DECLCALLBACK(int) dbgcCmdWriteCore(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2080 static DECLCALLBACK(int) dbgcCmdWriteCore(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2083 2081 { 2084 2082 Log(("dbgcCmdWriteCore\n")); -
trunk/src/VBox/Debugger/DBGCEmulateCodeView.cpp
r35694 r35696 44 44 * Internal Functions * 45 45 *******************************************************************************/ 46 static DECLCALLBACK(int) dbgcCmdBrkAccess(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);47 static DECLCALLBACK(int) dbgcCmdBrkClear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);48 static DECLCALLBACK(int) dbgcCmdBrkDisable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);49 static DECLCALLBACK(int) dbgcCmdBrkEnable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);50 static DECLCALLBACK(int) dbgcCmdBrkList(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);51 static DECLCALLBACK(int) dbgcCmdBrkSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);52 static DECLCALLBACK(int) dbgcCmdBrkREM(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);53 static DECLCALLBACK(int) dbgcCmdDumpMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);54 static DECLCALLBACK(int) dbgcCmdDumpDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);55 static DECLCALLBACK(int) dbgcCmdDumpIDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);56 static DECLCALLBACK(int) dbgcCmdDumpPageDir(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);57 static DECLCALLBACK(int) dbgcCmdDumpPageDirBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);58 static DECLCALLBACK(int) dbgcCmdDumpPageHierarchy(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);59 static DECLCALLBACK(int) dbgcCmdDumpPageTable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);60 static DECLCALLBACK(int) dbgcCmdDumpPageTableBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);61 static DECLCALLBACK(int) dbgcCmdDumpTSS(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);62 static DECLCALLBACK(int) dbgcCmdEditMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);63 static DECLCALLBACK(int) dbgcCmdGo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);64 static DECLCALLBACK(int) dbgcCmdListModules(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);65 static DECLCALLBACK(int) dbgcCmdListNear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);66 static DECLCALLBACK(int) dbgcCmdListSource(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);67 static DECLCALLBACK(int) dbgcCmdMemoryInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);68 static DECLCALLBACK(int) dbgcCmdReg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);69 static DECLCALLBACK(int) dbgcCmdRegGuest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);70 static DECLCALLBACK(int) dbgcCmdRegHyper(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);71 static DECLCALLBACK(int) dbgcCmdRegTerse(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);72 static DECLCALLBACK(int) dbgcCmdSearchMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);73 static DECLCALLBACK(int) dbgcCmdSearchMemType(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);74 static DECLCALLBACK(int) dbgcCmdStack(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);75 static DECLCALLBACK(int) dbgcCmdTrace(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);76 static DECLCALLBACK(int) dbgcCmdUnassemble(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult);46 static DECLCALLBACK(int) dbgcCmdBrkAccess(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 47 static DECLCALLBACK(int) dbgcCmdBrkClear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 48 static DECLCALLBACK(int) dbgcCmdBrkDisable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 49 static DECLCALLBACK(int) dbgcCmdBrkEnable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 50 static DECLCALLBACK(int) dbgcCmdBrkList(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 51 static DECLCALLBACK(int) dbgcCmdBrkSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 52 static DECLCALLBACK(int) dbgcCmdBrkREM(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 53 static DECLCALLBACK(int) dbgcCmdDumpMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 54 static DECLCALLBACK(int) dbgcCmdDumpDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 55 static DECLCALLBACK(int) dbgcCmdDumpIDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 56 static DECLCALLBACK(int) dbgcCmdDumpPageDir(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 57 static DECLCALLBACK(int) dbgcCmdDumpPageDirBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 58 static DECLCALLBACK(int) dbgcCmdDumpPageHierarchy(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 59 static DECLCALLBACK(int) dbgcCmdDumpPageTable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 60 static DECLCALLBACK(int) dbgcCmdDumpPageTableBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 61 static DECLCALLBACK(int) dbgcCmdDumpTSS(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 62 static DECLCALLBACK(int) dbgcCmdEditMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 63 static DECLCALLBACK(int) dbgcCmdGo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 64 static DECLCALLBACK(int) dbgcCmdListModules(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 65 static DECLCALLBACK(int) dbgcCmdListNear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 66 static DECLCALLBACK(int) dbgcCmdListSource(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 67 static DECLCALLBACK(int) dbgcCmdMemoryInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 68 static DECLCALLBACK(int) dbgcCmdReg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 69 static DECLCALLBACK(int) dbgcCmdRegGuest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 70 static DECLCALLBACK(int) dbgcCmdRegHyper(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 71 static DECLCALLBACK(int) dbgcCmdRegTerse(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 72 static DECLCALLBACK(int) dbgcCmdSearchMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 73 static DECLCALLBACK(int) dbgcCmdSearchMemType(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 74 static DECLCALLBACK(int) dbgcCmdStack(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 75 static DECLCALLBACK(int) dbgcCmdTrace(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 76 static DECLCALLBACK(int) dbgcCmdUnassemble(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs); 77 77 78 78 … … 224 224 { 0, ~0, DBGCVAR_CAT_POINTER, 0, "address", "Address of the symbol to look up." }, 225 225 { 0, ~0, DBGCVAR_CAT_SYMBOL, 0, "symbol", "Symbol to lookup." }, 226 };227 228 /** 'ln' return. */229 static const DBGCVARDESC g_RetListNear =230 {231 1, 1, DBGCVAR_CAT_POINTER, 0, "address", "The last resolved symbol/address with adjusted range."232 226 }; 233 227 … … 296 290 const DBGCCMD g_aCmdsCodeView[] = 297 291 { 298 /* pszCmd, cArgsMin, cArgsMax, paArgDescs, cArgDescs, pResultDesc,fFlags, pfnHandler pszSyntax, ....pszDescription */299 { "ba", 3, 6, &g_aArgBrkAcc[0], RT_ELEMENTS(g_aArgBrkAcc), NULL,0, dbgcCmdBrkAccess, "<access> <size> <address> [passes [max passes]] [cmds]",300 301 { "bc", 1, ~0, &g_aArgBrks[0], RT_ELEMENTS(g_aArgBrks), NULL,0, dbgcCmdBrkClear, "all | <bp#> [bp# []]", "Enabled a set of breakpoints." },302 { "bd", 1, ~0, &g_aArgBrks[0], RT_ELEMENTS(g_aArgBrks), NULL,0, dbgcCmdBrkDisable, "all | <bp#> [bp# []]", "Disables a set of breakpoints." },303 { "be", 1, ~0, &g_aArgBrks[0], RT_ELEMENTS(g_aArgBrks), NULL,0, dbgcCmdBrkEnable, "all | <bp#> [bp# []]", "Enabled a set of breakpoints." },304 { "bl", 0, 0, NULL, 0, NULL,0, dbgcCmdBrkList, "", "Lists all the breakpoints." },305 { "bp", 1, 4, &g_aArgBrkSet[0], RT_ELEMENTS(g_aArgBrkSet), NULL,0, dbgcCmdBrkSet, "<address> [passes [max passes]] [cmds]",306 307 { "br", 1, 4, &g_aArgBrkREM[0], RT_ELEMENTS(g_aArgBrkREM), NULL,0, dbgcCmdBrkREM, "<address> [passes [max passes]] [cmds]",308 309 { "d", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory using last element size." },310 { "da", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory as ascii string." },311 { "db", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory in bytes." },312 { "dd", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory in double words." },313 { "da", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory as ascii string." },314 { "dg", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), NULL,0, dbgcCmdDumpDT, "[sel [..]]", "Dump the global descriptor table (GDT)." },315 { "dga", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), NULL,0, dbgcCmdDumpDT, "[sel [..]]", "Dump the global descriptor table (GDT) including not-present entries." },316 { "di", 0, ~0, &g_aArgDumpIDT[0], RT_ELEMENTS(g_aArgDumpIDT), NULL,0, dbgcCmdDumpIDT, "[int [..]]", "Dump the interrupt descriptor table (IDT)." },317 { "dia", 0, ~0, &g_aArgDumpIDT[0], RT_ELEMENTS(g_aArgDumpIDT), NULL,0, dbgcCmdDumpIDT, "[int [..]]", "Dump the interrupt descriptor table (IDT) including not-present entries." },318 { "dl", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), NULL,0, dbgcCmdDumpDT, "[sel [..]]", "Dump the local descriptor table (LDT)." },319 { "dla", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), NULL,0, dbgcCmdDumpDT, "[sel [..]]", "Dump the local descriptor table (LDT) including not-present entries." },320 { "dpd", 0, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), NULL,0, dbgcCmdDumpPageDir, "[addr] [index]", "Dumps page directory entries of the default context." },321 { "dpda", 0, 1, &g_aArgDumpPDAddr[0],RT_ELEMENTS(g_aArgDumpPDAddr), NULL,0, dbgcCmdDumpPageDir, "[addr]", "Dumps specified page directory." },322 { "dpdb", 1, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), NULL,0, dbgcCmdDumpPageDirBoth, "[addr] [index]", "Dumps page directory entries of the guest and the hypervisor. " },323 { "dpdg", 0, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), NULL,0, dbgcCmdDumpPageDir, "[addr] [index]", "Dumps page directory entries of the guest." },324 { "dpdh", 0, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), NULL,0, dbgcCmdDumpPageDir, "[addr] [index]", "Dumps page directory entries of the hypervisor. " },325 { "dph", 0, 3, &g_aArgDumpPH[0], RT_ELEMENTS(g_aArgDumpPH), NULL,0, dbgcCmdDumpPageHierarchy, "[addr [cr3 [mode]]", "Dumps the paging hierarchy at for specfied address range. Default context." },326 { "dphg", 0, 3, &g_aArgDumpPH[0], RT_ELEMENTS(g_aArgDumpPH), NULL,0, dbgcCmdDumpPageHierarchy, "[addr [cr3 [mode]]", "Dumps the paging hierarchy at for specfied address range. Guest context." },327 { "dphh", 0, 3, &g_aArgDumpPH[0], RT_ELEMENTS(g_aArgDumpPH), NULL,0, dbgcCmdDumpPageHierarchy, "[addr [cr3 [mode]]", "Dumps the paging hierarchy at for specfied address range. Hypervisor context." },328 { "dpt", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), NULL,0, dbgcCmdDumpPageTable,"<addr>", "Dumps page table entries of the default context." },329 { "dpta", 1, 1, &g_aArgDumpPTAddr[0],RT_ELEMENTS(g_aArgDumpPTAddr), NULL,0, dbgcCmdDumpPageTable,"<addr>", "Dumps specified page table." },330 { "dptb", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), NULL,0, dbgcCmdDumpPageTableBoth,"<addr>", "Dumps page table entries of the guest and the hypervisor." },331 { "dptg", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), NULL,0, dbgcCmdDumpPageTable,"<addr>", "Dumps page table entries of the guest." },332 { "dpth", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), NULL,0, dbgcCmdDumpPageTable,"<addr>", "Dumps page table entries of the hypervisor." },333 { "dq", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory in quad words." },334 { "dt", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), NULL,0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the task state segment (TSS)." },335 { "dt16", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), NULL,0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the 16-bit task state segment (TSS)." },336 { "dt32", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), NULL,0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the 32-bit task state segment (TSS)." },337 { "dt64", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), NULL,0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the 64-bit task state segment (TSS)." },338 { "dw", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), NULL,0, dbgcCmdDumpMem, "[addr]", "Dump memory in words." },292 /* pszCmd, cArgsMin, cArgsMax, paArgDescs, cArgDescs, fFlags, pfnHandler pszSyntax, ....pszDescription */ 293 { "ba", 3, 6, &g_aArgBrkAcc[0], RT_ELEMENTS(g_aArgBrkAcc), 0, dbgcCmdBrkAccess, "<access> <size> <address> [passes [max passes]] [cmds]", 294 "Sets a data access breakpoint." }, 295 { "bc", 1, ~0, &g_aArgBrks[0], RT_ELEMENTS(g_aArgBrks), 0, dbgcCmdBrkClear, "all | <bp#> [bp# []]", "Enabled a set of breakpoints." }, 296 { "bd", 1, ~0, &g_aArgBrks[0], RT_ELEMENTS(g_aArgBrks), 0, dbgcCmdBrkDisable, "all | <bp#> [bp# []]", "Disables a set of breakpoints." }, 297 { "be", 1, ~0, &g_aArgBrks[0], RT_ELEMENTS(g_aArgBrks), 0, dbgcCmdBrkEnable, "all | <bp#> [bp# []]", "Enabled a set of breakpoints." }, 298 { "bl", 0, 0, NULL, 0, 0, dbgcCmdBrkList, "", "Lists all the breakpoints." }, 299 { "bp", 1, 4, &g_aArgBrkSet[0], RT_ELEMENTS(g_aArgBrkSet), 0, dbgcCmdBrkSet, "<address> [passes [max passes]] [cmds]", 300 "Sets a breakpoint (int 3)." }, 301 { "br", 1, 4, &g_aArgBrkREM[0], RT_ELEMENTS(g_aArgBrkREM), 0, dbgcCmdBrkREM, "<address> [passes [max passes]] [cmds]", 302 "Sets a recompiler specific breakpoint." }, 303 { "d", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory using last element size." }, 304 { "da", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory as ascii string." }, 305 { "db", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory in bytes." }, 306 { "dd", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory in double words." }, 307 { "da", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory as ascii string." }, 308 { "dg", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), 0, dbgcCmdDumpDT, "[sel [..]]", "Dump the global descriptor table (GDT)." }, 309 { "dga", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), 0, dbgcCmdDumpDT, "[sel [..]]", "Dump the global descriptor table (GDT) including not-present entries." }, 310 { "di", 0, ~0, &g_aArgDumpIDT[0], RT_ELEMENTS(g_aArgDumpIDT), 0, dbgcCmdDumpIDT, "[int [..]]", "Dump the interrupt descriptor table (IDT)." }, 311 { "dia", 0, ~0, &g_aArgDumpIDT[0], RT_ELEMENTS(g_aArgDumpIDT), 0, dbgcCmdDumpIDT, "[int [..]]", "Dump the interrupt descriptor table (IDT) including not-present entries." }, 312 { "dl", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), 0, dbgcCmdDumpDT, "[sel [..]]", "Dump the local descriptor table (LDT)." }, 313 { "dla", 0, ~0, &g_aArgDumpDT[0], RT_ELEMENTS(g_aArgDumpDT), 0, dbgcCmdDumpDT, "[sel [..]]", "Dump the local descriptor table (LDT) including not-present entries." }, 314 { "dpd", 0, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), 0, dbgcCmdDumpPageDir, "[addr] [index]", "Dumps page directory entries of the default context." }, 315 { "dpda", 0, 1, &g_aArgDumpPDAddr[0],RT_ELEMENTS(g_aArgDumpPDAddr), 0, dbgcCmdDumpPageDir, "[addr]", "Dumps specified page directory." }, 316 { "dpdb", 1, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), 0, dbgcCmdDumpPageDirBoth, "[addr] [index]", "Dumps page directory entries of the guest and the hypervisor. " }, 317 { "dpdg", 0, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), 0, dbgcCmdDumpPageDir, "[addr] [index]", "Dumps page directory entries of the guest." }, 318 { "dpdh", 0, 1, &g_aArgDumpPD[0], RT_ELEMENTS(g_aArgDumpPD), 0, dbgcCmdDumpPageDir, "[addr] [index]", "Dumps page directory entries of the hypervisor. " }, 319 { "dph", 0, 3, &g_aArgDumpPH[0], RT_ELEMENTS(g_aArgDumpPH), 0, dbgcCmdDumpPageHierarchy, "[addr [cr3 [mode]]", "Dumps the paging hierarchy at for specfied address range. Default context." }, 320 { "dphg", 0, 3, &g_aArgDumpPH[0], RT_ELEMENTS(g_aArgDumpPH), 0, dbgcCmdDumpPageHierarchy, "[addr [cr3 [mode]]", "Dumps the paging hierarchy at for specfied address range. Guest context." }, 321 { "dphh", 0, 3, &g_aArgDumpPH[0], RT_ELEMENTS(g_aArgDumpPH), 0, dbgcCmdDumpPageHierarchy, "[addr [cr3 [mode]]", "Dumps the paging hierarchy at for specfied address range. Hypervisor context." }, 322 { "dpt", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), 0, dbgcCmdDumpPageTable,"<addr>", "Dumps page table entries of the default context." }, 323 { "dpta", 1, 1, &g_aArgDumpPTAddr[0],RT_ELEMENTS(g_aArgDumpPTAddr), 0, dbgcCmdDumpPageTable,"<addr>", "Dumps specified page table." }, 324 { "dptb", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), 0, dbgcCmdDumpPageTableBoth,"<addr>", "Dumps page table entries of the guest and the hypervisor." }, 325 { "dptg", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), 0, dbgcCmdDumpPageTable,"<addr>", "Dumps page table entries of the guest." }, 326 { "dpth", 1, 1, &g_aArgDumpPT[0], RT_ELEMENTS(g_aArgDumpPT), 0, dbgcCmdDumpPageTable,"<addr>", "Dumps page table entries of the hypervisor." }, 327 { "dq", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory in quad words." }, 328 { "dt", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), 0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the task state segment (TSS)." }, 329 { "dt16", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), 0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the 16-bit task state segment (TSS)." }, 330 { "dt32", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), 0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the 32-bit task state segment (TSS)." }, 331 { "dt64", 0, 1, &g_aArgDumpTSS[0], RT_ELEMENTS(g_aArgDumpTSS), 0, dbgcCmdDumpTSS, "[tss|tss:ign|addr]", "Dump the 64-bit task state segment (TSS)." }, 332 { "dw", 0, 1, &g_aArgDumpMem[0], RT_ELEMENTS(g_aArgDumpMem), 0, dbgcCmdDumpMem, "[addr]", "Dump memory in words." }, 339 333 /** @todo add 'e', 'ea str', 'eza str', 'eu str' and 'ezu str'. See also 340 334 * dbgcCmdSearchMem and its dbgcVarsToBytes usage. */ 341 { "eb", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), NULL,0, dbgcCmdEditMem, "<addr> <value>", "Write a 1-byte value to memory." },342 { "ew", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), NULL,0, dbgcCmdEditMem, "<addr> <value>", "Write a 2-byte value to memory." },343 { "ed", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), NULL,0, dbgcCmdEditMem, "<addr> <value>", "Write a 4-byte value to memory." },344 { "eq", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), NULL,0, dbgcCmdEditMem, "<addr> <value>", "Write a 8-byte value to memory." },345 { "g", 0, 0, NULL, 0, NULL,0, dbgcCmdGo, "", "Continue execution." },346 { "k", 0, 0, NULL, 0, NULL,0, dbgcCmdStack, "", "Callstack." },347 { "kg", 0, 0, NULL, 0, NULL,0, dbgcCmdStack, "", "Callstack - guest." },348 { "kh", 0, 0, NULL, 0, NULL,0, dbgcCmdStack, "", "Callstack - hypervisor." },349 { "lm", 0, ~0, &g_aArgListMods[0], RT_ELEMENTS(g_aArgListMods), NULL,0, dbgcCmdListModules, "[module [..]]", "List modules." },350 { "lmo", 0, ~0, &g_aArgListMods[0], RT_ELEMENTS(g_aArgListMods), NULL,0, dbgcCmdListModules, "[module [..]]", "List modules and their segments." },351 { "ln", 0, ~0, &g_aArgListNear[0], RT_ELEMENTS(g_aArgListNear), &g_RetListNear,0, dbgcCmdListNear, "[addr/sym [..]]", "List symbols near to the address. Default address is CS:EIP." },352 { "ls", 0, 1, &g_aArgListSource[0],RT_ELEMENTS(g_aArgListSource), NULL,0, dbgcCmdListSource, "[addr]", "Source." },353 { "m", 1, 1, &g_aArgMemoryInfo[0],RT_ELEMENTS(g_aArgMemoryInfo), NULL,0, dbgcCmdMemoryInfo, "<addr>", "Display information about that piece of memory." },354 { "r", 0, 2, &g_aArgReg[0], RT_ELEMENTS(g_aArgReg), NULL,0, dbgcCmdReg, "[reg [newval]]", "Show or set register(s) - active reg set." },355 { "rg", 0, 2, &g_aArgReg[0], RT_ELEMENTS(g_aArgReg), NULL,0, dbgcCmdRegGuest, "[reg [newval]]", "Show or set register(s) - guest reg set." },356 { "rg32", 0, 0, NULL, 0, NULL,0, dbgcCmdRegGuest, "", "Show 32-bit guest registers." },357 { "rg64", 0, 0, NULL, 0, NULL,0, dbgcCmdRegGuest, "", "Show 64-bit guest registers." },358 { "rh", 0, 2, &g_aArgReg[0], RT_ELEMENTS(g_aArgReg), NULL,0, dbgcCmdRegHyper, "[reg [newval]]", "Show or set register(s) - hypervisor reg set." },359 { "rt", 0, 0, NULL, 0, NULL,0, dbgcCmdRegTerse, "", "Toggles terse / verbose register info." },360 { "s", 0, ~0, &g_aArgSearchMem[0], RT_ELEMENTS(g_aArgSearchMem), NULL,0, dbgcCmdSearchMem, "[options] <range> <pattern>", "Continue last search." },361 { "sa", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType), NULL, 0, dbgcCmdSearchMemType, "<range> <pattern>","Search memory for an ascii string." },362 { "sb", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType), NULL, 0, dbgcCmdSearchMemType, "<range> <pattern>","Search memory for one or more bytes." },363 { "sd", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType), NULL, 0, dbgcCmdSearchMemType, "<range> <pattern>","Search memory for one or more double words." },364 { "sq", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType), NULL, 0, dbgcCmdSearchMemType, "<range> <pattern>","Search memory for one or more quad words." },365 { "su", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType), NULL, 0, dbgcCmdSearchMemType, "<range> <pattern>","Search memory for an unicode string." },366 { "sw", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType), NULL, 0, dbgcCmdSearchMemType, "<range> <pattern>","Search memory for one or more words." },367 { "t", 0, 0, NULL, 0, NULL,0, dbgcCmdTrace, "", "Instruction trace (step into)." },368 { "u", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), NULL,0, dbgcCmdUnassemble, "[addr]", "Unassemble." },369 { "u64", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), NULL,0, dbgcCmdUnassemble, "[addr]", "Unassemble 64-bit code." },370 { "u32", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), NULL,0, dbgcCmdUnassemble, "[addr]", "Unassemble 32-bit code." },371 { "u16", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), NULL,0, dbgcCmdUnassemble, "[addr]", "Unassemble 16-bit code." },372 { "uv86", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), NULL,0, dbgcCmdUnassemble, "[addr]", "Unassemble 16-bit code with v8086/real mode addressing." },335 { "eb", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), 0, dbgcCmdEditMem, "<addr> <value>", "Write a 1-byte value to memory." }, 336 { "ew", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), 0, dbgcCmdEditMem, "<addr> <value>", "Write a 2-byte value to memory." }, 337 { "ed", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), 0, dbgcCmdEditMem, "<addr> <value>", "Write a 4-byte value to memory." }, 338 { "eq", 2, 2, &g_aArgEditMem[0], RT_ELEMENTS(g_aArgEditMem), 0, dbgcCmdEditMem, "<addr> <value>", "Write a 8-byte value to memory." }, 339 { "g", 0, 0, NULL, 0, 0, dbgcCmdGo, "", "Continue execution." }, 340 { "k", 0, 0, NULL, 0, 0, dbgcCmdStack, "", "Callstack." }, 341 { "kg", 0, 0, NULL, 0, 0, dbgcCmdStack, "", "Callstack - guest." }, 342 { "kh", 0, 0, NULL, 0, 0, dbgcCmdStack, "", "Callstack - hypervisor." }, 343 { "lm", 0, ~0, &g_aArgListMods[0], RT_ELEMENTS(g_aArgListMods), 0, dbgcCmdListModules, "[module [..]]", "List modules." }, 344 { "lmo", 0, ~0, &g_aArgListMods[0], RT_ELEMENTS(g_aArgListMods), 0, dbgcCmdListModules, "[module [..]]", "List modules and their segments." }, 345 { "ln", 0, ~0, &g_aArgListNear[0], RT_ELEMENTS(g_aArgListNear), 0, dbgcCmdListNear, "[addr/sym [..]]", "List symbols near to the address. Default address is CS:EIP." }, 346 { "ls", 0, 1, &g_aArgListSource[0],RT_ELEMENTS(g_aArgListSource), 0, dbgcCmdListSource, "[addr]", "Source." }, 347 { "m", 1, 1, &g_aArgMemoryInfo[0],RT_ELEMENTS(g_aArgMemoryInfo), 0, dbgcCmdMemoryInfo, "<addr>", "Display information about that piece of memory." }, 348 { "r", 0, 2, &g_aArgReg[0], RT_ELEMENTS(g_aArgReg), 0, dbgcCmdReg, "[reg [newval]]", "Show or set register(s) - active reg set." }, 349 { "rg", 0, 2, &g_aArgReg[0], RT_ELEMENTS(g_aArgReg), 0, dbgcCmdRegGuest, "[reg [newval]]", "Show or set register(s) - guest reg set." }, 350 { "rg32", 0, 0, NULL, 0, 0, dbgcCmdRegGuest, "", "Show 32-bit guest registers." }, 351 { "rg64", 0, 0, NULL, 0, 0, dbgcCmdRegGuest, "", "Show 64-bit guest registers." }, 352 { "rh", 0, 2, &g_aArgReg[0], RT_ELEMENTS(g_aArgReg), 0, dbgcCmdRegHyper, "[reg [newval]]", "Show or set register(s) - hypervisor reg set." }, 353 { "rt", 0, 0, NULL, 0, 0, dbgcCmdRegTerse, "", "Toggles terse / verbose register info." }, 354 { "s", 0, ~0, &g_aArgSearchMem[0], RT_ELEMENTS(g_aArgSearchMem), 0, dbgcCmdSearchMem, "[options] <range> <pattern>", "Continue last search." }, 355 { "sa", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType),0, dbgcCmdSearchMemType, "<range> <pattern>", "Search memory for an ascii string." }, 356 { "sb", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType),0, dbgcCmdSearchMemType, "<range> <pattern>", "Search memory for one or more bytes." }, 357 { "sd", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType),0, dbgcCmdSearchMemType, "<range> <pattern>", "Search memory for one or more double words." }, 358 { "sq", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType),0, dbgcCmdSearchMemType, "<range> <pattern>", "Search memory for one or more quad words." }, 359 { "su", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType),0, dbgcCmdSearchMemType, "<range> <pattern>", "Search memory for an unicode string." }, 360 { "sw", 2, ~0, &g_aArgSearchMemType[0], RT_ELEMENTS(g_aArgSearchMemType),0, dbgcCmdSearchMemType, "<range> <pattern>", "Search memory for one or more words." }, 361 { "t", 0, 0, NULL, 0, 0, dbgcCmdTrace, "", "Instruction trace (step into)." }, 362 { "u", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), 0, dbgcCmdUnassemble, "[addr]", "Unassemble." }, 363 { "u64", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), 0, dbgcCmdUnassemble, "[addr]", "Unassemble 64-bit code." }, 364 { "u32", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), 0, dbgcCmdUnassemble, "[addr]", "Unassemble 32-bit code." }, 365 { "u16", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), 0, dbgcCmdUnassemble, "[addr]", "Unassemble 16-bit code." }, 366 { "uv86", 0, 1, &g_aArgUnassemble[0],RT_ELEMENTS(g_aArgUnassemble), 0, dbgcCmdUnassemble, "[addr]", "Unassemble 16-bit code with v8086/real mode addressing." }, 373 367 }; 374 368 … … 388 382 * @param cArgs Number of arguments in the array. 389 383 */ 390 static DECLCALLBACK(int) dbgcCmdGo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)384 static DECLCALLBACK(int) dbgcCmdGo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 391 385 { 392 386 DBGC_CMDHLP_REQ_VM_RET(pCmdHlp, pCmd, pVM); … … 402 396 return DBGCCmdHlpFailRc(pCmdHlp, pCmd, rc, "DBGFR3Resume"); 403 397 404 NOREF(paArgs); NOREF(cArgs); NOREF(pResult);398 NOREF(paArgs); NOREF(cArgs); 405 399 return VINF_SUCCESS; 406 400 } … … 417 411 * @param cArgs Number of arguments in the array. 418 412 */ 419 static DECLCALLBACK(int) dbgcCmdBrkAccess(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)413 static DECLCALLBACK(int) dbgcCmdBrkAccess(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 420 414 { 421 415 DBGC_CMDHLP_REQ_VM_RET(pCmdHlp, pCmd, pVM); … … 521 515 * @param cArgs Number of arguments in the array. 522 516 */ 523 static DECLCALLBACK(int) dbgcCmdBrkClear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)517 static DECLCALLBACK(int) dbgcCmdBrkClear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 524 518 { 525 519 DBGC_CMDHLP_REQ_VM_RET(pCmdHlp, pCmd, pVM); … … 580 574 * @param cArgs Number of arguments in the array. 581 575 */ 582 static DECLCALLBACK(int) dbgcCmdBrkDisable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)576 static DECLCALLBACK(int) dbgcCmdBrkDisable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 583 577 { 584 578 /* … … 629 623 * @param cArgs Number of arguments in the array. 630 624 */ 631 static DECLCALLBACK(int) dbgcCmdBrkEnable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)625 static DECLCALLBACK(int) dbgcCmdBrkEnable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 632 626 { 633 627 DBGC_CMDHLP_REQ_VM_RET(pCmdHlp, pCmd, pVM); … … 765 759 * @param cArgs Number of arguments in the array. 766 760 */ 767 static DECLCALLBACK(int) dbgcCmdBrkList(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR /*paArgs*/, unsigned cArgs , PDBGCVAR /*pResult*/)761 static DECLCALLBACK(int) dbgcCmdBrkList(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR /*paArgs*/, unsigned cArgs) 768 762 { 769 763 DBGC_CMDHLP_REQ_VM_RET(pCmdHlp, pCmd, pVM); … … 791 785 * @param cArgs Number of arguments in the array. 792 786 */ 793 static DECLCALLBACK(int) dbgcCmdBrkSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)787 static DECLCALLBACK(int) dbgcCmdBrkSet(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 794 788 { 795 789 /* … … 858 852 * @param cArgs Number of arguments in the array. 859 853 */ 860 static DECLCALLBACK(int) dbgcCmdBrkREM(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)854 static DECLCALLBACK(int) dbgcCmdBrkREM(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 861 855 { 862 856 /* … … 925 919 * @param cArgs Number of arguments in the array. 926 920 */ 927 static DECLCALLBACK(int) dbgcCmdUnassemble(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)921 static DECLCALLBACK(int) dbgcCmdUnassemble(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 928 922 { 929 923 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1097 1091 } 1098 1092 1099 NOREF(pCmd); NOREF(pResult);1093 NOREF(pCmd); 1100 1094 return 0; 1101 1095 } … … 1112 1106 * @param cArgs Number of arguments in the array. 1113 1107 */ 1114 static DECLCALLBACK(int) dbgcCmdListSource(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1108 static DECLCALLBACK(int) dbgcCmdListSource(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1115 1109 { 1116 1110 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1289 1283 } 1290 1284 1291 NOREF(pCmd); NOREF(pResult);1285 NOREF(pCmd); 1292 1286 return 0; 1293 1287 } … … 1304 1298 * @param cArgs Number of arguments in the array. 1305 1299 */ 1306 static DECLCALLBACK(int) dbgcCmdReg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1300 static DECLCALLBACK(int) dbgcCmdReg(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1307 1301 { 1308 1302 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); 1309 1303 if (!pDbgc->fRegCtxGuest) 1310 return dbgcCmdRegHyper(pCmd, pCmdHlp, pVM, paArgs, cArgs , pResult);1311 return dbgcCmdRegGuest(pCmd, pCmdHlp, pVM, paArgs, cArgs , pResult);1304 return dbgcCmdRegHyper(pCmd, pCmdHlp, pVM, paArgs, cArgs); 1305 return dbgcCmdRegGuest(pCmd, pCmdHlp, pVM, paArgs, cArgs); 1312 1306 } 1313 1307 … … 1325 1319 */ 1326 1320 static DECLCALLBACK(int) dbgcCmdRegCommon(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs, 1327 PDBGCVAR pResult,const char *pszPrefix)1321 const char *pszPrefix) 1328 1322 { 1329 1323 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1407 1401 else 1408 1402 { 1409 NOREF(pCmd); NOREF(paArgs); NOREF(pResult);1403 NOREF(pCmd); NOREF(paArgs); 1410 1404 rc = DBGCCmdHlpPrintf(pCmdHlp, "Huh? cArgs=%d Expected 0, 1 or 2!\n", cArgs); 1411 1405 } … … 1424 1418 * @param cArgs Number of arguments in the array. 1425 1419 */ 1426 static DECLCALLBACK(int) dbgcCmdRegGuest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1420 static DECLCALLBACK(int) dbgcCmdRegGuest(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1427 1421 { 1428 1422 /* … … 1515 1509 return pCmdHlp->pfnExec(pCmdHlp, "%s", szDisAndRegs); 1516 1510 } 1517 return dbgcCmdRegCommon(pCmd, pCmdHlp, pVM, paArgs, cArgs, pResult,"");1511 return dbgcCmdRegCommon(pCmd, pCmdHlp, pVM, paArgs, cArgs, ""); 1518 1512 } 1519 1513 … … 1529 1523 * @param cArgs Number of arguments in the array. 1530 1524 */ 1531 static DECLCALLBACK(int) dbgcCmdRegHyper(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1525 static DECLCALLBACK(int) dbgcCmdRegHyper(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1532 1526 { 1533 1527 /* … … 1572 1566 return pCmdHlp->pfnExec(pCmdHlp, "%s", szDisAndRegs); 1573 1567 } 1574 return dbgcCmdRegCommon(pCmd, pCmdHlp, pVM, paArgs, cArgs, pResult,".");1568 return dbgcCmdRegCommon(pCmd, pCmdHlp, pVM, paArgs, cArgs, "."); 1575 1569 } 1576 1570 … … 1586 1580 * @param cArgs Number of arguments in the array. 1587 1581 */ 1588 static DECLCALLBACK(int) dbgcCmdRegTerse(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1589 { 1590 NOREF(pCmd); NOREF(pVM); NOREF(paArgs); NOREF(cArgs); NOREF(pResult);1582 static DECLCALLBACK(int) dbgcCmdRegTerse(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1583 { 1584 NOREF(pCmd); NOREF(pVM); NOREF(paArgs); NOREF(cArgs); 1591 1585 1592 1586 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1606 1600 * @param cArgs Number of arguments in the array. 1607 1601 */ 1608 static DECLCALLBACK(int) dbgcCmdTrace(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1602 static DECLCALLBACK(int) dbgcCmdTrace(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1609 1603 { 1610 1604 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1616 1610 rc = pDbgc->CmdHlp.pfnVBoxError(&pDbgc->CmdHlp, rc, "When trying to single step VM %p\n", pDbgc->pVM); 1617 1611 1618 NOREF(pCmd); NOREF(paArgs); NOREF(cArgs); NOREF(pResult);1612 NOREF(pCmd); NOREF(paArgs); NOREF(cArgs); 1619 1613 return rc; 1620 1614 } … … 1631 1625 * @param cArgs Number of arguments in the array. 1632 1626 */ 1633 static DECLCALLBACK(int) dbgcCmdStack(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)1627 static DECLCALLBACK(int) dbgcCmdStack(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 1634 1628 { 1635 1629 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 1728 1722 DBGFR3StackWalkEnd(pFirstFrame); 1729 1723 1730 NOREF(paArgs); NOREF(cArgs); NOREF(pResult);1724 NOREF(paArgs); NOREF(cArgs); 1731 1725 return rc; 1732 1726 } … … 2035 2029 * @param cArgs Number of arguments in the array. 2036 2030 */ 2037 static DECLCALLBACK(int) dbgcCmdDumpDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2031 static DECLCALLBACK(int) dbgcCmdDumpDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2038 2032 { 2039 2033 /* … … 2145 2139 } 2146 2140 2147 NOREF(pResult);2148 2141 return VINF_SUCCESS; 2149 2142 } … … 2160 2153 * @param cArgs Number of arguments in the array. 2161 2154 */ 2162 static DECLCALLBACK(int) dbgcCmdDumpIDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2155 static DECLCALLBACK(int) dbgcCmdDumpIDT(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2163 2156 { 2164 2157 /* … … 2270 2263 } 2271 2264 2272 NOREF(pResult);2273 2265 return VINF_SUCCESS; 2274 2266 } … … 2285 2277 * @param cArgs Number of arguments in the array. 2286 2278 */ 2287 static DECLCALLBACK(int) dbgcCmdDumpMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2279 static DECLCALLBACK(int) dbgcCmdDumpMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2288 2280 { 2289 2281 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 2460 2452 } 2461 2453 2462 NOREF(pCmd); NOREF(pResult);2454 NOREF(pCmd); 2463 2455 return VINF_SUCCESS; 2464 2456 } … … 2553 2545 * @param cArgs Number of arguments in the array. 2554 2546 */ 2555 static DECLCALLBACK(int) dbgcCmdDumpPageDir(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2547 static DECLCALLBACK(int) dbgcCmdDumpPageDir(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2556 2548 { 2557 2549 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 2802 2794 } while (cEntries-- > 0); 2803 2795 2804 NOREF(pResult);2805 2796 return VINF_SUCCESS; 2806 2797 } … … 2817 2808 * @param cArgs Number of arguments in the array. 2818 2809 */ 2819 static DECLCALLBACK(int) dbgcCmdDumpPageDirBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2810 static DECLCALLBACK(int) dbgcCmdDumpPageDirBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2820 2811 { 2821 2812 if (!pVM) … … 2825 2816 if (RT_FAILURE(rc1)) 2826 2817 return rc1; 2827 NOREF(pCmd); NOREF(paArgs); NOREF(cArgs); NOREF(pResult);2818 NOREF(pCmd); NOREF(paArgs); NOREF(cArgs); 2828 2819 return rc2; 2829 2820 } … … 2840 2831 * @param cArgs Number of arguments in the array. 2841 2832 */ 2842 static DECLCALLBACK(int) dbgcCmdDumpPageHierarchy(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2833 static DECLCALLBACK(int) dbgcCmdDumpPageHierarchy(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2843 2834 { 2844 2835 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 2964 2955 * @param cArgs Number of arguments in the array. 2965 2956 */ 2966 static DECLCALLBACK(int) dbgcCmdDumpPageTable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)2957 static DECLCALLBACK(int) dbgcCmdDumpPageTable(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 2967 2958 { 2968 2959 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 3179 3170 } while (cEntries-- > 0); 3180 3171 3181 NOREF(pResult);3182 3172 return VINF_SUCCESS; 3183 3173 } … … 3194 3184 * @param cArgs Number of arguments in the array. 3195 3185 */ 3196 static DECLCALLBACK(int) dbgcCmdDumpPageTableBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)3186 static DECLCALLBACK(int) dbgcCmdDumpPageTableBoth(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 3197 3187 { 3198 3188 if (!pVM) … … 3202 3192 if (RT_FAILURE(rc1)) 3203 3193 return rc1; 3204 NOREF(pCmd); NOREF(cArgs); NOREF(pResult);3194 NOREF(pCmd); NOREF(cArgs); 3205 3195 return rc2; 3206 3196 } … … 3217 3207 * @param cArgs Number of arguments in the array. 3218 3208 */ 3219 static DECLCALLBACK(int) dbgcCmdDumpTSS(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR /*pResult*/)3209 static DECLCALLBACK(int) dbgcCmdDumpTSS(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 3220 3210 { 3221 3211 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 3550 3540 * @param cArgs Number of arguments in the array. 3551 3541 */ 3552 static DECLCALLBACK(int) dbgcCmdMemoryInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)3542 static DECLCALLBACK(int) dbgcCmdMemoryInfo(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 3553 3543 { 3554 3544 DBGCCmdHlpPrintf(pCmdHlp, "Address: %DV\n", &paArgs[0]); 3555 3545 if (!pVM) 3556 3546 return DBGCCmdHlpFail(pCmdHlp, pCmd, "No VM.\n"); 3557 return dbgcCmdDumpPageHierarchy(pCmd, pCmdHlp, pVM, paArgs, cArgs , pResult);3547 return dbgcCmdDumpPageHierarchy(pCmd, pCmdHlp, pVM, paArgs, cArgs); 3558 3548 } 3559 3549 … … 3706 3696 * @param cArgs Number of arguments in the array. 3707 3697 */ 3708 static DECLCALLBACK(int) dbgcCmdEditMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)3698 static DECLCALLBACK(int) dbgcCmdEditMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 3709 3699 { 3710 3700 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); … … 3758 3748 } 3759 3749 3760 NOREF(pResult);3761 3750 return VINF_SUCCESS; 3762 3751 } … … 3979 3968 * @param cArgs Number of arguments in the array. 3980 3969 */ 3981 static DECLCALLBACK(int) dbgcCmdSearchMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)3970 static DECLCALLBACK(int) dbgcCmdSearchMem(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 3982 3971 { 3983 3972 /* check that the parser did what it's supposed to do. */ … … 3990 3979 */ 3991 3980 if (cArgs == 0) 3992 return dbgcCmdWorkerSearchMemResume(pCmdHlp, pVM, pResult);3981 return dbgcCmdWorkerSearchMemResume(pCmdHlp, pVM, NULL); 3993 3982 3994 3983 /* … … 4010 3999 * @param cArgs Number of arguments in the array. 4011 4000 */ 4012 static DECLCALLBACK(int) dbgcCmdSearchMemType(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)4001 static DECLCALLBACK(int) dbgcCmdSearchMemType(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 4013 4002 { 4014 4003 /* check that the parser did what it's supposed to do. */ … … 4016 4005 || !DBGCVAR_ISGCPOINTER(paArgs[0].enmType)) 4017 4006 return pCmdHlp->pfnPrintf(pCmdHlp, NULL, "parser error\n"); 4018 return dbgcCmdWorkerSearchMem(pCmdHlp, pVM, &paArgs[0], pResult ? 1 : 25, pCmd->pszCmd[1], paArgs + 1, cArgs - 1, pResult);4007 return dbgcCmdWorkerSearchMem(pCmdHlp, pVM, &paArgs[0], 25, pCmd->pszCmd[1], paArgs + 1, cArgs - 1, NULL); 4019 4008 } 4020 4009 … … 4028 4017 * @param pArg Pointer to the address or symbol to lookup. 4029 4018 */ 4030 static int dbgcDoListNear(PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR pArg , PDBGCVAR pResult)4019 static int dbgcDoListNear(PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR pArg) 4031 4020 { 4032 4021 PDBGC pDbgc = DBGC_CMDHLP2DBGC(pCmdHlp); 4033 DBGCVAR_INIT_GC_FLAT(pResult, 0);4034 4022 4035 4023 RTDBGSYMBOL Symbol; … … 4045 4033 4046 4034 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL, "%Rptr %s\n", Symbol.Value, Symbol.szName); 4047 DBGCVAR_INIT_GC_FLAT_BYTE_RANGE(pResult, Symbol.Value, Symbol.cb);4048 4035 } 4049 4036 else … … 4057 4044 return pCmdHlp->pfnVBoxError(pCmdHlp, rc, "%%(%DV)\n", pArg); 4058 4045 4059 DBGCVAR_ASSIGN(pResult, &AddrVar);4060 4061 4046 RTINTPTR offDisp; 4062 4047 DBGFADDRESS Addr; … … 4072 4057 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL, "%DV %s - %RGv", &AddrVar, Symbol.szName, -offDisp); 4073 4058 if ((RTGCINTPTR)Symbol.cb > -offDisp) 4074 {4075 4059 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL, " LB %RGv\n", Symbol.cb + offDisp); 4076 DBGCVAR_SET_BYTE_RANGE(pResult, Symbol.cb + offDisp);4077 }4078 4060 else 4079 {4080 4061 rc = pCmdHlp->pfnPrintf(pCmdHlp, NULL, "\n"); 4081 DBGCVAR_ZAP_RANGE(pResult);4082 }4083 4062 } 4084 4063 … … 4097 4076 * @param cArgs Number of arguments in the array. 4098 4077 */ 4099 static DECLCALLBACK(int) dbgcCmdListNear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs, PDBGCVAR pResult) 4100 { 4101 DBGCVAR_INIT_GC_FLAT(pResult, 0); 4078 static DECLCALLBACK(int) dbgcCmdListNear(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 4079 { 4102 4080 if (!cArgs) 4103 4081 { … … 4109 4087 if (RT_FAILURE(rc)) 4110 4088 return pCmdHlp->pfnVBoxError(pCmdHlp, rc, "%%(cs:eip)\n"); 4111 return dbgcDoListNear(pCmdHlp, pVM, &AddrVar , pResult);4089 return dbgcDoListNear(pCmdHlp, pVM, &AddrVar); 4112 4090 } 4113 4091 … … 4118 4096 for (unsigned iArg = 0; iArg < cArgs; iArg++) 4119 4097 { 4120 int rc = dbgcDoListNear(pCmdHlp, pVM, &paArgs[iArg] , pResult);4098 int rc = dbgcDoListNear(pCmdHlp, pVM, &paArgs[iArg]); 4121 4099 if (RT_FAILURE(rc)) 4122 4100 return rc; 4123 4101 } 4124 4102 4125 NOREF(pCmd); NOREF(pResult);4103 NOREF(pCmd); 4126 4104 return VINF_SUCCESS; 4127 4105 } … … 4155 4133 * @param cArgs Number of arguments in the array. 4156 4134 */ 4157 static DECLCALLBACK(int) dbgcCmdListModules(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs , PDBGCVAR pResult)4135 static DECLCALLBACK(int) dbgcCmdListModules(PCDBGCCMD pCmd, PDBGCCMDHLP pCmdHlp, PVM pVM, PCDBGCVAR paArgs, unsigned cArgs) 4158 4136 { 4159 4137 bool const fMappings = pCmd->pszCmd[2] == 'o'; … … 4230 4208 RTDbgAsRelease(hAs); 4231 4209 4232 NOREF(pCmd); NOREF(pResult);4210 NOREF(pCmd); 4233 4211 return VINF_SUCCESS; 4234 4212 } -
trunk/src/VBox/Debugger/DBGCEval.cpp
r35637 r35696 527 527 if (!pFun) 528 528 return VERR_PARSE_FUNCTION_NOT_FOUND; 529 #if 0 529 530 if (!pFun->pResultDesc) 530 531 return VERR_PARSE_NOT_A_FUNCTION; … … 546 547 else if (rc == VERR_PARSE_EMPTY_ARGUMENT && pFun->cArgsMin == 0) 547 548 rc = pFun->pfnHandler(pFun, &pDbgc->CmdHlp, pDbgc->pVM, NULL, 0, pResult); 549 #else 550 rc = VERR_NOT_IMPLEMENTED; 551 #endif 548 552 } 549 553 else if ( enmCategory == DBGCVAR_CAT_STRING … … 1036 1040 */ 1037 1041 PCDBGCCMD pCmd = dbgcRoutineLookup(pDbgc, pszCmd, pszArgs - pszCmd, fExternal); 1038 if (!pCmd || (pCmd->fFlags & DBGCCMD_FLAGS_FUNCTION))1042 if (!pCmd) 1039 1043 { 1040 1044 DBGCCmdHlpPrintf(&pDbgc->CmdHlp, "Syntax error: Unknown command '%s'!\n", pszCmdInput); … … 1055 1059 */ 1056 1060 if (!fNoExecute) 1057 rc = pCmd->pfnHandler(pCmd, &pDbgc->CmdHlp, pDbgc->pVM, &pDbgc->aArgs[0], cArgs , NULL);1061 rc = pCmd->pfnHandler(pCmd, &pDbgc->CmdHlp, pDbgc->pVM, &pDbgc->aArgs[0], cArgs); 1058 1062 pDbgc->rcCmd = rc; 1059 1063 if (rc == VERR_DBGC_COMMAND_FAILED)
Note:
See TracChangeset
for help on using the changeset viewer.