
B–61803E–1/10
3. EXECUTION MACRO
PROGRAMMING
35
If specifying different call instructions in the same block, note the priority
of call instructions.
If specifying different call instructions in the same block, note the priority
of call instructions.
(1) Priority of call instructions
If different call instructions are specified in the same block, the call
instructions are executed in accordance with the following priority:
1. Macro call with a G/M code with a G/range specification
2. Macro call with an axis address
3. Macro call with a T code
4. Subprogram call with a special code
5. M–code subprogram call with an M code/range specification
6. Subprogram call with a T code
(2) Macro call with a G/M code
– If different macro calls with G and M codes are specified in the same
block, a call is made with the code specified first.
Example) If G43, G44, and M6 are macro call instructions and are
specified as
G43 G44 M6;
a call instruction is executed with G43, with G44 and
M6 being passed as arguments.
If they are specified as
M6 G43 G44;
a call instruction is executed with M6, with G44 being
passed as an argument.
(If the same address exists, the code specified last is
passed as an argument.)
NOTE
The passing of address G arguments is available if bit 5 of
compile parameter No. 9008 is 1.
– For a G or M code call, any instructions before that call code are
regarded not to have been executed, although the modal information
is updated.
Example) If G43 is a call instruction and specified as in
G04 X10.0 G43;
G04 X10.0 are ignored.
If G91 G43;
is specified, the modal information is changed to G91.
– For a G or M code macro call, the call code must be specified at the
beginning of the block.
– A call block does not cause any empty block to be generated but
causes a P–code macro to be called immediately.
(3) Macro call with an axis address/T code
– The call code need not appear at the beginning of the block.
3.4
PRIORITY OF
EXECUTION MACRO
INSTRUCTIONS AND
PASSING OF
ARGUMENTS