The STAE macro enables the user to intercept a scheduled ABEND and to have control returned to him at a specified exit routine address. The STAE macro operates in both problem program and supervisor modes.
The standard form of the STAE macro is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␣ | One or more blanks must precede STAE. |
STAE | |
␣ | One or more blanks must follow STAE. |
exit addr | exit addr: A-type address, or register (2) - (12). |
0 | |
,CT | Default: CT |
,OV | |
,PARAM=list addr | list addr: A-type address, or register (2) - (12). |
,XCTL=NO | Default: XCTL=NO |
,XCTL=YES | |
,PURGE=QUIESCE | Default: PURGE=QUIESCE |
,PURGE=HALT | |
,PURGE=NONE | |
,ASYNCH=NO | Default: ASYNCH=NO |
,ASYNCH=YES | |
,RELATED=value | value: Any valid macro keyword specification. |
The parameters are explained as follows:
If PURGE=NONE is specified and the ABEND was originally scheduled because of an error in input/output processing, an ABEND recursion develops when an input/output interruption occurs, even if the exit routine is in progress. Thus, it appears that the exit routine failed when, in reality, input/output processing caused the failure.
Register 15 contains one of the following hexadecimal return codes from TIMEUSED:
Hexadecimal Return Code | Meaning |
---|---|
00 | Successful completion of STAE request. |
04 | STAE was unable to obtain storage for STAE request. |
08 | Attempt was made to cancel or overlay a nonexistent STAE request. |
0C | Exit routine or parameter list address was invalid, or STAI request was missing a TCB address. |
10 | Attempt was made to cancel or overlay a STAE request of another user, or an unexpected error was encountered while processing this request. |
STAE ADDR,OV,PARAM=PLIST,XCTL=YES,PURGE=HALT,ASYNCH=NO