M DEBUG command [ MPE Debug/Stack Dump Reference Manual ] MPE/iX 5.0 Documentation
MPE Debug/Stack Dump Reference Manual
M
DEBUG command
Modifies the contents of a specified number of memory locations relative
to a given base in the user's stack.
SYNTAX
M[ modbase] [ offset] [ ,count] [ ,mode]
PARAMETERS
modbase One of the following stack relative modification bases:
DB, DL, Q, S
If modbase is omitted, DB is assumed. (Optional
parameter.)
Privileged Mode
Other values allowed for modbase:
A = Absolute Relative (base = location 0).
SY = System Global Relative (base = system base).
DA = Data Segment Relative (base = base of segment).
DX = Current Absolute DB Relative (base = absolute DB).
EA = Extended Absolute Address (base = bank specified).
offset The offset relative to the modify base which specifies
the starting memory location of the area to be modified.
It is written in the following format:
[+] expression [ : [ [+] expression] ]
If no sign is given, positive offset is assumed. If
expression is followed by a colon, indirect addressing
is indicated. The indirect addressing is relative to
the specified modbase or, if omitted, to DB for stack
relative or PB for code relative modify bases.
The first expression can be followed by an additional
offset expression. For example:
M 6:+2 Modify contents of address found by
adding two words to address stored in
DB+ 6.
Multiple levels of indirect are permitted. For example:
M 6:+ Q+ 3: Modify contents of address found by
adding address stored in Q + 3
to address stored in DB+6.
If offset is omitted, location 0 is specified by
default. (Optional parameter.)
count An expression which defines the number of memory
locations to be modified. If omitted, 1 is specified by
default. (Optional parameter.)
mode A one-character specifier to indicate the representation
rnode for output values: O for octal, I for decimal, A
for ASCII, or C for code. If omitted, default is octal.
(Optional parameter.)
The M command causes the current contents of each specified location to
be displayed. If mode is not specified, the display is in octal. When
the C specifier for mode is used, the actual octal content of a location
is displayed along with the code it represents. All numbers included in
the mnemonic code are octal. Following the display, DEBUG issues a : =.
You can then enter a new value. This value is octal unless preceded by #
(decimal), by $ (register contents), surrounded by quotes (ASCII),
surrounded by apostrophes (location contents). If an invalid value is
entered, DEBUG repeats the prompt : = until you enter an acceptable
value, press return to retain the current value, or enter "." to
terminate the command.
EXAMPLES
?M
DB+0 046501 :=046502
?M5,4
DB + 5 047516 :=047505
DB+6 042440 :=041440
DB+7 020020 :=020044
DB+10 046516 :=047516
?M10,I
DB+10 +32319 :=023156
Modify stack location DB + 0 (default location when no parameters are
specified).
Modify four locations starting at stack DB + 5.
Modify stack location DB+10. Present value is displayed in decimal.
Privileged Mode
?MSY54 Modify relative location 54 in system global area.
?MDA26+ 5:,2 Modify two cells in data segment 26 starting at the
location
MPE/iX 5.0 Documentation