* Logic: *
* Entry_Not_Found: *
* Call Getmain_Shared *
* Copy default_sysid into shared storage *
* Address the command plist *
* Update ADDR7 to point to the address of the default SYSID *
* Set the SYSID existence bit in the EID *
* Set the Hi-order bit in last address in CLPS *
* Return *
*=====================================================================*
ENTRY_NOT_FOUND DS 0H
BAL R6,GETMAIN_SHARED GETMAIN SHARED storage
L R12,UEPTQTOK Fetch address of token
L R12,0(R12) Fetch shared storage address
USING SHARED_STORAGE,R12 Address using R12
*
* Update the Sysid in CLPS
MVC SHARED_SYSID,DEFAULT_SYSID Copy SYSID to shared storage
L R8,UEPCLPS Address the CLPS..
USING TS_ADDR_LIST,R8 ..with Register 8
L R1,TS_ADDR0 Address the EID..
USING TS_EID,R1 ..with Register 1
OI TS_BITS1,TS_SYSID_V Indicate SYSID now present in CLPS
DROP R1 Drop addressability to EID
LA R1,SHARED_SYSID Fetch address of the new SYSID
ST R1,TS_ADDR7 Store address in TS_ADDR7
OI TS_ADDR7,X'80' Indicate SYSID is end of plist
*
* Clear hi-order bits in ARGs 1 to 5
NI TS_ADDR1,X'7F' Indicate not last parameter in CLPS
NI TS_ADDR2,X'7F' Indicate not last parameter in CLPS
NI TS_ADDR3,X'7F' Indicate not last parameter in CLPS
NI TS_ADDR4,X'7F' Indicate not last parameter in CLPS
NI TS_ADDR5,X'7F' Indicate not last parameter in CLPS
B RETURN Return
DROP R8 Drop TS_ADDR_LIST
DROP R12 Drop SHARED_STORAGE
EJECT ,
*
Figure 113. Example exit program for the XTSEREQ exit (Part 11 of 16)
example XTSEREQ global user exit program
Appendix E. The example program for the XTSEREQ global user exit, DFH$XTSE 817