;
DEBUG "Examine" Command...
Examine <variable>[,<variable>,...,<variable>]
[{ -Ascii | -Binary | -Decimal | -Hex | -Octal | -Unsigned }]
A <variable> is:
<identifier> (This assumes current environment)
<debugger-variable> (<`identifier>)
<routine-name><identifier>
<routine-name><activation-no><identifier>
A debugger variable (<`identifier>) is created when it is Set.
An array variable may have special subscripts: "*" means 'all'
elements of the dimension, and "<expr>:<expr>" indicates a
'range' of elements. (See IF cmd for the definition of <expr>.)
A <routine-name> is:
<routine>\[<routine>\...]
An <activation-no> is:
<integer>\
(Positive integers count from beginning of execution.)
(Negative integers count back from current.)
(Default = 0 = current routine invocation.)
<debugger variable>
A debugger variable is an identifier with a leading accent grave: `name.
It is created by the Set command by merely setting the name to a value.
It can be used just like any variable in the target program. It can
also be de-referenced as a pointer. (Be sure you have a legal program
address!) When a debugger variable is de-referenced, a simple data type
MUST be supplied immediately following the ^ character:
> ex `dptr^integer
The data types available are as follows ([] show optional parts):
Integer: integer[16], integer32
Pascal/Fortran character: char[acter]
C character: byte, int8
Single precision floating point: single, float, real
Double precision floating point: double
Boolean: boolean, logical
Complex: complex
Universal pointer: univ_ptr
Two special debugger variable names are looked for. If found, and their
values are greater than zero, they control output from Examine, Set,
DEScribe, and Args. These are:
`max_var_len This variable sets a maximum length for the display
of the "routine-name\variable-name" string.
`max_array_dim This variable sets a maximum number of entries PER
dimension of an array which will be displayed. When
the array is examined or set WITHOUT specific dimension
information, this debugger variable can control the
number of entries shown. This variable is ignored if
the "*" or "expr:expr" subscripts are used.
Once set, these variables can be deactivated by setting them to any value
less than 1.