Debugging

CDbgGlbls Class class CDbgGlbls Caller Funct Returns the addr of the fun which called this one, ChkCodePtr Funct Check if addr is valid code addr. ChkOnStk Funct Check if addr is valid stk addr. ChkPtr Funct Check if addr is valid ptr. Dbg Funct Enter debugger, no panic. IsSingleUser Funct Return single-user mode. IsSysDbg Funct Return SysDbg bit. LinkChk Funct Check documents for broken file links. LinkChk Funct Check documents for broken file links. Panic Funct Enter the debugger with panic? SingleUser Funct Set single-user mode. SysDbg Funct Set SysDbg bit you can use while debugging. TaskCaller Funct Fetches addr of Nth caller on task's stk. UnusedStk Funct Count of usused bytes in task's stk. dbg GlbVar CDbgGlbls dbg;

Debugging/Debugger

B Funct Toggle breakpoint. B2 Funct Rem all breakpoints. BptR Funct Rem breakpoint. BptS Funct Set breakpoint. Dbg Funct Enter debugger, no panic. DbgMode Funct Set dbg-mode. E Funct Edit src at addr. EdLite Funct Light weight text editor for debugging. Fix Funct Jump to last err src code to fix it. FixSet Funct Compiler calls this to set file line for Fix G Funct Go G2 Funct Rem all breakpoints and Go. Help Funct Dbg help or master help index file. IsDbgMode Funct Return dbg-mode. Man Funct Owner's manual for symbol. Edit src code for symbol. Panic Funct Enter the debugger with panic? S Funct Single step.

Debugging/Dump

CallerRep Funct Prints a report of calling routines. ClassRep Funct Displays members of a record by using the compiler's info. ClassRepD Funct Dynamic ClassRep. Uses hex_ed widgit for live changes. D Funct Dump mem, showing offsets. Da Funct Dump mem, showing symbolic addresses. Dm Funct Show mem addr, not offsets. DocD Funct Dump live chunk of mem showing offsets. Can be edited. DocDm Funct Dump live chunk of mem showing addresses. Can be edited. Dr Funct Dump regs FunRep Funct Shows names and vals of a fun's local vars using compiler's info. StkRep Funct Reports whats on the stk.

Debugging/FunSeg

Use %p to print a pointer with FunSeg+Offset or use %P to print a link to a FunSeg+Offset. FunSegFind Funct See Hash. PutSrcLink Funct Put to StdOut a DolDoc file,line link to src of addr. SrcEdLink Funct MAlloc file,line link to src of addr. SrcFileName Funct MAlloc filename for src of addr. SrcLineNum Funct linenum for src of addr.

Debugging/Heap

Recompile the kernel with _CFG_HEAP_DBG=TRUE if you want more heap debugging. You are on your own. Recompile the kernel with _CFG_HEAP_DBG=TRUE if you want more heap debugging. You are on your own. HeapCtrlWalk Funct Check integrity of HeapCtrl. HeapLog Funct Turn on. Collect data. Call HeapLogAddrRep() or HeapLogSizeRep(). HeapLog Funct Turn on. Collect data. Call HeapLogAddrRep() or HeapLogSizeRep(). HeapLogAddrRep Funct Call HeapLog() first and collect data. HeapLogAddrRep Funct Call HeapLog() first and collect data. HeapLogSizeRep Funct Call HeapLog() first and collect data. HeapLogSizeRep Funct Call HeapLog() first and collect data. HeapRep Funct Report status of task's heap. HeapWalk Funct Check integrity of task's heaps. IsInHeap Funct Check addr if in task's heaps. IsInHeapCtrl Funct Check addr if in HeapCtrl.

Debugging/Profiler

The profiler records where the CPU was executing when the 1000Hz timer interrupt occured, so you can learn where time is spent. Use the Prof() depth argument to record a hit in the N routines which called the current routine, as well. When done collecting statistics, use ProfRep() for a report. You might need a DocMax() to expand the command line window buffer to fit it all. Study the code. The profiler is very simple. You might want to enhance it or modify it to debug something in particular. The profiler records where the CPU was executing when the 1000Hz timer interrupt occured, so you can learn where time is spent. Use the Prof() depth argument to record a hit in the N routines which called the current routine, as well. When done collecting statistics, use ProfRep() for a report. You might need a DocMax() to expand the command line window buffer to fit it all. Study the code. The profiler is very simple. You might want to enhance it or modify it to debug something in particular. Prof Funct Start collecting profiler statistics. Prof Funct Start collecting profiler statistics. ProfRep Funct Profiler report. Call Prof() first and collect data. ProfRep Funct Profiler report. Call Prof() first and collect data.

Debugging/Raw Output

CTextGlbls Class class CTextGlbls IsRaw Funct Are we in BLACK & WHITE raw scrn mode? Raw Funct Set to direct scrn, BLACK & WHITE, non-windowed output mode. RawD Funct Dumps a block of mem using Raw RawDm Funct Dumps a block of mem using Raw RawPrint Funct Print using Raw scrn output for a length of time. RawPutChar Funct For RAW output during boot and in debugger. VGAFlush Funct Flush winmgr vga cache, so updates whole scrn. text GlbVar CTextGlbls text;

Debugging/Unassemble

U Funct Unassembles a num of insts. Uf Funct Unassembles a named fun Ui Funct Unassembles one inst Un Funct Unassembles a num of bytes