*/********************************************************************/ 00050002 */* */ 00100002 */* IHACTM */ 00110002 */* */ 00200002 */* OS/VS2 RELEASE 3.7 */ 00210003 */* BAL - INVOKE IHACTM WITH POSITIONAL PARAMETER INDICATING */ 00280002 */* THE MAPPING DESIRED. CHOICES ARE: XV, CXSA, CQE, */ 00350002 */* DPL, QR0, WWB AND FTPT. */ 00390002 */* */ 00430002 */* PL/S - */ 00470002 */* THIS MACRO CONTIANS THE PL/S VERSIONS OF THE WWB, DOM PARM */ 00510002 */* LIST, IEAVMQR0 PARM LIST, SVC 35 EXTENDED SAVEAREA, CQE, THE */ 00550002 */* SVC 87 EXTENDED SAVEAREA, AND THE SVC 72 EXTENDED SAVEAREA. */ 00590002 */* */ 00630002 */* TO GET THE WWB, DEFINE THE MACRO VARIABLE CTMWWB AND SET IT */ 00670002 */* EQUAL TO 'YES'. */ 00710002 */* TO GET THE QR0, DEFINE THE MACRO VARIABLE CTMQR0 AND SET IT */ 00750002 */* EQUAL TO 'YES'. */ 00790002 */* TO GET THE SVC 35 EXTENDED SAVEAREA, DEFINE THE MACRO VARIABLE */ 00830002 */* CTMXV AND SET IT TO 'YES'. */ 01000002 */* TO GET THE DOM PARMETER LIST, DEFINE THE MACRO VARIABLE CTMDOMPL */ 01050002 */* AND SET IT TO 'YES'. */ 01100002 */* TO GET THE CQE, DEFINE THE MACRO VARIABLE CTMCQE AND SET IT */ 01150002 */* TO 'YES'. */ 01200002 */* TO GET THE SVC 87 EXTENDED SAVEREA, DEFINE THE MACRO VARIABLE */ 01250002 */* CTMXD AND SET IT TO 'YES'. */ 01300002 */* TO GET THE SVC 72 EXTENDED SAVEAREA, DEFINE THE MACRO VARIABLE */ 01350002 */* CTMCXSA AND SET IT TO 'YES'. */ 01400002 */* TO GET THE FRR USERS PARM LIST MAPPING, DEFINE CTMFTPT AND SET */ 01410002 */* IT TO 'YES'. */ 01420002 */* THESE MACRO VARIABLES SHOULD ALL BE SET BEFORE THE INCLUSION */ 01450002 */* OF IHACTM AND IHACTM SHOULD ONLY BE INCLUDED ONCE. */ 01500002 */* */ 01550002 */* CHANGE ACTIVITY = ZA19994,ZA41986,ZA44318,ZA31868,ZA37220 */ 01574903 */********************************************************************/ 01600002 * %GOTO CTMMAC; %/* 01650002 MACRO 01700002 IHACTM &MAP 01750002 AIF ('&MAP' EQ 'XV').IHAXV SVC 35 EXTENDED SAVE AREA 01800002 AIF ('&MAP' EQ 'CXSA').IHACXSA SVC 72 EXTENDED SAVE AREA 01850002 AIF ('&MAP' EQ 'CQE').IHACQE CONSOLE QUEUE ELEMENT 01900002 AIF ('&MAP' EQ 'DPL').IHADPL DOM PARM LIST 01950002 AIF ('&MAP' EQ 'WWB').IHAWWB WTO WAIT BLOCK MAP 02000002 AIF ('&MAP' EQ 'QR0').IHAQR0 IEAVMQR0 PARMLIST 02050002 AIF ('&MAP' EQ 'FTPT').IHAFTPT FRR USERS PARM LIST MAP 02070002 MNOTE *,'IMPROPER OPERAND' 02100002 MEXIT 02150002 .IHAXV ANOP 02200002 */********************************************************************/ 02250003 */* */ 02263103 */* EXTENDED SAVEAREA MAPPING FOR SVC 35 */ 02276203 */* */ 02289303 */* OS/VS2 RELEASE 3.7 */ 02302403 */* */ 02315503 */* THIS MAPPING OF XSA HAS DIFFERENT NAMES FROM THE BAL MAPPING OF */ 02328603 */* XSA. THE PL/S VERSION IS USED IN IEAVVWTO AND THE BAL IN */ 02341703 */* IEAVMWTO. */ 02354803 */********************************************************************/ 02367903 XVSAV DSECT 02381003 XVA0 DS F WORK AREA FOR TYPE 1 SUBROUTINES WPL *02394103 PARM LENGTH COMMUNICATION AREA @ZA37220 02400603 XVA4 DS 0F WORK AREA, AND D23 SAVEAREA @ZA41986 02407203 XVFNCT DS C D23 PROCESS CODE @ZA41986 02420303 D23VALID EQU X'10' PARMLIST VALIDITY CHECK @ZA41986 02433403 D23OREGC EQU X'20' ORE GETCELL FAILURE @ZA41986 02435703 D23OREBC EQU X'21' ORE BLDCPOOL FAILURE @ZA41986 02438003 D23OREGM EQU X'22' ORE GETMAIN FAILURE, SP231 @ZA41986 02440303 D23WQEGC EQU X'30' WQE GETCELL FAILURE @ZA41986 02442603 D23WQEBC EQU X'31' WQE BLDCPOOL FAILURE @ZA41986 02444903 D23WQEGM EQU X'32' WQE GETMAIN FAILURE, SP231 @ZA41986 02447203 D23DYN EQU X'42' DYNAMIC AREA GETMAIN FAILURE @ZA41986 02449503 XVAMOD DS C D23 MODULE ID @ZA41986 02451803 VWTOID EQU X'01' IEAVVWTO'S ID FOR D23 @ZA41986 02454103 MWTOID EQU X'02' IEAVMWTO'S ID FOR D23 @ZA41986 02456403 XVA41 DS C RESERVED @ZA41986 02458703 XVREASON DS C D23 REASON CODE @ZA41986 02461003 D23BNDY EQU X'01' WTOR PARMLIST NOT ON FULLWRD BNDY @ZA41986 02463303 D23MLWTR EQU X'02' MULTILINE WTOR SPECIFIED @ZA41986 02465603 D23PARM EQU X'03' PARMLIST NOT ADDRESSABLE BY USER @ZA41986 02467903 D23ZERO EQU X'04' ZERO TEXT LENGTH WTOR @ZA41986 02470203 D23SIZE EQU X'05' CALLER MODIFIED WPL @ZA37220 02471003 * DURING WTO PROCESSING @ZA37220 02471803 XVA8 DS F TIME STORED BY VWTO 02472703 XVB0 DS 0F WORK AREA FOR TYPE 2 SUBROUTINES 02485803 XVDESCD DS H DESCRIPTOR CODE TO BE USED IN WTO 02500002 XVRCSAVE DS H ROUTE CODES TO BE USED IN THIS WTO 02550002 XVB5 DS 0F 02600002 XVB4 DS C 02650002 XVB5A DS 3X'00' ADR OF ORIGINAL PARM LIST 02700003 ORG XVB5 02750002 XVMSGTYP DS H MSGTYP FIELD FROM CALLER'S WPL 02800002 XVMSGLGH DS H MESSAGE LENGTH FROM CALLER'S WPL 02850002 XVPARMAD DS 0F ADDR OF CALLER'S PARAMETER LIST 02900002 XVCMAJOR DS F 02950002 XVCMINOR DS F 03000002 XVD0 DS C REAL NO. OF LINES IN MLWTO 03050003 XVD0QID EQU X'08' QID FIELD IS PRESENT IN THE WPL 03100003 XVD1 DS C FLAG BYTE - WTO/WTOR/MLWTO 03150003 XVD1PRIV EQU X'80' PRIVILEGED TASK 03200003 XVD1ENQW EQU X'40' ENQ'D ON A WQE 03250003 XVD1ENQO EQU X'20' ENQ'D ON AN ORE 03300003 XVD1OEXT EQU X'10' ORE EXISTS FOR THIS WQE 03350003 XVD1BWTP EQU X'08' BACK FROM WTP 03400003 XVD1PP EQU X'04' PROBLEM PROGRAM CALLER 03450003 XVD1AUTH EQU X'02' KEY 0, SUPVR STATE OR APF AUTHORIZED 03500003 XVD1PERR EQU X'01' SEVERE ERROR FOUND. ABEND USER. 03550003 XVD2 DS C RESERVED FOR MLWTO 03600003 XVD2CON EQU X'80' CONNECTING 03650003 XVD2RDC EQU X'40' ROUT/DESC CODES EXIST 03700003 XVD2MSGT EQU X'20' MSG TYPE FIELD EXISTS 03750003 XVD2VALD EQU X'10' PARAMETER LIST IS VALID 03800002 XVD2DELW EQU X'08' DELETE THIS WTO REQUEST 03850002 XVD2ZERO EQU X'04' RETURN A MESSAGE ID OF ZERO TO THE USER 03900002 XVD2WTOR EQU X'02' THIS WPL IS FOR A WTOR. 03950002 XVD2QFHC EQU X'01' QUEUE THIS MESSAGE TO HARD COPY. 04000002 XVD3 DS C MLWTO FLAGS 04050003 XVD3BLDJ EQU X'80' BUILD MAJOR WQE 04100003 XVD3BLD1 EQU X'40' BUILD LINE 1 04150003 XVD3BLD2 EQU X'20' BUILD LINE 2 04200003 XVD3TXT1 EQU X'10' TEXT LINE 1 BEING USED 04250003 XVD3TFX EQU X'08' THE TCBTFX BIT WAS SET ON, TURN IT OFF 04300003 XVX DS 0F ADDR OF ORE - ALSO USED AS WORK AREA 04350003 XVX0 DS C LINE CONTROL FLAGS--MLWTO 04400003 XVX0FLCL EQU X'80' FIRST LINE IS CONTROL LINE 04450003 XVX0LL1F EQU X'40' LABEL LINE 1 FOUND 04500003 XVX0LL2F EQU X'20' LABEL LINE 2 FOUND 04550003 XVX0UDCL EQU X'10' USE DEFAULT CONTROL LINE 04600003 XVX0FLJE EQU X'08' FIRST LINE JUST 'E' 04650003 XVX0FEDE EQU X'04' FORCE END (LAST LINE TO BE DE) 04700003 XVX1 DS C ERROR FLAGS--MLWTO 04750003 XVX1STOP EQU X'80' ERROR IN PARM LIST; IGNORE MLWTO 04800003 XVX1NOID EQU X'40' NO ID FOR CONNECTING MLWTO 04850003 XVX2 DS C NUMBER OF LINES STILL TO DO 04900003 XVX3 DS C RESERVED 04950003 XVWWB DS 0F ADDR OF WRITE WAIT BLOCK 05000003 XVY DS F ADDR OF WWB WHEN WAITING FOR A WQE 05050003 XVWQEID DS 0F 05100003 XVWQEIDA DS CL3 WQE ID - USED ONLY BY MLWTO 05150003 XVCONID DS C CONSOLE ID PASSED TO SVC 35 05200003 XVEL EQU * 05250003 XVZERO EQU XVEL-XVSAV LENGTH USED TO ZERO SAVE AREA 05300003 XVRET DS 0F 05350003 XVRETCOD DS C RETURN CODE 05400003 XVRETA DS CL3 RETURN ADR TO SVC 35 ISSUER 05450003 XVCSAVE1 EQU XVCMAJOR WORK AREA FOR WTO/WTOR 05500003 XVCSAVE2 EQU XVCMINOR WORK AREA FOR WTO/WTOR 05550003 MEXIT 05637203 .IHACXSA ANOP 05640303 */********************************************************************/ 05643403 */* */ 05646503 */* CXSA MAPPING (MAPS SVRB EXTENDED SAVE AREA OF SVC 72 */ 05649603 */* */ 05652703 */* OS/VS2 RELEASE 3.7 */ 05655803 */* */ 05658903 */* METHOD OF ACCESS */ 05662003 */* BAL - CODE THE FOLLOWING: IHACTM CXSA */ 05665103 */* PL/S - 1. DECLARE THE MACRO CHARACTER VARIABLE CTMCXSA. */ 05668203 */* 2. SET CTMCXSA EQUAL TO 'YES'. */ 05671303 */* 3. %INCLUDE SYSLIB(IHACTM) */ 05674403 */* 4. DCL CXSAPTR */ 05677503 */* */ 05680603 */* THE CXSA MAPPING IS USED BY ALL MODULES OF */ 05683703 */* SVC 72 TO PROVIDE A COMMON MAPPING OF THE */ 05686803 */* SVRB EXTENDED SAVE AREA. */ 05689903 */* */ 05693003 */********************************************************************/ 05696103 CXSA DSECT 0CL48 EXTENDED SAVE AREA FOR SVC 72 05700002 CSANPTR DS F A(*+8) FOR OVERLAY XCTLS 05750002 CSADCBP DS F 0 DCB POINTER 05800002 CSANAME DS CL8 NEXT SEGMENT NAME 05850002 CSAUCM DS 0F CODE AND UCM POINTER 05900002 CSACODE DS C CONSOLE SWITCH REASON @ZA44318 05950003 CSAHC EQU 2 SWITCH HARDCOPY FROM SYSLOG @ZA44318 06000003 CSAEXTI EQU 4 EXTERNAL INTERRUPT @ZA44318 06050003 CSAIOER EQU 5 I/O ERROR @ZA44318 06100003 CSASWER EQU 6 SOFTWARE ERROR @ZA44318 06150003 CSAVMST EQU 8 VARY MASTER CONSOLE @ZA44318 06200003 CSAOPER EQU 9 OPEN ERROR ON CONSOLE @ZA44318 06250003 CSAACR EQU 16 AUTO CPU RECOVERY @ZA44318 06300003 CSAVCHAN EQU 32 VARY CHANNEL COMMAND @ZA44318 06350003 CSAVCPU EQU 64 VARY CPU COMMAND @ZA44318 06400003 CSAOPEN EQU 0 OPEN REQUEST 06500002 CSACLOSE EQU 4 CLOSE REQUEST 06550002 CSAUCMA DS CL3 UCM ENTRY POINTER 06600002 CSACTLM DS F UCM POINTER,CVTCUCB 06650002 CSAXA DS F 06700002 CSAXB DS F 06750002 CSAXC DS F 06800002 CSAXD DS F 06850002 CSAXE DS F 06900002 CSAXF DS F 06950002 MEXIT 07000002 .IHACQE ANOP 07050002 */********************************************************************/ 07053803 */* */ 07057603 */* CQE MAPPING */ 07061403 */* */ 07065203 */* OS/VS2 RELEASE 3.7 */ 07069003 */* */ 07072803 */* PL/S VERSION. THE CQE IS USED TO QUEUE WQE'S TO AN INDIVIDUAL */ 07076603 */* UCME. EACH CQE CONTAINS SPACE FOR FIVE ENTRIES PLUS A FIELD */ 07080403 */* TO CHAIN ADDITIONAL CQE'S. EACH ENTRY CONTAINS FLAGS WHICH */ 07084203 */* DESCRIBE THE ENTRY. */ 07088003 */* */ 07091803 */********************************************************************/ 07095603 CQE DSECT 07100002 CQEWQE DS 0F 07150002 CQEFLAG DS C CONSOLE OUTPUT QUEUE FLAGS 07200002 CQEEOB EQU X'C0' POINTER TO NEXT CQE BLOCK 07250002 CQEEOQ EQU X'80' END OF BLOCK 07300002 CQEATTOP EQU X'10' START AT TOP OF MLWTO CHAIN 07350002 CQEMLQHC EQU X'08' QUEUED FOR HARD COPY 07400002 CQEMAJOR EQU X'04' WQE IS MAJOR FOR MAWTO 07450002 CQEAVAIL EQU X'02' THIS ENTRY NO LONGER NEEDED 07500002 CQEENTR EQU X'01' ENTRY EXISTS 07550002 CQENULL EQU X'00' NULL ENTRY 07600002 CQEWQEA DS CL3 WQE POINTER OR PTR TO NEXT BLOCK 07650002 ORG CQE+X'14' ADR LAST ENTRY 07700002 CQEEND DS CL1 07750002 CQEENDA DS CL3 07800002 CQELENG EQU * END OF THE CQE 07850002 CQESIZE EQU CQELENG-CQE 07900002 CQESP EQU 241 NON-FETCH PROTECTED CSA 07950002 MEXIT 08000002 .IHADPL ANOP 08050002 */********************************************************************/ 08053103 */* PARAMETER LIST FOR IEAVXDOM - SVC 87 */ 08056203 */* */ 08059303 */* OS/VS2 RELEASE 3.7 */ 08062403 */* */ 08065503 */* THIS DECLARATION DEFINES THE PARAMETER LIST FOR SVC 87. ON */ 08068603 */* ENTRY REGISTER 1 CONTAINS EITHER ONE MESSAGE ID OR A POINTER */ 08071703 */* TO A LIST OF MESSAGE IDS. THE PARAMETER LIST IS USED WHEN */ 08074803 */* REGISTER 1 POINTS TO A LIST OF MESSAGE IDS. THE MAXIMUM */ 08077903 */* NUMBER OF IDS ALLOWED IS 60. */ 08081003 */* */ 08084103 */* THE LIST IS DECLARED AS BASED RATHER THAN ARRAY FOR SPPED OF */ 08087203 */* ACCESSING THE IDS. */ 08090303 */* */ 08093403 */********************************************************************/ 08096503 DOMPL DSECT 08100002 DOMPFLAG DS C DOM FLAGS 08150002 DOMPEND EQU X'80' END OF DOM PARM LIST 08200002 DOMPID DS CL3 ID OF MESSAGE TO BE DOM'D 08250002 MEXIT 08300002 .IHAWWB ANOP 08350002 */********************************************************************/ 08400002 */* */ 08450002 */* WWB */ 08500002 */* */ 08550002 */* WRITE TO OPERATOR WAIT BLOCK MAPPING */ 08600002 */* OS/VS2 RELEASE 3.7 */ 08650003 */* */ 08700002 */* METHOD OF ACCESS */ 08750002 */* BAL - CODE THE FOLLOWING: IHACTM WWB */ 08800002 */* PL/S - 1. DECLARE THE MACRO CHARACTER VARIABLE CTMWWB. */ 08850002 */* 2. SET CTMWWB EQUAL TO 'YES' */ 08900002 */* 3. %INCLUDE SYSLIB(IHACTM) */ 08950002 */* 4. DCL WWBPTR. */ 09000002 */* FUNCTION */ 09050002 */* THE WWB IS USED TO WAIT FOR A WQE OR ORE TO BE FREE'D. */ 09100002 */* IF A WQE IS NEEDED, A WWB IS PLACED ON THE DOUBLY LINKED */ 09150002 */* CHAIN POINTED AT BY UCMWECBH AND UCMWECBT. THE PROGRAM NEEDING*/ 09200002 */* THE WQE THEN WAITS ON THE ECB PART OF THE WWB, WHEN A WQE IS */ 09250002 */* FREED AND THE WWB IS AT THE TOP OF THE CHAIN, THE ECB IS */ 09300002 */* POSTED. IF AN ORE IS NEEDED THEN A WWB IS PLACED ON THE */ 09350002 */* CHAIN POINTED AT BY UCMOECBH AND UCMOECBT */ 09400002 */* */ 09450002 */********************************************************************/ 09500002 WWB DSECT 09550002 WWBFWDPT DS F FORWARD CHAIN POINTER 09600002 WWBBCKPT DS F BACKWARD CHAIN POINTER 09650002 WWBASCB DS F ADDRESS OF USERS ASCB 09700002 WWBTCBAD DS F ADDRESS OF USERS TCB 09750002 WWBFLAGS DS C FLAGS BYTE 09800002 WWBPOSTD EQU X'80' IF ON THEN ECB HAS BEEN POSTED 09850002 WWBRESRV DS CL3 RESERVED 09900002 WWBECB DS F ECB PART OF WTOECB 09950002 WWBLENG EQU * END OF WWB 10000002 WWBSIZE EQU WWBLENG-WWB 10050002 MEXIT 10100002 .IHAQR0 ANOP 10150002 */********************************************************************/ 10200002 */* */ 10250002 */* QR0 */ 10300002 */* */ 10350002 */* IEAVMQR0 PARAMTER LIST */ 10400002 */* OS/VS2 RELEASE 3.7 */ 10450003 */* */ 10500002 */* METHOD OF ACCESS */ 10550002 */* BAL - CODE THE FOLLOWING: IHACTM QR0 */ 10600002 */* PL/S - 1. DECLARE THE MACRO CHARACTER VARIABLE CTMQR0. */ 10650002 */* 2. SET CTMQR0 EQUAL TO 'YES' */ 10700002 */* 3. %INCLUDE SYSLIB(IHACTM) */ 10750002 */* 4. DCL QR0PPTR. */ 10800002 */* FUNCTION */ 10850002 */* THE QR0 PARAMTER LIST IS INITIALIZED BY IEAVMWSV */ 10900002 */* AND USED AS INPUT TO IEAVMQR0. */ 10950002 */* */ 11000002 */********************************************************************/ 11050002 QR0 DSECT 11100002 QR0WQE DS 0A ADDRESS OF WQE 11150002 QR0WQEB DS FL1 UNUSED 11200002 QR0WQEA DS AL3 ADDRESS OF WQE 11250002 QR0UCME DS F ADDRESS OF UCME 11300002 QR0UCM DS F ADDRESS OF UCM 11350002 QR0CMQCN DS F ADDRESS OF IEECMQCN 11400002 MEXIT 11450002 .IHAFTPT ANOP 11453002 */*******************************************************************/ 11456002 */* */ 11459002 */* PARMLIST */ 11462002 */* */ 11465002 */* MAPPING OF THE FRR USER'S PARM LIST */ 11468002 */* OS/VS2 RELEASE 3.7 */ 11471003 */* */ 11474002 */* METHOD OF ACCESS */ 11477002 */* BAL - CODE THE FOLLOWING: IHATCM FTPT */ 11480002 */* PL/S - DECLARE THE MACRO VARIABLE CTMFTPT AND SET IT EQUAL */ 11483002 */* TO 'YES'. DECLARE PARMPTR AND THEN INCLUDE IHATCM. */ 11486002 */* */ 11489002 */********************************************************************/ 11492002 PARMLIST DSECT 11495002 PARMSTAT DS 0F STATUS WORD 11500002 PARMFTPT DS C FOOT PRINT 11503002 PARMFLAG DS C FLAGS BYTE 11506002 PARMSDWA EQU X'80' SDWA INDICATOR 11509002 PARMCWT EQU X'40' CONT WITH TERMINATION INDICATOR 11512002 PARMRECU EQU X'20' ESTAE RECURSION COUNTER 11515002 PARMFRID EQU X'10' FRR INDICATOR 11518002 PARMWARG EQU X'08' REG UPDATE INDICATOR 11521002 PARMNDMP EQU X'04' NO DUMP INDICATOR @ZA19994 11522003 PARMSYSR DS C SYSTEM SERVICE ID 11524002 PARMCTBK DS C CONTROL BLOCK ID 11527002 PARMSYAD DS F SERVICE HANDLER ADDRESS 11530002 PARMCLAD DS F CLEANUP ROUTINE ADDRESS 11533002 PARMRTAD DS F RETRY ADDRESS 11536002 PARMRGAD DS F REGISTER SAVEAREA POINTER 11539002 PARMID DS CL4 MODULE ID 11542002 PARMLENG EQU * 11550002 PARMSIZE EQU PARMLENG-PARMLIST 11560002 MEXIT 11570002 MEND */; 11580002 *%CTMMAC: IF CTMXV ^= 'YES' 11590002 * %THEN %GO TO CTML1; 11600002 * %ELSE %; 11650002 *@EJECT; 11674903 */********************************************************************/ 11700002 */* */ 11750002 */* EXTENDED SAVEAREA MAPPING FOR SVC 35 */ 11800002 */* */ 11850002 */* OS/VS2 RELEASE 3.7 */ 11900003 */* */ 11950002 */* THIS MAPPING OF XSA HAS DIFFERENT NAMES FROM THE BAL MAPPING OF */ 12000002 */* XSA. THE PL/S VERSION IS USED IN IEAVVWTO AND THE BAL IN */ 12050002 */* IEAVMWTO. */ 12100002 */********************************************************************/ 12150002 *DECLARE 12200002 * 1 XVSAV CHAR(48) DEFINED(RBEXSAVE) BDY(WORD), 12250002 * /* EXTENDED SAVEAREA */ 12300002 * 2 XVA0 PTR(31), /* REGISTER SAVEAREA AND WPL PARM 12350003 * LENGTH COMMUNICATION AREA @ZA37220*/ 12375003 * 2 XVA4 PTR(31), /* REGISTER, D23 SAVEAREA @ZA41986*/ 12400003 * 3 XVFNCT CHAR(1), /* D23 PROCESS CODE @ZA41986*/ 12410003 * 3 XVAMOD CHAR(1), /* D23 MODULE ID @ZA41986*/ 12420003 * 3 XVA41 CHAR(1), /* RESERVED @ZA41986*/ 12430003 * 3 XVREASON CHAR(1), /* D23 REASON CODE @ZA41986*/ 12440003 * 2 XVA8 PTR(31), /* REGISTER SAVEAREA */ 12450002 * 2 XVRDMSV CHAR(6), /* SAVE ARE FOR ROUTE/DESC CODES 12500002 * AND MSGTYPE FIELDS. */ 12550002 * 3 XVDESCD CHAR(2), /* DESC CODES SAVE AREA */ 12600002 * 3 XVRCSAVE CHAR(2), /* ROUTE CODES SAVE AREA */ 12650002 * 3 XVMSGTYP CHAR(2), /* MSGTYPE SAVE AREA */ 12700002 * 2 XVMSGLGH FIXED(15), /* MSGLENGTH, 4 + MSGTEXT LENGTH */ 12750002 * 2 XVPARMAD PTR(31), /* ADDR OF WPL PASSED BY THE USER */ 12800002 * 2 XVWQEAD PTR(31), /* ADDR OF WQE CONSTRUCTED BY SVC35*/ 12850002 * 2 XVDFLAGS FIXED(32), /* FLAGS WORD */ 12900002 * 3 XVD0 BIT(8), /* FIRST FLAGS BYTE */ 12950002 * 4 XVD0S250 BIT(1), /* IF ON, USER'S EXIT PARM IN SP250 13000002 * IF OFF, PARM LIST IS IN SP229 */ 13050002 * 4 XVD0RPFD BIT(1), /* REPLY ID AVAIL & PUT IN ORE */ 13100002 * 4 XVD0NWQE BIT(1), /* NEED A WQE */ 13150002 * 4 XVD0NORE BIT(1), /* NEED AN ORE */ 13200002 * 4 XVD0QID BIT(1), /* QID IS PRESENT IN THE WPL */ 13250002 * 4 XVD0WWB BIT(1), /* A WWB HAS BEEN OBTAINED */ 13300002 * 4 XVD0USER BIT(1), /* RETURN TO USER IF SET ON BY THE 13350002 * WTP ROUTINE. */ 13400002 * 4 XVD0HDCY BIT(1), /* THIS MESSAGE IS A WTP TO BE SENT 13450002 * TO HARDCOPY ONLY. */ 13500002 * 3 XVD1 BIT(8), /* SECOND FLAGS BYTE */ 13550002 * 4 XVD1PRIV BIT(1), /* USER IS A PRIVILEGED TASK */ 13600002 * 4 XVD1CFPL BIT(1), /* CORE WAS FOUND FOR PARM LIST */ 13650002 * 4 XVD1ALDN BIT(1), /* ALL DONE GETTING WQE/ORE BLOCKS */ 13700002 * 4 XVD1OEXT BIT(1), /* AN ORE EXISTS FOR THIS WQE */ 13750002 * 4 XVRESV01 BIT(1), /* RESERVED */ 13800002 * 4 XVD1PP BIT(1), /* USER IS A PROBLEM PROGRAM */ 13850002 * 4 XVD1AUTH BIT(1), /* USER IS AN AUTHORIZED PROGRAM */ 13900002 * 4 XVD1PERR BIT(1), /* PARM LIST FOUND TO BE IN ERROR */ 13950002 * 3 XVD2 BIT(8), /* THIRD FLAGS BYTE */ 14000002 * 4 XVD2CON BIT(1), /* CONNECTING MLWTO */ 14050002 * 4 XVD2RDC BIT(1), /* ROUTE/DESCRIPTOR CODES EXIST */ 14100002 * 4 XVD2MSGT BIT(1), /* MSGTYPE FIELD EXISTS */ 14150002 * 4 XVD2VALD BIT(1), /* THE WPL IS VALID */ 14200002 * 4 XVD2DELW BIT(1), /* SEND THE WQE TO HARD COPY ONLY */ 14250002 * 4 XVD2ZERO BIT(1), /* MESSAGE HAS LENGTH OF ZERO */ 14300002 * 4 XVD2WTOR BIT(1), /* THIS IS A WTOR */ 14350002 * 4 XVD2QFHC BIT(1), /* QUEUE THIS WQE FOR HARDCOPY */ 14400002 * 3 XVD3 BIT(8), /* FOURTH FLAGS BYTE */ 14450002 * 2 XVOREAD PTR(31), /* ADDR OF THE ORE */ 14500002 * 3 XVNEWDC CHAR(2), /* NEW DESC CODES FROM USER EXIT */ 14550002 * 3 XVNEWRC CHAR(2), /* NEW ROUTE CODES FROM USER EXIT 14600002 * THIS WORD IS USED TO STORE THE 14650002 * NEW ROUTE/DESC CODES AND THEN 14700002 * IT HOLDS THE ADDR OF THE ORE */ 14750002 * 2 XVWWB PTR(31), /* ADDR OF WWB FOR WAIT */ 14800002 * 3 XVEXPMAD PTR(31), /* ADDR OF PARM LIST TO USER'S EXIT 14850002 * XVEXPMAD AND XVWWB USED AT DIFFER- 14900002 * ENT TIMES IN THE PROGRAM. */ 14950002 * 2 XVWQEID CHAR(4), /* CONTENTS OF REGISTER 0 */ 15000002 * 3 XVWQEIDA CHAR(3), /* CONNECTING MESSAGE ID */ 15050002 * 3 XVCONID CHAR(1), /* CONSOLE ID PASSED BY USER */ 15100002 * 2 XVRET PTR(31), /* RETURN ADDR TO SVC 35 ISSUER */ 15150002 * 3 XVRETCOD CHAR(1); /* RETURN CODE TO BE SENT TO CALLER*/ 15200002 *@EJECT; /* @ZA41986*/ 15202703 */* THE CONSTANTS DEFINED BELOW ARE USED BY IEAVMWTO AND @ZA41986*/ 15204303 */* IEAVVWTO TO STORE D23 FOOTPRINTS. THE FIRST GROUP ARE @ZA41986*/ 15205903 */* STORED INTO THE XVFNCT FIELD AND REPRESENT PROCESS @ZA41986*/ 15207503 */* CODES IN WHICH THE ERROR OCCURRED. @ZA41986*/ 15209103 *DCL D23VALID BIT(8) CONSTANT('10'X), /* PARMLIST ERROR @ZA41986*/ 15210703 * D23OREGC BIT(8) CONSTANT('20'X), /* ORE GETCELL ERROR @ZA41986*/ 15212303 * D23OREBC BIT(8) CONSTANT('21'X), /*ORE BLDCPOOL ERROR @ZA41986*/ 15213903 * D23OREGM BIT(8) CONSTANT('22'X), /*ORE GETMAIN ERROR, SP231 15215503 * @ZA41986*/ 15217103 * D23WQEGC BIT(8) CONSTANT('30'X), /* WQE GETCELL ERROR @ZA41986*/ 15218703 * D23WQEBC BIT(8) CONSTANT('31'X), /*WQE BLDCPOOL ERROR @ZA41986*/ 15220303 * D23WQEGM BIT(8) CONSTANT('32'X), /* WQE GETMAIN ERROR @ZA41986*/ 15221903 * D23DYN BIT(8) CONSTANT('42'X); /* DYNAMIC AREA GETMAIN 15223503 * FAILURE @ZA41986*/ 15225103 *@SPACE; /* @ZA41986*/ 15226703 */* THE NEXT GROUP OF CONSTANTS DEFINE THE MODULE ID IN @ZA41986*/ 15228303 */* WHICH THE ERROR OCCURRED. @ZA41986*/ 15229903 *DCL VWTOID BIT(8) CONSTANT('01'X), /* IEAVVWTO'S ID @ZA41986*/ 15231503 * MWTOID BIT(8) CONSTANT('02'X); /* IEAVMWTO'S ID @ZA41986*/ 15233103 *@SPACE; /* @ZA41986*/ 15234703 */* THE NEXT GROUP OF CONSTANTS ARE STORED INTO THE XVREASON @ZA41986*/ 15236303 */* FIELD AND REPRESENT THE REASON FOR THE PROCESS' FAILING. @ZA41986*/ 15237903 *DCL D23BNDY BIT(8) CONSTANT('01'X), /* WTOR PARMLIST NOT ON 15239503 * FULLWORD BNDY @ZA41986*/ 15241103 * D23MLWTR BIT(8) CONSTANT('02'X), /* MULTILINE WTOR @ZA41986*/ 15242703 * D23PARM BIT(8) CONSTANT('03'X), /* PARMLIST NOT ADDRESSABLE 15244303 * TO USER @ZA41986*/ 15245903 * D23ZERO BIT(8) CONSTANT('04'X), /*ZERO TXT LGTH WTOR @ZA37220*/ 15247503 * D23SIZE BIT(8) CONSTANT('05'X); /*CALLER MODIFIED WPL 15248303 * DURING WTO PROCESSNG @ZA37220*/ 15249103 *%CTML1: IF CTMWWB ^= 'YES' %THEN %GOTO CTML2; 15250002 * %ELSE %; 15300002 *@EJECT; 15324903 */********************************************************************/ 15350002 */* */ 15400002 */* WWB */ 15450002 */* */ 15500002 */* WRITE TO OPERATOR WAIT BLOCK MAPPING */ 15550002 */* OS/VS2 RELEASE 3.7 */ 15600003 */* */ 15650002 */* METHOD OF ACCESS */ 15700002 */* BAL - CODE THE FOLLOWING: IHACTM WWB */ 15750002 */* PL/S - 1. DECLARE THE MACRO CHARACTER VARIABLE CTMWWB. */ 15800002 */* 2. SET CTMWWB EQUAL TO 'YES' */ 15850002 */* 3. %INCLUDE SYSLIB(IHACTM) */ 15900002 */* 4. DCL WWBPTR. */ 15950002 */* FUNCTION */ 16000002 */* THE WWB IS USED TO WAIT FOR A WQE OR ORE TO BE FREE'D. */ 16050002 */* IF A WQE IS NEEDED, A WWB IS PLACED ON THE DOUBLY LINKED */ 16100002 */* CHAIN POINTED AT BY UCMWECBH AND UCMWECBT. THE PROGRAM NEEDING*/ 16150002 */* THE WQE THEN WAITS ON THE ECB PART OF THE WWB, WHEN A WQE IS */ 16200002 */* FREED AND THE WWB IS AT THE TOP OF THE CHAIN, THE ECB IS */ 16250002 */* POSTED. IF AN ORE IS NEEDED THEN A WWB IS PLACED ON THE */ 16300002 */* CHAIN POINTED AT BY UCMOECBH AND UCMOECBT */ 16350002 */* */ 16400002 */********************************************************************/ 16450002 *DCL 1 WWB BASED(WWBPTR), 16500002 * 2 WWBFWDPT PTR(31), /* FORWARD CHAIN PTR */ 16550002 * 2 WWBBCKPT PTR(31), /* BACKWARD CHAIN PTR */ 16600002 * 2 WWBASCB PTR(31), /* ADDR OF THE USERS ASCB */ 16650002 * 2 WWBTCBAD PTR(31), /* ADDR OF THE USERS TCB */ 16700002 * 2 WWBFLAGS BIT(8), /* FLAGS BYTE */ 16750002 * 3 WWBPOSTD BIT(1), /* THIS ECB HAS BEEN POSTED */ 16800002 * 2 WWBRESRV CHAR(3), /* RESERVED */ 16850002 * 2 WWBECB PTR(31); /* ECB PART OF WTOECB */ 16900002 */**************** END OF WWB ****************************************/ 16950002 * 17000002 *%DCL WWBSIZE CHAR; /* DCL SIZE OF WWB VARIABLE */ 17050002 *% WWBSIZE = 'LENGTH(WWB)' ; /* GET LENGTH OF WWB */ 17100002 *%CTML2: IF CTMDOMPL ^= 'YES' %THEN %GOTO CTML3; 17150002 * %ELSE %; 17200002 *@EJECT; 17250003 */********************************************************************/ 17290003 */* PARAMETER LIST FOR IEAVXDOM - SVC 87 */ 17330003 */* */ 17370003 */* OS/VS2 RELEASE 3.7 */ 17410003 */* */ 17450002 */* THIS DECLARATION DEFINES THE PARAMETER LIST FOR SVC 87. ON */ 17500002 */* ENTRY REGISTER 1 CONTAINS EITHER ONE MESSAGE ID OR A POINTER */ 17550002 */* TO A LIST OF MESSAGE IDS. THE PARAMETER LIST IS USED WHEN */ 17600002 */* REGISTER 1 POINTS TO A LIST OF MESSAGE IDS. THE MAXIMUM */ 17650002 */* NUMBER OF IDS ALLOWED IS 60. */ 17700002 */* */ 17750002 */* THE LIST IS DECLARED AS BASED RATHER THAN ARRAY FOR SPPED OF */ 17800002 */* ACCESSING THE IDS. */ 17850002 */* */ 17900002 */********************************************************************/ 17950002 * DECLARE 18000003 * 1 DOMPL BASED(DOMPLPTR), /* MESSAGE ID ENTRY */ 18040003 * 3 DOMPFLAG BIT(8), /* FLAGS BYTE OF ID ENTRY */ 18080003 * 5 DOMPEND BIT(1), /* IF ON THEN END OF PARM LIST */ 18120003 * 3 DOMPID PTR(24); /* MESSAGE ID PART OF ENTRY */ 18160003 *%DCL DOMPLSZ CHAR; 18200003 *% DOMPLSZ = 'LENGTH(DOMPL)'; 18240003 *%CTML3: IF CTMXD ^= 'YES' %THEN %GOTO CTML4; 18350002 * %ELSE %; 18400002 *@EJECT; 18424903 */********************************************************************/ 18450002 */* */ 18500002 */* XSDOM - EXTENDED SAVEAREA FOR XDOM (SVC 87) */ 18550002 */* */ 18600002 */* OS/VS2 RELEASE 3.7 */ 18650003 */* */ 18700002 */* THE EXTENDED SAVEAREA IS A 48 BYTE AREA PROVIDED FOR SVCS */ 18750002 */* AND IS IN THE SVRB AT RBEXSAVE. XSDOM DEFINES THE USE OF THE */ 18800002 */* AREA FOR SVC 87 OR IEAVXDOM THE DOM SERVICE ROUTINE. */ 18850002 */* */ 18900002 */********************************************************************/ 18950002 * DECLARE 19000003 * 1 XSDOM CHAR(48) DEFINED(RBEXSAVE) BDY(WORD), 19040003 * 2 XSREG0 FIXED(31), /* SAVE REG0 AT ENTRY TO PROGRAM */ 19080003 * 2 XSREG1 PTR(31), /* SAVE REG1 AT ENTRY TO PROGRAM */ 19120003 * 2 XSREG14 PTR(31), /* SAVE REG 14 AT ENTRY TO PROGRAM */ 19160003 * 2 * CHAR(4), BDY(WORD), /* PLACE HOLDER @ZA37220*/ 19200003 * 3 XSERRCD PTR(8), /* REASON CODE FOR THE 157 ABEND */ 19240003 * 3 XSFLAGS BIT(8), /* FLAGS FIELD FOR XDOM */ 19280003 * 4 XSDOMR BIT(1), /* DOM HAD REPLY=YES SPECIFIED. */ 19320003 * 4 XSAUTH BIT(1), /* USER IS SUPERVISOR, KEY 0-7 19360003 * OF IS APF AUTHORIZED. */ 19400003 * 4 XSENDLST BIT(1), /* END OF ID LIST MARKER WAS FOUND */ 19440003 * 3 XSCBSIZE FIXED(15), /* SIZE OF DOMCB TO BE OBTAINED. */ 19480003 * 2 XSAL, /* USED FOR POST AND SUBSYSTEM 19520003 * PARAMETER LISTS. */ 19560003 * 3 XSAL01 PTR(31), /* FIRST PARAMETER IN POST LIST */ 19600003 * 3 XSAL02 PTR(31), /* SECOND PARM IN LIST */ 19640003 * 3 XSAL03 PTR(31), /* THIRD PARM IN LIST */ 19680003 * 3 XSPLPTR PTR(31), /* PTR TO ACCESS THE DOM PARM LIST */ 19720003 * 3 XSIDPTR PTR(31), /* ADDR OF LAST ID USED. SET 19760003 * INITIALLY TO WORD BEFORE FIRST 19800003 * AVAILABLE ID IN THE DUMMY DOMCB */ 19840003 * 2 XSDMAREA CHAR(12); /* SPACE FOR SSDM BLOCK */ 19880003 *%CTML4: IF CTMCQE ^= 'YES' %THEN %GOTO CTML5; 20150002 * %ELSE %; 20200002 *@EJECT; 20224903 */********************************************************************/ 20250002 */* */ 20300002 */* CQE MAPPING */ 20350002 */* */ 20400002 */* OS/VS2 RELEASE 3.7 */ 20450003 */* */ 20500002 */* PL/S VERSION. THE CQE IS USED TO QUEUE WQE'S TO AN INDIVIDUAL */ 20550002 */* UCME. EACH CQE CONTAINS SPACE FOR FIVE ENTRIES PLUS A FIELD */ 20600002 */* TO CHAIN ADDITIONAL CQE'S. EACH ENTRY CONTAINS FLAGS WHICH */ 20650002 */* DESCRIBE THE ENTRY. */ 20700002 */* */ 20750002 */********************************************************************/ 20800002 *DCL 1 CQE BASED(CQEPTR), 20850003 * 3 CQEWQE BDY(WORD) CHAR(4),/* CQE ENTRY */ 20890003 * 5 CQEFLAG BIT(8), /* CONSOLE OUTPUT QUEUE FLAGS */ 20930003 * 7 CQEEOB BIT(2), /* END OF CQE BLOCK WHEN BOTH ON */ 20970003 * 9 CQEEOQ BIT(1), /* LAST ENTRY ON QUEUE */ 21010003 * 9 * BIT(1), /* NEVER ON ALONE */ 21050003 * 7 * BIT(1), /* RESERVED */ 21090003 * 7 CQEATTOP BIT(1), /* START AT TOP OF MLWTO CHAIN */ 21130003 * 7 CQEMLQHC BIT(1), /* QUEUED FOR HARDCOPY */ 21170003 * 7 CQEMAJOR BIT(1), /* WQE IS MAJOR FOR MLWTO */ 21210003 * 7 CQEAVAIL BIT(1), /* THIS ENTRY NO LONGER NEEDED */ 21250003 * 7 CQEENTR BIT(1), /*ENTRY EXISTS */ 21290003 * 5 CQEWQEA PTR(24), /* PTR TO WQE OR NEXT CQE */ 21330003 * 3 *(4) FIXED(31),/* SPACE HOLDER FOR NEXT 4 ENTRIES */ 21370003 * 3 CQEEND BIT(8), /* FLAGS FOR LAST CQE ENTRY */ 21410003 * 3 CQEENDA PTR(24); /* ADDR OF NEXT CQE */ 21450003 *%CQESIZE = 'LENGTH(CQE)'; 21490003 *DCL CQESP CONSTANT(241) FIXED(15); 21530003 *%CTML5: IF CTMCXSA ^= 'YES' %THEN %GOTO CTML6; 21750002 * %ELSE %; 21800002 *@EJECT; 21824903 */********************************************************************/ 21850002 */* */ 21900002 */* CXSA MAPPING (MAPS SVRB EXTENDED SAVE AREA OF SVC 72 */ 21950002 */* */ 22000002 */* OS/VS2 RELEASE 3.7 */ 22050003 */* */ 22100002 */* METHOD OF ACCESS */ 22150002 */* BAL - CODE THE FOLLOWING: IHACTM CXSA */ 22200002 */* PL/S - 1. DECLARE THE MACRO CHARACTER VARIABLE CTMCXSA. */ 22250002 */* 2. SET CTMCXSA EQUAL TO 'YES'. */ 22300002 */* 3. %INCLUDE SYSLIB(IHACTM) */ 22350002 */* 4. DCL CXSAPTR */ 22400002 */* */ 22450002 */* PL/S VERSION. THE CXSA MAPPING IS USED BY ALL MODULES OF */ 22500002 */* SVC 72 TO PROVIDE A COMMON MAPPING OF THE */ 22550002 */* SVRB EXTENDED SAVE AREA. */ 22600002 */* */ 22650002 */********************************************************************/ 22700002 *DCL 1 CXSA BASED(CXSAPTR), 22750002 * 3 CSANPTR PTR(31), /* PTR TO CSANAME */ 22800002 * 3 CSADCBP PTR(31), /* FRR WORK, INITIALIZED TO 0 */ 22850002 * 3 CSANAME CHAR(8), /* EBCDIC NAME OF MODULE CALLED */ 22900002 * 3 CSAUCM BDY(WORD) CHAR(4), /* CODE AND UCM PTR */ 22950002 * 5 CSACODE FIXED(8), /*CONSOLE SWITCH REASON @ZA44318*/ 23000003 * 5 CSAUCMA PTR(24), /* UCME PTR OR CPU ID OR 0 */ 23450002 * 3 CSACTLM PTR(31), /* PTR TO UCM BASE */ 23500002 * 3 CSAXA PTR(31), /* FOR */ 23550002 * 3 CSAXB PTR(31), /* GENERAL */ 23600002 * 3 CSAXC PTR(31), /* USE */ 23650002 * 3 CSAXD PTR(31), /* OF */ 23700002 * 3 CSAXE PTR(31), /* INDIVIDUAL */ 23750002 * 3 CSAXF PTR(31) ; /* MODULES */ 23800002 */* THE FOLLOWING CONSTANTS ARE THE VARIOUS REASON CODES @ZA44318*/ 23850003 */* ASSOCIATED WITH THE FIELD CSACODE. CSACODE WILL BE SET @ZA44318*/ 23858303 */* BY ANY MODULE CALLING IEAVSWCH, WHO WILL USE THIS CODE @ZA44318*/ 23866603 */* IN ITS PROCESSING AND TO ISSUE ITS OPERATOR MESSAGE. @ZA44318*/ 23874903 *DCL CSAHC FIXED(8) CONSTANT(2), /*SWITCH HARDCPY FROM SYSLOG 23883203 * @ZA44318*/ 23891503 * CSAEXTI FIXED(8) CONSTANT(4), /*EXTERNAL INTERRUPT @ZA44318*/ 23899803 * CSAIOER FIXED(8) CONSTANT(5), /*I/O ERROR @ZA44318*/ 23908103 * CSASWER FIXED(8) CONSTANT(6), /*SOFTWARE ERROR @ZA44318*/ 23916403 * CSAVMST FIXED(8) CONSTANT(8), /*VARY MSTCONS COMMAND @ZA44318*/ 23924703 * CSAOPER FIXED(8) CONSTANT(9), /*CONSOLE OPEN ERROR @ZA44318*/ 23933003 * CSAACR FIXED(8) CONSTANT(16), /*ACR PROCESSING CALL @ZA44318*/ 23941303 * CSAVCHAN FIXED(8) CONSTANT(32), /*VARY CHANNEL COMMAND @ZA44318*/ 23949603 * CSAVCPU FIXED(8) CONSTANT(64); /*VARY CPU COMMAND @ZA44318*/ 23957903 */* THE FOLLOWING CONSTANTS ARE SET BY IEAVSWCH INTO CSACODE @ZA44318*/ 23966203 */* BEFORE CALLING A DSP TO PERFORM AN OPEN OR CLOSE. @ZA44318*/ 23974503 *DCL CSAOPEN FIXED(8) CONSTANT(0), /*TEST CSACODE FOR OPEN @ZA44318*/ 23982803 * CSACLOSE FIXED(8) CONSTANT(4); /*TEST CSACODE FOR CLOS @ZA44318*/ 23991103 *%CTML6: IF CTMQR0 ^= 'YES' %THEN %GOTO CTML7; 24000002 * %ELSE %; 24050002 *@EJECT; 24074903 */********************************************************************/ 24100002 */* */ 24150002 */* QR0 */ 24200002 */* */ 24250002 */* IEAVMQR0 PARAMTER LIST */ 24300002 */* OS/VS2 RELEASE 3.7 */ 24350003 */* */ 24400002 */* METHOD OF ACCESS */ 24450002 */* BAL - CODE THE FOLLOWING: IHACTM QR0 */ 24500002 */* PL/S - 1. DECLARE THE MACRO CHARACTER VARIABLE CTMQR0. */ 24550002 */* 2. SET CTMQR0 EQUAL TO 'YES' */ 24600002 */* 3. %INCLUDE SYSLIB(IHACTM) */ 24650002 */* 4. DCL QR0PPTR. */ 24700002 */* FUNCTION */ 24750002 */* THE QR0 PARAMTER LIST IS INITIALIZED BY IEAVMWSV */ 24800002 */* AND USED AS INPUT TO IEAVMQR0. */ 24850002 */* */ 24900002 */********************************************************************/ 24950002 *DCL 1 QR0PARMS BASED(QR0PPTR), 25000002 * 2 QR0WQE CHAR(4) BDY(WORD), /* WQE ADDRESS. */ 25050002 * 3 QR0WQEB BIT(8), /* UNUSED */ 25100002 * 3 QR0WQEA PTR(24), /* WQE ADDRESS */ 25150003 * 2 QR0UCME PTR(31), /* UCME ADDRESS. */ 25200002 * 2 QR0UCM PTR(31), /* UCM ADDRESS. */ 25250002 * 2 QR0CMQCN PTR(31); /* ADDRESS OF IEECMQCN RTN */ 25300002 *%CTML7: IF CTMFTPT ^= 'YES' %THEN %GOTO CTML8; 25350002 * %ELSE %; 25400002 *@EJECT; 25424903 */********************************************************************/ 25450002 */* */ 25500002 */* FRR/ESTAE PARM LIST */ 25550002 */* */ 25600002 */* OS/VS2 RELEASE 3.7 @ZA19994*/ 25605003 */* */ 25610002 */* METHOD OF ACCESS */ 25615002 */* BAL - CODE THE FOLLOWING: IHACTM FTPT */ 25620002 */* PL/S - DECLARE THE MACRO VARIABLE CTMFTPT AND SET IT TO */ 25625002 */* 'YES'. DECLARE PARMPTR AS BASE FOR PARMLIST AND INCLUDE */ 25630002 */* IHACTM. */ 25635002 */* */ 25640002 */* THIS PARMLIST IS USED BY THE PROTECTED ROUTINE TO COMMUNICATE */ 25650002 */* WITH THE RECOVERY ROUTINE. IT CONTAINS THE FOOTPRINT OF THE */ 25700002 */* ACTIVITY BEING PERFORMED BY THE PROTECTED ROUTINE WHEN THE */ 25750002 */* ERROR WAS ENCOUNTERED. */ 25800002 */* */ 25850002 */********************************************************************/ 25900002 * DCL 1 PARMLIST BASED(PARMPTR), /*RECOVERY PARM LIST */ 25950002 * 2 PARMSTAT, /*STATUS WORD */ 26000002 * 3 PARMFTPT PTR(8), /*FOOTPRINT BYTE */ 26050002 * 3 PARMFLAG BIT(8), /*FLAG BYTE */ 26100002 * 4 PARMSDWA BIT(1), /*SDWA INDICATOR */ 26150002 * 4 PARMCWT BIT(1), /*CONTINUE WITH TERM. IND. */ 26200002 * 4 PARMRECU BIT(1), /*ESTAE RECURSION COUNTER */ 26250002 * 4 PARMFRID BIT(1), /*FRR INDICATOR */ 26300002 * 4 PARMWARG BIT(1), /*REG UPDATE INDICATOR */ 26350002 * 4 PARMNDMP BIT(1), /*NO DUMP INDICATOR @ZA19994*/ 26400003 * 4 * BIT(1), /*RESERVED */ 26470002 * 4 * BIT(1), /*RESERVED */ 26540002 * 3 PARMSYSR PTR(8), /*SYSTEM SERVICE ID */ 26610002 * 3 PARMCTBK PTR(8), /*CONTROL BLOCK ID */ 26680002 * 2 PARMSYAD PTR(31), /*SERVICE HANDLER ADDRESS */ 26750002 * 2 PARMCLAD PTR(31), /*CLEANUP ROUTINE ADDRESS */ 26820002 * 2 PARMRTAD PTR(31), /*RETRY ADDRESS */ 26890002 * 2 PARMRGAD PTR(31), /*REGISTER SAVEAREA POINTER */ 26960002 * 2 PARMID CHAR(4); /*MODULE ID */ 27030002 * %CTML8:; 27100002