Parameter 1 |
8 |
Function requested. On entry to IRXERS, this parameter contains
the function requested of the external routine search routine. The
function specification must be in uppercase, left-justified, and padded
on the right with blanks. Acceptable values are: - "EXTSUB "
- Specifies that the external routine that is being requested is
a subroutine. The subroutine is not required to return an EVALBLOK.
For a successfully run subroutine that does not return an EVALBLOK,
the EVALBLOK address is set to 0 and the return code is set to 0.
- "EXTBRSUB"
- Specifies that the external routine that is being requested is
a subroutine and will be given control through a branch instruction.
The external routine will be invoked using standard register linkage
conventions as described for external function parameter lists in .
- "EXTFCT "
- Specifies that the external routine that is being requested is
a function. The function is required to return an EVALBLOK. For a
successfully run function that does not return an EVALBLOK, the EVALBLOK
address is set to 0 and the return code is set to 4.
- "EXTBRFCT"
- Specifies that the external routine that is being requested is
a function and will be given control through a branch instruction.
The external routine will be invoked using standard register linkage
conventions as described for external function parameter lists in .
|
Parameter 2 |
4 |
Address of the external routine name. For the "EXTFCT "
and "EXTSUB " functions, this parameter specifies the address of
the external routine name for the requested external routine. The
name must not include the opening left parenthesis that identifies
the routine as a function, if that is the type of routine being invoked.
For
the "EXTBRFCT" and "EXTBRSUB" functions, this parameter specifies
the address of the external routine that is to be given control. IRXERS
will branch to this address after building the parameter list for
the specified routine.
|
Parameter 3 |
4 |
Length of the external routine name. Specifies the length of
the external routine name pointed to by parameter 2. IRXERS ignores
this parameter if "EXTBRFCT" or "EXTBRSUB" is specified in parameter
1. |
Parameter 4 |
4 |
Address of the arguments for the external routine. Specifies
the address of a set of address/length pairs, which hold the arguments
for the external routine. These arguments must be in the format expected
by an external routine. See the mapping macro IRXARGTB in ,
for a description of the argument list format. |
Parameter 5 |
4 |
Address of an EVALBLOK. On return from IRXERS, this parameter
contains the address of an EVALBLOK (if any) that IRXERS returned
after an external routine successfully completed. An address of zero
indicates that IRXERS did not receive an EVALBLOK. |
Parameter 6 |
4 |
Address of a REXX environment
block. Specifies the address of the REXX environment block under which the request
is to be performed. If the compiler runtime processor supplies
a non-zero parameter, IRXERS considers this parameter to be a valid
environment block address. If this parameter is zero or omitted,
IRXERS obtains the environment block address from register 0 as described
in .
This parameter is optional. |
Parameter 7 |
4 |
Return code. The return code parameter is optional. On return
from IRXERS, this parameter (if supplied) contains the return code
for IRXERS. Register 15 will contain the same value as this parameter,
if this parameter is provided. |