This general macro searches the routing control application table for an
application name. The base address of the RCAT record containing the
entry and the displacement to the entry in that record are returned for E-type
programs. For C-type programs only, the RCAT entry address is
returned.
If the application name is not found, the error return label receives
control.
Format
- ERR=label
- A required parameter specifying an error return label for use when an
entry is not found.
- PGM
- An optional parameter where the valid values are:
- RT
- Used when the caller is an E-type (ECB) program. When PGM is not
specified, this is the default.
- CP
- Used when the caller is a C-type (Control) program.
Entry Requirements
- R0-R7 are reserved for use by this macro.
- R2 must contain the base address of the RCAT record (E-type programs
only).
- R7 must contain the address of a 4-byte field where the application name
of the RCAT entry to be located will be placed.
- R9 must contain the address of the ECB being processed (E-type programs
only).
Return Conditions
- Control is returned to the next sequential instruction when the entry is
found.
- If the entry is not found, control is returned to the location specified
by the user error return label.
- The contents of R0, R1, R3, R4, and R6 are unknown. The contents of
all other registers are preserved across this macro call.
- For an E-type program, R2 will contain the base address of the RCAT record
containing the entry and R5 will contain the displacement to the entry within
the record.
- For a C-type program, R7 will contain the RCAT entry address.
- The USING statement for the RCAT will have been issued.
Programming Considerations
- This macro can be run on any I-stream.
- An error routine must be defined in the user program to handle the error
return.
- This macro can be called only once in any program.
- The macro first searches for the record containing the application
name. When the record is found, a binary search is used to locate the
application name in the record.
Examples
None.