Reference Manual

Turbo PMAC/PMAC2 Software Reference
Turbo PMAC On-line Command Specification 353
Scope: Global
Syntax: M{constant}[..{constant}]->
where:
{constant} is an integer from 0 to 8191 representing the number of the M-variable;
the optional second{constant} must be at least as great as the first {constant} -- it represents
the number of the end of the range;
This command causes Turbo PMAC to report the definition (address) of the specified M-variable or range
of M-variables. It does not cause Turbo PMAC to report the value of the M-variables; that is done with
the M{constant} command.
When I9 is 0 or 2, only the definition itself (e.g. Y:$078802,0) is returned. When I9 is 1or 3, the entire
definition statement (e.g. M11->Y:$078802,0) is returned.
Example:
M1-> ; Host requests definition
Y:$FFC2,8 ; Turbo PMAC's response
M101..103->
X:$C001,24,S
Y:$C003,8,16,S
X:$C003,24,S
See Also:
M-Variables (Computational Features)
On-line commands M{constant}, M{constant}->{definition},
M{constant}={expression}
Program command M{constant}={expression}
M{constant}->*
Function: Self-Referenced M-Variable Definition
Scope: Global
Syntax: M{constant}[..{constant}]->*
where:
{constant} is an integer from 0 to 8191 representing the number of the M-variable;
the optional second{constant} must be at least as great as the first {constant} -- it represents
the number of the end of the range.
This command causes Turbo PMAC to reference the specified M-variable or range of M-variables to its
own definition word. To use an M-variable as a flag, status bit, counter, or other simple variable, there is
no need to find an open area of memory, because it is possible to use some of the definition space to hold
the value. Simply define this form of the M-variable and this M-variable can be used much as a P-
variable would be, except it only takes integer values in the range -2
35
to 2
35
-1. Note, however, that the
use of these self-referenced M-variables is less efficient for computation than using P or Q-variables.
When the definition is made, the value is set automatically to 0.
This command is also useful to erase an existing M-variable definition.
Example:
M100->*
M20..39->*
M0..8191->*. ; This erases all existing M-variable definitions
; It is a good idea to use this before loading new ones
See Also:
M-Variables (Computational Features)