TITLE 'ICGDSS08 MSC TABLE CREATE, SCAN CREATE STATEMENT *00001000 ' 00002000 ICGDSS08 CSECT , 0001 00003000 @MAINENT DS 0H 0001 00004000 USING *,@15 0001 00005000 B @PROLOG 0001 00006000 DC AL1(16) 0001 00007000 DC C'ICGDSS08 77.354' 0001 00008000 DROP @15 00009000 @PROLOG STM @14,@12,12(@13) 0001 00010000 BALR @12,0 0001 00011000 @PSTART DS 0H 0001 00012000 USING @PSTART,@12 0001 00013000 L @00,@SIZDATD 0001 00014000 GETMAIN R,LV=(0) 00015000 LR @11,@01 0001 00016000 USING @DATD,@11 0001 00017000 ST @13,@SA00001+4 0001 00018000 LM @00,@01,20(@13) 0001 00019000 ST @11,8(,@13) 0001 00020000 LR @13,@11 0001 00021000 XC @ZTEMPS(@ZLEN),@ZTEMPS 00022000 * STRUCTURE KEYWORD @OZ28368*/ 00023000 * 0040 00024000 */********************************************************** @YD00113*/ 00025000 */* @Y30LB12*/ 00026000 */* ICGDSS08 (MAINLINE) @YD00113*/ 00027000 */* @Y30LB12*/ 00028000 */* CALL S08INIT TO INITIALIZE, S08SCAN TO @YD00113*/ 00029000 */* EXTRACT KEYWORDS AND PARAMETERS FROM CONTROL @Y30LB12*/ 00030000 */* STATEMENT. IF NO TERMINATING ERROR, CALL @Y30LB12*/ 00031000 */* S08ANAL TO CHECK FOR MISSING AND CONFLICTING @Y30LB12*/ 00032000 */* VALUES. IF STILL NO ERROR, CALL S08BUILD @Y30LB12*/ 00033000 */* TO MOVE VALUES TO CREATE IN COMTAB. @Y30LB12*/ 00034000 */* @Y30LB12*/ 00035000 */********************************************************** @YD00113*/ 00036000 * 0040 00037000 * CALL S08INIT; /* @Y30LB12*/ 00038000 BAL @14,S08INIT 0040 00039000 * CALL S08SCAN; /* @Y30LB12*/ 00040000 BAL @14,S08SCAN 0041 00041000 * IF STOPSCAN^='1'B /* @Y30LB12*/ 00042000 * THEN /* @Y30LB12*/ 00043000 TM STOPSCAN,B'00100000' 0042 00044000 BO @RF00042 0042 00045000 * CALL S08ANAL; /* @Y30LB12*/ 00046000 BAL @14,S08ANAL 0043 00047000 * ELSE 0044 00048000 * ; /* @Y30LB12*/ 00049000 @RF00042 DS 0H 0045 00050000 * IF STOPSCAN^='1'B /* @Y30LB12*/ 00051000 * THEN /* @Y30LB12*/ 00052000 TM STOPSCAN,B'00100000' 0045 00053000 BO @RF00045 0045 00054000 * CALL S08BUILD; /* @Y30LB12*/ 00055000 BAL @14,S08BUILD 0046 00056000 * ELSE 0047 00057000 * ; /* @Y30LB12*/ 00058000 @RF00045 DS 0H 0048 00059000 * RETURN; /* RETURN TO ICGDSSCN @Y30LB12*/ 00060000 @EL00001 L @13,4(,@13) 0048 00061000 @EF00001 L @00,@SIZDATD 0048 00062000 LR @01,@11 0048 00063000 FREEMAIN R,LV=(0),A=(1) 00064000 @ER00001 LM @14,@12,12(@13) 0048 00065000 BR @14 0048 00066000 * 0049 00067000 */********************************************************** @YD00113*/ 00068000 */* @YD00113*/ 00069000 */* PROCEDURE NAME - S08INIT @Y30LB12*/ 00070000 */* @Y30LB12*/ 00071000 */* FUNCTION - INITIALIZE LOCAL WORK AREA @Y30LB12*/ 00072000 */* @Y30LB12*/ 00073000 */********************************************************** @YD00113*/ 00074000 * 0049 00075000 *S08INIT: 0049 00076000 * PROCEDURE; /* @Y30LB12*/ 00077000 S08INIT STM @14,@12,12(@13) 0049 00078000 * CRTMSGID='00'X; /* CONTROL FLAGS @YD00113*/ 00079000 MVI CRTMSGID,X'00' 0050 00080000 * WORKBITS='00'X; /* 'HAVE' FLAGS @YD00113*/ 00081000 MVI WORKBITS,X'00' 0051 00082000 * TABCLOCK='00'X; /* REQUIRED KEYWORD @Y30LB12*/ 00083000 MVI TABCLOCK,X'00' 0052 00084000 * WKVOLSER=' '; /* INITIALIZE BLANK @Y30LB12*/ 00085000 * 0053 00086000 MVC WKVOLSER(6),@CC00394 0053 00087000 * /*****************************************************************/ 00088000 * /* */ 00089000 * /* *********************************************** @YD00113*/ 00090000 * /* INITIALIZE AS DEFAULT TABLE PAGES 1 TO 4 @YD00113*/ 00091000 * /* TO REAL PAGES 25 TO 28. @X50AC40*/ 00092000 * /* *********************************************** @YD00113*/ 00093000 * /* */ 00094000 * /*****************************************************************/ 00095000 * 0054 00096000 * DO I=1 TO 4; /* DEFAULT VALUES @Y30LB12*/ 00097000 LA I,1 0054 00098000 @DL00054 DS 0H 0055 00099000 * WKPAGES(I)=I+24; /* REAL PAGES 25-28 @X50AC40*/ 00100000 LA @10,24 0055 00101000 ALR @10,I 0055 00102000 STC @10,WKPAGES-1(I) 0055 00103000 * END; /* @Y30LB12*/ 00104000 AH I,@CH00042 0056 00105000 CH I,@CH00068 0056 00106000 BNH @DL00054 0056 00107000 * END S08INIT; /* RET. TO MAINLINE @Y30LB12*/ 00108000 @EL00002 DS 0H 0057 00109000 @EF00002 DS 0H 0057 00110000 @ER00002 LM @14,@12,12(@13) 0057 00111000 BR @14 0057 00112000 * 0058 00113000 */********************************************************** @YD00113*/ 00114000 */* @Y30LB12*/ 00115000 */* PROCEDURE NAME - S08SCAN @Y30LB12*/ 00116000 */* @Y30LB12*/ 00117000 */* FUNCTION - EXTRACT KEYWORDS AND PARAMETERS FROM THE @Y30LB12*/ 00118000 */* CREATE CONTROL STATEMENT. WHEN ALL @Y30LB12*/ 00119000 */* HAVE BEEN PROCESS, CHECK FOR MISSING @Y30LB12*/ 00120000 */* VALUES. FOR MATCHED KEYWORDS, SET 'KNOWN' @YD00113*/ 00121000 */* FLAG ON AND CALL APPROPRIATE SUBROUTINE TO @YD00113*/ 00122000 */* EXTRACT THE PARAMETERS. IF AN ERROR OCCURS @YD00113*/ 00123000 */* IN OBTAINING EITHER THE KEYWORD OR THE PARM, @YD00113*/ 00124000 */* ISSUE THE APPROPRIATE ERROR MESSAGE. @YD00113*/ 00125000 */* @Y30LB12*/ 00126000 */********************************************************** @YD00113*/ 00127000 * 0058 00128000 *S08SCAN: 0058 00129000 * PROCEDURE; /* @Y30LB12*/ 00130000 S08SCAN STM @14,@12,@SA00003 0058 00131000 * DO WHILE(LASTPARM='0'B); /* TILL NO MORE DATA @Y30LB12*/ 00132000 B @DE00059 0059 00133000 @DL00059 DS 0H 0060 00134000 * KNOWN='0'B; /* @Y30LB12*/ 00135000 NI KNOWN,B'01111111' 0060 00136000 * IF TABBTFLD='0'B THEN /* IF NEXT KEYWORD SCAN @OZ28368 00137000 * INDICATOR @OZ28368*/ 00138000 TM TABBTFLD,B'00000010' 0061 00139000 BNZ @RF00061 0061 00140000 * CALL READS99; /* IS OFF, CALL SCAN @OZ28368 00141000 * ROUTINE, ELSE @OZ28368*/ 00142000 BAL @14,READS99 0062 00143000 * ELSE 0063 00144000 * TABBTFLD='0'B; /* SET OFF @OZ28368*/ 00145000 B @RC00061 0063 00146000 @RF00061 NI TABBTFLD,B'11111101' 0063 00147000 * IF LASTPARM='1'B /* SET BY ICGDSS99 @Y30LB12*/ 00148000 * THEN /* @Y30LB12*/ 00149000 @RC00061 TM LASTPARM(R4),B'00001000' 0064 00150000 BO @RT00064 0064 00151000 * RETURN; /* RET. TO MAINLINE @Y30LB12*/ 00152000 * ELSE 0066 00153000 * ; /* @Y30LB12*/ 00154000 * 0066 00155000 * /***************************************************************/ 00156000 * /* */ 00157000 * /* *********************************************** @YD00113*/ 00158000 * /* IF SCANNED VALUE WAS KEYWORD 'PAGES' @Y30LB12*/ 00159000 * /* *********************************************** @YD00113*/ 00160000 * /* */ 00161000 * /***************************************************************/ 00162000 * 0067 00163000 * IF SCANDATA(1:LENGTH(KEYPAGES))=KEYPAGES/* @YD00113*/ 00164000 * &KNOWN='0'B /* @YM32167*/ 00165000 * THEN /* @Y30LB12*/ 00166000 L @10,STARTCOL(,R4) 0067 00167000 CLC SCANDATA(6,@10),@CC00358 0067 00168000 BNE @RF00067 0067 00169000 TM KNOWN,B'10000000' 0067 00170000 BNZ @RF00067 0067 00171000 * DO; /* @Y30LB12*/ 00172000 * KNOWN='1'B; /* RECOGNIZED KEYWD @Y30LB12*/ 00173000 OI KNOWN,B'10000000' 0069 00174000 * CALL S08PAGES; /* TO GET PARAMETERS @Y30LB12*/ 00175000 BAL @14,S08PAGES 0070 00176000 * END; /* @Y30LB12*/ 00177000 * ELSE 0072 00178000 * ; /* @Y30LB12*/ 00179000 * 0072 00180000 @RF00067 DS 0H 0073 00181000 * /***************************************************************/ 00182000 * /* */ 00183000 * /* *********************************************** @YD00113*/ 00184000 * /* IF SCANNED VALUE WAS KEYWORD 'VOLID' @Y30LB12*/ 00185000 * /* *********************************************** @YD00113*/ 00186000 * /* */ 00187000 * /***************************************************************/ 00188000 * 0073 00189000 * IF SCANDATA(1:LENGTH(KEYVOLID))=KEYVOLID/* @YD00113*/ 00190000 * &KNOWN='0'B /* @YM32167*/ 00191000 * THEN /* @Y30LB12*/ 00192000 L @10,STARTCOL(,R4) 0073 00193000 CLC SCANDATA(6,@10),@CC00360 0073 00194000 BNE @RF00073 0073 00195000 TM KNOWN,B'10000000' 0073 00196000 BNZ @RF00073 0073 00197000 * DO; /* @Y30LB12*/ 00198000 * KNOWN='1'B; /* RECOGNIZED KEYWD @Y30LB12*/ 00199000 OI KNOWN,B'10000000' 0075 00200000 * CALL S08VOLID; /* TO GET PARAMETER @Y30LB12*/ 00201000 BAL @14,S08VOLID 0076 00202000 * END; /* @Y30LB12*/ 00203000 * ELSE 0078 00204000 * ; /* @Y30LB12*/ 00205000 * 0078 00206000 @RF00073 DS 0H 0079 00207000 * /***************************************************************/ 00208000 * /* */ 00209000 * /* *********************************************** @YD00113*/ 00210000 * /* IF SCANNED DATA WAS KEYWORD 'LRUCLOCK' @Y30LB12*/ 00211000 * /* *********************************************** @YD00113*/ 00212000 * /* */ 00213000 * /***************************************************************/ 00214000 * 0079 00215000 * IF SCANDATA(1:LENGTH(KEYCLOCK))=KEYCLOCK/* @YD00113*/ 00216000 * &KNOWN='0'B /* @YM32167*/ 00217000 * THEN /* @Y30LB12*/ 00218000 L @10,STARTCOL(,R4) 0079 00219000 CLC SCANDATA(9,@10),@CC00362 0079 00220000 BNE @RF00079 0079 00221000 TM KNOWN,B'10000000' 0079 00222000 BNZ @RF00079 0079 00223000 * DO; /* @Y30LB12*/ 00224000 * KNOWN='1'B; /* RECOGNIZED KEYWD @Y30LB12*/ 00225000 OI KNOWN,B'10000000' 0081 00226000 * CALL S08CLOCK; /* TO GET PARAMETER @Y30LB12*/ 00227000 BAL @14,S08CLOCK 0082 00228000 * END; /* @Y30LB12*/ 00229000 * ELSE 0084 00230000 * ; /* @Y30LB12*/ 00231000 * 0084 00232000 @RF00079 DS 0H 0085 00233000 * /***************************************************************/ 00234000 * /* */ 00235000 * /* *********************************************** @G24LB42*/ 00236000 * /* IF SCANNED DATA WAS KEYWORD 'CYLFAULT' @G24LB42*/ 00237000 * /* *********************************************** @G24LB42*/ 00238000 * /* */ 00239000 * /***************************************************************/ 00240000 * 0085 00241000 * IF SCANDATA(1:LENGTH(KEYCYLFL))=KEYCYLFL/* @G24LB42*/ 00242000 * &KNOWN='0'B /* @G24LB42*/ 00243000 * THEN /* @G24LB42*/ 00244000 L @10,STARTCOL(,R4) 0085 00245000 CLC SCANDATA(9,@10),@CC00365 0085 00246000 BNE @RF00085 0085 00247000 TM KNOWN,B'10000000' 0085 00248000 BNZ @RF00085 0085 00249000 * DO; /* @G24LB42*/ 00250000 * KNOWN='1'B; /* RECOGNIZED KEYWD @G24LB42*/ 00251000 OI KNOWN,B'10000000' 0087 00252000 * CALL S08CYLFL; /* TO GET PARAMETER @G24LB42*/ 00253000 BAL @14,S08CYLFL 0088 00254000 * END; /* @G24LB42*/ 00255000 * ELSE 0090 00256000 * ; /* @G24LB42*/ 00257000 * 0090 00258000 @RF00085 DS 0H 0091 00259000 * /***************************************************************/ 00260000 * /* */ 00261000 * /* *********************************************** @YD00113*/ 00262000 * /* IF SCANNED VALUE IS PARAMETER 'NEW' @Y30LB12*/ 00263000 * /* *********************************************** @YD00113*/ 00264000 * /* */ 00265000 * /***************************************************************/ 00266000 * 0091 00267000 * IF SCANDATA(1:LENGTH(PARMNEW))=PARMNEW/* @YD00113*/ 00268000 * &KNOWN='0'B /* @YM32167*/ 00269000 * THEN /* @Y30LB12*/ 00270000 L @10,STARTCOL(,R4) 0091 00271000 CLC SCANDATA(3,@10),@CC00370 0091 00272000 BNE @RF00091 0091 00273000 TM KNOWN,B'10000000' 0091 00274000 BNZ @RF00091 0091 00275000 * DO; /* @Y30LB12*/ 00276000 * KNOWN='1'B; /* RECOGNIZED PARM @Y30LB12*/ 00277000 OI KNOWN,B'10000000' 0093 00278000 * CALL S08NEW; /* TO HANDLE PARM @Y30LB12*/ 00279000 BAL @14,S08NEW 0094 00280000 * END; /* @Y30LB12*/ 00281000 * ELSE 0096 00282000 * ; /* @Y30LB12*/ 00283000 * 0096 00284000 @RF00091 DS 0H 0097 00285000 * /***************************************************************/ 00286000 * /* */ 00287000 * /* *********************************************** @YD00113*/ 00288000 * /* IF SCANNED VALUE IS PARAMETER 'UPDATE' @Y30LB12*/ 00289000 * /* *********************************************** @YD00113*/ 00290000 * /* */ 00291000 * /***************************************************************/ 00292000 * 0097 00293000 * IF SCANDATA(1:LENGTH(PARMUPDT))=PARMUPDT/* @YD00113*/ 00294000 * &KNOWN='0'B /* @YM32167*/ 00295000 * THEN /* @Y30LB12*/ 00296000 L @10,STARTCOL(,R4) 0097 00297000 CLC SCANDATA(6,@10),@CC00372 0097 00298000 BNE @RF00097 0097 00299000 TM KNOWN,B'10000000' 0097 00300000 BNZ @RF00097 0097 00301000 * DO; /* @Y30LB12*/ 00302000 * KNOWN='1'B; /* RECOGNIZED PARM @Y30LB12*/ 00303000 OI KNOWN,B'10000000' 0099 00304000 * CALL S08UPDAT; /* TO HANDLE PARM @Y30LB12*/ 00305000 BAL @14,S08UPDAT 0100 00306000 * END; /* @Y30LB12*/ 00307000 * ELSE 0102 00308000 * ; /* @Y30LB12*/ 00309000 * 0102 00310000 @RF00097 DS 0H 0103 00311000 * /***************************************************************/ 00312000 * /* */ 00313000 * /* *********************************************** @YD00113*/ 00314000 * /* IF SCANNED VALUE IS PARAMETER 'PRNTONLY' @Y30LB12*/ 00315000 * /* *********************************************** @YD00113*/ 00316000 * /* */ 00317000 * /***************************************************************/ 00318000 * 0103 00319000 * IF SCANDATA(1:LENGTH(PARMPRNT))=PARMPRNT/* @YD00113*/ 00320000 * &KNOWN='0'B /* @YM32167*/ 00321000 * THEN /* @Y30LB12*/ 00322000 L @10,STARTCOL(,R4) 0103 00323000 CLC SCANDATA(8,@10),@CC00374 0103 00324000 BNE @RF00103 0103 00325000 TM KNOWN,B'10000000' 0103 00326000 BNZ @RF00103 0103 00327000 * DO; /* @Y30LB12*/ 00328000 * KNOWN='1'B; /* RECOGNIZED PARM @Y30LB12*/ 00329000 OI KNOWN,B'10000000' 0105 00330000 * CALL S08PONLY; /* TO HANDLE PARM @Y30LB12*/ 00331000 BAL @14,S08PONLY 0106 00332000 * END; /* @Y30LB12*/ 00333000 * ELSE 0108 00334000 * ; /* @Y30LB12*/ 00335000 * 0108 00336000 @RF00103 DS 0H 0109 00337000 * /***************************************************************/ 00338000 * /* */ 00339000 * /* IF SCANNED VALUE IS PARAMETER 'TABPTH' @OZ28368*/ 00340000 * /* */ 00341000 * /***************************************************************/ 00342000 * 0109 00343000 * IF SCANDATA(1:LENGTH(TABLEPTH))/* CHECK THE SCAN @OZ28368*/ 00344000 * =TABLEPTH&KNOWN='0'B THEN /* ELEMENT, IS THIS @OZ28368 00345000 * KEYWORD 'TABPTH='? @OZ28368 00346000 * IF IT IS THEN SET.. @OZ28368*/ 00347000 L @10,STARTCOL(,R4) 0109 00348000 CLC SCANDATA(7,@10),@CC00368 0109 00349000 BNE @RF00109 0109 00350000 TM KNOWN,B'10000000' 0109 00351000 BNZ @RF00109 0109 00352000 * DO; /* @OZ28368*/ 00353000 * KNOWN='1'B; /* KNOWN KEYWORD FLAG @OZ28368 00354000 * ON, @OZ28368*/ 00355000 OI KNOWN,B'10000000' 0111 00356000 * CALL S08TBPTH; /* CALL THE TABLE PATH @OZ28368 00357000 * PROC. @OZ28368*/ 00358000 BAL @14,S08TBPTH 0112 00359000 * END; /* @OZ28368*/ 00360000 * ELSE 0114 00361000 * ; /* @OZ28368*/ 00362000 * 0114 00363000 @RF00109 DS 0H 0115 00364000 * /***************************************************************/ 00365000 * /* */ 00366000 * /* *********************************************** @YD00113*/ 00367000 * /* IF VALUE WAS NONE OF THE ABOVE @Y30LB12*/ 00368000 * /* *********************************************** @YD00113*/ 00369000 * /* */ 00370000 * /***************************************************************/ 00371000 * 0115 00372000 * IF KNOWN='0'B /* NO RECOGNITION @Y30LB12*/ 00373000 * THEN /* @Y30LB12*/ 00374000 TM KNOWN,B'10000000' 0115 00375000 BNZ @RF00115 0115 00376000 * DO; /* @Y30LB12*/ 00377000 * IF KEYBIT='1'B /* IF KEYWORD @Y30LB12*/ 00378000 * THEN /* @Y30LB12*/ 00379000 TM KEYBIT(R4),B'01000000' 0117 00380000 BNO @RF00117 0117 00381000 * DO; /* @Y30LB12*/ 00382000 * 0118 00383000 * /*******************************************************/ 00384000 * /* */ 00385000 * /* *********************************** @YD00113*/ 00386000 * /* ICG210I UNDEFINED KEYWORD FOUND @Y30LB12*/ 00387000 * /* *********************************** @YD00113*/ 00388000 * /* */ 00389000 * /*******************************************************/ 00390000 * 0119 00391000 * MSGNO=ICG210I; /* ID FOR ICGDS210 @Y30LB12*/ 00392000 MVC MSGNO(2,R4),ICG210I 0119 00393000 * CALL PUTIT2; /* TO MESSAGE WRITER @Y30LB12*/ 00394000 BAL @14,PUTIT2 0120 00395000 * END; /* @Y30LB12*/ 00396000 * ELSE 0122 00397000 * ; /* @Y30LB12*/ 00398000 @RF00117 DS 0H 0123 00399000 * IF PARMBIT='1'B /* IF PARAMETER BIT @Y30LB12*/ 00400000 * THEN /* @Y30LB12*/ 00401000 TM PARMBIT(R4),B'00100000' 0123 00402000 BNO @RF00123 0123 00403000 * DO; /* @Y30LB12*/ 00404000 * 0124 00405000 * /*******************************************************/ 00406000 * /* */ 00407000 * /* *********************************** @YD00113*/ 00408000 * /* ICG212I UNDEFINED PARAMETER @Y30LB12*/ 00409000 * /* FOUND @Y30LB12*/ 00410000 * /* *********************************** @YD00113*/ 00411000 * /* */ 00412000 * /*******************************************************/ 00413000 * 0125 00414000 * MSGNO=ICG212I; /* ID FOR ICGDS212 @Y30LB12*/ 00415000 MVC MSGNO(2,R4),ICG212I 0125 00416000 * CALL PUTIT2; /* TO MESSAGE WRITER @Y30LB12*/ 00417000 BAL @14,PUTIT2 0126 00418000 * END; /* @Y30LB12*/ 00419000 * ELSE 0128 00420000 * ; /* @Y30LB12*/ 00421000 @RF00123 DS 0H 0129 00422000 * END; /* @Y30LB12*/ 00423000 * ELSE 0130 00424000 * ; /* @Y30LB12*/ 00425000 @RF00115 DS 0H 0131 00426000 * END; /* LASTPARM = 1 @Y30LB12*/ 00427000 @DE00059 TM LASTPARM(R4),B'00001000' 0131 00428000 BZ @DL00059 0131 00429000 * END S08SCAN; /* RET. TO MAINLINE @Y30LB12*/ 00430000 @EL00003 DS 0H 0132 00431000 @EF00003 DS 0H 0132 00432000 @ER00003 LM @14,@12,@SA00003 0132 00433000 BR @14 0132 00434000 * 0133 00435000 */********************************************************** @YD00113*/ 00436000 */* @Y30LB12*/ 00437000 */* PROCEDURE NAME - S08NEW @Y30LB12*/ 00438000 */* @Y30LB12*/ 00439000 */* FUNCTION - SET BIT INDICATING FIRST CREATION OF TABLES @Y30LB12*/ 00440000 */* IN LOCAL WORK AREA IF NO ERROR. IF ERROR, @Y30LB12*/ 00441000 */* WRITE MESSAGE ICGDS214. @Y30LB12*/ 00442000 */* @Y30LB12*/ 00443000 */********************************************************** @YD00113*/ 00444000 * 0133 00445000 *S08NEW: 0133 00446000 * PROCEDURE; /* @Y30LB12*/ 00447000 S08NEW STM @14,@12,@SA00004 0133 00448000 * IF SCANLEN=LENGTH(PARMNEW) /* SET BY ICGDSS99 @YD00113*/ 00449000 * THEN /* @Y30LB12*/ 00450000 CLC SCANLEN(2,R4),@CH00048 0134 00451000 BNE @RF00134 0134 00452000 * NEWBIT='1'B; /* IN LOCAL WORKAREA @Y30LB12*/ 00453000 OI NEWBIT,B'10000000' 0135 00454000 * ELSE /* @Y30LB12*/ 00455000 * DO; /* @Y30LB12*/ 00456000 * 0136 00457000 B @RC00134 0136 00458000 @RF00134 DS 0H 0137 00459000 * /*************************************************************/ 00460000 * /* */ 00461000 * /* ***************************************** @YD00113*/ 00462000 * /* ICG214I PROBABLE MISSPELLED @Y30LB12*/ 00463000 * /* PARAMETER NEW @Y30LB12*/ 00464000 * /* ***************************************** @YD00113*/ 00465000 * /* */ 00466000 * /*************************************************************/ 00467000 * 0137 00468000 * OUTBUF2(1:39)=ICGDS214; /* @Y30LB12*/ 00469000 MVC OUTBUF2(39,R4),ICGDS214 0137 00470000 * OUTBUF2(40:40+LENGTH(PARMNEW))=PARMNEW;/* @YD00113*/ 00471000 MVI OUTBUF2+42(R4),C' ' 0138 00472000 MVC OUTBUF2+39(3,R4),@CC00370 0138 00473000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 00474000 BAL @14,PUTIT1 0139 00475000 * END; /* @Y30LB12*/ 00476000 * END S08NEW; /* RET. TO S08SCAN @Y30LB12*/ 00477000 @EL00004 DS 0H 0141 00478000 @EF00004 DS 0H 0141 00479000 @ER00004 LM @14,@12,@SA00004 0141 00480000 BR @14 0141 00481000 * 0142 00482000 */********************************************************** @YD00113*/ 00483000 */* @Y30LB12*/ 00484000 */* PROCEDURE NAME - S08UPDAT @Y30LB12*/ 00485000 */* @Y30LB12*/ 00486000 */* FUNCTION - SET BIT IN LOCAL WORK AREA INDICATING THAT @Y30LB12*/ 00487000 */* THE TABLES ARE TO BE REBUILT IF NO ERROR. IF @Y30LB12*/ 00488000 */* ERROR, WRITE MESSAGE ICGDS214. @Y30LB12*/ 00489000 */* @Y30LB12*/ 00490000 */********************************************************** @YD00113*/ 00491000 * 0142 00492000 *S08UPDAT: 0142 00493000 * PROCEDURE; /* @Y30LB12*/ 00494000 S08UPDAT STM @14,@12,@SA00005 0142 00495000 * IF SCANLEN=LENGTH(PARMUPDT) /* SET BY ICGDSS99 @YD00113*/ 00496000 * THEN /* @Y30LB12*/ 00497000 CLC SCANLEN(2,R4),@CH00227 0143 00498000 BNE @RF00143 0143 00499000 * UPDBIT='1'B; /* IN LOCAL WORKAREA @Y30LB12*/ 00500000 OI UPDBIT,B'01000000' 0144 00501000 * ELSE /* @Y30LB12*/ 00502000 * DO; /* @Y30LB12*/ 00503000 * 0145 00504000 B @RC00143 0145 00505000 @RF00143 DS 0H 0146 00506000 * /*************************************************************/ 00507000 * /* */ 00508000 * /* ***************************************** @YD00113*/ 00509000 * /* ICG214I PROBABLE MISSPELLED @Y30LB12*/ 00510000 * /* PARAMETER UPDATE @Y30LB12*/ 00511000 * /* ***************************************** @YD00113*/ 00512000 * /* */ 00513000 * /*************************************************************/ 00514000 * 0146 00515000 * OUTBUF2(1:39)=ICGDS214; /* @Y30LB12*/ 00516000 MVC OUTBUF2(39,R4),ICGDS214 0146 00517000 * OUTBUF2(40:40+LENGTH(PARMUPDT))=PARMUPDT;/* @YD00113*/ 00518000 MVI OUTBUF2+45(R4),C' ' 0147 00519000 MVC OUTBUF2+39(6,R4),@CC00372 0147 00520000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 00521000 BAL @14,PUTIT1 0148 00522000 * END; /* @Y30LB12*/ 00523000 * END S08UPDAT; /* RETURN TO S08SCAN @Y30LB12*/ 00524000 @EL00005 DS 0H 0150 00525000 @EF00005 DS 0H 0150 00526000 @ER00005 LM @14,@12,@SA00005 0150 00527000 BR @14 0150 00528000 * 0151 00529000 */********************************************************** @YD00113*/ 00530000 */* @Y30LB12*/ 00531000 */* PROCEDURE NAME - S08PONLY @Y30LB12*/ 00532000 */* @Y30LB12*/ 00533000 */* FUNCTION - SET A BIT INDICATING THAT TABLES ARE NOT TO @Y30LB12*/ 00534000 */* BE WRITTEN TO DASD. ALL PRINTED REPORTS @Y30LB12*/ 00535000 */* AND PUNCHED OUTPUT WILL STILL BE PRODUCED. @Y30LB12*/ 00536000 */* @Y30LB12*/ 00537000 */********************************************************** @YD00113*/ 00538000 * 0151 00539000 *S08PONLY: 0151 00540000 * PROCEDURE; /* @Y30LB12*/ 00541000 S08PONLY STM @14,@12,@SA00006 0151 00542000 * IF SCANLEN=LENGTH(PARMPRNT) /* SET BY ICGDSS99 @YD00113*/ 00543000 * THEN /* @Y30LB12*/ 00544000 CLC SCANLEN(2,R4),@CH00040 0152 00545000 BNE @RF00152 0152 00546000 * PRNTBIT='1'B; /* IN LOCAL WORKAREA @Y30LB12*/ 00547000 OI PRNTBIT,B'00100000' 0153 00548000 * ELSE /* @Y30LB12*/ 00549000 * DO; /* @Y30LB12*/ 00550000 * 0154 00551000 B @RC00152 0154 00552000 @RF00152 DS 0H 0155 00553000 * /*************************************************************/ 00554000 * /* */ 00555000 * /* ***************************************** @YD00113*/ 00556000 * /* ICG214I PROBABLE MISSPELLED @Y30LB12*/ 00557000 * /* PARAMETER PRNTONLY @Y30LB12*/ 00558000 * /* ***************************************** @YD00113*/ 00559000 * /* */ 00560000 * /*************************************************************/ 00561000 * 0155 00562000 * OUTBUF2(1:39)=ICGDS214; /* @Y30LB12*/ 00563000 MVC OUTBUF2(39,R4),ICGDS214 0155 00564000 * OUTBUF2(40:40+LENGTH(PARMPRNT))=PARMPRNT;/* @YD00113*/ 00565000 MVI OUTBUF2+47(R4),C' ' 0156 00566000 MVC OUTBUF2+39(8,R4),@CC00374 0156 00567000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 00568000 BAL @14,PUTIT1 0157 00569000 * END; /* @Y30LB12*/ 00570000 * END S08PONLY; /* RETURN TO S08SCAN @Y30LB12*/ 00571000 @EL00006 DS 0H 0159 00572000 @EF00006 DS 0H 0159 00573000 @ER00006 LM @14,@12,@SA00006 0159 00574000 BR @14 0159 00575000 * 0160 00576000 */********************************************************** @YD00113*/ 00577000 */* @Y30LB12*/ 00578000 */* PROCEDURE NAME - S08PAGES @Y30LB12*/ 00579000 */* @Y30LB12*/ 00580000 */* FUNCTION - PRINT MESSAGE EXPLAINING THAT THE PARAMETER @X50AC40*/ 00581000 */* PAGES IS NO LONGER SUPPORTED AND WILL @X50AC40*/ 00582000 */* CAUSE A TERMINATION. @X50AC40*/ 00583000 */* @Y30LB12*/ 00584000 */********************************************************** @YD00113*/ 00585000 * 0160 00586000 *S08PAGES: 0160 00587000 * PROCEDURE; /* @Y30LB12*/ 00588000 * 0160 00589000 S08PAGES STM @14,@12,@SA00007 0160 00590000 * /*****************************************************************/ 00591000 * /* */ 00592000 * /* PRINT NO LONGER SUPPORTED MESSAGE AND RETURN. @X50AC40*/ 00593000 * /* ICG222I NO LONGER SUPPORT KEYWORD PAGES. @X50AC40*/ 00594000 * /* */ 00595000 * /*****************************************************************/ 00596000 * 0161 00597000 * OUTBUF2(1:35)=ICGDS222; /* @X50AC40*/ 00598000 MVC OUTBUF2(35,R4),ICGDS222 0161 00599000 * OUTBUF2(36:36+LENGTH(MSGPAGES))=MSGPAGES;/* @X50AC40*/ 00600000 MVI OUTBUF2+40(R4),C' ' 0162 00601000 MVC OUTBUF2+35(5,R4),@CC00376 0162 00602000 * CALL PUTIT1; /* TO MESSAGE WRITER @X50AC40*/ 00603000 BAL @14,PUTIT1 0163 00604000 * END S08PAGES; /* RETURN TO S08SCAN @X50AC40*/ 00605000 @EL00007 DS 0H 0164 00606000 @EF00007 DS 0H 0164 00607000 @ER00007 LM @14,@12,@SA00007 0164 00608000 BR @14 0164 00609000 * 0165 00610000 */********************************************************** @YD00113*/ 00611000 */* @Y30LB12*/ 00612000 */* PROCEDURE NAME - S08VOLID @Y30LB12*/ 00613000 */* @Y30LB12*/ 00614000 */* FUNCTION - EXTRACT THE VOLUME SERIAL NUMBER OF THE @Y30LB12*/ 00615000 */* PACK ON WHICH THE NEW MSC TABLES ARE TO @YD00113*/ 00616000 */* RESIDE. THE VOLUME SERIAL NUMBER OF THE @YD00113*/ 00617000 */* TABLES PACK IS USED TO CONTROL THE VOLUME @Y30LB12*/ 00618000 */* SERIAL NUMBER OF ALL STAGING PACKS USED WITH @Y30LB12*/ 00619000 */* THIS COPY OF THE TABLES PACK. ALL STAGING @Y30LB12*/ 00620000 */* VOLSERS MUST MATCH THE FIRST FOUR CHARACTERS @Y30LB12*/ 00621000 */* OF THE TABLES PACK VOLSER, AND THE FINAL TWO @Y30LB12*/ 00622000 */* CHARACTERS MUST BE THE CHARACTER @Y30LB12*/ 00623000 */* REPRESENTATION OF THE TWO LOW-ORDER HEX @Y30LB12*/ 00624000 */* DIGITS OF SSID (SUB-SYSTEM IDENTIFICATION). @Y30LB12*/ 00625000 */* @Y30LB12*/ 00626000 */********************************************************** @YD00113*/ 00627000 * 0165 00628000 *S08VOLID: 0165 00629000 * PROCEDURE; /* @Y30LB12*/ 00630000 * 0165 00631000 S08VOLID STM @14,@12,@SA00008 0165 00632000 * /*****************************************************************/ 00633000 * /* */ 00634000 * /* *********************************************** @YD00113*/ 00635000 * /* CALL 'READS99' TO GET VOLID. THEN TEST FOR @YD00113*/ 00636000 * /* DUPLICATION OF KEYWORD 'VOLID'. IF 'VOLID' HAS @YD00113*/ 00637000 * /* BEEN PREVIOUSLY USED, SET FLAG 'HAVVOLID'. @YD00113*/ 00638000 * /* *********************************************** @YD00113*/ 00639000 * /* */ 00640000 * /*****************************************************************/ 00641000 * 0166 00642000 * CALL READS99; /* @Y30LB12*/ 00643000 BAL @14,READS99 0166 00644000 * IF HAVVOLID^='1'B /* @Y30LB12*/ 00645000 * THEN /* @Y30LB12*/ 00646000 TM HAVVOLID,B'00000100' 0167 00647000 BO @RF00167 0167 00648000 * HAVVOLID='1'B; /* @Y30LB12*/ 00649000 OI HAVVOLID,B'00000100' 0168 00650000 * ELSE /* @Y30LB12*/ 00651000 * DO; /* @Y30LB12*/ 00652000 * 0169 00653000 B @RC00167 0169 00654000 @RF00167 DS 0H 0170 00655000 * /*************************************************************/ 00656000 * /* */ 00657000 * /* ***************************************** @YD00113*/ 00658000 * /* ICG219I DUPLICATE KEYWORD VOLID @Y30LB12*/ 00659000 * /* ***************************************** @YD00113*/ 00660000 * /* */ 00661000 * /*************************************************************/ 00662000 * 0170 00663000 * OUTBUF2(1:27)=ICGDS219; /* @Y30LB12*/ 00664000 MVC OUTBUF2(27,R4),ICGDS219 0170 00665000 * OUTBUF2(28:28+LENGTH(MSGVOLID))=MSGVOLID;/* @YD00113*/ 00666000 MVI OUTBUF2+32(R4),C' ' 0171 00667000 MVC OUTBUF2+27(5,R4),@CC00378 0171 00668000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 00669000 BAL @14,PUTIT1 0172 00670000 * RETURN; /* RETURN TO S08SCAN @Y30LB12*/ 00671000 @EL00008 DS 0H 0173 00672000 @EF00008 DS 0H 0173 00673000 @ER00008 LM @14,@12,@SA00008 0173 00674000 BR @14 0173 00675000 * END; /* @Y30LB12*/ 00676000 * 0174 00677000 * /*****************************************************************/ 00678000 * /* */ 00679000 * /* *********************************************** @YM31099*/ 00680000 * /* ICG211I EXPECTED, BUT DID NOT FIND, @YM31099*/ 00681000 * /* PARAMETER @YM31099*/ 00682000 * /* *********************************************** @YM31099*/ 00683000 * /* */ 00684000 * /*****************************************************************/ 00685000 * 0175 00686000 * IF PARMBIT^='1'B /* @YM31099*/ 00687000 * THEN /* @YM31099*/ 00688000 @RC00167 TM PARMBIT(R4),B'00100000' 0175 00689000 BO @RF00175 0175 00690000 * DO; /* @YM31099*/ 00691000 * MSGNO=ICG211I; /* ID FOR ICGDS211 @YM31099*/ 00692000 MVC MSGNO(2,R4),ICG211I 0177 00693000 * CALL PUTIT2; /* TO MESSAGE WRITER @YM31099*/ 00694000 BAL @14,PUTIT2 0178 00695000 * RETURN; /* RETURN TO S08SCAN @YM31099*/ 00696000 B @EL00008 0179 00697000 * END; /* @YM31099*/ 00698000 * ELSE 0181 00699000 * ; /* @YM31099*/ 00700000 * 0181 00701000 @RF00175 DS 0H 0182 00702000 * /*****************************************************************/ 00703000 * /* */ 00704000 * /* *********************************************** @YD00113*/ 00705000 * /* TEST LENGTH OF VOLID RETURNED. ISSUE MESSAGE @YD00113*/ 00706000 * /* IF LENGTH IS INCORRECT @YD00113*/ 00707000 * /* *********************************************** @YD00113*/ 00708000 * /* */ 00709000 * /*****************************************************************/ 00710000 * 0182 00711000 * IF SCANLEN^=LENGTH(KEYVOLID) /* SET BY ICGDSS99 @YD00113*/ 00712000 * THEN /* @Y30LB12*/ 00713000 CLC SCANLEN(2,R4),@CH00227 0182 00714000 BE @RF00182 0182 00715000 * DO; /* @Y30LB12*/ 00716000 * 0183 00717000 * /*************************************************************/ 00718000 * /* */ 00719000 * /* ***************************************** @YD00113*/ 00720000 * /* ICG220I INVALID PARAMETER LENGTH, @Y30LB12*/ 00721000 * /* KEYWORD IS VOLID @Y30LB12*/ 00722000 * /* ***************************************** @YD00113*/ 00723000 * /* */ 00724000 * /*************************************************************/ 00725000 * 0184 00726000 * OUTBUF2(1:46)=ICGDS220; /* @Y30LB12*/ 00727000 MVC OUTBUF2(46,R4),ICGDS220 0184 00728000 * OUTBUF2(47:47+LENGTH(MSGVOLID))=MSGVOLID;/* @YD00113*/ 00729000 MVI OUTBUF2+51(R4),C' ' 0185 00730000 MVC OUTBUF2+46(5,R4),@CC00378 0185 00731000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 00732000 BAL @14,PUTIT1 0186 00733000 * RETURN; /* RETURN TO S08SCAN @Y30LB12*/ 00734000 B @EL00008 0187 00735000 * END; /* @Y30LB12*/ 00736000 * ELSE 0189 00737000 * ; /* @Y30LB12*/ 00738000 * 0189 00739000 @RF00182 DS 0H 0190 00740000 * /*****************************************************************/ 00741000 * /* */ 00742000 * /* *********************************************** @YD00113*/ 00743000 * /* TEST LAST 2 BYTES OF VOLID FOR 'F0F0'X. IF NOT @YD00113*/ 00744000 * /* ISSUE ERROR MESSAGE ICG223I. @YD00113*/ 00745000 * /* *********************************************** @YD00113*/ 00746000 * /* */ 00747000 * /*****************************************************************/ 00748000 * 0190 00749000 * IF SCANDATA(5:6)^='F0F0'X /* MUST BE '00' @Y30LB12*/ 00750000 * THEN /* @Y30LB12*/ 00751000 L @10,STARTCOL(,R4) 0190 00752000 CLC SCANDATA+4(2,@10),@CB00430 0190 00753000 BE @RF00190 0190 00754000 * DO; /* @Y30LB12*/ 00755000 * 0191 00756000 * /*************************************************************/ 00757000 * /* */ 00758000 * /* ***************************************** @YD00113*/ 00759000 * /* ICG223I VALUE ERROR FOR VOLID @Y30LB12*/ 00760000 * /* ***************************************** @YD00113*/ 00761000 * /* */ 00762000 * /*************************************************************/ 00763000 * 0192 00764000 * OUTBUF2(1:25)=ICGDS223; /* @Y30LB12*/ 00765000 MVC OUTBUF2(25,R4),ICGDS223 0192 00766000 * OUTBUF2(26:26+LENGTH(MSGVOLID))=MSGVOLID;/* @YD00113*/ 00767000 MVI OUTBUF2+30(R4),C' ' 0193 00768000 MVC OUTBUF2+25(5,R4),@CC00378 0193 00769000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 00770000 BAL @14,PUTIT1 0194 00771000 * END; /* @Y30LB12*/ 00772000 * ELSE /* @Y30LB12*/ 00773000 * WKVOLSER=SCANDATA(1:6); /* SAVE VOLID @Y30LB12*/ 00774000 B @RC00190 0196 00775000 @RF00190 L @10,STARTCOL(,R4) 0196 00776000 MVC WKVOLSER(6),SCANDATA(@10) 0196 00777000 * END S08VOLID; /* RETURN TO S08SCAN @Y30LB12*/ 00778000 B @EL00008 0197 00779000 * 0198 00780000 */********************************************************** @OZ28368*/ 00781000 */* @OZ28368*/ 00782000 */* PROCEDURE NAME - S08TBPTH @OZ28368*/ 00783000 */* @OZ28368*/ 00784000 */* FUNCTION - CALLS 'READS99' TO GET TABLE PATH PARAMETER, @OZ28368*/ 00785000 */* CHECKS TABLE PATH PARAMETER AND SETS CREATE @OZ28368*/ 00786000 */* FIELD IN COMTAB TO INDICATE THAT USER @OZ28368*/ 00787000 */* SPECIFICATION OF B, B OR C, OR B, C, AND D @OZ28368*/ 00788000 */* CHANNEL INTERFACE. SPECIFICATION IN THE UPPER @OZ28368*/ 00789000 */* CON STATEMENT WILL BE REQUIRED FOR REAL @OZ28368*/ 00790000 */* DEVICE ADDRESSES 0, 1, 8, AND 9 IF I/O DEVICE @OZ28368*/ 00791000 */* CARDS ARE TO BE GENERATED FOR THESE DEVICES @OZ28368*/ 00792000 */* FOR TABLE ACCESS. @OZ28368*/ 00793000 */* @OZ28368*/ 00794000 */* ERROR MESSAGE FOR BD OR CD SPECIFICATION. @OZ28368*/ 00795000 */* @OZ28368*/ 00796000 */* ERROR MESSAGE FOR DUPLICATE KEYWORDS. @OZ28368*/ 00797000 */* @OZ28368*/ 00798000 */********************************************************** @OZ28368*/ 00799000 * 0198 00800000 *S08TBPTH: 0198 00801000 * PROCEDURE; /* @OZ28368*/ 00802000 S08TBPTH STM @14,@12,@SA00009 0198 00803000 */********************************************************** @OZ28368*/ 00804000 */* CHECK FOR PREVIOUS SPECIFICATION OF TABLE PATH KEYWORD, @OZ28368*/ 00805000 */* IF PREVIOUS SPECIFICATION, SET UP PRINT BUFFER AND CALL @OZ28368*/ 00806000 */* ERROR MESSAGE SETUP ROUTINE FOR TERMINATION. @OZ28368*/ 00807000 */* IF NO PREVIOUS SPECIFICATION, THEN CONTINUE PROCESSING. @OZ28368*/ 00808000 */********************************************************** @OZ28368*/ 00809000 * 0199 00810000 * IF BINT='1'B|CINT='1'B|DINT='1'B THEN 0199 00811000 TM BINT,B'00011100' 0199 00812000 BZ @RF00199 0199 00813000 * DO; /* CHECK FOR PREVIOUS @OZ28368 00814000 * SPECIFICATION @OZ28368*/ 00815000 * 0200 00816000 * /*************************************************************/ 00817000 * /* */ 00818000 * /* MULTIPLE TABPTH KEYWORD SPECIFICATION..TERM. @OZ28368*/ 00819000 * /* */ 00820000 * /*************************************************************/ 00821000 * 0201 00822000 * OUTBUF2(1:27)=ICGDS219; /* DUP KEYWORD TABPTH @OZ28368*/ 00823000 MVC OUTBUF2(27,R4),ICGDS219 0201 00824000 * OUTBUF2(28:28+LENGTH(MSGTABLE))=MSGTABLE;/* @OZ28368*/ 00825000 MVI OUTBUF2+33(R4),C' ' 0202 00826000 MVC OUTBUF2+27(6,R4),@CC00384 0202 00827000 * CALL PUTIT1; /* CALL ERROR MESSAGE @OZ28368 00828000 * ROUTINE @OZ28368*/ 00829000 BAL @14,PUTIT1 0203 00830000 * END; /* @OZ28368*/ 00831000 * ELSE /* @OZ28368*/ 00832000 * DO; /* @OZ28368*/ 00833000 B @RC00199 0205 00834000 @RF00199 DS 0H 0206 00835000 * CALL READS99; /* SCAN...LOOK FOR FIRST @OZ28368 00836000 * OPERAND.. @OZ28368*/ 00837000 BAL @14,READS99 0206 00838000 * IF SCANLEN^=1 THEN /* IS THE LENGTH CORRECT @OZ28368*/ 00839000 CLC SCANLEN(2,R4),@CH00042 0207 00840000 BE @RF00207 0207 00841000 * DO; /* FOR TABLE PATH @OZ28368 00842000 * OPERAND? @OZ28368*/ 00843000 * 0208 00844000 * /*********************************************************/ 00845000 * /* */ 00846000 * /* TABPTH SPECIFIED, BUT NO OPERANDS..TERMINATE @OZ28368*/ 00847000 * /* */ 00848000 * /*********************************************************/ 00849000 * 0209 00850000 * OUTBUF2(1:39)=ICGDS214; /* SPECIFICATION ERROR @OZ28368*/ 00851000 MVC OUTBUF2(39,R4),ICGDS214 0209 00852000 * OUTBUF2(40:40+LENGTH(MSGTABLE))=MSGTABLE;/* MSG KEYWORD 00853000 * @OZ28368*/ 00854000 MVI OUTBUF2+45(R4),C' ' 0210 00855000 MVC OUTBUF2+39(6,R4),@CC00384 0210 00856000 * CALL PUTIT1; /* IS TABPTH. CALL ERROR @OZ28368 00857000 * ROUTINE @OZ28368*/ 00858000 BAL @14,PUTIT1 0211 00859000 * END; /* @OZ28368*/ 00860000 * ELSE /* @OZ28368*/ 00861000 * DO; /* @OZ28368*/ 00862000 B @RC00207 0213 00863000 @RF00207 DS 0H 0214 00864000 * TABBTFLD='1'B; /* @OZ28368*/ 00865000 OI TABBTFLD,B'00000010' 0214 00866000 * CALL OPCHK; /* CALL INTERNAL @OZ28368 00867000 * OPERAND CHECK @OZ28368*/ 00868000 BAL @14,OPCHK 0215 00869000 * CALL READS99; /* CALL SCAN ROUTINE @OZ28368 00870000 * FOR NEXT OP. @OZ28368*/ 00871000 BAL @14,READS99 0216 00872000 * IF SCANLEN^=1 THEN /* IS THIS TABLE PATH @OZ28368 00873000 * KEYWORD VALID LENGTH? @OZ28368*/ 00874000 CLC SCANLEN(2,R4),@CH00042 0217 00875000 BE @RF00217 0217 00876000 * DO; /* @OZ28368*/ 00877000 * IF CINT='1'B|DINT='1'B THEN/* IS THE C OR D INTER 0219 00878000 * @OZ28368*/ 00879000 TM CINT,B'00001100' 0219 00880000 BZ @RF00219 0219 00881000 * DO; /* FACE INDICATOR ON? @OZ28368*/ 00882000 * 0220 00883000 * /*************************************************/ 00884000 * /* */ 00885000 * /* NOT ENOUGH OPERANDS FOR VALID BC OR BCD SPEC */ 00886000 * /* @OZ28368*/ 00887000 * /* */ 00888000 * /*************************************************/ 00889000 * 0221 00890000 * MSGNO=ICG211I; /* IF IT IS THEN USER @OZ28368*/ 00891000 MVC MSGNO(2,R4),ICG211I 0221 00892000 * CALL PUTIT2; /* INCORRECTLY SPECIFIED @OZ28368 00893000 * OPERAND STRING, WRITE @OZ28368 00894000 * ERROR MSG AND @OZ28368 00895000 * TERMINATE @OZ28368*/ 00896000 BAL @14,PUTIT2 0222 00897000 * END; /* @OZ28368*/ 00898000 * ELSE 0224 00899000 * ; /* NO ERROR, NEW KEYWORD @OZ28368*/ 00900000 @RF00219 DS 0H 0225 00901000 * END; /* @OZ28368*/ 00902000 * ELSE /* @OZ28368*/ 00903000 * DO; /* @OZ28368*/ 00904000 B @RC00217 0226 00905000 @RF00217 DS 0H 0227 00906000 * TABBTFLD='1'B; /* @OZ28368*/ 00907000 OI TABBTFLD,B'00000010' 0227 00908000 * CALL OPCHK; /* CALL INTERNAL OPERAND @OZ28368 00909000 * CHECK @OZ28368*/ 00910000 BAL @14,OPCHK 0228 00911000 * CALL READS99; /* CALL SCAN ROUTINE FOR @OZ28368 00912000 * NEXT OP. @OZ28368*/ 00913000 BAL @14,READS99 0229 00914000 * IF SCANLEN^=1 THEN /* @OZ28368*/ 00915000 CLC SCANLEN(2,R4),@CH00042 0230 00916000 BE @RF00230 0230 00917000 * DO; /* @OZ28368*/ 00918000 * IF DINT='1'B THEN/* IS THE D INTERFACE @OZ28368 00919000 * INDICATOR ON? @OZ28368*/ 00920000 TM DINT,B'00000100' 0232 00921000 BNO @RF00232 0232 00922000 * DO; /* @OZ28368*/ 00923000 * 0233 00924000 * /*********************************************/ 00925000 * /* */ 00926000 * /* NOT ENOUGH OPERANDS SPECIFIED FOR VALID */ 00927000 * /* BCD SPEC. @OZ28368*/ 00928000 * /* */ 00929000 * /*********************************************/ 00930000 * 0234 00931000 * MSGNO=ICG211I;/* IF IT IS THEN USER @OZ28368*/ 00932000 MVC MSGNO(2,R4),ICG211I 0234 00933000 * CALL PUTIT2;/* INCORRECTLY SPECIFIED @OZ28368 00934000 * OPERAND STRING, WRITE @OZ28368 00935000 * ERROR MSG AND @OZ28368 00936000 * TERMINATE @OZ28368*/ 00937000 BAL @14,PUTIT2 0235 00938000 * END; /* @OZ28368*/ 00939000 * ELSE 0237 00940000 * ; /* NO ERROR, NEW KEYWORD @OZ28368*/ 00941000 @RF00232 DS 0H 0238 00942000 * END; /* @OZ28368*/ 00943000 * ELSE /* @OZ28368*/ 00944000 * DO; /* @OZ28368*/ 00945000 B @RC00230 0239 00946000 @RF00230 DS 0H 0240 00947000 * TABBTFLD='1'B; /* @OZ28368*/ 00948000 OI TABBTFLD,B'00000010' 0240 00949000 * CALL OPCHK; /* CALL INTERNAL OPERAND @OZ28368*/ 00950000 BAL @14,OPCHK 0241 00951000 * CALL READS99; /* SCAN FOR NEXT KEYWORD @OZ28368 00952000 * CHECK @OZ28368*/ 00953000 BAL @14,READS99 0242 00954000 * END; /* @OZ28368*/ 00955000 * END; /* @OZ28368*/ 00956000 * END; /* @OZ28368*/ 00957000 * END; /* @OZ28368*/ 00958000 * END S08TBPTH; /* END OF TABLE PATH @OZ28368 00959000 * KEYWORD/OPERAND SCAN @OZ28368 00960000 * ROUTINE @OZ28368*/ 00961000 @EL00009 DS 0H 0247 00962000 @EF00009 DS 0H 0247 00963000 @ER00009 LM @14,@12,@SA00009 0247 00964000 BR @14 0247 00965000 * 0248 00966000 */********************************************************** @OZ28368*/ 00967000 */* @OZ28368*/ 00968000 */* PROCEDURE NAME - OPCHK @OZ28368*/ 00969000 */* @OZ28368*/ 00970000 */* FUNCTION - CHECKS TABLE PATH OPERAND SPECIFICATION FOR @OZ28368*/ 00971000 */* B, BC, OR BCD PATHS, SETS CREATE FIELD OF @OZ28368*/ 00972000 */* COMTAB FOR LATER BUILD FUNCTION OF TABLE @OZ28368*/ 00973000 */* CREATE. @OZ28368*/ 00974000 */* @OZ28368*/ 00975000 */********************************************************** @OZ28368*/ 00976000 * 0248 00977000 *OPCHK: 0248 00978000 * PROCEDURE; /* @OZ28368*/ 00979000 OPCHK STM @14,@12,@SA00010 0248 00980000 * IF SCANDATA(1:1)='B' THEN /* IS THE OPERAND VALUE @OZ28368 00981000 * A 'B'? @OZ28368*/ 00982000 L @10,STARTCOL(,R4) 0249 00983000 CLI SCANDATA(@10),C'B' 0249 00984000 BNE @RF00249 0249 00985000 * DO; /* @OZ28368*/ 00986000 * IF BINT='1'B THEN /* IF A 'B' THEN IS THE @OZ28368*/ 00987000 TM BINT,B'00010000' 0251 00988000 BNO @RF00251 0251 00989000 * DO; /* WORK BIT 'ON'? @OZ28368*/ 00990000 * 0252 00991000 * /*********************************************************/ 00992000 * /* */ 00993000 * /* SET 'B' INTERFACE INDICATOR TWICE..TERMINATE. @OZ28368*/ 00994000 * /* */ 00995000 * /*********************************************************/ 00996000 * 0253 00997000 * OUTBUF2(1:25)=ICGDS223; /* VALUE ERROR FOR PATH @OZ28368 00998000 * OPERAND @OZ28368*/ 00999000 MVC OUTBUF2(25,R4),ICGDS223 0253 01000000 * OUTBUF2(26:26+LENGTH(MSGTABLE))=MSGTABLE;/* TABLE 0254 01001000 * @OZ28368 01002000 * PATH KEY @OZ28368*/ 01003000 MVI OUTBUF2+31(R4),C' ' 0254 01004000 MVC OUTBUF2+25(6,R4),@CC00384 0254 01005000 * CALL PUTIT1; /* CALL ERROR ROUTINE.. @OZ28368 01006000 * TERMINATE @OZ28368*/ 01007000 BAL @14,PUTIT1 0255 01008000 * END; /* @OZ28368*/ 01009000 * ELSE 0257 01010000 * BINT='1'B; /* ELSE SET B INTERFACE @OZ28368 01011000 * INDICATOR @OZ28368*/ 01012000 B @RC00251 0257 01013000 @RF00251 OI BINT,B'00010000' 0257 01014000 * END; /* @OZ28368*/ 01015000 * ELSE 0259 01016000 * DO; /* NOT THE B INDICATOR @OZ28368*/ 01017000 B @RC00249 0259 01018000 @RF00249 DS 0H 0260 01019000 * IF SCANDATA(1:1)='C' THEN /* IS THIS OPERAND THE @OZ28368 01020000 * 'C' INDICATOR? @OZ28368*/ 01021000 L @10,STARTCOL(,R4) 0260 01022000 CLI SCANDATA(@10),C'C' 0260 01023000 BNE @RF00260 0260 01024000 * DO; /* @OZ28368*/ 01025000 * 0261 01026000 * /*********************************************************/ 01027000 * /* */ 01028000 * /* IS THE OPERAND SPECIFIED A 'C'? @OZ28368*/ 01029000 * /* */ 01030000 * /*********************************************************/ 01031000 * 0262 01032000 * IF CINT='1'B THEN /* IF INT. FLG ON.. @OZ28368*/ 01033000 TM CINT,B'00001000' 0262 01034000 BNO @RF00262 0262 01035000 * DO; /* THEN ERROR.. @OZ28368*/ 01036000 * 0263 01037000 * /*****************************************************/ 01038000 * /* */ 01039000 * /* MULTIPLE 'C' INTERFACE SPECIFICATION..TERMINATE */ 01040000 * /* @OZ28368*/ 01041000 * /* */ 01042000 * /*****************************************************/ 01043000 * 0264 01044000 * OUTBUF2(1:25)=ICGDS223;/* YES, SO WRITE SPEC @OZ28368*/ 01045000 MVC OUTBUF2(25,R4),ICGDS223 0264 01046000 * OUTBUF2(26:26+LENGTH(MSGTABLE))=MSGTABLE;/* @OZ28368*/ 01047000 MVI OUTBUF2+31(R4),C' ' 0265 01048000 MVC OUTBUF2+25(6,R4),@CC00384 0265 01049000 * CALL PUTIT1; /* WRITE ERROR MESSAGE.. @OZ28368 01050000 * TERMINATE @OZ28368*/ 01051000 BAL @14,PUTIT1 0266 01052000 * END; /* @OZ28368*/ 01053000 * ELSE 0268 01054000 * CINT='1'B; /* SET C INTERFACE @OZ28368 01055000 * INDICATOR 'ON' @OZ28368*/ 01056000 B @RC00262 0268 01057000 @RF00262 OI CINT,B'00001000' 0268 01058000 * END; /* @OZ28368*/ 01059000 * ELSE 0270 01060000 * DO; /* @OZ28368*/ 01061000 * 0270 01062000 B @RC00260 0270 01063000 @RF00260 DS 0H 0271 01064000 * /*********************************************************/ 01065000 * /* */ 01066000 * /* IS THE OPERAND SPECIFIED... @OZ28368*/ 01067000 * /* */ 01068000 * /*********************************************************/ 01069000 * 0271 01070000 * IF SCANDATA(1:1)='D' THEN/* IS THIS OPERAND THE @OZ28368*/ 01071000 L @10,STARTCOL(,R4) 0271 01072000 CLI SCANDATA(@10),C'D' 0271 01073000 BNE @RF00271 0271 01074000 * DO; /* 'D' INDICATOR @OZ28368*/ 01075000 * 0272 01076000 * /*****************************************************/ 01077000 * /* */ 01078000 * /* A 'D'? @OZ28368*/ 01079000 * /* */ 01080000 * /*****************************************************/ 01081000 * 0273 01082000 * IF DINT='1'B THEN /* IS THE D INTERFACE @OZ28368*/ 01083000 TM DINT,B'00000100' 0273 01084000 BNO @RF00273 0273 01085000 * DO; /* WORK BIT 'ON'? @OZ28368*/ 01086000 * 0274 01087000 * /*************************************************/ 01088000 * /* */ 01089000 * /* SET 'D' INTERFACE INDICATOR TWICE..TERMINATE. */ 01090000 * /* @OZ28368*/ 01091000 * /* */ 01092000 * /*************************************************/ 01093000 * 0275 01094000 * OUTBUF2(1:25)=ICGDS223;/* SET SPEC ERROR MSG 0275 01095000 * @OZ28368*/ 01096000 MVC OUTBUF2(25,R4),ICGDS223 0275 01097000 * OUTBUF2(26:26+LENGTH(MSGTABLE))=MSGTABLE;/* 0276 01098000 * @OZ28368*/ 01099000 MVI OUTBUF2+31(R4),C' ' 0276 01100000 MVC OUTBUF2+25(6,R4),@CC00384 0276 01101000 * CALL PUTIT1; /* WRITE ERROR MESSAGE @OZ28368 01102000 * ...TERMINATE @OZ28368*/ 01103000 BAL @14,PUTIT1 0277 01104000 * END; /* @OZ28368*/ 01105000 * ELSE 0279 01106000 * DINT='1'B; /* SET D INTERFACE @OZ28368 01107000 * INDICATOR 'ON' @OZ28368*/ 01108000 B @RC00273 0279 01109000 @RF00273 OI DINT,B'00000100' 0279 01110000 * END; /* @OZ28368*/ 01111000 * ELSE 0281 01112000 * DO; /* @OZ28368*/ 01113000 * 0281 01114000 B @RC00271 0281 01115000 @RF00271 DS 0H 0282 01116000 * /*****************************************************/ 01117000 * /* */ 01118000 * /* ELSE INVALID CHARACTER @OZ28368*/ 01119000 * /* */ 01120000 * /*****************************************************/ 01121000 * 0282 01122000 * OUTBUF2(1:25)=ICGDS223;/* @OZ28368*/ 01123000 MVC OUTBUF2(25,R4),ICGDS223 0282 01124000 * OUTBUF2(26:26+LENGTH(MSGTABLE))=MSGTABLE;/* @OZ28368*/ 01125000 MVI OUTBUF2+31(R4),C' ' 0283 01126000 MVC OUTBUF2+25(6,R4),@CC00384 0283 01127000 * CALL PUTIT1; /* @OZ28368*/ 01128000 BAL @14,PUTIT1 0284 01129000 * END; /* @OZ28368*/ 01130000 * END; /* @OZ28368*/ 01131000 * END; /* @OZ28368*/ 01132000 * END OPCHK; /* @OZ28368*/ 01133000 @EL00010 DS 0H 0288 01134000 @EF00010 DS 0H 0288 01135000 @ER00010 LM @14,@12,@SA00010 0288 01136000 BR @14 0288 01137000 * 0289 01138000 */********************************************************** @YD00113*/ 01139000 */* #Y30LB12*/ 01140000 */* PROCEDURE NAME - S08CLOCK #Y30LB12*/ 01141000 */* #Y30LB12*/ 01142000 */* FUNCTION - EXTRACT LRUCLOCK PARAMETER VIA READS99 @YD00113*/ 01143000 */* CHECK FOR DUPLICATE KEYWORD LRUCLOCK. @YD00113*/ 01144000 */* CHECK FOR 1 OF 8 PREDETERMINED DECIMAL @Y30LB12*/ 01145000 */* VALUES THAT WILL SET THE PROPER BINARY @Y30LB12*/ 01146000 */* BIT IN THE LRUCLOCK INCREMENTOR. @Y30LB12*/ 01147000 */* 128 = '80'X @Y30LB12*/ 01148000 */* 256 = '40'X @Y30LB12*/ 01149000 */* 512 = '20'X @Y30LB12*/ 01150000 */* 1024 = '10'X @Y30LB12*/ 01151000 */* 2048 = '08'X @Y30LB12*/ 01152000 */* 4096 = '04'X @Y30LB12*/ 01153000 */* 8192 = '02'X @Y30LB12*/ 01154000 */* 16384 = '01'X @Y30LB12*/ 01155000 */* IF NONE OF THE ABOVE WRITE ERROR MESSAGE @Y30LB12*/ 01156000 */* @Y30LB12*/ 01157000 */********************************************************** @YD00113*/ 01158000 * 0289 01159000 *S08CLOCK: 0289 01160000 * PROCEDURE; /* @Y30LB12*/ 01161000 S08CLOCK STM @14,@12,@SA00011 0289 01162000 * CALL READS99; /* EXTRACT PARAMETER @Y30LB12*/ 01163000 BAL @14,READS99 0290 01164000 * IF HAVCLOCK^='1'B /* @Y30LB12*/ 01165000 * THEN /* @Y30LB12*/ 01166000 TM HAVCLOCK,B'00001000' 0291 01167000 BO @RF00291 0291 01168000 * HAVCLOCK='1'B; /* @Y30LB12*/ 01169000 OI HAVCLOCK,B'00001000' 0292 01170000 * ELSE /* @Y30LB12*/ 01171000 * DO; /* @Y30LB12*/ 01172000 * 0293 01173000 B @RC00291 0293 01174000 @RF00291 DS 0H 0294 01175000 * /*************************************************************/ 01176000 * /* */ 01177000 * /* ***************************************** @YD00113*/ 01178000 * /* 'ICG219I DUPLICATE KEYWORD LRUCLOCK' @Y30LB12*/ 01179000 * /* ***************************************** @YD00113*/ 01180000 * /* */ 01181000 * /*************************************************************/ 01182000 * 0294 01183000 * OUTBUF2(1:27)=ICGDS219; /* @Y30LB12*/ 01184000 MVC OUTBUF2(27,R4),ICGDS219 0294 01185000 * OUTBUF2(28:28+LENGTH(MSGCLOCK))=MSGCLOCK;/* @YD00113*/ 01186000 MVI OUTBUF2+35(R4),C' ' 0295 01187000 MVC OUTBUF2+27(8,R4),@CC00380 0295 01188000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 01189000 BAL @14,PUTIT1 0296 01190000 * RETURN; /* RETURN TO S08SCAN @Y30LB12*/ 01191000 @EL00011 DS 0H 0297 01192000 @EF00011 DS 0H 0297 01193000 @ER00011 LM @14,@12,@SA00011 0297 01194000 BR @14 0297 01195000 * END; /* @Y30LB12*/ 01196000 * 0298 01197000 * /*****************************************************************/ 01198000 * /* */ 01199000 * /* *********************************************** @YD00113*/ 01200000 * /* ICG211I EXPECTED, BUT DID NOT FIND, @Y30LB12*/ 01201000 * /* PARAMETER @Y30LB12*/ 01202000 * /* *********************************************** @YD00113*/ 01203000 * /* */ 01204000 * /*****************************************************************/ 01205000 * 0299 01206000 * IF PARMBIT^='1'B /* @Y30LB12*/ 01207000 * THEN /* @Y30LB12*/ 01208000 @RC00291 TM PARMBIT(R4),B'00100000' 0299 01209000 BO @RF00299 0299 01210000 * DO; /* @Y30LB12*/ 01211000 * MSGNO=ICG211I; /* ID FOR ICGDS211 @Y30LB12*/ 01212000 MVC MSGNO(2,R4),ICG211I 0301 01213000 * CALL PUTIT2; /* TO MESSAGE WRITER @Y30LB12*/ 01214000 BAL @14,PUTIT2 0302 01215000 * RETURN; /* RETURN TO S08SCAN @Y30LB12*/ 01216000 B @EL00011 0303 01217000 * END; /* @Y30LB12*/ 01218000 * ELSE 0305 01219000 * ; /* @Y30LB12*/ 01220000 @RF00299 DS 0H 0306 01221000 * IF SCANLEN=3 /* SET BY ICGDSS99 @Y30LB12*/ 01222000 * THEN /* @Y30LB12*/ 01223000 CLC SCANLEN(2,R4),@CH00048 0306 01224000 BNE @RF00306 0306 01225000 * IF SCANDATA(1:3)='128' /* @Y30LB12*/ 01226000 * THEN /* @Y30LB12*/ 01227000 L @10,STARTCOL(,R4) 0307 01228000 CLC SCANDATA(3,@10),@CC00445 0307 01229000 BNE @RF00307 0307 01230000 * TABCLOCK='80'X; /* @Y30LB12*/ 01231000 MVI TABCLOCK,X'80' 0308 01232000 * ELSE /* @Y30LB12*/ 01233000 * IF SCANDATA(1:3)='256' /* @Y30LB12*/ 01234000 * THEN /* @Y30LB12*/ 01235000 B @RC00307 0309 01236000 @RF00307 L @10,STARTCOL(,R4) 0309 01237000 CLC SCANDATA(3,@10),@CC00447 0309 01238000 BNE @RF00309 0309 01239000 * TABCLOCK='40'X; /* @Y30LB12*/ 01240000 MVI TABCLOCK,X'40' 0310 01241000 * ELSE /* @Y30LB12*/ 01242000 * IF SCANDATA(1:3)='512' /* @Y30LB12*/ 01243000 * THEN /* @Y30LB12*/ 01244000 B @RC00309 0311 01245000 @RF00309 L @10,STARTCOL(,R4) 0311 01246000 CLC SCANDATA(3,@10),@CC00449 0311 01247000 BNE @RF00311 0311 01248000 * TABCLOCK='20'X; /* @Y30LB12*/ 01249000 MVI TABCLOCK,X'20' 0312 01250000 * ELSE 0313 01251000 * ; /* @Y30LB12*/ 01252000 @RF00311 DS 0H 0314 01253000 * ELSE 0314 01254000 * ; /* @Y30LB12*/ 01255000 @RF00306 DS 0H 0315 01256000 * IF SCANLEN=4 /* SET BY ICGDSS99 @Y30LB12*/ 01257000 * THEN /* @Y30LB12*/ 01258000 @RC00306 CLC SCANLEN(2,R4),@CH00068 0315 01259000 BNE @RF00315 0315 01260000 * IF SCANDATA(1:4)='1024' /* @Y30LB12*/ 01261000 * THEN /* @Y30LB12*/ 01262000 L @10,STARTCOL(,R4) 0316 01263000 CLC SCANDATA(4,@10),@CC00451 0316 01264000 BNE @RF00316 0316 01265000 * TABCLOCK='10'X; /* @Y30LB12*/ 01266000 MVI TABCLOCK,X'10' 0317 01267000 * ELSE /* @Y30LB12*/ 01268000 * IF SCANDATA(1:4)='2048' /* @Y30LB12*/ 01269000 * THEN /* @Y30LB12*/ 01270000 B @RC00316 0318 01271000 @RF00316 L @10,STARTCOL(,R4) 0318 01272000 CLC SCANDATA(4,@10),@CC00453 0318 01273000 BNE @RF00318 0318 01274000 * TABCLOCK='08'X; /* @Y30LB12*/ 01275000 MVI TABCLOCK,X'08' 0319 01276000 * ELSE /* @Y30LB12*/ 01277000 * IF SCANDATA(1:4)='4096' /* @Y30LB12*/ 01278000 * THEN /* @Y30LB12*/ 01279000 B @RC00318 0320 01280000 @RF00318 L @10,STARTCOL(,R4) 0320 01281000 CLC SCANDATA(4,@10),@CC00455 0320 01282000 BNE @RF00320 0320 01283000 * TABCLOCK='04'X; /* @Y30LB12*/ 01284000 MVI TABCLOCK,X'04' 0321 01285000 * ELSE /* @Y30LB12*/ 01286000 * IF SCANDATA(1:4)='8192' /* @Y30LB12*/ 01287000 * THEN /* @Y30LB12*/ 01288000 B @RC00320 0322 01289000 @RF00320 L @10,STARTCOL(,R4) 0322 01290000 CLC SCANDATA(4,@10),@CC00457 0322 01291000 BNE @RF00322 0322 01292000 * TABCLOCK='02'X; /* @Y30LB12*/ 01293000 MVI TABCLOCK,X'02' 0323 01294000 * ELSE 0324 01295000 * ; /* @Y30LB12*/ 01296000 @RF00322 DS 0H 0325 01297000 * ELSE 0325 01298000 * ; /* @Y30LB12*/ 01299000 @RF00315 DS 0H 0326 01300000 * IF SCANLEN=5 /* SET BY ICGDSS99 @Y30LB12*/ 01301000 * THEN /* @Y30LB12*/ 01302000 @RC00315 CLC SCANLEN(2,R4),@CH00119 0326 01303000 BNE @RF00326 0326 01304000 * IF SCANDATA(1:5)='16384' /* @Y30LB12*/ 01305000 * THEN /* @Y30LB12*/ 01306000 L @10,STARTCOL(,R4) 0327 01307000 CLC SCANDATA(5,@10),@CC00459 0327 01308000 BNE @RF00327 0327 01309000 * TABCLOCK='01'X; /* @Y30LB12*/ 01310000 MVI TABCLOCK,X'01' 0328 01311000 * ELSE 0329 01312000 * ; /* @Y30LB12*/ 01313000 @RF00327 DS 0H 0330 01314000 * ELSE 0330 01315000 * ; /* @Y30LB12*/ 01316000 @RF00326 DS 0H 0331 01317000 * IF TABCLOCK='00'X /* @Y30LB12*/ 01318000 * THEN /* @Y30LB12*/ 01319000 CLI TABCLOCK,X'00' 0331 01320000 BNE @RF00331 0331 01321000 * DO; /* @Y30LB12*/ 01322000 * 0332 01323000 * /*************************************************************/ 01324000 * /* */ 01325000 * /* ***************************************** @YD00113*/ 01326000 * /* 'ICG223I VALUE ERROR FOR LRUCLOCK' @Y30LB12*/ 01327000 * /* ***************************************** @YD00113*/ 01328000 * /* */ 01329000 * /*************************************************************/ 01330000 * 0333 01331000 * OUTBUF2(1:25)=ICGDS223; /* @Y30LB12*/ 01332000 MVC OUTBUF2(25,R4),ICGDS223 0333 01333000 * OUTBUF2(26:26+LENGTH(MSGCLOCK))=MSGCLOCK;/* @YD00113*/ 01334000 MVI OUTBUF2+33(R4),C' ' 0334 01335000 MVC OUTBUF2+25(8,R4),@CC00380 0334 01336000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 01337000 BAL @14,PUTIT1 0335 01338000 * END; /* @Y30LB12*/ 01339000 * ELSE 0337 01340000 * ; /* @Y30LB12*/ 01341000 @RF00331 DS 0H 0338 01342000 * END S08CLOCK; /* RETURN TO S08SCAN @Y30LB12*/ 01343000 B @EL00011 0338 01344000 * 0339 01345000 */********************************************************** @G24LB42*/ 01346000 */* @G24LB42*/ 01347000 */* PROCEDURE NAME - S08CYLFL @G24LB42*/ 01348000 */* @G24LB42*/ 01349000 */* FUNCTION - DETERMINE IF CYLINDER FAULT - ATTENTION @G24LB42*/ 01350000 */* INTERRUPT OPTION WAS REQUESTED. FLAG IS SET @G24LB42*/ 01351000 */* ON IF OPTION PARAMETER IS 'YES'. @G24LB42*/ 01352000 */* @G24LB42*/ 01353000 */********************************************************** @G24LB42*/ 01354000 * 0339 01355000 *S08CYLFL: 0339 01356000 * PROCEDURE; /* @G24LB42*/ 01357000 S08CYLFL STM @14,@12,@SA00012 0339 01358000 * CALL READS99; /* EXTRACT PARAMETER @G24LB42*/ 01359000 BAL @14,READS99 0340 01360000 * IF HAVCYLFL^='1'B /* @G24LB42*/ 01361000 * THEN /* @G24LB42*/ 01362000 LA @10,1 0341 01363000 C @10,HAVCYLFL 0341 01364000 BE @RF00341 0341 01365000 * HAVCYLFL='1'B; /* FIRST USE OF KEY @G24LB42*/ 01366000 ST @10,HAVCYLFL 0342 01367000 * ELSE /* @G24LB42*/ 01368000 * DO; /* @G24LB42*/ 01369000 * 0343 01370000 B @RC00341 0343 01371000 @RF00341 DS 0H 0344 01372000 * /*************************************************************/ 01373000 * /* */ 01374000 * /* ***************************************** @G24LB42*/ 01375000 * /* 'ICG219I DUPLICATE KEYWORD CYLFAULT' @G24LB42*/ 01376000 * /* ***************************************** @G24LB42*/ 01377000 * /* */ 01378000 * /*************************************************************/ 01379000 * 0344 01380000 * OUTBUF2(1:27)=ICGDS219; /* @G24LB42*/ 01381000 MVC OUTBUF2(27,R4),ICGDS219 0344 01382000 * OUTBUF2(28:28+LENGTH(MSGCYLFL))=MSGCYLFL;/* @G24LB42*/ 01383000 MVI OUTBUF2+35(R4),C' ' 0345 01384000 MVC OUTBUF2+27(8,R4),@CC00382 0345 01385000 * CALL PUTIT1; /* TO MESSAGE WRITER @G24LB42*/ 01386000 BAL @14,PUTIT1 0346 01387000 * RETURN; /* RETURN TO S08SCAN @G24LB42*/ 01388000 @EL00012 DS 0H 0347 01389000 @EF00012 DS 0H 0347 01390000 @ER00012 LM @14,@12,@SA00012 0347 01391000 BR @14 0347 01392000 * END; /* @G24LB42*/ 01393000 * 0348 01394000 * /*****************************************************************/ 01395000 * /* */ 01396000 * /* *********************************************** @G24LB42*/ 01397000 * /* ICG211I EXPECTED, BUT DID NOT FIND, @G24LB42*/ 01398000 * /* PARAMETER @G24LB42*/ 01399000 * /* *********************************************** @G24LB42*/ 01400000 * /* */ 01401000 * /*****************************************************************/ 01402000 * 0349 01403000 * IF PARMBIT^='1'B /* @G24LB42*/ 01404000 * THEN /* @G24LB42*/ 01405000 @RC00341 TM PARMBIT(R4),B'00100000' 0349 01406000 BO @RF00349 0349 01407000 * DO; /* @G24LB42*/ 01408000 * MSGNO=ICG211I; /* ID FOR ICG211I @G24LB42*/ 01409000 MVC MSGNO(2,R4),ICG211I 0351 01410000 * CALL PUTIT2; /* TO MESSAGE WRITER @G24LB42*/ 01411000 BAL @14,PUTIT2 0352 01412000 * RETURN; /* RETURN TO S08SCAN @G24LB42*/ 01413000 B @EL00012 0353 01414000 * END; /* @G24LB42*/ 01415000 * ELSE /* @G24LB42*/ 01416000 * IF SCANDATA(1:3)='YES' THEN /* @G24LB42*/ 01417000 @RF00349 L @10,STARTCOL(,R4) 0355 01418000 CLC SCANDATA(3,@10),@CC00465 0355 01419000 BNE @RF00355 0355 01420000 * CYLFLON='1'B; /* ATTENTION INTERRUPT @G24LB42*/ 01421000 OI CYLFLON,B'00000001' 0356 01422000 * ELSE /* @G24LB42*/ 01423000 * CYLFLON='0'B; /* @G24LB42*/ 01424000 B @RC00355 0357 01425000 @RF00355 NI CYLFLON,B'11111110' 0357 01426000 * END S08CYLFL; /* RETURN TO S08SCAN @G24LB42*/ 01427000 B @EL00012 0358 01428000 * 0359 01429000 */********************************************************** @YD00113*/ 01430000 */* @Y30LB12*/ 01431000 */* PROCEDURE NAME - S08ANAL @Y30LB12*/ 01432000 */* @Y30LB12*/ 01433000 */* FUNCTION - TEST FOR MISSING REQUIRED KEYWORD, 'LRUCLOCK' @YD00113*/ 01434000 */* TEST EXCLUSIVE CREATE PARAMETERS FOR CONFLICT @YD00113*/ 01435000 */* THEN DETERMINE IF REQUIRED 'CREATE' PARM @YD00113*/ 01436000 */* IS MISSING. FOR ANY FAILURE, ISSUE APPROP- @YD00113*/ 01437000 */* RIATE ERROR MESSAGE. LASTLY, TEST FOR PAGE @YD00113*/ 01438000 */* NUMBER VALUE ERRORS @YD00113*/ 01439000 */* @Y30LB12*/ 01440000 */********************************************************** @YD00113*/ 01441000 * 0359 01442000 *S08ANAL: 0359 01443000 * PROCEDURE; /* @Y30LB12*/ 01444000 S08ANAL STM @14,@12,@SA00013 0359 01445000 * IF HAVCLOCK^='1'B /* @Y30LB12*/ 01446000 * THEN /* @Y30LB12*/ 01447000 TM HAVCLOCK,B'00001000' 0360 01448000 BO @RF00360 0360 01449000 * DO; /* @Y30LB12*/ 01450000 * 0361 01451000 * /*************************************************************/ 01452000 * /* */ 01453000 * /* ***************************************** @YD00113*/ 01454000 * /* ICG221I MISSING REQUIRED KEYWORD @Y30LB12*/ 01455000 * /* LRUCLOCK @Y30LB12*/ 01456000 * /* ***************************************** @YD00113*/ 01457000 * /* */ 01458000 * /*************************************************************/ 01459000 * 0362 01460000 * OUTBUF2(1:34)=ICGDS221; /* @Y30LB12*/ 01461000 MVC OUTBUF2(34,R4),ICGDS221 0362 01462000 * OUTBUF2(35:35+LENGTH(MSGCLOCK))=MSGCLOCK;/* @YD00113*/ 01463000 MVI OUTBUF2+42(R4),C' ' 0363 01464000 MVC OUTBUF2+34(8,R4),@CC00380 0363 01465000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 01466000 BAL @14,PUTIT1 0364 01467000 * END; /* @Y30LB12*/ 01468000 * ELSE 0366 01469000 * ; /* @Y30LB12*/ 01470000 @RF00360 DS 0H 0367 01471000 * IF HAVVOLID^='1'B /* @Y30LB12*/ 01472000 * THEN /* @Y30LB12*/ 01473000 TM HAVVOLID,B'00000100' 0367 01474000 BO @RF00367 0367 01475000 * DO; /* @Y30LB12*/ 01476000 * 0368 01477000 * /*************************************************************/ 01478000 * /* */ 01479000 * /* ***************************************** @YD00113*/ 01480000 * /* ICG221I MISSING REQUIRED KEYWORD @Y30LB12*/ 01481000 * /* VOLID @Y30LB12*/ 01482000 * /* ***************************************** @YD00113*/ 01483000 * /* */ 01484000 * /*************************************************************/ 01485000 * 0369 01486000 * OUTBUF2(1:34)=ICGDS221; /* @Y30LB12*/ 01487000 MVC OUTBUF2(34,R4),ICGDS221 0369 01488000 * OUTBUF2(35:35+LENGTH(MSGVOLID))=MSGVOLID;/* @YD00113*/ 01489000 MVI OUTBUF2+39(R4),C' ' 0370 01490000 MVC OUTBUF2+34(5,R4),@CC00378 0370 01491000 * CALL PUTIT1; /* TO MESSAGE WRITER @Y30LB12*/ 01492000 BAL @14,PUTIT1 0371 01493000 * END; /* @Y30LB12*/ 01494000 * ELSE 0373 01495000 * ; /* @Y30LB12*/ 01496000 @RF00367 DS 0H 0374 01497000 * IF NEWBIT='1'B /* @Y30LB12*/ 01498000 * THEN /* @Y30LB12*/ 01499000 TM NEWBIT,B'10000000' 0374 01500000 BNO @RF00374 0374 01501000 * IF UPDBIT='1'B /* @Y30LB12*/ 01502000 * THEN /* @Y30LB12*/ 01503000 TM UPDBIT,B'01000000' 0375 01504000 BNO @RF00375 0375 01505000 * DO; /* @Y30LB12*/ 01506000 * 0376 01507000 * /***********************************************************/ 01508000 * /* */ 01509000 * /* ************************************* @YD00113*/ 01510000 * /* ICG215I CREATE STATEMENT EXCLUSIVE @Y30LB12*/ 01511000 * /* PARAMETERS CONFLICT @Y30LB12*/ 01512000 * /* ************************************* @YD00113*/ 01513000 * /* */ 01514000 * /***********************************************************/ 01515000 * 0377 01516000 * MSGNO=ICG215I; /* IDENT FOR ICG215I @Y30LB12*/ 01517000 MVC MSGNO(2,R4),ICG215I 0377 01518000 * CALL PUTIT2; /* TO MESSAGE WRITER @Y30LB12*/ 01519000 BAL @14,PUTIT2 0378 01520000 * END; /* @Y30LB12*/ 01521000 * ELSE 0380 01522000 * ; /* @Y30LB12*/ 01523000 @RF00375 DS 0H 0381 01524000 * ELSE /* @Y30LB12*/ 01525000 * IF UPDBIT='0'B /* @Y30LB12*/ 01526000 * THEN /* @Y30LB12*/ 01527000 B @RC00374 0381 01528000 @RF00374 TM UPDBIT,B'01000000' 0381 01529000 BNZ @RF00381 0381 01530000 * DO; /* @Y30LB12*/ 01531000 * 0382 01532000 * /***********************************************************/ 01533000 * /* */ 01534000 * /* ************************************* @YD00113*/ 01535000 * /* ICG216I REQUIRED CREATE PARAMETER @Y30LB12*/ 01536000 * /* MISSING @Y30LB12*/ 01537000 * /* ************************************* @YD00113*/ 01538000 * /* */ 01539000 * /***********************************************************/ 01540000 * 0383 01541000 * MSGNO=ICG216I; /* IDENT FOR ICG216I @Y30LB12*/ 01542000 MVC MSGNO(2,R4),ICG216I 0383 01543000 * CALL PUTIT2; /* TO MESSAGE WRITER @Y30LB12*/ 01544000 BAL @14,PUTIT2 0384 01545000 * END; /* @Y30LB12*/ 01546000 * ELSE 0386 01547000 * ; /* @Y30LB12*/ 01548000 @RF00381 DS 0H 0387 01549000 * IF CMDCREAT^='1'B /* @Y30LB12*/ 01550000 * THEN /* @Y30LB12*/ 01551000 @RC00374 TM CMDCREAT(R4),B'10000000' 0387 01552000 BO @RF00387 0387 01553000 * CMDCREAT='1'B; /* @Y30LB12*/ 01554000 OI CMDCREAT(R4),B'10000000' 0388 01555000 * ELSE /* @Y30LB12*/ 01556000 * DO; /* @Y30LB12*/ 01557000 * 0389 01558000 B @RC00387 0389 01559000 @RF00387 DS 0H 0390 01560000 * /*************************************************************/ 01561000 * /* */ 01562000 * /* ***************************************** @YD00113*/ 01563000 * /* MESSAGE ICG205I DUPLICATE COMMAND WORD @Y30LB12*/ 01564000 * /* ***************************************** @YD00113*/ 01565000 * /* */ 01566000 * /*************************************************************/ 01567000 * 0390 01568000 * MSGNO=ICG205I; /* ID FOR ICGDS205 @Y30LB12*/ 01569000 MVC MSGNO(2,R4),ICG205I 0390 01570000 * CALL PUTIT2; /* TO MESSAGE WRITER @Y30LB12*/ 01571000 BAL @14,PUTIT2 0391 01572000 * END; /* @Y30LB12*/ 01573000 * END S08ANAL; /* RET. TO MAINLINE @Y30LB12*/ 01574000 @EL00013 DS 0H 0393 01575000 @EF00013 DS 0H 0393 01576000 @ER00013 LM @14,@12,@SA00013 0393 01577000 BR @14 0393 01578000 * 0394 01579000 */********************************************************** @YD00113*/ 01580000 */* @Y30LB12*/ 01581000 */* PROCEDURE NAME - S08BUILD @Y30LB12*/ 01582000 */* @Y30LB12*/ 01583000 */* FUNCTION - MOVE INDICATION OF PARAMETERS SCANNED FROM @Y30LB12*/ 01584000 */* THIS CONTROL STATEMENT TO THE STRUCTURE @Y30LB12*/ 01585000 */* 'CREATE' IN COMTAB @Y30LB12*/ 01586000 */* @Y30LB12*/ 01587000 */********************************************************** @YD00113*/ 01588000 * 0394 01589000 *S08BUILD: 0394 01590000 * PROCEDURE; /* @Y30LB12*/ 01591000 S08BUILD STM @14,@12,12(@13) 0394 01592000 * IF NEWBIT='1'B /* @Y30LB12*/ 01593000 * THEN /* @Y30LB12*/ 01594000 TM NEWBIT,B'10000000' 0395 01595000 BNO @RF00395 0395 01596000 * NEWCREAT='1'B; /* @Y30LB12*/ 01597000 OI NEWCREAT(R4),B'01000000' 0396 01598000 * ELSE 0397 01599000 * ; /* @Y30LB12*/ 01600000 @RF00395 DS 0H 0398 01601000 * IF UPDBIT='1'B /* @Y30LB12*/ 01602000 * THEN /* @Y30LB12*/ 01603000 TM UPDBIT,B'01000000' 0398 01604000 BNO @RF00398 0398 01605000 * UPDCREAT='1'B; /* @Y30LB12*/ 01606000 OI UPDCREAT(R4),B'00100000' 0399 01607000 * ELSE 0400 01608000 * ; /* @Y30LB12*/ 01609000 @RF00398 DS 0H 0401 01610000 * IF PRNTBIT='1'B /* @Y30LB12*/ 01611000 * THEN /* @Y30LB12*/ 01612000 TM PRNTBIT,B'00100000' 0401 01613000 BNO @RF00401 0401 01614000 * PRNTONLY='1'B; /* @Y30LB12*/ 01615000 OI PRNTONLY(R4),B'00010000' 0402 01616000 * ELSE 0403 01617000 * ; /* @Y30LB12*/ 01618000 @RF00401 DS 0H 0404 01619000 * LRUCLOCK=TABCLOCK; /* @Y30LB12*/ 01620000 MVC LRUCLOCK(1,R4),TABCLOCK 0404 01621000 * VOLSER=WKVOLSER; /* @Y30LB12*/ 01622000 MVC VOLSER(6,R4),WKVOLSER 0405 01623000 * IF CYLFLON='1'B THEN /* @G24LB42*/ 01624000 TM CYLFLON,B'00000001' 0406 01625000 BNO @RF00406 0406 01626000 * CYLFAULT='1'B; /* @G24LB42*/ 01627000 OI CYLFAULT(R4),B'00001000' 0407 01628000 * DO I=1 TO 4; /* @Y30LB12*/ 01629000 @RF00406 LA I,1 0408 01630000 @DL00408 DS 0H 0409 01631000 * VPAGES(I)=WKPAGES(I); /* @Y30LB12*/ 01632000 SLR @10,@10 0409 01633000 IC @10,WKPAGES-1(I) 0409 01634000 STC @10,VPAGES-1(I,R4) 0409 01635000 * END; /* @Y30LB12*/ 01636000 AH I,@CH00042 0410 01637000 CH I,@CH00068 0410 01638000 BNH @DL00408 0410 01639000 * IF BINT='1'B THEN 0411 01640000 TM BINT,B'00010000' 0411 01641000 BNO @RF00411 0411 01642000 * BINTIND='1'B; /* IF ANY TABPTH @OZ28368*/ 01643000 OI BINTIND(R4),B'00000100' 0412 01644000 * ELSE 0413 01645000 * ; /* KEYWORD OPERAND @OZ28368*/ 01646000 @RF00411 DS 0H 0414 01647000 * IF CINT='1'B THEN 0414 01648000 TM CINT,B'00001000' 0414 01649000 BNO @RF00414 0414 01650000 * CINTIND='1'B; /* SPECS WERE MADE, @OZ28368*/ 01651000 OI CINTIND(R4),B'00000010' 0415 01652000 * ELSE 0416 01653000 * ; /* SET COMTAB FIELDS @OZ28368*/ 01654000 @RF00414 DS 0H 0417 01655000 * IF DINT='1'B THEN 0417 01656000 TM DINT,B'00000100' 0417 01657000 BNO @RF00417 0417 01658000 * DINTIND='1'B; /* FROM WORK BITS @OZ28368*/ 01659000 OI DINTIND(R4),B'00000001' 0418 01660000 * ELSE 0419 01661000 * ; /* @OZ28368*/ 01662000 @RF00417 DS 0H 0420 01663000 * END S08BUILD; /* RET. TO MAINLINE @Y30LB12*/ 01664000 @EL00014 DS 0H 0420 01665000 @EF00014 DS 0H 0420 01666000 @ER00014 LM @14,@12,12(@13) 0420 01667000 BR @14 0420 01668000 * 0421 01669000 */***********************************************************@Y30LB12*/ 01670000 */* @Y30LB12*/ 01671000 */* PROCEDURE NAME - READS99 @Y30LB12*/ 01672000 */* @Y30LB12*/ 01673000 */* FUNCTION - CALL SCAN READ KEYWORD/PARAMETER SUBROUTINE @Y30LB12*/ 01674000 */* ICGDSS99. PICK UP STARTING COLUMN FOR THIS @Y30LB12*/ 01675000 */* SCAN AND STARTING COLUMN FOR NEXT ENTRY INTO @Y30LB12*/ 01676000 */* ICGDSS99. IF TERMINATING ERROR OCCURS IN @Y30LB12*/ 01677000 */* ICGDSS99, SET 'LASTPARM' TO TERMINATE IN THIS @Y30LB12*/ 01678000 */* MODULE ON NEXT READ OF KEYWORD @Y30LB12*/ 01679000 */* @Y30LB12*/ 01680000 */***********************************************************@Y30LB12*/ 01681000 * 0421 01682000 *READS99: 0421 01683000 * PROCEDURE; /* @Y30LB12*/ 01684000 READS99 STM @14,@12,@SA00015 0421 01685000 * GEN(LINK EP=ICGDSS99); /* TO SCAN KEYWORD/PARAMETER */ 01686000 * 0422 01687000 LINK EP=ICGDSS99 01688000 * /*****************************************************************/ 01689000 * /* */ 01690000 * /* ************************************************@Y30LB12 IF */ 01691000 * /* 'ENDSCAN' BIT IS ON, WE ENCOUNTERED SOME @Y30LB12*/ 01692000 * /* DISASTEROUS CONDITION THAT TERMINATED THE SCAN @Y30LB12*/ 01693000 * /* OF THIS CONTROL STATEMENT. THERE ERRORS ARE @Y30LB12*/ 01694000 * /* ASSOCIATED WITH SCANNING INTO COLUMN 73 AND @Y30LB12*/ 01695000 * /* WITH FINDING A FORMAT ERROR IN THE @Y30LB12*/ 01696000 * /* CONTINUATION STATEMENT. SHOULD SUCH A @Y30LB12*/ 01697000 * /* CONDITION OCCUR, WE TERMINATE SCAN OF THE @Y30LB12*/ 01698000 * /* CONTROL STATEMENT UPON READ OF THE NEXT @Y30LB12*/ 01699000 * /* KEYWORD. @Y30LB12*/ 01700000 * /* ************************************************@Y30LB12 */ 01701000 * /* */ 01702000 * /*****************************************************************/ 01703000 * 0423 01704000 * IF ENDSCAN='1'B /* @Y30LB12*/ 01705000 * THEN /* @Y30LB12*/ 01706000 TM ENDSCAN(R4),B'00010000' 0423 01707000 BNO @RF00423 0423 01708000 * LASTPARM='1'B; /* @Y30LB12*/ 01709000 OI LASTPARM(R4),B'00001000' 0424 01710000 * ELSE 0425 01711000 * ; /* @Y30LB12*/ 01712000 @RF00423 DS 0H 0426 01713000 * END READS99; /* @Y30LB12*/ 01714000 @EL00015 DS 0H 0426 01715000 @EF00015 DS 0H 0426 01716000 @ER00015 LM @14,@12,@SA00015 0426 01717000 BR @14 0426 01718000 * 0427 01719000 */***********************************************************@Y30LB12*/ 01720000 */* @Y30LB12*/ 01721000 */* PROCEDURE NAME - PUTIT1 @Y30LB12*/ 01722000 */* @Y30LB12*/ 01723000 */* FUNCTION - CALL ICGDSMSG, MESSAGE PRINT SUBROUTINE, TO @Y30LB12*/ 01724000 */* PUT TERMINATING MESSAGE FOR WHICH TEXT IS NOT @Y30LB12*/ 01725000 */* IN ICGDSMSG BUT ALREADY BUILT IN 'OUTBUF2' @Y30LB12*/ 01726000 */* @Y30LB12*/ 01727000 */***********************************************************@Y30LB12*/ 01728000 * 0427 01729000 *PUTIT1: 0427 01730000 * PROCEDURE; /* @Y30LB12*/ 01731000 PUTIT1 STM @14,@12,@SA00016 0427 01732000 * STOPSCAN='1'B; /* @Y30LB12*/ 01733000 OI STOPSCAN,B'00100000' 0428 01734000 * PRNTBUF2='1'B; /* @Y30LB12*/ 01735000 OI PRNTBUF2(R4),B'00000001' 0429 01736000 * TERMINAT=TERMINAT+1; /* @Y30LB12*/ 01737000 LA @10,1 0430 01738000 AH @10,TERMINAT(,R4) 0430 01739000 STH @10,TERMINAT(,R4) 0430 01740000 * GEN(LINK EP=ICGDSMSG); /* @Y30LB12*/ 01741000 LINK EP=ICGDSMSG 01742000 * PRNTBUF2='0'B; /* @Y30LB12*/ 01743000 NI PRNTBUF2(R4),B'11111110' 0432 01744000 * END PUTIT1; /* @Y30LB12*/ 01745000 @EL00016 DS 0H 0433 01746000 @EF00016 DS 0H 0433 01747000 @ER00016 LM @14,@12,@SA00016 0433 01748000 BR @14 0433 01749000 * 0434 01750000 */***********************************************************@Y30LB12*/ 01751000 */* @Y30LB12*/ 01752000 */* PROCEDURE NAME - PUTIT2 @Y30LB12*/ 01753000 */* @Y30LB12*/ 01754000 */* FUNCTION - CALL ICGDSMSG, MESSAGE PRINT SUBROUTINE, TO @Y30LB12*/ 01755000 */* PUT TERMINATING MESSAGE FOR WHICH MESSAGE @Y30LB12*/ 01756000 */* TEXT IS IN ICGDSMSG. 'MSGNO' INDICATES THE @Y30LB12*/ 01757000 */* OFFSET OF THE MESSAGE TEXT. @Y30LB12*/ 01758000 */* @Y30LB12*/ 01759000 */***********************************************************@Y30LB12*/ 01760000 * 0434 01761000 *PUTIT2: 0434 01762000 * PROCEDURE; /* @Y30LB12*/ 01763000 PUTIT2 STM @14,@12,@SA00017 0434 01764000 * STOPSCAN='1'B; /* @Y30LB12*/ 01765000 OI STOPSCAN,B'00100000' 0435 01766000 * TERMINAT=TERMINAT+1; /* @Y30LB12*/ 01767000 LA @10,1 0436 01768000 AH @10,TERMINAT(,R4) 0436 01769000 STH @10,TERMINAT(,R4) 0436 01770000 * GEN(LINK EP=ICGDSMSG); /* @Y30LB12*/ 01771000 LINK EP=ICGDSMSG 01772000 * END PUTIT2; /* @Y30LB12*/ 01773000 @EL00017 DS 0H 0438 01774000 @EF00017 DS 0H 0438 01775000 @ER00017 LM @14,@12,@SA00017 0438 01776000 BR @14 0438 01777000 * 0439 01778000 */***********************************************************@Y30LB12*/ 01779000 */* @Y30LB12*/ 01780000 */* PROCEDURE NAME - PUTIT3 @Y30LB12*/ 01781000 */* @Y30LB12*/ 01782000 */* FUNCTION - CALL ICGDSMSG, MESSAGE PRINT SUBROUTINE, TO @Y30LB12*/ 01783000 */* PUT WARNING MESSAGE FOR WHICH MESSAGE TEXT @Y30LB12*/ 01784000 */* IS NOT IN ICGDSMSG, BUT WHICH IS BUILT AND @Y30LB12*/ 01785000 */* PASSED IN 'OUTBUF2'. @Y30LB12*/ 01786000 */* @Y30LB12*/ 01787000 */***********************************************************@Y30LB12*/ 01788000 * 0439 01789000 *PUTIT3: 0439 01790000 * PROCEDURE; /* @Y30LB12*/ 01791000 PUTIT3 STM @14,@12,@SA00018 0439 01792000 * PRNTBUF2='1'B; /* @Y30LB12*/ 01793000 OI PRNTBUF2(R4),B'00000001' 0440 01794000 * WARNING=WARNING+1; /* @Y30LB12*/ 01795000 LA @10,1 0441 01796000 AH @10,WARNING(,R4) 0441 01797000 STH @10,WARNING(,R4) 0441 01798000 * GEN(LINK EP=ICGDSMSG); /* @Y30LB12*/ 01799000 LINK EP=ICGDSMSG 01800000 * PRNTBUF2='0'B; /* @Y30LB12*/ 01801000 NI PRNTBUF2(R4),B'11111110' 0443 01802000 * END PUTIT3; /* @Y30LB12*/ 01803000 @EL00018 DS 0H 0444 01804000 @EF00018 DS 0H 0444 01805000 @ER00018 LM @14,@12,@SA00018 0444 01806000 BR @14 0444 01807000 * 0445 01808000 */********************************************************** @YD00113*/ 01809000 */* P A T C H A R E A @Y30LB12*/ 01810000 */********************************************************** @YD00113*/ 01811000 * 0445 01812000 * GENERATE; 0445 01813000 * /*@Y30LB12*/ 01814000 PATCHS08 DS 32D /*@Y30LB12*/ 01815000 * END ICGDSS08 /* @Y30LB12*/ 01816000 * 0446 01817000 */* THE FOLLOWING INCLUDE STATEMENTS WERE FOUND IN THIS PROGRAM. */ 01818000 */*%INCLUDE SYSLIB (ICGDSMAC) */ 01819000 */*%INCLUDE SYSLIB (ICGDSMA1) */ 01820000 */*%INCLUDE SYSLIB (ICGDSMA2) */ 01821000 */*%INCLUDE SYSLIB (ICGDSMA3) */ 01822000 */*%INCLUDE SYSLIB (ICGDSMA4) */ 01823000 * 0446 01824000 * ; 0446 01825000 B @EL00001 0446 01826000 @DATA DS 0H 01827000 @CH00042 DC H'1' 01828000 @CH00048 DC H'3' 01829000 @CH00068 DC H'4' 01830000 @CH00119 DC H'5' 01831000 @CH00227 DC H'6' 01832000 @CH00040 DC H'8' 01833000 @DATD DSECT 01834000 DS 0F 01835000 @SA00001 DS 18F 01836000 @SA00003 DS 15F 01837000 @SA00013 DS 15F 01838000 @SA00015 DS 15F 01839000 @SA00007 DS 15F 01840000 @SA00008 DS 15F 01841000 @SA00011 DS 15F 01842000 @SA00012 DS 15F 01843000 @SA00004 DS 15F 01844000 @SA00005 DS 15F 01845000 @SA00006 DS 15F 01846000 @SA00009 DS 15F 01847000 @SA00017 DS 15F 01848000 @SA00016 DS 15F 01849000 @SA00010 DS 15F 01850000 @SA00018 DS 15F 01851000 @ZTEMPS DS C 01852000 @ZTEMPND EQU * 01853000 @ZLEN EQU @ZTEMPND-@ZTEMPS 01854000 ICGDSS08 CSECT 01855000 DS 0F 01856000 @DATD DSECT 01857000 DS 0D 01858000 HAVCYLFL DS F 01859000 J DS H 01860000 DS CL2 01861000 CREATEWK DS CL23 01862000 ORG CREATEWK 01863000 PACKWORK DS CL8 01864000 WORKPAGE DS CL2 01865000 ORG WORKPAGE 01866000 HIGHPAGE DS BL1 01867000 @NM00019 EQU WORKPAGE+0 01868000 LOWPAGE DS BL1 01869000 @NM00020 EQU WORKPAGE+1 01870000 ORG CREATEWK+10 01871000 CRTMSGID DS CL1 01872000 ORG CRTMSGID 01873000 KNOWN DS BL1 01874000 S08LAST EQU CRTMSGID+0 01875000 STOPSCAN EQU CRTMSGID+0 01876000 BINT EQU CRTMSGID+0 01877000 CINT EQU CRTMSGID+0 01878000 DINT EQU CRTMSGID+0 01879000 TABBTFLD EQU CRTMSGID+0 01880000 @NM00021 EQU CRTMSGID+0 01881000 ORG CREATEWK+11 01882000 WORKBITS DS CL1 01883000 ORG WORKBITS 01884000 NEWBIT DS BL1 01885000 UPDBIT EQU WORKBITS+0 01886000 PRNTBIT EQU WORKBITS+0 01887000 @NM00022 EQU WORKBITS+0 01888000 HAVCLOCK EQU WORKBITS+0 01889000 HAVVOLID EQU WORKBITS+0 01890000 ERROR EQU WORKBITS+0 01891000 CYLFLON EQU WORKBITS+0 01892000 ORG CREATEWK+12 01893000 TABCLOCK DS CL1 01894000 WKVOLSER DS CL6 01895000 WKPAGES DS 4AL1 01896000 ORG CREATEWK+23 01897000 ORG *+1-(*-@DATD)/(*-@DATD) INSURE DSECT DATA 01898000 @ENDDATD EQU * 01899000 ICGDSS08 CSECT 01900000 DS 0F 01901000 @SIZDATD DC AL1(0) 01902000 DC AL3(@ENDDATD-@DATD) 01903000 DS 0D 01904000 ICG205I DC H'205' 01905000 ICG210I DC H'210' 01906000 ICG211I DC H'211' 01907000 ICG212I DC H'212' 01908000 ICG215I DC H'215' 01909000 ICG216I DC H'216' 01910000 @CC00362 DC C'LRUCLOCK=' 01911000 @CC00365 DC C'CYLFAULT=' 01912000 @CC00374 DC C'PRNTONLY' 01913000 @CC00380 EQU @CC00362 01914000 @CC00382 EQU @CC00365 01915000 @CC00368 DC C'TABPTH=' 01916000 @CC00358 DC C'PAGES=' 01917000 @CC00360 DC C'VOLID=' 01918000 @CC00372 DC C'UPDATE' 01919000 @CC00384 EQU @CC00368 01920000 @CC00394 DC C' ' 01921000 @CC00376 EQU @CC00358 01922000 @CC00378 EQU @CC00360 01923000 @CC00459 DC C'16384' 01924000 @CC00451 DC C'1024' 01925000 @CC00453 DC C'2048' 01926000 @CC00455 DC C'4096' 01927000 @CC00457 DC C'8192' 01928000 @CC00370 DC C'NEW' 01929000 @CC00445 DC C'128' 01930000 @CC00447 DC C'256' 01931000 @CC00449 DC C'512' 01932000 @CC00465 DC C'YES' 01933000 @CB00430 DC X'F0F0' 01934000 ICGDS214 DC CL39' ICG214I PROBABLE MISSPELLED PARAMETER ' 01935000 ICGDS219 DC CL27' ICG219I DUPLICATE KEYWORD ' 01936000 ICGDS220 DC CL46' ICG220I INVALID PARAMETER LENGTH, KEYWORD IS ' 01937000 ICGDS221 DC CL34' ICG221I MISSING REQUIRED KEYWORD ' 01938000 ICGDS223 DC CL25' ICG223I VALUE ERROR FOR ' 01939000 ICGDS222 DC CL35' ICG222I NO LONGER SUPPORT KEYWORD ' 01940000 @00 EQU 00 EQUATES FOR REGISTERS 0-15 01941000 @01 EQU 01 01942000 @02 EQU 02 01943000 @03 EQU 03 01944000 @04 EQU 04 01945000 @05 EQU 05 01946000 @06 EQU 06 01947000 @07 EQU 07 01948000 @08 EQU 08 01949000 @09 EQU 09 01950000 @10 EQU 10 01951000 @11 EQU 11 01952000 @12 EQU 12 01953000 @13 EQU 13 01954000 @14 EQU 14 01955000 @15 EQU 15 01956000 I EQU @02 01957000 R4 EQU @04 01958000 R6 EQU @06 01959000 COMTAB EQU 0 01960000 READER EQU COMTAB+256 01961000 READFLAG EQU READER+96 01962000 KEYBIT EQU READFLAG 01963000 PARMBIT EQU READFLAG 01964000 ENDSCAN EQU READFLAG 01965000 LASTPARM EQU READFLAG 01966000 PCHBF EQU READER+99 01967000 STARTCOL EQU READER+180 01968000 NEXTCOL EQU READER+184 01969000 SCANLEN EQU READER+204 01970000 PRINTER EQU COMTAB+464 01971000 OUTBUF2 EQU PRINTER+225 01972000 MESSAGES EQU COMTAB+810 01973000 MSGNO EQU MESSAGES+2 01974000 WARNING EQU MESSAGES+4 01975000 TERMINAT EQU MESSAGES+6 01976000 SPECLMSG EQU MESSAGES+18 01977000 PRNTBUF2 EQU SPECLMSG 01978000 GENIO EQU COMTAB+832 01979000 DCBPTR EQU GENIO+4 01980000 COMPTR2 EQU GENIO+16 01981000 INVOKED EQU COMTAB+856 01982000 SAVEDDS EQU INVOKED+4 01983000 BUILDRSG EQU COMTAB+900 01984000 RSGS EQU BUILDRSG 01985000 RSG EQU RSGS 01986000 RSGABOX EQU RSG 01987000 RSGTODS EQU RSG+7 01988000 LIBRARY EQU COMTAB+1170 01989000 LIBS EQU LIBRARY 01990000 LIB EQU LIBS 01991000 LIBBITS EQU LIB 01992000 PABTABLE EQU COMTAB+1218 01993000 PABDEV EQU PABTABLE 01994000 PABFLAGS EQU PABDEV 01995000 PABREAL EQU PABDEV+1 01996000 PABAADDD EQU PABDEV+2 01997000 DSPAIRS EQU COMTAB+1938 01998000 PHYSTYPE EQU COMTAB+2002 01999000 PHYSFLGS EQU PHYSTYPE 02000000 CPUASSOC EQU COMTAB+3026 02001000 CPUS EQU CPUASSOC+2 02002000 CPU EQU CPUS 02003000 CPUFLAG1 EQU CPU+6 02004000 OPSYSTYP EQU CPUFLAG1 02005000 CPUFLAG2 EQU CPU+7 02006000 LOWERCON EQU COMTAB+3156 02007000 LOWDSS EQU LOWERCON 02008000 LOWFLGS EQU LOWDSS 02009000 LIBCTL EQU COMTAB+3284 02010000 LIBCTLS EQU LIBCTL 02011000 CREATE EQU COMTAB+3288 02012000 @NM00017 EQU CREATE 02013000 CMDCREAT EQU @NM00017 02014000 NEWCREAT EQU @NM00017 02015000 UPDCREAT EQU @NM00017 02016000 PRNTONLY EQU @NM00017 02017000 CYLFAULT EQU @NM00017 02018000 BINTIND EQU @NM00017 02019000 CINTIND EQU @NM00017 02020000 DINTIND EQU @NM00017 02021000 VPAGES EQU CREATE+1 02022000 VOLSER EQU CREATE+5 02023000 LRUCLOCK EQU CREATE+11 02024000 COMTAB2 EQU 0 02025000 DSTORSG EQU COMTAB2 02026000 DSENTRY EQU DSTORSG 02027000 CONFGCON EQU COMTAB2+32 02028000 RSGUCB EQU CONFGCON 02029000 RSGFLAGS EQU RSGUCB 02030000 CONFGUCB EQU COMTAB2+464 02031000 CONFGDEV EQU CONFGUCB 02032000 USEFLAGS EQU CONFGDEV 02033000 ALTPATH1 EQU CONFGDEV+2 02034000 ALTPATH2 EQU CONFGDEV+5 02035000 ALTPATH3 EQU CONFGDEV+8 02036000 SCANDATA EQU 0 02037000 SCANBUF EQU 0 02038000 AGO .@UNREFD START UNREFERENCED COMPONENTS 02039000 ALTCH3 EQU ALTPATH3+2 02040000 ALTCI3 EQU ALTPATH3+1 02041000 ALTDS3 EQU ALTPATH3 02042000 ALTCH2 EQU ALTPATH2+2 02043000 ALTCI2 EQU ALTPATH2+1 02044000 ALTDS2 EQU ALTPATH2 02045000 ALTCH1 EQU ALTPATH1+2 02046000 ALTCI1 EQU ALTPATH1+1 02047000 ALTDS1 EQU ALTPATH1 02048000 INDEXRSG EQU CONFGDEV+1 02049000 ICEBERG EQU USEFLAGS 02050000 ITISALTP EQU USEFLAGS 02051000 USECONVR EQU USEFLAGS 02052000 SUPPUNCH EQU USEFLAGS 02053000 USEREAL EQU USEFLAGS 02054000 USEVS EQU USEFLAGS 02055000 USEV EQU USEFLAGS 02056000 USESPEC EQU USEFLAGS 02057000 RSGCUA EQU RSGUCB+8 02058000 RSGCHAN EQU RSGUCB+7 02059000 CPUREFNO EQU RSGUCB+6 02060000 RSGCPUID EQU RSGUCB+1 02061000 @NM00018 EQU RSGFLAGS 02062000 CISPEC EQU RSGFLAGS 02063000 TORSG2 EQU DSENTRY+1 02064000 TORSG1 EQU DSENTRY 02065000 COM2BASE EQU COMTAB+3304 02066000 RW67RGHT EQU LIBCTLS 02067000 RW67LEFT EQU LIBCTLS 02068000 RW45RGHT EQU LIBCTLS 02069000 RW45LEFT EQU LIBCTLS 02070000 RW23RGHT EQU LIBCTLS 02071000 RW23LEFT EQU LIBCTLS 02072000 RW01RGHT EQU LIBCTLS 02073000 RW01LEFT EQU LIBCTLS 02074000 LOWLIB EQU LOWDSS+1 02075000 @NM00016 EQU LOWFLGS 02076000 LOWRGHT EQU LOWFLGS 02077000 LOWLEFT EQU LOWFLGS 02078000 LOWRW67 EQU LOWFLGS 02079000 LOWRW45 EQU LOWFLGS 02080000 LOWRW23 EQU LOWFLGS 02081000 LOWRW01 EQU LOWFLGS 02082000 LOWSPEC EQU LOWFLGS 02083000 ALTMSCIN EQU CPUFLAG2 02084000 @NM00015 EQU CPUFLAG2 02085000 ALTMSGBF EQU CPUFLAG2 02086000 @NM00014 EQU CPUFLAG2 02087000 CPUSPEC EQU CPUFLAG2 02088000 CPUMSCIN EQU CPUFLAG1 02089000 OPJES3 EQU OPSYSTYP 02090000 OPVS2 EQU OPSYSTYP 02091000 OPVS1 EQU OPSYSTYP 02092000 CPUALTFL EQU CPUFLAG1 02093000 CPUTIGHT EQU CPUFLAG1 02094000 @NM00013 EQU CPUFLAG1 02095000 TOMPCPU EQU CPU+5 02096000 CPUID EQU CPU 02097000 CPUNUM EQU CPUASSOC 02098000 SPNRSGNO EQU PHYSTYPE+1 02099000 LGDEVICE EQU PHYSFLGS 02100000 LOGABOX1 EQU PHYSFLGS 02101000 PHYSSSID EQU PHYSFLGS 02102000 PHYSREAL EQU PHYSFLGS 02103000 MERLICEB EQU PHYSFLGS 02104000 PHYSDS2 EQU DSPAIRS 02105000 PABDDD EQU PABAADDD 02106000 PABAA EQU PABAADDD 02107000 PABZEROS EQU PABAADDD 02108000 PAB2D EQU PABREAL 02109000 PAB2C EQU PABREAL 02110000 PAB2B EQU PABREAL 02111000 @NM00012 EQU PABREAL 02112000 PAB1D EQU PABREAL 02113000 PAB1C EQU PABREAL 02114000 PAB1B EQU PABREAL 02115000 PABIMPLR EQU PABREAL 02116000 PABBERG2 EQU PABFLAGS 02117000 @NM00011 EQU PABFLAGS 02118000 PABDSMTL EQU PABFLAGS 02119000 PABIBERG EQU PABFLAGS 02120000 @NM00010 EQU PABFLAGS 02121000 PABVOVIR EQU PABFLAGS 02122000 PABEXIST EQU PABFLAGS 02123000 MAPEXIT EQU LIB+4 02124000 LIBMAP EQU LIB+3 02125000 LIBDSMID EQU LIB+2 02126000 LIBSIZE EQU LIB+1 02127000 @NM00009 EQU LIBBITS 02128000 LIBSPEC EQU LIBBITS 02129000 TODS2 EQU RSGTODS+1 02130000 TODS1 EQU RSGTODS 02131000 RSGSLICE EQU RSG+3 02132000 RSGUDEL EQU RSG+2 02133000 RSGLDEL EQU RSG+1 02134000 @NM00008 EQU RSG 02135000 RSGABOX1 EQU RSGABOX 02136000 RSGABOX0 EQU RSGABOX 02137000 RSGSPEC EQU RSG 02138000 SVSYSUT3 EQU SAVEDDS+32 02139000 SVSYSUT2 EQU SAVEDDS+24 02140000 SVSYSUT1 EQU SAVEDDS+16 02141000 SVSYSPCH EQU SAVEDDS+8 02142000 SVSYSIN EQU SAVEDDS 02143000 PARMPTR EQU INVOKED 02144000 BUILDPTR EQU GENIO+20 02145000 SAVE14 EQU GENIO+12 02146000 EXLST EQU GENIO+8 02147000 @NM00007 EQU DCBPTR+1 02148000 DCBFLAG EQU DCBPTR 02149000 OPENLIST EQU GENIO 02150000 @NM00006 EQU MESSAGES+19 02151000 NEEDEOJ EQU SPECLMSG 02152000 ENDPHASE EQU SPECLMSG 02153000 @NM00005 EQU SPECLMSG 02154000 PRNTCARD EQU SPECLMSG 02155000 @NM00004 EQU SPECLMSG 02156000 NEED102 EQU SPECLMSG 02157000 NEED101 EQU SPECLMSG 02158000 PRINTRC EQU MESSAGES+16 02159000 TERM EQU MESSAGES+12 02160000 WARN EQU MESSAGES+8 02161000 RETCODE EQU MESSAGES 02162000 OUTBUF EQU PRINTER+104 02163000 LINECT EQU PRINTER+102 02164000 LINECTR EQU PRINTER+100 02165000 PAGENO EQU PRINTER+96 02166000 DCBPRINT EQU PRINTER 02167000 @NM00003 EQU READER+206 02168000 SVEODAD EQU READER+200 02169000 SVSYNAD2 EQU READER+196 02170000 SAVENCOL EQU READER+192 02171000 SAVESCOL EQU READER+188 02172000 INBUF EQU READER+100 02173000 SSELECT EQU PCHBF 02174000 @NM00002 EQU READER+97 02175000 @NM00001 EQU READFLAG 02176000 READTERM EQU READFLAG 02177000 READDCB EQU READER 02178000 PATCH EQU COMTAB 02179000 .@UNREFD ANOP END UNREFERENCED COMPONENTS 02180000 @RT00064 EQU @EL00003 02181000 @RC00134 EQU @EL00004 02182000 @RC00143 EQU @EL00005 02183000 @RC00152 EQU @EL00006 02184000 @RC00190 EQU @EL00008 02185000 @RC00199 EQU @EL00009 02186000 @RC00207 EQU @EL00009 02187000 @RC00217 EQU @EL00009 02188000 @RC00230 EQU @EL00009 02189000 @RC00249 EQU @EL00010 02190000 @RC00260 EQU @EL00010 02191000 @RC00271 EQU @EL00010 02192000 @RC00309 EQU @RC00306 02193000 @RC00307 EQU @RC00306 02194000 @RC00320 EQU @RC00315 02195000 @RC00318 EQU @RC00315 02196000 @RC00316 EQU @RC00315 02197000 @RC00355 EQU @EL00012 02198000 @RC00387 EQU @EL00013 02199000 @RC00251 EQU @RC00249 02200000 @RC00262 EQU @RC00260 02201000 @RC00273 EQU @RC00271 02202000 @ENDDATA EQU * 02203000 END ICGDSS08 02204000