The calling-standard macros use the concept of a single, current,
active routine. A routine is a programming entity that is
associated with a procedure descriptor that may be called, or
is a main routine specified as the transfer address of a linked
image.
Only one routine can be active or current at any given time
during assembly. If more than one routine is defined in a single
assembler source file, all items associated with the current
routine, that is, within the lexical scope of the routine, must
be completed before making a different routine current. The
lexical scope of one routine cannot overlap the lexical scope
of another routine.
A routine becomes current or comes into scope by invoking the
$ROUTINE macro with the appropriate arguments. $ROUTINE marks the
beginning of the lexical scope of a routine. The complementary
macro, $END_ROUTINE, marks the end of the current routine's
lexical scope.
Additional Information:
explode
extract