825
Subroutines Section 3-19
Applicable Program Areas
Operands N: Global subroutine number
Specifies the global subroutine number between 0 and 1023 decimal.
Note For CJ1M-CPU11 and CJ1M-CPU21 CPU Units, the subroutine number must
be between the range 0 to 255 decimal.
Operand Specifications
Note For CJ1M-CPU11 and CJ1M-CPU21 CPU Units, the range is 0 to 255 deci-
mal.
Description GSBS(750) calls the global subroutine with the specified global subroutine
number. The global subroutine is the program section between GSBN(751)
and GRET(752). When the global subroutine is completed, program execution
continues with the next instruction after GSBS(750).
This instruction can be written into multiple tasks with the same global subrou-
tine number to call that program from the different tasks. The program can be
modularized by making global subroutines into standard subroutines that are
common to many tasks.
The global subroutine region (between GSBN(751) and GRET(752)) must be
defined in interrupt task 0. If it is defined in another task, an error will occur
and the Error Flag will be turned ON when the GSBS(750) instruction is exe-
cuted.
The GSBS(750) instruction can be written in both cyclic tasks (including extra
cyclic tasks) and interrupt tasks.
Block program areas Step program areas Subroutines Interrupt tasks
OK OK OK OK
Area N
CIO Area ---
Work Area ---
Holding Bit Area ---
Auxiliary Bit Area ---
Timer Area ---
Counter Area ---
DM Area ---
EM Area without bank ---
EM Area with bank ---
Indirect DM/EM
addresses in binary
---
Indirect DM/EM
addresses in BCD
---
Constants 0 to 1023 (decimal) (See note.)
Data Registers ---
Index Registers ---
Indirect addressing
using Index Registers
---