*%/* 00052002 * /* MACCOMP Y-1 SC1CL/PZD81 */ 00054002 * /* MACSTAT Y-1 72271/015032 */ 00060002 * /* 00070002 MACRO 00100002 &NAME ATTACH &EP=,&EPLOC=,&DE=,&DCB=,&PARAM=,&VL=,&ECB=, I270X00200002 &GSPV=,&KEY=PROP,&GSPL=,&SHSPL=,&ETXR=,&LPMOD=, I270X00300002 &DPMOD=,&MF=I,&SF=I,&SHSPV=,&SM=PROB,&SZERO=YES, I270X00400002 &JSTCB=NO,&SVAREA=YES,&ROLL=(YES,NO),&HIARCHY=, I270X00500002 &JSCB=,&GIVEJPQ=NO,&TASKLIB=,&TSLOGON=NO, 20021X00600002 &STAI=,&PURGE=,&ASYNCH=, Y02752X00700002 &ESTAI=,&TERM=NO,&NSHSPL=,&NSHSPV=,&RSAPF=NO, @Z40RP9BX00750003 &RELATED=, X00760002 &LSQA=0,&DISP=YES,&TID=0,&TQE=,&FPREGSA= X02050 00800002 GBLB &IHBSWA,&IHBSWB 00900002 GBLC &IHBNO 01000002 LCLA &A,&E,&F,&G,&L,&K,&X,&NUMB 01100002 LCLA &NUMB1,&NUMB2,&NUMB3,&NUMB4 Y02752 01120002 LCLB &SWSTAI,&SWESTAI Y02752 01140002 LCLC &STAITYP,&STXADDR,&STPADDR Y02752 01160002 LCLC &H,&CHAR,&PARA,&FUDGE,&GNAME 01200002 * /* MACDATE Y-1 72271 */ 01202002 * /* 01204002 &SWSTAI SETB ('&STAI(1)' NE '' ) SWITCH VALUE 1 IF STAI Y02752 01206002 &SWESTAI SETB ('&ESTAI(1)' NE '' ) SWITCH VALUE 1 IF ESTAI Y02752 01212002 AIF (&SWSTAI AND &SWESTAI).ERSTAI Y02752 01218002 AIF (NOT &SWESTAI).STTYP1 Y02752 01224002 AIF (N'&ESTAI GT 2).ERROR Y02752 01230002 &STXADDR SETC '&ESTAI(1)' EXIT RTN ADDR Y02752 01236002 &STPADDR SETC '&ESTAI(2)' PARM LIST FOR EXIT RTN Y02752 01242002 &STAITYP SETC 'ESTAI' Y02752 01248002 AGO .STTYP2 Y02752 01254002 .STTYP1 AIF (NOT &SWSTAI).STTYP2 Y02752 01260002 AIF (N'&STAI GT 2).ERROR Y02752 01266002 &STXADDR SETC '&STAI(1)' EXIT RTN ADDR Y02752 01272002 &STPADDR SETC '&STAI(2)' PARM LIST FOR EXIT RTN Y02752 01278002 &STAITYP SETC 'STAI' Y02752 01284002 .STTYP2 ANOP Y02752 01290002 &IHBNO SETC '306' 02000002 AIF ('&HIARCHY' NE '' AND '&HIARCHY' NE '0' *02100002 AND '&HIARCHY' NE '1').ERRHID LCS1 02200002 AIF ('&MF' EQ 'L' OR('&SF' EQ 'L' AND '&MF(1)' EQ 'E')).E1 02300002 AIF ('&SF' EQ 'L' AND '&PARAM' NE '').ERROR2 02400002 AIF ('&EP' NE '' AND '&EPLOC' NE '').ERROR4 02500002 AIF ('&EP' NE '' AND '&DE' NE '').ERROR4 02600002 AIF ('&DE' NE '' AND '&EPLOC' NE '').ERROR4 02700002 AIF ('&LPMOD' EQ '').CONTAAA 02800002 AIF ('&LPMOD'(1,1) EQ '-').ERROR7 02900002 .CONTAAA ANOP 03000002 AIF ('&DISP' NE 'YES' AND '&DISP' NE 'NO').ERDISP 03100002 AIF ('&LSQA' NE '0' AND (&SWSTAI OR &SWESTAI)).E2 Y02752 03200002 AIF ('&LSQA' NE '0' AND '&PURGE' NE '' ).E3 Y02752 03300002 AIF ('&LSQA' NE '0' AND '&ASYNCH' NE '' ).E4 Y02752 03400002 AIF ('&LSQA' NE '0' AND ('&SZERO' NE 'NO')).E5 03500002 AIF ('&GIVEJPQ' NE 'NO' AND '&LSQA' NE '0').E6 03600002 AIF ('&LSQA' NE '0' AND '&GSPV' NE '').E7 03700002 AIF ('&LSQA' NE '0' AND '&GSPL' NE '').E8 03800002 AIF ('&LSQA' NE '0' AND '&SHSPV' NE '').E9 03900002 AIF ('&LSQA' NE '0' AND '&SHSPL' NE '').E10 04000002 AIF ('&TQE' NE 'YES' AND '&TQE' NE 'NO' AND '&TQE' NE '').ERX04100002 TQE X02050 04200002 AIF ('&FPREGSA' NE 'YES' AND '&FPREGSA' NE 'NO' AND '&FPREGSX04300002 A' NE '').ERFP X02050 04400002 AIF ('&NSHSPL' NE '' AND '&NSHSPV' NE '').ERNSHSP Y02752 04401002 AIF ('&TERM' NE 'YES' AND '&TERM' NE 'NO').ERTERM Y02752 04402002 .* HERE INITIALIZE VARIABLES &NUMB,&NUMB1,&NUMB2,&NUMB3,&NUMB4 Y02752 04403002 .* THESE MUST NOT BE ALTERED ONCE SET. Y02752 04404002 .* BYTE AT OFFSET DECIMAL 27 IS DEFINED BY &NUMB Y02752 04405002 AIF ('&DISP' EQ 'YES').NUMBX1 Y02752 04406002 &NUMB SETA (&NUMB+128) DISP=NO FLAG SET TO 1 Y02752 04407002 .NUMBX1 ANOP Y02752 04408002 AIF ('&JSCB' EQ '').NUMBX2 Y02752 04409002 &NUMB SETA (&NUMB+64) JSCB ADDRESS SPECIFIED FLAG Y02752 04410002 .NUMBX2 ANOP Y02752 04411002 AIF ('&GIVEJPQ' EQ 'NO').NUMBX3 Y02752 04412002 &NUMB SETA (&NUMB+32) GIVEJPQ=YES FLAG SET TO 1 Y02752 04413002 .NUMBX3 ANOP Y02752 04414002 AIF ('&KEY' EQ 'PROP').NUMBX4 Y02752 04415002 &NUMB SETA (&NUMB+16) KEY=ZERO FLAG ON Y02752 04416002 .NUMBX4 ANOP Y02752 04417002 AIF ('&SZERO' EQ 'YES').NUMBX5 Y02752 04418002 &NUMB SETA (&NUMB+8) SZERO=NO FLAG SET TO 1 Y02752 04419002 .NUMBX5 ANOP Y02752 04420002 AIF ('&SVAREA' EQ 'YES').NUMBX6 Y02752 04421002 &NUMB SETA (&NUMB+4) SVAREA=NO FLAG SET TO 1 Y02752 04422002 .NUMBX6 ANOP Y02752 04423002 AIF ('&JSTCB' NE 'YES').NUMBX7 Y02752 04424002 &NUMB SETA (&NUMB+2) JSTCB=YES FLAG SET TO 1 Y02752 04425002 .NUMBX7 ANOP Y02752 04426002 AIF ('&SM' NE 'SUPV').NUMBX8 Y02752 04427002 &NUMB SETA (&NUMB+1) SM=SUPV FLAG ON Y02752 04428002 .NUMBX8 ANOP BYTE IS COMPLETE Y02752 04429002 .* BYTE AT OFFSET DECIMAL 8 IS DEFINED BY &NUMB1 Y02752 04430002 &NUMB1 SETA 8 OS/VS2 REL 2 EXTNDED PARM LIST Y02752 04431002 AIF ('&TSLOGON' NE 'YES').NUMB1X1 Y02752 04432002 &NUMB1 SETA (&NUMB1+4) TSLOGON=YES FLAG ON Y02752 04433002 .NUMB1X1 ANOP Y02752 04434002 AIF ('&TASKLIB' EQ '').NUMB1X2 Y02752 04435002 &NUMB1 SETA (&NUMB1+2) TASKLIB ADDRESS SPECIFIED FLAG Y02752 04436002 .NUMB1X2 ANOP Y02752 04437002 AIF (NOT (&SWSTAI OR &SWESTAI) ).NUMB1X3 Y02752 04438002 &NUMB1 SETA (&NUMB1+1) FLAG FOR STAI OR ESTAI Y02752 04439002 .NUMB1X3 ANOP BYTE IS COMPLETE Y02752 04440002 .* BYTE AT OFFSET DECIMAL 20 IS DEFINED BY &NUMB2 Y02752 04441002 AIF ('&TQE' NE 'NO').NUMB2X1 Y02752 04442002 &NUMB2 SETA (&NUMB2+128) BIT0=1 FOR TQE=NO, OS/VS1 ONLY Y02752 04443002 AGO .NUMB2X3 Y02752 04444002 .NUMB2X1 ANOP Y02752 04445002 AIF ('&TQE' NE 'YES').NUMB2X3 Y02752 04446002 &NUMB4 SETA 128 FOR TQE BIT OFF Y02752 04447002 .NUMB2X3 ANOP Y02752 04448002 AIF ('&FPREGSA' NE 'NO').NUMB2X2 Y02752 04449002 &NUMB2 SETA (&NUMB2+64) BIT1=1, FPREGSA=NO,OS/VS1 ONLY Y02752 04450002 AGO .NUMB2X4 Y02752 04451002 .NUMB2X2 ANOP Y02752 04452002 AIF ('&FPREGSA' NE 'YES').NUMB2X4 Y02752 04453002 &NUMB4 SETA (&NUMB4+64) FOR FPREGSA BIT OFF Y02752 04454002 .NUMB2X4 ANOP Y02752 04455002 &NUMB2 SETA (&NUMB2+32) BIT2=1 FOR OS/VS2 REL 1 LIST Y02752 04456002 &NUMB4 SETA (255-&NUMB4) FOR RESETTING TQE,FPREGSA BITS Y02752 04457002 .* BYTE AT OFFSET DECIMAL 44 IS DEFINED BY &NUMB3 Y02752 04458002 AIF (NOT (&SWSTAI OR &SWESTAI) ).NUMB3X1 Y02752 04459002 .* PURGE BITS (BITS 6 AND 7) ARE 00, CORRECT FOR PURGE=QUIESCE Y02752 04460002 AIF ('&PURGE' EQ '').NOPRGE Y02752 04461002 AIF ('&PURGE' EQ 'QUIESCE').PRGEOK Y02752 04462002 &NUMB3 SETA 1 SET TO PURGE=HALT FLAGS Y02752 04463002 AIF ('&PURGE' EQ 'HALT').PRGEOK Y02752 04464002 &NUMB3 SETA 2 SET TO PURGE=NONE FLAGS Y02752 04465002 AIF ('&PURGE' EQ 'NONE').PRGEOK Y02752 04466002 AGO .ERROZ INVALED PURGE OPERAND Y02752 04467002 .NOPRGE ANOP &NUMB3 IS SET TO QUIESCE Y02752 04468002 AIF (&SWSTAI).PRGEOK CORRECT DEFAULT FOR STAI Y02752 04469002 &NUMB3 SETA 2 SET TO NONE, DEFAULT FOR ESTAI Y02752 04470002 .PRGEOK ANOP PURGE BITS ARE SET CORRECTLY Y02752 04471002 AIF ('&ASYNCH' EQ '').NOASYNC Y02752 04472002 AIF ('&ASYNCH' EQ 'NO').ASYNCOK Y02752 04473002 &NUMB3 SETA (&NUMB3+4) SET ASYNCH=YES FLAG Y02752 04474002 AIF ('&ASYNCH' EQ 'YES').ASYNCOK Y02752 04475002 AGO .ERROZ INVALID ASYNCH OPERAND Y02752 04476002 .NOASYNC ANOP CHECK DEFAULTS Y02752 04477002 AIF (&SWSTAI).ASYNCOK ASYNCH=NO IS STAI DEFAULT Y02752 04478002 &NUMB3 SETA (&NUMB3+4) ASYNCH=YES IS ESTAI DEFAULT Y02752 04479002 .ASYNCOK ANOP ASYNCH BIT IS SET CORRECTLY Y02752 04480002 AIF (&SWSTAI).NUMB3X1 TERM AND ESTAI FLAGS NOT SET Y02752 04481002 &NUMB3 SETA (&NUMB3+8) BIT4=1 FOR ESTAI Y02752 04482002 AIF ('&TERM' EQ 'NO').NUMB3X1 Y02752 04483002 &NUMB3 SETA (&NUMB3+16) BIT3=1 FOR TERM=YES Y02752 04484002 .NUMB3X1 ANOP BYTE IS COMPLETE Y02752 04485002 &GNAME SETC 'IHB'.'&SYSNDX' 04500002 &IHBSWA SETB ('&VL' EQ '1') 04600002 &IHBSWB SETB ('&SF' EQ '(E,(15))') 04700002 AIF ('&NAME' EQ '' OR '&SF' EQ 'L').CONTAA 04800002 &NAME DS 0H 04900002 .CONTAA AIF ('&PARAM' EQ '' AND '&MF(1)' NE 'E').CONTA 05000002 IHBOPLST ,&PARAM,MF=&MF 05100002 .CONTA AIF ('&SF' EQ 'I').IROUT 05200002 AIF ('&SF' EQ 'L').LROUT 05300002 AIF (N'&SF NE 2).ERROR3 05400002 AIF ('&SF(1)' NE 'E').ERROR3 05500002 AIF ('&SF'(4,1) EQ '(').ISAREG 05600002 LA 15,&SF(2) LOAD LIST ADDR INTO 15 05700002 AGO .CONTB 05800002 .E1 IHBERMAC 35,&IHBNO,&MF,,,0 Y02752 05900002 MEXIT 06000002 .ERROR2 IHBERMAC 71,&IHBNO,&PARAM 06100002 MEXIT 06200002 .ERROR3 IHBERMAC 41,&IHBNO,&SF,,,0 Y02752 06300002 MEXIT 06400002 .ERROR4 IHBERMAC 88,&IHBNO 06500002 MEXIT 06600002 .ERROR5 IHBERMAC 72,&IHBNO 06700002 MEXIT 06800002 .ERROR6 IHBERMAC 31,&IHBNO 06900002 MEXIT 07000002 .ERROR7 IHBERMAC 240,,LPMOD 07100002 MEXIT 07200002 .ERRHID IHBERMAC 195 07300002 MEXIT 07400002 .ISAREG AIF ('&SF(2)' EQ '(15)').CONTB 07500002 &A SETA K'&SF-6 07600002 &H SETC '&SF'(5,&A) 07700002 LR 15,&H LOAD LIST ADDR INTO 15 07800002 .CONTB ANOP 07900002 .* E FORM MUST ALLOW SETTING OF ALL FIELDS, SO THAT A LIST FORM Y02752 07920002 .* OF ALL ZEROS IS ACCEPTABLE. EXTENDED PARM LIST BITS AND Y02752 07940002 .* LENGTH FIELD MUST BE SET. Y02752 07960002 AIF ('&EP' EQ '').CONTC 08000002 LA 14,28(15,0) PICK UP EP ADDRESS 08100002 ST 14,0(15,0) INSERT EP ADDR IN LIST 08200002 MVC 28(8,15),*+10 MOVE EP SYMB INTO LIST 08300002 B *+12 BRANCH AROUND EP SYMB. 08400002 DC CL8'&EP' EP SYMBOL 08500002 AGO .CONTE 08600002 .CONTC AIF ('&EPLOC' EQ '').CONTD 08700002 AIF ('&EPLOC'(1,1) EQ '(').ISAREGA 08800002 LA 14,&EPLOC PICK UP EPLOC ADDRESS 08900002 ST 14,0(15,0) INSERT EPLOC INTO LIST 09000002 AGO .CONTE 09100002 .ISAREGA ST &EPLOC(1),0(15,0) INSERT EPLOC INTO LIST 09200002 AGO .CONTE 09300002 .CONTD AIF ('&DE' EQ '').CONTE 09400002 AIF ('&DE'(1,1) EQ '(').ISAREGB 09500002 LA 14,&DE PICK UP DE ADDRESS 09600002 ST 14,0(15,0) INSERT DE INTO LIST 09700002 MVI 0(15),X'80' SET BIT INDICATING DE 09800002 AGO .CONTE 09900002 .ISAREGB ST &DE(1),0(15,0) INSERT DE INTO LIST 10000002 MVI 0(15),X'80' SET BIT INDICATING DE 10100002 .CONTE AIF ('&DCB' EQ '').CONHID 10200002 AIF ('&DCB'(1,1) EQ '(').ISAREGC 10300002 LA 14,&DCB PICK UP DCB ADDRESS 10400002 STCM 14,7,5(15) STORE DCB INTO LIST 10500002 AGO .CONHID 10600002 .ISAREGC STCM &DCB(1),7,5(15) STORE INTO LIST 10700002 .* BITS 6 AND 7 OF BYTE 4 PREVIOUSLY DEFINED FOR HIARCHY PARM Y02752 10800002 .CONHID ANOP Y02752 11100002 .CONTF AIF ('&ECB' EQ '').CONTG 11400002 AIF ('&ECB'(1,1) EQ '(').ISAREGD 11500002 LA 14,&ECB PICK UP ECB ADDRESS 11600002 STCM 14,7,9(15) INSERT ECB INTO LIST 11700002 AGO .CONTG 11800002 .ISAREGD STCM &ECB(1),7,9(15) INSERT ECB INTO LIST 11900002 .CONTG ANOP Y02752 11930002 OI 8(15),&NUMB1 SET FLAG BYTE Y02752 11960002 AIF ('&GSPV' EQ '').CONTH 12000002 AIF ('&GSPV'(1,1) EQ '(').ISAREGE 12100002 LA 14,&GSPV.(0,0) PICK UP GSPV VALUE 12200002 ST 14,12(15,0) INSERT GSPV INTO LIST 12300002 AGO .CONTI 12400002 .ISAREGE ST &GSPV(1),12(15,0) INSERT GSPV INTO LIST 12500002 AGO .CONTI 12600002 .CONTH AIF ('&GSPL' EQ '').CONTI 12700002 AIF ('&GSPL'(1,1) EQ '(').ISAREGF 12800002 LA 14,&GSPL PICK UP GSPL ADDRESS 12900002 ST 14,12(15,0) INSERT GSPL INTO LIST 13000002 MVI 12(15),X'01' SET LIST BIT ON 13100002 AGO .CONTI 13200002 .ISAREGF ST &GSPL(1),12(15,0) INSERT GSPL INTO LIST 13300002 MVI 12(15),X'01' SET LIST BIT ON 13400002 .CONTI AIF ('&SHSPV' EQ '').CONTK 13500002 AIF ('&SHSPV'(1,1) EQ '(').ISAREGG 13600002 LA 14,&SHSPV.(0,0) PICK UP SHSPV VALUE 13700002 ST 14,16(15,0) INSERT SHSPV INTO LIST 13800002 AGO .CONTL 13900002 .ISAREGG ST &SHSPV(1),16(15,0) INSERT SHSPV INTO LIST 14000002 AGO .CONTL 14100002 .CONTK AIF ('&SHSPL' EQ '').CONTL 14200002 AIF ('&SHSPL'(1,1) EQ '(').ISAREGH 14300002 LA 14,&SHSPL PICK UP SHSPL ADDRESS 14400002 ST 14,16(15,0) INSERT SHSPL INTO LIST 14500002 MVI 16(15),X'01' SET LIST BIT ON 14600002 AGO .CONTL 14700002 .ISAREGH ST &SHSPL(1),16(15,0) INSERT SHSPL INTO LIST 14800002 MVI 16(15),X'01' SET LIST BIT ON 14900002 .CONTL AIF ('&ETXR' EQ '').CONTN 15000002 AIF ('&ETXR'(1,1) EQ '(').ISAREGI 15100002 LA 14,&ETXR PICK UP ETXR ADDRESS 15200002 STCM 14,7,21(15) INSERT ETXR IN LIST 15300002 AGO .CONTN 15400002 .ISAREGI STCM &ETXR(1),7,21(15) INSERT ETXR IN LIST 15500002 .CONTN ANOP 15600002 .CONTN0 AIF ('&DPMOD' EQ '').CONTO RORI 15700002 AIF ('&DPMOD'(1,1) EQ '(').ISAREGJ 15800002 B *+6 BRANCH AROUND DPMOD 15900002 AIF ('&DPMOD'(1,1) EQ '+' OR '&DPMOD'(1,1) EQ '-').SIGNA 16000002 DC AL2(&DPMOD) DPMOD VALUE 16100002 MVC 24(2,15),*-2 INSERT DPMOD IN LIST 16200002 AGO .CONTO 16300002 .SIGNA DC AL2(0&DPMOD) DPMOD VALUE 16400002 MVC 24(2,15),*-2 INSERT DPMOD IN LIST 16500002 AGO .CONTO 16600002 .ISAREGJ STH &DPMOD(1),24(15,0) INSERT DPMOD IN LIST 16700002 .CONTO AIF ('&LPMOD' EQ '').CONTP 16800002 AIF ('&LPMOD'(1,1) EQ '(').ISAREGK 16900002 MVI 26(15),&LPMOD INSERT LPMOD IN LIST 17000002 AGO .CONTP 17100002 .ISAREGK STC &LPMOD(1),26(15,0) INSERT LPMOD IN LIST 17200002 .CONTP ANOP I270 17300002 .* BITS 6 AND 7 OF BYTE 20 PREVIOUSLY DEFINED FOR ROLL PARMS Y02752 17400002 AIF (&NUMB4 EQ 255).TQEFPR1 Y02752 17500002 NI 20(15),&NUMB4 SET TQE AND/OR FPREGSA OFF Y02752 17600002 .TQEFPR1 ANOP X02050 17800002 OI 20(15),&NUMB2 OS/VS2 LIST, TQE,FPREGSA Y02752 17900002 AIF (&NUMB EQ 0).LSQA1 22000002 OI 27(15),&NUMB 22100002 .LSQA1 AIF ('&LSQA' EQ '0').JSCB1 22200002 AIF ('&LSQA'(1,1) EQ '(').ISAREGL 22300002 MVI 36(15),&LSQA INSERT LSQA IN LIST 22400002 AGO .JSCB1 22500002 .ISAREGL STC &LSQA(1),36(15,0) INSERT LSQA IN LIST YM1995 22600002 .JSCB1 AIF ('&JSCB' EQ '').CONTQ5 22700002 AIF ('&JSCB'(1,1) EQ '(').ISAREG1 22800002 LA 14,&JSCB PICK UP JSCB ADDRESS 22900002 STCM 14,7,37(15) INSERT JSCB INTO LIST 23000002 AGO .CONTQ5 20028 23100002 .ISAREG1 STCM &JSCB(1),7,37(15) INSERT JSCB INTO LIST 23200002 .CONTQ5 ANOP 20028 23300002 AIF ( NOT (&SWSTAI OR &SWESTAI) ).TTID NEITHER GIVEN Y02752 23400002 .* IF EITHER STAI OR ESTAI GIVEN, OVERRIDE BYTES DEC 41 - 47 Y02752 23800002 .STAIRB AIF ('&STXADDR'(1,1) EQ '(' ).REG1 Y02752 24300002 LA 14,&STXADDR GET STAI/ESTAI EXIT ADDR Y02752 24400002 ST 14,44(,15) STAI/ESTAI EXIT ADDR INTO LIST Y02752 24500002 AGO .STAI2 20028 24600002 .REG1 ST &STXADDR,44(,15) STAI/ESTAI EXIT ADDR INTO LIST Y02752 24700002 .STAI2 ANOP Y02752 24800002 AIF (&NUMB3 EQ 0).STAZ NO FLAGS TO BE SET Y02752 25200002 MVI 44(15),&NUMB3 SET STAI/ESTAI FLAGS Y02752 25600002 .STAZ ANOP Y02752 26000002 AIF ('&STPADDR' NE '').STY Y02752 26400002 SR 14,14 Y02752 26460002 STCM 14,7,41(15) NO STAI/ESTAI PARM LIST ADDR Y02752 26520002 AGO .TTID Y02752 26580002 .STY ANOP Y02752 26640002 AIF ('&STPADDR'(1,1) EQ '(').REG2 Y02752 26700002 LA 14,&STPADDR GET STAI/ESTAI PARM LIST ADDR Y02752 26760002 STCM 14,7,41(15) STAI/ESTAI PARM LIST ADDR Y02752 26820002 AGO .TTID 26900002 .REG2 STCM &STPADDR,7,41(15) STAI/ESTAI PARM LIST ADDR Y02752 27000002 .TTID AIF ('&TID' EQ '0').TLIBE 27100002 AIF ('&TID'(1,1) EQ '(').REGTID 27200002 MVI 40(15),&TID INSERT TID IN LIST 27300002 AGO .TLIBE 27400002 .REGTID STC &TID(1),40(15,0) INSERT TID IN LIST YM1995 27500002 .TLIBE AIF ('&TASKLIB' EQ '').NSHSP1 Y02752 27600002 .TLIBEA AIF ('&TASKLIB'(1,1) EQ '(').TREGE 20021 27900002 LA 14,&TASKLIB(1) GET TASKLIB DCB ADDR. 20021 28000002 ST 14,48(,15) .PUT TASKLIB DCB ADDR. IN LIST. 20021 28100002 AGO .NSHSP1 Y02752 28200002 .TREGE ST &TASKLIB(1),48(,15) TASKLIB DCB ADDR. IN LIST. 20021 28300002 .NSHSP1 ANOP Y02752 28310002 MVI 55(15),60 SET LENGTH OF THIS PARM LIST Y02752 28320002 AIF ('&NSHSPL' EQ '').NSHSP2 Y02752 28330002 AIF ('&RSAPF' EQ 'YES').NSHSP6 RSAPF ALSO ON @Z40RP9B 28340003 OI 52(15),X'80' NEXT WORD HAS SP LIST ADDR Y02752 28342003 .NSHSP7 ANOP @Z40RP9B 28344003 AIF ('&NSHSPL'(1,1) EQ '(' ).NSHSP3 Y02752 28350002 LA 14,&NSHSPL GET SP LIST ADDR Y02752 28360002 ST 14,56(,15) NSHSPL ADDR INTO PARM LIST Y02752 28370002 AGO .SVC 20021 28400002 .NSHSP3 ANOP Y02752 28407002 ST &NSHSPL(1),56(,15) NSHSPL ADDR INTO PARM LIST Y02752 28414002 AGO .SVC Y02752 28421002 .NSHSP2 ANOP Y02752 28428002 AIF ('&NSHSPV' EQ '').NSHSP8 @Z40RP9B 28435003 NI 52(15),X'7F' NEXT WORD CONTAINS SP VALUE Y02752 28437003 AIF ('&RSAPF' NE 'YES').NSHSP5 @Z40RP9B 28439003 OI 52(15),X'40' SET APF FLAG ON @Z40RP9B 28441003 .NSHSP5 ANOP @Z40RP9B 28443003 AIF ('&NSHSPV'(1,1) EQ '(' ).NSHSP4 Y02752 28449002 LA 14,&NSHSPV.(0,0) SP VALUE FOR NSHSPV YM1995 28456002 ST 14,56(,15) PARM INTO LIST Y02752 28463002 AGO .SVC Y02752 28470002 .NSHSP4 ANOP Y02752 28477002 ST &NSHSPV(1),56(,15) SET SP VALUE FOR NSHSPV Y02752 28484002 AGO .SVC Y02752 28491002 .NSHSP6 OI 52(15),X'C0' SET NSHSPL AND RSAPF FLAGS @Z40RP9B 28492003 AGO .NSHSP7 @Z40RP9B 28493003 .NSHSP8 ANOP @Z40RP9B 28494003 AIF ('&RSAPF' NE 'YES').SVC NO FLGS ON @Z40RP9B 28495003 OI 52(15),X'40' SET APF FLAG ON @Z40RP9B 28496003 AGO .SVC @Z40RP9B 28497003 .LROUT ANOP 28500002 .* L FORM MUST ACCEPT ALL PARAMETERS POSSIBLE. A LIST OF ALL Y02752 28530002 .* ZEROS MUST BE ACCEPTABLE AS AN L FORM. 28560002 &NAME DS 0F 28600002 AIF ('&EP' EQ '').CONTLA 28700002 AIF ('&EP'(1,1) EQ '(').ERROR5 28800002 DC A(*+28) POINTER TO SYMB NAME 28900002 AGO .COHID LCS1 29000002 .CONTLA AIF ('&EPLOC' EQ '').CONTLB 29100002 AIF ('&EPLOC'(1,1) EQ '(').ERROR5 29200002 DC A(&EPLOC) POINTER TO SYMB NAME 29300002 AGO .COHID LCS1 29400002 .CONTLB AIF ('&DE' EQ '').CONTLLA 29500002 AIF ('&DE'(1,1) EQ '(').ERROR5 29600002 DC X'80' SET BIT TO INDICATE DE 29700002 DC AL3(&DE) DIRECTORY ENTRY POINTR 29800002 AGO .COHID LCS1 29900002 .CONTLLA DC A(0) DE OR EPLOC ADDRESS 30000002 .COHID ANOP Y02752 30100002 .* BITS 6 AND 7 OF BYTE 4 PREVIOUSLY DEFINED FOR HIARCHY PARM Y02752 30400002 .CHID DC AL1(0) 30800002 .CONTLC AIF ('&DCB' EQ '').CONTLD 30900002 AIF ('&DCB'(1,1) EQ '(').ERROR5 31000002 DC AL3(&DCB) LCS1 31100002 AGO .CONTLSE 20028 31200002 .CONTLD DC AL3(0) DCB ADDRESS LCS1 31300002 .CONTLSE ANOP Y02572 31400002 AIF (&NUMB1 EQ 8).NOTSOLW DO NOT SET EXTND LIST ALONE Y02752 32100002 DC AL1(&NUMB1) FLAGS Y02752 32800002 AGO .NOTSOLX Y02752 33500002 .NOTSOLW ANOP 20021 34300002 DC AL1(0) 20021 34400002 .NOTSOLX ANOP 20021 34500002 .CONTLE AIF ('&ECB' EQ '').CONTLF 34600002 AIF ('&ECB'(1,1) EQ '(').ERROR5 34700002 DC AL3(&ECB) ECB ADDRESS 20028 34800002 AGO .CONTLG 34900002 .CONTLF DC AL3(0) ECB ADDRESS 20028 35000002 .CONTLG AIF ('&GSPV' EQ '').CONTLH 35100002 AIF ('&GSPV'(1,1) EQ '(').ERROR5 35200002 DC A(&GSPV) GSPV VALUE 35300002 AGO .CONTLI 35400002 .CONTLH AIF ('&GSPL' EQ '').CONTLJ 35500002 AIF ('&GSPL'(1,1) EQ '(').ERROR5 35600002 DC AL1(1) SET LIST BIT ON 35700002 DC AL3(&GSPL) GSPL ADDRESS 35800002 AGO .CONTLI 35900002 .CONTLJ DC A(0) GSPL OR GSPV 36000002 .CONTLI AIF ('&SHSPV' EQ '').CONTLK 36100002 AIF ('&SHSPV'(1,1) EQ '(').ERROR5 36200002 DC A(&SHSPV) SHSPV VALUE 36300002 AGO .CONTLL 36400002 .CONTLK AIF ('&SHSPL' EQ '').CONTLM 36500002 AIF ('&SHSPL'(1,1) EQ '(').ERROR5 36600002 DC AL1(1) SET LIST BIT ON 36700002 DC AL3(&SHSPL) SHSPL ADDRESS 36800002 AGO .CONTLL 36900002 .CONTLM DC A(0) SHSPV OR SHSPL 37000002 .CONTLL ANOP 37100002 .* BITS 6 AND 7 OF BYTE 20 PREVIOUSLY DEFINED FOR ROLL PARMS Y02752 37200002 AIF (&NUMB2 EQ 32).BYT20Z DO NOT SET EXT PARM ALONE Y02752 37300002 DC AL1(&NUMB2) FLAGS Y02752 37400002 AGO .BYT20C Y02752 37500002 .BYT20Z ANOP Y02752 37600002 DC AL1(0) Y02752 37700002 .BYT20C ANOP Y02752 37800002 AIF ('&ETXR' EQ '').CONTLN RORI 38100002 AIF ('&ETXR'(1,1) EQ '(').ERROR5 38200002 DC AL3(&ETXR) EXIT ROUT. ADDRESS RORI 38300002 AGO .CONTLO 38400002 .CONTLN DC AL3(0) EXIT ROUT. ADDRESS RORI 38500002 .CONTLO AIF ('&DPMOD' EQ '').CONTLP 38600002 AIF ('&DPMOD'(1,1) EQ '(').ERROR5 38700002 AIF ('&DPMOD'(1,1) EQ '+' OR '&DPMOD'(1,1) EQ '-').SIGNB 38800002 DC AL2(&DPMOD) DPMOD VALUE 38900002 AGO .CONTLQ 39000002 .SIGNB DC AL2(0&DPMOD) DPMOD VALUE 39100002 AGO .CONTLQ 39200002 .CONTLP DC AL2(0) DPMOD VALUE 39300002 .CONTLQ AIF ('&LPMOD' EQ '').CONTLR 39400002 AIF ('&LPMOD'(1,1) EQ '(').ERROR5 39500002 DC AL1(&LPMOD) LPMOD VALUE 39600002 AGO .CONTLS6 39700002 .CONTLR DC AL1(0) LPMOD VALUE 39800002 .CONTLS6 ANOP Y02752 39900002 .CONTLU DC AL1(&NUMB) 41500002 AIF ('&EP' EQ '').CONTLV 41600002 DC CL8'&EP' EP SYMBOL 41700002 AGO .CONTLV1 1270 41800002 .* SET EP NAME SPACE TO ZEROS TO ALLOW ALL ZERO LIST FORM Y02752 41900002 .CONTLV DC 2A(0) EP NAME SPACE Y02752 41950002 .CONTLV1 AIF ('&LSQA' EQ '0').NOLSQA 42000002 AIF ('&LSQA'(1,1) EQ '(').ERROR5 42100002 DC AL1(&LSQA) LSQA VALUE 42200002 AGO .CONTLV2 42300002 .NOLSQA DC AL1(0) NO LSQA 42400002 .CONTLV2 AIF ('&JSCB' EQ '').NOJSCB 20021 42500002 AIF ('&JSCB'(1,1) EQ '(').ERROR5 I270 42600002 DC AL3(&JSCB) ADDRESS OF JSCB 42700002 AGO .LTID 42800002 .NOJSCB ANOP 20028 42900002 DC AL3(0) . 43000002 .LTID AIF ('&TID' EQ '0').NOTID 43100002 AIF ('&TID'(1,1) EQ '(').ERROR5 43200002 DC AL1(&TID) TID VALUE 43300002 AGO .CONTLW 43400002 .NOTID DC AL1(0) .NO TID 43500002 .CONTLW AIF (&SWSTAI OR &SWESTAI).CONTLX Y02752 43600002 DC AL3(0) STAI/ESTAI PARM LIST Y02752 43700002 DC A(0) .EXIT ADDRESS 43800002 AGO .TLCONT 20021 43900002 .CONTLX ANOP Y02752 44000002 AIF ('&STXADDR'(1,1) EQ '(' ).ERROR5 Y02752 44050002 AIF ('&STPADDR' EQ '').CONTLY 20028 44100002 AIF ('&STPADDR'(1,1) EQ '(' ).ERROR5 Y02752 44150002 DC AL3(&STPADDR) STAI/ESTAI PARM LIST ADDR Y02752 44200002 AGO .TLCX 20021 44300002 .CONTLY DC AL3(0) STAI/ESTAI PARAMETER LIST Y02752 44400002 .TLCX ANOP Y02752 44500002 DC AL1(&NUMB3) STAI/ESTAI FLAGS Y02752 45400002 .TLCZ DC AL3(&STXADDR) STAI/ESTAI EXIT ROUTINE ADDR Y02752 46300002 .TLCONT AIF ('&TASKLIB' NE '').TLCONTA 20021 46400002 DC A(0) .TASKLIB. 20021 46500002 AGO .LNSHSP1 Y02752 46600002 .TLCONTA ANOP 20021 46700002 AIF ('&TASKLIB'(1,1) EQ '(' ).ERROR5 Y02752 46750002 DC A(&TASKLIB) .TASKLIB DCB ADDRESS. 20021 46800002 .* ATTACH PARM LIST LENGTH IS NOT SET IN LIST FORM, MUST BE SET Y02752 46810002 .* IN EXECUTE FORM. ALSO EXTENDED PARM LIST FLAGS MUST BE SET Y02752 46820002 .* IN E FORM TO INSURE SERVICE RTN RECEIVES A COMPLETE PARM LIST Y02752 46830002 .LNSHSP1 ANOP Y02752 46840002 AIF ('&NSHSPL' EQ '').LNSHSP2 Y02752 46850002 AIF ('&NSHSPL'(1,1) EQ '(' ).ERROR5 Y02752 46860002 AIF ('&RSAPF' EQ 'YES').LNSHSP6 @Z40RP9B 46870003 DC AL1(128) SP LIST ADDR IN FOLLOWING WORD Y02752 46872003 .LNSHSP4 ANOP @Z40RP9B 46874003 DC AL3(0) PARM LIST LENGTH FIELD Y02752 46880002 DC A(&NSHSPL) NSHSPL ADDRESS Y02752 46890002 AGO .END 20021 46900002 .LNSHSP2 ANOP Y02752 46909002 AIF ('&RSAPF' EQ 'YES').LNSHSP7 @Z40RP9B 46918003 DC A(0) FLAGS AND PARM LIST LENGTH Y02752 46920003 .LNSHSP5 ANOP @Z40RP9B 46922003 AIF ('&NSHSPV' EQ '').LNSHSP3 Y02752 46927002 AIF ('&NSHSPV'(1,1) EQ '(' ).ERROR5 Y02752 46936002 DC AL3(0) NSHSPV Y02752 46945002 DC AL1(&NSHSPV) VALUE Y02752 46954002 AGO .END Y02752 46963002 .LNSHSP3 ANOP Y02752 46972002 DC A(0) NO NSHSPV OR NSHSPL PARM Y02752 46981002 AGO .END Y02752 46990002 .LNSHSP6 DC AL1(192) NSHSPL AND RSAPF FLGS ON @Z40RP9B 46991003 AGO .LNSHSP4 @Z40RP9B 46992003 .LNSHSP7 DC AL1(64) NSHSPV AND RSAPF FLGS ON @Z40RP9B 46993003 DC AL3(0) PARM LIST LENGTH FIELD @Z40RP9B 46994003 AGO .LNSHSP5 @Z40RP9B 46995003 .IROUT ANOP 47000002 .* NORMAL FORM. IN-LINE LIST. Y02752 47050002 LA 15,&GNAME LOAD 15 WITH LIST ADDR 47100002 AIF ('&EPLOC' EQ '').ICONTA 47200002 AIF ('&EPLOC'(1,1) NE '(').ICONTB 47300002 ST &EPLOC(1),0(0,15) STORE EPLOC INTO LIST 47400002 AGO .ICONTB 47500002 .ICONTA AIF ('&DE' EQ '').ICONTB 47600002 AIF ('&DE'(1,1) NE '(').ICONTB 47700002 ST &DE(1),0(0,15) STORE DE INTO LIST 47800002 MVI 0(15),X'80' SET DE BIT ON 47900002 .ICONTB AIF ('&DCB' EQ '').ICOHID LCS1 48000002 AIF ('&DCB'(1,1) NE '(').ICOHID LCS1 48100002 STCM &DCB(1),7,5(15) STORE DCB INTO LIST 48200002 .* BITS 6 AND 7 OF BYTE 4 PREVIOUSLY DEFINED FOR HIARCHY Y02752 48250002 .ICOHID ANOP LCS1 48300002 .ICONTC AIF ('&ECB' EQ '').ICONTD 48400002 AIF ('&ECB'(1,1) NE '(').ICONTD 48500002 STCM &ECB(1),7,9(15) STORE ECB INTO LIST 48600002 .ICONTD AIF ('&GSPV' EQ '').ICONTE 48700002 AIF ('&GSPV'(1,1) NE '(').ICONTF 48800002 ST &GSPV(1),12(0,15) STORE GSPV INTO LIST 48900002 AGO .ICONTF 49000002 .ICONTE AIF ('&GSPL' EQ '').ICONTF 49100002 AIF ('&GSPL'(1,1) NE '(').ICONTF 49200002 ST &GSPL(1),12(0,15) STORE GSPL INTO LIST 49300002 MVI 12(15),X'01' SET LIST BIT ON 49400002 .ICONTF AIF ('&SHSPV' EQ '').ICONTG 49500002 AIF ('&SHSPV'(1,1) NE '(').ICONTH 49600002 ST &SHSPV(1),16(0,15) STORE SHSPV INTO LIST 49700002 AGO .ICONTH 49800002 .ICONTG AIF ('&SHSPL' EQ '').ICONTH 49900002 AIF ('&SHSPL'(1,1) NE '(').ICONTH 50000002 ST &SHSPL(1),16(0,15) STORE SHSPL INTO LIST 50100002 MVI 16(15),X'01' SET LIST BIT ON 50200002 .ICONTH AIF ('&ETXR' EQ '').ICONTI 50300002 AIF ('&ETXR'(1,1) NE '(').ICONTI 50400002 STCM &ETXR(1),7,21(15) STORE ETXR INTO LIST 50500002 .ICONTI AIF ('&DPMOD' EQ '').ICONTJ 50600002 AIF ('&DPMOD'(1,1) NE '(').ICONTJ 50700002 STH &DPMOD(1),24(15,0) STORE DPMOD INTO LIST 50800002 .ICONTJ AIF ('&LPMOD' EQ '').ICONTJ0 50900002 AIF ('&LPMOD'(1,1) NE '(').ICONTJ0 51000002 STC &LPMOD(1),26(15,0) STORE LPMOD INTO LIST 51100002 .ICONTJ0 AIF ('&LSQA' EQ '0').ICONTK 51200002 AIF ('&LSQA'(1,1) NE '(').ICONTK 51300002 STC &LSQA(1),36(15,0) INSERT LSQA INTO LIST YM1995 51400002 .ICONTK AIF ('&JSCB' EQ '').ICONTL0 20028 51500002 AIF ('&JSCB'(1,1) NE '(').ICONTL0 20028 51600002 STCM &JSCB(1),7,37(15) INSERT JSCB INTO LIST 51700002 .ICONTL0 ANOP 51800002 AIF ('&TID' EQ '0').ICONTL1 51900002 AIF ('&TID'(1,1) NE '(').ICONTL1 52000002 STC &TID(1),40(15,0) INSERT TID INTO LIST YM1995 52100002 .ICONTL1 ANOP 52200002 AIF (NOT (&SWSTAI OR &SWESTAI) ).ICONTO Y02572 52800002 AIF ('&STXADDR'(1,1) NE '(' ).ICZ Y02572 53400002 STCM &STXADDR,7,45(15) SET STAI/ESTAI EXIT ADDR Y02572 54000002 .ICZ AIF ('&STPADDR' EQ '').ICONTO Y02752 54900002 AIF ('&STPADDR'(1,1) NE '(' ).ICONTO Y02752 55000002 STCM &STPADDR,7,41(15) STAI/ESTAI PARM LIST ADDR Y02752 55100002 .ICONTO AIF ('&TASKLIB' EQ '').ICONTP 20021 55200002 .ICONTQ AIF ('&TASKLIB'(1,1) NE '(').ICONTP 20021 55500002 ST &TASKLIB(1),48(,15) .PUT TASKLIB DCB ADDR. IN LIST. 55600002 .ICONTP ANOP Y02752 55700002 AIF ('&NSHSPL' EQ '').ICONTP0 Y02752 55709002 AIF ('&NSHSPL'(1,1) NE '(' ).ICONTP1 Y02752 55718002 ST &NSHSPL(1),56(,15) NSHSPL ADDR INTO LIST Y02752 55727002 AGO .ICONTP1 Y02752 55736002 .ICONTP0 ANOP Y02752 55745002 AIF ('&NSHSPV' EQ '').ICONTP1 Y02752 55754002 AIF ('&NSHSPV'(1,1) NE '(' ).ICONTP1 Y02752 55763002 STC &NSHSPV(1),59(,15) NSHSPV VALUE INTO LIST Y02752 55772002 .ICONTP1 ANOP Y02752 55781002 B 60(,15) BRANCH AROUND LIST Y02752 55790002 &GNAME DS 0F SUP. PARAM. LIST 55800002 AIF ('&EP' EQ '').CNTA 55900002 DC A(*+28) ADDRESS OF SYMB NAME 56000002 AGO .CCHID LCS1 56100002 .CNTA AIF ('&EPLOC' EQ '').CNTC 56200002 AIF ('&EPLOC'(1,1) EQ '(').CNTD 56300002 DC A(&EPLOC) ADDRESS OF SYMB NAME 56400002 AGO .CCHID LCS1 56500002 .CNTC AIF ('&DE' EQ '').ERROR6 56600002 AIF ('&DE'(1,1) EQ '(').CNTD 56700002 DC X'80' SET BIT TO INDICATE DE 56800002 DC AL3(&DE) DE ADDRESS 56900002 AGO .CCHID LCS1 57000002 .CNTD DC A(0) DE OR EPLOC ADDRESS 57100002 .CCHID ANOP Y02752 57200002 .* BITS 6 AND 7 OF BYTE 4 PREVIOUSLY DEFINED FOR HIARCHY PARM Y02752 57500002 .CCCHID DC AL1(0) 57900002 .CNTB AIF ('&DCB' EQ '').CNTE 58000002 AIF ('&DCB'(1,1) EQ '(').CNTE 58100002 DC AL3(&DCB) DCB ADDRESS LCS1 58200002 AGO .CNTF 58300002 .CNTE DC AL3(0) DCB ADDRESS LCS1 58400002 .CNTF ANOP 58430002 DC AL1(&NUMB1) FLAGS Y02752 58460002 AIF ('&ECB' EQ '').CNTG Y02752 58500002 AIF ('&ECB'(1,1) EQ '(').CNTG 58600002 DC AL3(&ECB) ECB ADDRESS Y02752 58700002 AGO .CNTH 58800002 .CNTG DC AL3(0) ECB ADDRESS Y02752 58900002 .CNTH AIF ('&GSPV' EQ '').CNTI 59000002 AIF ('&GSPV'(1,1) EQ '(').CNTJ 59100002 DC A(&GSPV) GSPV VALUE 59200002 AGO .CNTK 59300002 .CNTI AIF ('&GSPL' EQ '').CNTJ 59400002 AIF ('&GSPL'(1,1) EQ '(').CNTJ 59500002 DC AL1(1) SET LIST BIT ON 59600002 DC AL3(&GSPL) GSPL ADDRESS 59700002 AGO .CNTK 59800002 .CNTJ DC A(0) GSPV VALUE OR GSPL ADR 59900002 .CNTK AIF ('&SHSPV' EQ '').CNTL 60000002 AIF ('&SHSPV'(1,1) EQ '(').CNTM 60100002 DC A(&SHSPV) SHSPV VALUE 60200002 AGO .CNTN 60300002 .CNTL AIF ('&SHSPL' EQ '').CNTM 60400002 AIF ('&SHSPL'(1,1) EQ '(').CNTM 60500002 DC AL1(1) SET LIST BIT ON 60600002 DC AL3(&SHSPL) SHSPL ADDRESS 60700002 AGO .CNTN 60800002 .CNTM DC A(0) SHSPL OR SHSPV 60900002 .CNTN ANOP 61000002 .* BITS 6 AND 7 OF BYTE 20 PREVIOUSLY DEFINED FOR ROLL PARM Y02752 61100002 DC AL1(&NUMB2) FLAGS Y02752 61500002 AIF ('&ETXR' EQ '').CNTO RORI 62000002 AIF ('&ETXR'(1,1) EQ '(').CNTO 62100002 DC AL3(&ETXR) EXIT ROUT. ADDRESS RORI 62200002 AGO .CNTP 62300002 .CNTO DC AL3(0) ETXR ROUT. ADDRESS RORI 62400002 .CNTP AIF ('&DPMOD' EQ '').CNTQ 62500002 AIF ('&DPMOD'(1,1) EQ '(').CNTQ 62600002 AIF ('&DPMOD'(1,1) EQ '+' OR '&DPMOD'(1,1) EQ '-').SIGNC 62700002 DC AL2(&DPMOD) DPMOD VALUE 62800002 AGO .CNTR 62900002 .SIGNC DC AL2(0&DPMOD) DPMOD VALUE 63000002 AGO .CNTR 63100002 .CNTQ DC AL2(0) DPMOD VALUE 63200002 .CNTR AIF ('&LPMOD' EQ '').CNTS 63300002 AIF ('&LPMOD'(1,1) EQ '(').CNTS 63400002 DC AL1(&LPMOD) LPMOD VALUE 63500002 AGO .CNTT0C 63600002 .CNTS DC AL1(0) LPMOD VALUE 63700002 .CNTT0C ANOP Y02752 63800002 .CNTV DC AL1(&NUMB) 65400002 AIF ('&EP' EQ '').CNTW 65500002 DC CL8'&EP' EP SYMBOL 65600002 AGO .CNTXX I270 65700002 .CNTW DC CL8' ' I270 65800002 .CNTXX AIF ('&LSQA' EQ '0').CNTXX1 65900002 AIF ('&LSQA'(1,1) EQ '(').CNTXX1 66000002 DC AL1(&LSQA) LSQA 66100002 AGO .CNTX 66200002 .CNTXX1 DC AL1(0) LSQA=0 66300002 .CNTX AIF ('&JSCB' EQ '').CONTQ6 20028 66400002 AIF ('&JSCB'(1,1) EQ '(').CONTQ6 I270 66500002 DC AL3(&JSCB) ADDRESS OF JSCB 66600002 AGO .CNTYY 66700002 .CONTQ6 DC AL3(0) ADDRESS OF JSCB 66800002 .CNTYY AIF ('&TID' EQ '0').CNTYY1 66900002 AIF ('&TID'(1,1) EQ '(').CNTYY1 67000002 DC AL1(&TID) TID 67100002 AGO .CNTY 67200002 .CNTYY1 DC AL1(0) TID=0 67300002 .CNTY AIF (NOT (&SWSTAI OR &SWESTAI) ).TLICN Y02752 67400002 AIF ('&STPADDR' EQ '').CREG2 Y02752 67500002 AIF ('&STPADDR'(1,1) EQ '(' ).CREG2 Y02752 67600002 DC AL3(&STPADDR) STAI/ESTAI PARM LIST ADDR Y02752 67700002 AGO .CKREG1 20028 67800002 .CREG2 DC AL3(0) STAI/ESTAI PARM LIST ADDR Y02752 67900002 .CKREG1 ANOP Y02752 68000002 DC AL1(&NUMB3) STAI/ESTAI FLAGS Y02752 68050002 AIF ('&STXADDR'(1,1) EQ '(' ).CREG1 Y02752 68100002 DC AL3(&STXADDR) STAI/ESTAI EXIT RTN ADDRESS Y02752 68150002 AGO .TLICNA 20021 68200002 .CREG1 DC AL3(0) STAI/ESTAI EXIT RTN ADDRESS Y02752 68300002 AGO .TLICNA 68400002 .TLICN DC AL3(0) NO STAI/ESTAI PARM LIST ADDR Y02752 68500002 DC A(0) .NO EXIT ADDR 68600002 .TLICNA ANOP Y02752 68700002 AIF ('&TASKLIB' EQ '').TLICNC Y02752 68800002 AIF ('&TASKLIB'(1,1) EQ '(' ).TLICNC Y02752 68900002 DC A(&TASKLIB) .TASKLIB DCB ADDRESS. 20021 69100002 AGO .INSHSP1 Y02752 69200002 .TLICNC DC A(0) .TASKLIB DCB ADDRESS. 20021 69300002 .INSHSP1 ANOP Y02752 69306002 AIF ('&NSHSPL' EQ '').INSHSP2 Y02752 69312002 AIF ('&RSAPF' EQ 'YES').C0 APF NSHSPL ON @Z40RP9B 69318003 DC X'80' NSHSPL FLAG Y02752 69319003 .T1 ANOP @Z40RP9B 69320003 DC AL3(60) LENGTH OF THIS PARAMETER LIST Y02752 69324002 AIF ('&NSHSPL'(1,1) EQ '(' ).INSHSP3 Y02752 69330002 DC A(&NSHSPL) NSHSPL ADDRESS Y02752 69336002 AGO .SVC Y02752 69342002 .INSHSP2 ANOP Y02752 69348002 AIF ('&RSAPF' EQ 'YES').FOUR0 APF FLAG ON ONLY @Z40RP9B 69354003 DC X'00' NO FLAGS ON @Z40RP9B 69355003 .T2 ANOP @Z40RP9B 69356003 DC AL3(60) LENGTH OF THIS PARM LIST @Z40RP9B 69357003 AIF ('&NSHSPV' EQ '').INSHSP3 Y02752 69360002 AIF ('&NSHSPV'(1,1) EQ '(' ).INSHSP3 Y02752 69366002 DC A(&NSHSPV) NSHSPV VALUE Y02752 69372002 AGO .SVC Y02752 69378002 .C0 ANOP @Z40RP9B 69378803 DC X'C0' NSHSPL AND APF FLAGS ON @Z40RP9B 69379603 AGO .T1 @Z40RP9B 69380403 .FOUR0 ANOP 69381203 DC X'40' APF FLAG ON ONLY 69382003 AGO .T2 @Z40RP9B 69382803 .INSHSP3 ANOP Y02752 69384002 DC A(0) NSHSPV VALUE OR NSHSPL ADDR Y02752 69390002 .SVC SVC 42 ISSUE ATTACH SVC 69400002 MEXIT 20028 69500002 .ERROZ IHBERMAC 1003,PURGE,ASYNCH 20021 69600002 MEXIT Y02752 69700002 .ERROR IHBERMAC 1004,&STAITYP Y02752 69800002 MEXIT Y02752 69900002 .E2 IHBERMAC 1005,&STAITYP Y02752 70000002 MEXIT 70100002 .E3 IHBERMAC 1005,PURGE 70200002 MEXIT 70300002 .E4 IHBERMAC 1005,ASYNCH 70400002 MEXIT 70500002 .E5 IHBERMAC 1005,SZERO,YES 70600002 MEXIT 70700002 .E6 IHBERMAC 1005,GIVEJPQ 70800002 MEXIT 70900002 .E7 IHBERMAC 1005,GSPV 71000002 MEXIT 71100002 .E8 IHBERMAC 1005,GSPL 71200002 MEXIT 71300002 .E9 IHBERMAC 1005,SHSPV 71400002 MEXIT 71500002 .E10 IHBERMAC 1005,SHSPL 71600002 MEXIT 71700002 .ERDISP IHBERMAC 1001,DISP,&DISP 71800002 MEXIT X02050 71900002 .ERTQE IHBERMAC 1001,TQE,&TQE X02050 72000002 MEXIT X02050 72100002 .ERFP IHBERMAC 1001,FPREGSA,&FPREGSA X02050 72200002 MEXIT Y02752 72210002 .ERTERM IHBERMAC 1001,TERM,&TERM Y02752 72220002 MEXIT Y02752 72230002 .ERNSHSP IHBERMAC 1020,NSHSPV,NSHSPL Y02752 72240002 MEXIT Y02752 72250002 .ERSTAI IHBERMAC 1020,STAI,ESTAI Y02752 72260002 .END MEND 72300002 **/ 72350002 * ATTACH : /**************************************************/ 72400002 */********************************************************************/ 72450002 */**************** PL/S VERSION OF THE ATTACH MACRO ******************/ 72500002 */********************************************************************/ 72550002 * MACRO 72700002 * KEYS( ASYNCH, DCB, DE, DPMOD, ECB, EP, ESTAI, ETXR, GIVEJPQ, GSPL, 72750002 * GSPV, JSCB, JSTCB, KEYZERO, LPMOD, MF, NOASYNCH, NODISP, 72800002 * NOSVAREA, NOSZERO, NSHSPL, NSHSPV, PARAM, PURGE, RTCD, SF, 72850002 * SHSPL, SHSPV, SM, STAI, TASKLIB, TCB, TERM, TID, VL, 72900002 * RELATED, RSAPF); 72950003 * ANS('?'||MACLABEL||'ATTACHP '||MACLIST||MACKEYS||';'); 73000003 *%END; 73050003