Debugger Help Version 3.5

Command		Description
		

codeA	Set a conditional breakpoint.
		Syntax:
			<addr> codeA  
		 OR <lengthBkpt>,<addr> codeA 
		 OR <type>,<lengthBkpt>,<addr> codeA
		 OR <SHL(<oPatcharea>,8) OR <type>,<lengthBkpt>,<addr> codeA
		Where:
			<oPatcharea> the offset in PatchArea where control is
		        transferred when the breakpoint is executed. This
		        argument is in the high byte of the first (word) argument,
		        this low byte is <fWrite>.
			<type> see codeB
		 	<lengthBkpt> see codeB
			<addr> see codeB

codeB	Set code or data breakpoint.
		Syntax:
			<addr> codeB
		 OR <lengthBkpt>,<addr> codeB
		 OR <type>,<lengthBkpt>,<addr> codeB
		Where:
			<type>   = 0 for break on read or write data
		 		   	 = 1 for break on write only (default)
					 = 2 for break on IO
					 = 3 for ROM instruction break
			<lengthBkpt> = 0 for code (default)
					   = 1 for data break on byte
				       = 2 for data break on word
					   = 4 for data break on quad
		  	<addr> may be a segmented or linear, real or protected address

codeC  Clear one or all breakpoints.
		Syntax:
			<addr> codeC

codeD  Display memory. coded translates to Ascii, codeD translates
		to Ebcdic.
		Syntax:
			<count>,<addr> codeD
		 OR <lines>,<bytesPerLine>,<addr> codeD
		Where:
			<count> is total number of bytes to display
			<addr> is a segmented or linear address
			<lines> is the number of lines to display
			<bytesPerLine> is the number of bytes displayed in each line

codeE  Breakpoint after call. The equivalent of down arrow, mark, ., 
		codeB. 
		Syntax:
			codeE

codeF  Load symbols. If no filespec is provided the symbolic displaying 
		of memory will be toggled onoff.
		Syntax:
			codeF
		 OR <fileSpec> codeF
		 OR <dllHandle>, <fileSpec> codeF
		Where:
			<fileSpec> is a file specification enclosed in single 
			   quotes (debugger assumes the path of the partition
			   being debugged)
			<dllHandle> is the handle of the DLL (see CodeZ) with which
			   to associate the symbols file.
		
		(NOTE: with CTOS III, symbols files may be attached to the run file
		using the Resource Compiler. It is not necessary to load such symbols
		using codeF, they are accessed automatically by the debugger.)

		(NOTE: arguing a null filespec ('') closes the symbol file.)

codeG  Restart at process at an address or unsuspend a suspended thread.
		Syntax:
			<addr> codeG
				OR
			<oPcb> codeG
		Where:
			<addr> is the segmented address at which to restart.
			<oPcb> is the process id to be unsuspended.

codeH  Debugger runtime history function.
		[EnDis]ables history recording or reexecutes a previously recorded
		command.  NB:  Not supported in file debugger.
		Syntax:
			codeH
		 OR <index> codeH
		Where:
			CodeH toggles the history function.
		OR
			<index> is an index into the history table as viewed by
					the display history command.  Cf. <PrevPage> command.

codeI  Set a breakpoint where interrupts must remain disabled.
		Syntax:
			See codeB.

codeJ  Display the run queue.
		Syntax:
			codeJ

codeK  Display open files.
		Display a list of the files open on the processor.
		Syntax:
			codek
		OR
			<devSpec> codek
		Where:
			<devSpec> is a quoted string contains a volume or device name,
			e.g. '[sys]', '[d0]'.

codeL  Toggle echo of debugger output to LPT, or in Debug File only,
		to a file.
		Syntax:
			codeL 
		 OR <fileSpec> codeL (Debug File only)
		Where:
		    <fileSpec> is a file specification enclosed in single quotes

codeM	Activate the debugger on an IOP board, from main CPU
		Syntax:
			codeM
		OR 
			<id> codeM
		Where:
			<id> is the ID of the target IOP.

		On the main CPU:
			If codeM is used without an argument, the debugger displays a
			list of the names and IDs of the currently available processors.
		
			If an ID is argued to codeM, the debugger on the target IOP
			is activated.

		On an IOP:
			codeM returns control to the main CPU, if the debugging session
			was initiated on the main CPU.
			
			NOTE: CodeM does not accept an argument when the debugging session
			is initiated on an IOP via Admin Cluster View.

		CodeM can be used to do any debugger operation on an IOP (e.g.,
		displayingmodifying memory, breakpoints, singlestep, etc) except
		the codeU (display user screen) function.

		When debugging on an IOP, the prompt includes the IOP's name.  You
		may proceed from the IOP Debugger using the normal commands (e.g., GO,
		codeP).  Note that if you use codeM to return to the main CPU, the 
		IOP Debugger is left in its current state (e.g., processes remain 
		suspended).

codeN  Display linked list data structures.  Use the internal debugger
		registers CB and DB as follows: set CB to the length of the 
		structure, set DB to the offset of the link in the structure. 
		
		If the high bit of the DB register is set, the link field is treated as
		a far pointer. When the high bit of DB is reset, the link is treated
		as an offset. When the high bit of CB is set the link is treated as	
		a segment address.

		Syntax:
			codeN  (display next block)
		 OR <addr> codeN  
		 OR <cBlocks>, <addr> codeN 
		Where:
		    <addr> is the starting address
		    <cBlocks> is the number of blocks to display

codeO  Search memory for a pattern.
		Syntax:
			codeO  
		 OR <lowAddr>, <highAddr>, <bytePattern> codeO
		Where:
		    <lowAddr>, <highAddr> are addresses
		    <bytePattern> either a string enclosed in single quotes or
				a list or two digit hexadecimal numbers separated by 
				commas. Examples:
						<bytePattern>		Pattern specified
					30,31,32			123
					'ABC'				ABC
					30,31,'AB'		12AB

codeP  Proceed from breakpoint.
		Syntax:
			codeP
		 OR <k> codeP
		Where:
			<k> is the number of times to proceed past the breakpoint
			 	without reentering the debugger

codeQ  Request Block Display.
		Syntax:
			<addr> codeQ
		Where:
			<addr> is the sa:ra of a request block.

coder  Change the out radix.
		Syntax:
			coder  
		 OR <base> coder
		Where:
			<base> is the output radix base

codeR  Display registers.  Displays  the  contents of  all
		registers for the current process.
		Syntax:
			codeR  

codes  Display status of tasks and exchanges.
		Syntax:
			codeS
		 OR <exch> codeS
		 OR <0> codeS
		 OR <1> codeS	
		 OR <2> codeS
		Where:
			<exch> is an exchange.
			if <exch> is 0 only the TSS's will be displayed.
			if <exch> is 1 only the exchanges will be displayed.
			if <exch> is 2 only the exchanges with messages will be displayed.
		NB:	Asterisked processes are currently suspended.
			Processes marked with a tilde are swapped.
			Asterisked messages are termination requests.

			Messages enqueued on an exchange are displayed as:
			Exch ExchName ...| sa : ra (UserNum,Status)|...

			007 exchRqTracker       Messages   |2323:18CC(0C00,8A00)|

			Status Bits are decomposed as:

				Request 8000h
				Respond 4000h
				PSend   1000h
				Send    0000h

				Informative flags which only apply to msg on exchRqTracker

				WantRes 0800h	  message will be responded to (Req, Req Direct)
				Wait    0400h	  rq picked up via Wait
				Alt     0200h	  issuer not owner (msg.userNum<>rq.userNum)

		Token Legend:		*	=>	suspended
								=>	swapped	

codeT  Trace the stack.
		Syntax:
			codeT
		 OR  <cLevels>, <addr> codeT
		 OR  <assumeFar>, <cLevels>, <addr> codeT
		Where:
			<cLevels> is the number of stack call levels to display
			<addr> is the starting (segmented) address to trace; e.g. ss:bp
			<assumeFar> is either 0 or 1.  Zero implies short calls, one long.

codeU  Display the user screen. Toggles between user screen and
		debugger screen.  If <userNum> is provided, display is as
		codeS but only the specified user's structures are displayed.
		Syntax:
			codeU
		 OR <userNum> codeU
		NB:	Asterisked processes are currently suspended.
			Processes marked with a tilde are swapped.

codeV	Display descriptor tables.
		Syntax:
			codeV
		 OR <sn> codeV
		 OR <cDesc>, <snStart> codeV
		 OR <table>, <cSns>, <snStart> codeV
		 OR <FL> codeV
		NB:	If a single tss sn is specified the TSS will also be displayed.
		Where:
			<sn> is the selector of the descriptor to display
			<cDesc> is the number of descriptors to display (0 = all)
			<snStart> is the selector at which the display begins
			<table> = 0 for GDT
				    = 1 for LDT
				    = 2 for IDT
			<FL> is the debugger acronym for the flags register, flag bits are 
				 interpreted.

codeW	Display request code info.
		Syntax:
			 codeW 
		 OR	<rc> codeW 
		 OR <cRc>, <rcStart> codeW
		Where:
			<rc>  is the request code for which to display information
			<cRc> is the number of request codes to display
			<rcStart> is the request code at which the display begins
		N.B. Dummy (aka padded) requests aren't displayed, otherwise the 
			 default is to display all.

codeX  Single Step over instruction.
		Syntax:
			codeX

codeY	Display semaphore status.
		Syntax:
			codeY
				OR
			<addr> codeY
		If <addr> isn't specified the status of all semaphores is displayed,
		otherwise the status of the semaphore whose handle is <addr> is
		displayed.

codeZ  Display DLL status.
		Syntax:
			codeZ
		Displays the handle and name of all active DLLs.

code=  Display the page directory entry, page table entry, and physical 
		address of a segmented or linear address.
		Syntax:
			<addr> code=
		Where:
			<addr> is a segmented or linear address.

code]	Display structures.
		Syntax:
			<addr>, 'StructureName' code]		
				display memory from addr with format 'StructureName'
			<addr>, code]
				display memory from addr with last format used
			cDumps, addr, 'StructureName' code]		
				display memory from addr with format 'StructureName' cDumps 
				times
			code]
				display memory from last link with last format used
			'wildcardstring' code]
				display all structure types matching wildcard


codefunction key
		StartStop recording a macro under a function key. All keystrokes
		between codeFn and the next codeFn will be recorded. Fn
		will subsequently replay the keystrokes. (Note: F1 may not be
		recorded under, it is used to redo the last command).

go      Exit debugger.

bound   Display the double word at the current location.

mark    Display the instruction at the current location.

left arrow
		Display the byte at the current location.

right arrow
		Display the word at the current location.

down arrow
		Display the next location.

up arrow
		Display the previous location.

codebound
		Display the double word pointed to by the current location.

codeleft arrow
		Display the byte pointed to by the current location.

codemark
		Display the instruction pointed to by the current location.

coderight arrow
		Display the word pointed to by the current location.

help	Display this file.
		Syntax:
			help
		 OR <filespec> help
		 OR <n> help
		Where:
		    <filespec> is the name of the help file (within single quotes)
				to be subsequently displayed by help or <n> help.
				Default is '[Sys]<Sys>Debugger3.3.Help'
				Entering a null filespec ('') resets the help file
				back to the default.
		    <n> is a one digit number specifying approximately where 
				in the help file to begin.
PrevPage
	Displays history of commands entered with history recording enabled.  Not
		supported in file debugger.


END HELP
S
		 OR <exch> codeS
		 OR <0> codeS
		 OR <1> codeS	
		 OR <2> codeS
		Where:
			<exch> is an exchange.
			if <exch> is 0 only the TSS's will be displayed.
			if <exch> is 1 only the exchanges will be displayed.
			if <exch> is 2 only the exchanges with messages will be displayed.
		NB:	Asterisked processes are currently suspended.
			Process