Commands and Command Arguments

Any combination of uppercase and lowercase letters may be used in commands and arguments. If a command uses two or more parameters, separate them with a single comma (,) or one or more spaces.

Command arguments can be numbers, symbols, line numbers, or expressions. The arguments specify addresses or values used by commands. The arguments and their meanings are listed below:

Arguments

address
The relative or symbolic address of a variable or function. Flat addresses are prefixed with a percent sign (%), when necessary, to distinguish them from addresses in other modes.
byte
A value argument representing a byte value. It must be within the range 0 to 255.
command-string
One or more commands. Multiple commands must be separated by a semicolon (;).
expression
A combination of arguments and operators representing a single value or address.
filename
The name of a file or a device. The filename must follow MS-DOS filename conventions.
id
A decimal number representing a breakpoint. The number must be within the range 0 to 31.
d-list
One or more unique decimal numbers representing a list of breakpoint identifiers. The numbers must be within the range 0 to 31. Multiple numbers must be separated by spaces. The wildcard character (*) can be used to specify all breakpoints.
list
One or more value arguments. The values must be within the range 0 to 2 (32 ) – 1. Multiple values must be separated by spaces. A list can also be specified as a list of ASCII values. The list can contain any combination of characters and must be enclosed in either single (') or double quotation marks ("). If the enclosing mark appears within the list, it must be given twice.
range
A range of addresses. Address ranges have two forms: a starting- and ending-address pair and a start address and object count. The first form is two address arguments, the first specifying the starting address and the second specifying the ending address. The second form consists of an address argument, the letter L, and a value argument. The address specifies the starting address; the value specifies the number of objects to be examined or displayed. The size of an object depends on the command. If a command requires a range but only a start address is given in the command, the command assumes the range to have a default object count as follows:
Size Object count
ASCII 384
byte 128
word 64
double 32

This default count does not apply to commands that require a range followed immediately by a value or an address argument.

register
The name of a CPU register or a floating point register. The register set is processor dependent. All registers of interest to the application programmer are displayed. A name preceded by an at sign (@) always indicates a register name. If no at sign is present, a name is tested to be first a variable, then a hex number, and finally a register name.
symbol
The address of a variable, function, or segment. A symbol consists of one or more characters, but always begins with a letter, underscore (_), question mark (?), at sign (@), or dollar sign ($). Any combination of uppercase and lowercase letters can be used; NTSD and KD symbols are not case sensitive. For some commands, the wildcard character (*) can be used as part of a symbol to match any combination of characters; you can use a question mark (?) to match any single character.
process-id
A process identifier. A vertical bar (|) precedes the process identifier, which is one of the following:
Process identifier Description
. Current process
* All processes
ddd Decimal number of process ordinal

Processes are assigned ordinals as they are created.

Process specifiers appear as command prefixes. The current process is the process that caused the debug exception. It defines the memory space and the set of threads used. That process remains the current process until a new process is specified by a |s command.

Commands that are process-id specific are prefixed by a vertical bar (|) and can be followed by a process number or special name as follows:
Process option Description
. Current process
# Process causing present exception
ddd Decimal number of process ordinal

prefix!symbol
A symbol name may be prefixed by a DLL name. An exclamation mark (!) separates the DLL name from the symbol.
threadspec
A thread specifier. A tilde (~) precedes the thread specifier, which is one of the following:
Thread specifier Description
. Current thread
# Thread causing present exception
* All threads in the process
ddd Decimal number of the thread ordinal

Thread specifiers appear as command prefixes. Note that not all wildcards are available in all commands using thread specifiers.

value
Specifies an integer number in octal, decimal, or hexadecimal format.