13. Program Support Functions
13.3 Subprogram control; M98, M99
13.3.1 Calling subprogram with M98 and M99 commands
Function and purpose
Fixed sequences or repeatedly used patterns can be stored in the memory as subprograms which
can then be called from the main program when required. M98 serves to call subprograms and
M99 serves to return operation from the subprogram to the main program. Furthermore, it is
possible to call other subprograms from particular subprograms and the nesting depth can include
as many as 8 levels.
Main program
O0010 ;
M98 P1000 ;
M02 ;
The table below shows the functions which can be executed by adding and combining subprogram
control functions and canned cycle functions.
1. Subprogram control
2. Canned cycles
1. Memory operation
2. Subprogram call
3. Subprogram variable designation
4. Subprogram nesting level call (Note 3)
5. Canned cycles
6. Canned cycle subprogram editing
(Note 1) "
(Note 2) Variables cannot be transferred with the M98 command but variable commands in
(Note 3) A maximum of 8 nesting levels can be possible.
Subprogram
Subprogram
O1000 ;
O1200 ;
N20 ;
M98 P1200
M98 P2000 ;
H20 ;
N60 ;
M99 ;
M99 ;
(Level 1)
Function
" denotes function which can be used and " " a function which cannot be used.
subprograms can be used provided that the variable command specifications are
available.
Subprogram
O2000 ;
M98 P2500 ;
M99 P60 ;
(Level 2)
(Level 3)
Nesting depth
Case 1
No
No
(Note 2)
172
13.3 Subprogram control
Subprogram
O2500 ;
M99 ;
(Level 4)
Case 2
Case 3
Yes
Yes
No
Yes
Case 4
No
Yes