v Register 13 contains the address of the standard register save area where your
exit program should store its own registers immediately after being invoked. This
address is also in the field UEPEPSA in the parameter list pointed to by register
1.
If you want to issue operating system requests that use register 13 to point to a
save area, you must switch register 13 to point to another save area. You must
restore register 13 to its original contents before returning from your user exit
program to the caller.
v Register 14 contains the return address to which the exit program should branch
on completion of its work. You do this using the BR 14 instruction after restoring
the calling module’s registers, or using the RETURN macro.
v Register 15 contains the entry address of the exit program.
The exit program must save and restore any registers that it modifies, using the
save area addressed by register 13.
31-bit addressing implications
v The global user exit is invoked in 31-bit AMODE.
v The global user exit may be either RMODE 24 or RMODE ANY.
v If you find it necessary to switch to 24-bit AMODE in the exit program, be sure to
return correctly in 31-bit AMODE.
v Ensure the exit program is in 31-bit AMODE for XPI calls.
v Some of parameters passed in DFHUEPAR are addresses of storage above the
16MB line.
Access register implications
v The global user exit is invoked in primary-space translation mode. For
information about translation modes, see the IBM ESA/370 Principles of
Operation manual.
v The contents of the access registers are unpredictable. For information about
access registers, see the IBM ESA/370 Principles of Operation manual.
v If the global user exit modifies any access registers, it must restore them before
returning control. CICS does not provide a save area for this purpose.
v The global user exit must return control in primary addressing mode.
Using CICS services
The rules governing the use of CICS services in exit programs vary, depending on
the exit point from which the exit program is being invoked.
The following general rules apply:
v No CICS services can be invoked from any exit point in the dispatcher domain.
v CICS services can be invoked using the exit programming interface (XPI) from
most exits. If you use the XPI, note the rules and restrictions that are listed for
each exit and each of the XPI macros. The XPI is described in Chapter 3, “The
user exit programming interface (XPI),” on page 305.
v Some CICS services can be requested using EXEC CICS commands from some
exits. The valid commands are listed in the detailed descriptions of the exits. If
no commands are listed, it means that no EXEC CICS API or SPI commands are
supported. EXEC CICS commands that cause an XCTL (either directly or
implied); for example, EXEC CICS XCTL or EXEC CICS SHUTDOWN must never be
used.
4 Customization Guide