APPLFE= parameter for procedures
Use the optional APPLFE= parameter in procedures to specify a 1 to 8-character name of an application front-end routine that is called whenever a message processing program (MPP) is scheduled in a message processing region (MPR).
If APPLFE= is specified, the IMS MPP controller performs the
following functions:
- Loads the application front-end routine.
- Calls the application front-end routine for initialization processing.
- Calls the application front-end routine when an MPP is scheduled in an MPR.
- Calls the application front-end routine for shutdown processing when the MPP terminates.
The following describes the interface between the IMS MPP
controller and the application front-end routine:
- The IMS MPP controller calls the application front-end
routine for initialization processing with the input registers set as follows:
- R0=0
- R1=0
- R13=address of caller's save area
- R14=return address of caller
- R15=entry point address of the application front-end routine
The application front-end routine must restore all registers, except register 15, upon return to IMS. Register 15 contains the return code.
- The IMS MPP controller calls the application front-end
routine when an MPP is scheduled in an MPR with the input registers set as follows:
- R0=entry point address of the application MPP
- R1=PCB list to be passed to the application MPP
- R13=address of caller's save area
- R14=return address of caller
- R15=entry point address of the application front-end routine
The application front-end routine must restore all registers, except register 15, upon return to IMS. Register 15 contains the return code.
- The IMS MPP controller calls the application front-end
routine to perform shutdown processing when the MPP is terminating:
- R0=non-zero
- R1=0
- R13=address of caller's save area
- R14=return address of caller
- R15=entry point address of the application front-end routine
The application front-end routine must restore all registers, except register 15, upon return to IMS. Register 15 contains the return code.
Note: Because the IMS MPP controller establishes an ESTAE,
a program interrupt is intercepted and treated as an application failure when it occurs after the
application front-end routine is called and before it returns to the IMS MPP controller. As a result, the IMS MPP controller
reinitializes itself, and once again loads and calls the application front-end routine for
initialization processing. IMS stops the transaction that is
responsible for the interrupt.