IKT002IX CSECT IKT002IX AMODE 31 IKT002IX RMODE ANY *********************************************************************** ** This exit will change the text of the IKT002I message so that if ** ** the reason code is 04 it puts in a meaningful description ** *********************************************************************** COPY ASLEQUC MESSLEN EQU L'MESSAGE STM R14,R12,12(R13) Save callers registers BALR R12,0 Load base register ... USING *,R12 ... and establish addressability L R5,0(R1) CTXT address into R5 ... USING CTXT,R5 ... and establish addressability STORAGE OBTAIN,LENGTH=DATAEND,ADDR=(R11) LOC=BELOW USING DATA,R11 Address the area returned ST R13,SAVEAREA+4 Set backwards pointer LA R15,SAVEAREA Get our save area address ... ST R15,8(R13) ... and set forward pointer LR R13,R15 Load R13 with savearea address L R2,CTXTTXPJ Get address of message attributes ... USING CTXTATTR,R2 ... and establish addressability LA R4,CTXTTMSG Get address of the text area ... USING MSGTEXT,R4 ... and establish addressability CLC REASON,=C' 04 ' Is it reason code 48? BNE EXIT No - Do nothing OI CTXTRFB1,CTXTRCMT Set to change message text OI CTXTRFB2,CTXTROMS Override MPF suppression OI CTXTRFB2,CTXTRBCA Send to all active consoles OI CTXTTFB1,CTXTTFWR Set to WTOR MVC NEWTEXT,TEXTCHNG Move in new message text MVI CTXTTLEN+1,MESSLEN Move length of new text EXIT DS 0H L R13,4(R13) Restore R13 STORAGE RELEASE,LENGTH=DATAEND,ADDR=(R11) Free the storage LM R14,R12,12(R13) Restore callers registers PR Return to caller TEXTCHNG DC CL37'TSO ALREADY ACTIVE. REQUEST IGNORED ' DS 0F DATA DSECT DS 0F SAVEAREA DS 18F MGCR IEZMGCR DSECT=NO ORG MGCRTEXT COMMAND DS CL6 REPLY DS CL2 REPLYMSG DS CL3 ORG DATAEND EQU *-DATA MSGTEXT DSECT MESSAGE DS 0CL133 MSGID DS CL8 DS CL34 REASON DS CL4 NEWTEXT EQU MSGID+8,37 ORG MSGTEXT IEZVX100 END