TITLE 'DATA EXIT EXECUTOR *00001000 ' 00002000 IKJEBEDX CSECT , 0001 00003000 @PROLOG DS 0H 0002 00004000 * 0022 00005000 IKJEBESV (14,12),,*,,COMMREG=4(PARMREG1) 00006000 LR CVDREG,PARMREG1 SAVE PTR TO PARMS @ZA16411 00007000 L PARMREG0,@SIZDATD SUBPOOL AND LENGTH OF DATD @ZA16411 00008000 GETMAIN R,LV=(0) GETMAIN WORK AREA @ZA16411 00009000 LR DATAREG,PARMREG1 PTR TO WORK AREA @ZA16411 00010000 USING @DATD,DATAREG WORKAREA ADDRESSABILITY @ZA16411 00011000 LR PARMREG1,CVDREG RESTORE PTR TO PARMS @ZA16411 00012000 * /* DELETE USE OF CASRWKA FOR DATD @ZA16411* 00013000 * INPTR = PARMREG1; /* PTR TO INPUT PARAMETERS * 00014000 ST PARMREG1,INPTR 0023 00015000 * PARMREG1 = ADDR(CXDATEXT); /* ADDR OF EXIT RTN * 00016000 L PARMREG1,CAPTPDXT(,COMMREG) 0024 00017000 * GENERATE; /* LOAD EXIT ROUTINE * 00018000 * 0025 00019000 LOAD EPLOC=(1),ERRET=NOEXIT 00020000 * PARMREG1 = EXITPARM; /* DATEXIT PARMS IN REG 1 * 00021000 L @10,INPTR 0026 00022000 L PARMREG1,EXITPARM(,@10) 0026 00023000 * CALL PARMREG0; /* INVOKE DATA EXIT * 00024000 LR @15,PARMREG0 0027 00025000 BALR @14,@15 0027 00026000 * RETSAVE = RETCDREG; /* SAVE RETURN CODE * 00027000 ST RETCDREG,RETSAVE 0028 00028000 * PARMREG1 = ADDR(CXDATEXT);/* @YM07203* 00029000 L PARMREG1,CAPTPDXT(,COMMREG) 0029 00030000 * GENERATE; /* DELETE EXIT ROUTINE * 00031000 DELETE EPLOC=(1) 00032000 * IF RETSAVE = 0 THEN /* IF EXIT ROUTINE SUCCESSFUL * 00033000 L @10,RETSAVE 0031 00034000 LTR @10,@10 0031 00035000 BNZ @RF00031 0031 00036000 * CALL EXITGOOD; /* GO TO PROCESS * 00037000 BAL @14,EXITGOOD 0032 00038000 * FREELEN = DSLENTH; /* GET LENGTH AND * 00039000 @RF00031 L @10,INPTR 0033 00040000 L @10,EXITPARM(,@10) 0033 00041000 L @08,DSATTRIB(,@10) 0033 00042000 L @08,DSLENTH(,@08) 0033 00043000 ST @08,FREELEN 0033 00044000 * FREEPTR = DSADDR; /* ADDRESS OF INCORE DATA SET * 00045000 L @10,DSADDR-1(,@10) 0034 00046000 LA @10,0(,@10) 0034 00047000 ST @10,FREEPTR 0034 00048000 * PARMREG0 = 1; /* INDICATE SUBPOOL 1 * 00049000 LA PARMREG0,1 0035 00050000 * GENERATE; /* FREE INCORE DATA SET * 00051000 FREEMAIN V,A=FREEPARM,SP=(0),MF=(E,AREAM) 00052000 * CVDREG = RETSAVE; /* SAVE RETURN CODE @ZA16411* 00053000 L CVDREG,RETSAVE 0037 00054000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00055000 L PARMREG0,@SIZDATD SUBPOOL AND LENGTH @ZA16411 00056000 LR PARMREG1,DATAREG PTR TO WORK AREA @ZA16411 00057000 FREEMAIN R,LV=(0),A=(1) FREEMAIN WORK AREA @ZA16411 00058000 LR RETCDREG,CVDREG RESTORE RETURN CODE @ZA16411 00059000 IKJEBERT (14,12),,RC=(15) 00060000 */******** 0039 00061000 * * SEGMENT NAME - 0039 00062000 * * EXITGOOD 0039 00063000 * * 0039 00064000 * * FUNCTION - 0039 00065000 * * THIS ROUTINE PERFORMS PROCESSING WHEN THE DATA EXIT 0039 00066000 * * ROUTINE IS SUCCESSFUL. 0039 00067000 * * 0039 00068000 * * INPUT - 0039 00069000 * * EDIT COMMUNICATIONS AREA 0039 00070000 * * INCORE DATA SET 0039 00071000 * * 0039 00072000 * * OUTPUT - 0039 00073000 * * NEW UTILITY 0039 00074000 * * 0039 00075000 * *******/ 0039 00076000 * EXITGOOD: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0039 00077000 @EL00001 DS 0H 0039 00078000 @EF00001 DS 0H 0039 00079000 @ER00001 BR @14 0039 00080000 EXITGOOD DS 0H 0040 00081000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE * 00082000 * 0040 00083000 IKJEBESV (14,12),,,CODEREG=NO,COMMREG=NO 00084000 * /* ALLOCATE NEW UTILITY DATA SET * 00085000 * GENERATE REFS(CAPTUT); /* INVOKE ALLOCATION ROUTINE * 00086000 IKJEBESH (COMMREG),IKJEBEUI,PARAM=((COMMREG)),MF=(E,RESRPLST) 00087000 * IF RETCDREG ^= 0 THEN /* IF UI FAILED, * 00088000 LTR RETCDREG,RETCDREG 0042 00089000 BZ @RF00042 0042 00090000 * RETSAVE = 8; /* SET RETURN CODE * 00091000 MVC RETSAVE(4),@CF00061 0043 00092000 * ELSE /* IF UI SUCCESSFUL, * 00093000 * DO; /* THEN * 00094000 B @RC00042 0044 00095000 @RF00042 DS 0H 0045 00096000 * NEWDCB = PARMREG0; /* GET PTR TO NEW DCB * 00097000 ST PARMREG0,NEWDCB 0045 00098000 * CALL COPYDS; /* COPY INCORE DATA SET * 00099000 BAL @14,COPYDS 0046 00100000 * IF RETSAVE ^= 0 THEN /* IF COPY FAILED, * 00101000 L @10,RETSAVE 0047 00102000 LTR @10,@10 0047 00103000 BZ @RF00047 0047 00104000 * DCBPTR = NEWDCB; /* FREE NEW UTILITY * 00105000 L @10,NEWDCB 0048 00106000 ST @10,DCBPTR 0048 00107000 * ELSE /* IF COPY SUCCESSFUL, * 00108000 * DO; 0049 00109000 B @RC00047 0049 00110000 @RF00047 DS 0H 0050 00111000 * DCBPTR = CAPTCDCB; /* FREE OLD UTILITY * 00112000 L @10,CAPTCDCB(,COMMREG) 0050 00113000 ST @10,DCBPTR 0050 00114000 * CAPTCDCB = NEWDCB; /* POINT TO NEW UTILITY * 00115000 L @10,NEWDCB 0051 00116000 ST @10,CAPTCDCB(,COMMREG) 0051 00117000 * END; 0052 00118000 * PARMREG0 = DCBPTR; /* DCB PTR IN REG 0 * 00119000 @RC00047 L PARMREG0,DCBPTR 0053 00120000 * GENERATE REFS(CAPTUT); /* FREE UTILITY * 00121000 IKJEBESH (COMMREG),IKJEBEEX,PARAM=((COMMREG)),MF=(E,RESRPLST) 00122000 * END; 0055 00123000 * 0055 00124000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00125000 @RC00042 DS 0H 0056 00126000 IKJEBERT (14,12),,RC=(15) 00127000 * END EXITGOOD; 0057 00128000 @EL00002 DS 0H 0057 00129000 @EF00002 DS 0H 0057 00130000 @ER00002 BR @14 0057 00131000 */******* 0058 00132000 * * 0058 00133000 * * SEGMENT NAME - 0058 00134000 * * NUMCHEK 0058 00135000 * * 0058 00136000 * * FUNCTION - 0058 00137000 * * THIS ROUTINE SCANS THE LINE NUMBER FOR NON-NUMERIC 0058 00138000 * * CHARACTERS. IF A NON-NUMERIC IS FOUND, AN ERROR MESSAGE 0058 00139000 * * IS ISSUED. 0058 00140000 * * 0058 00141000 * * INPUT - 0058 00142000 * * CURRENT LINE NUMBER 0058 00143000 * * 0058 00144000 * * OUTPUT - 0058 00145000 * * RETURN CODE - 0 = LINE NUMBER GOOD 0058 00146000 * * 8 = NON-NUMERIC CHARACTER IN LINE NUMBER 0058 00147000 * * 0058 00148000 * *******/ 0058 00149000 * NUMCHEK: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0058 00150000 NUMCHEK DS 0H 0059 00151000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE * 00152000 * 0059 00153000 IKJEBESV (14,12),,,CODEREG=NO,COMMREG=NO 00154000 * ERR = '0'B; /* INIT ERROR INDICATOR * 00155000 * NEXT = '0'B; /* INIT PROCESS NEXT INDICATOR * 00156000 * LOOP = '0'B; /* INIT LOOP CONTROL BIT * 00157000 NI ERR,B'00101111' 0062 00158000 * K = 0; /* INIT INDEX INTO LINE NBR * 00159000 * 0063 00160000 SLR @10,@10 0063 00161000 STH @10,K 0063 00162000 * DO WHILE (LOOP = '0'B); /* SEARCH FOR NON-NUMERICS * 00163000 B @DE00064 0064 00164000 @DL00064 DS 0H 0065 00165000 * J = 1; /* INIT INDEX TO NUMBERS TABLE * 00166000 MVC J(2),@CH00033 0065 00167000 * DO WHILE (J < 11); /* CHECK INDIVIDUAL CHARACTERS * 00168000 B @DE00066 0066 00169000 @DL00066 DS 0H 0067 00170000 * /* IF CHAR IS NOT THIS NUM, * 00171000 * IF INCOREC(INDEX+K)^=NUM(J) THEN 0067 00172000 LH @10,INDEX 0067 00173000 AH @10,K 0067 00174000 LH @08,J 0067 00175000 L @15,INCORPTR 0067 00176000 ALR @15,@10 0067 00177000 BCTR @15,0 0067 00178000 LA @10,NUM-1(@08) 0067 00179000 CLC INCOREC(1,@15),0(@10) 0067 00180000 BE @RF00067 0067 00181000 * J = J+1; /* INCREMENT TO NEXT NUM 0068 00182000 * IN TABLE * 00183000 LA @08,1(,@08) 0068 00184000 STH @08,J 0068 00185000 * ELSE /* IF CHAR MATCHED NUMERIC, * 00186000 * DO; 0069 00187000 B @RC00067 0069 00188000 @RF00067 DS 0H 0070 00189000 * NEXT = '1'B; /* PROCESS NEXT CHAR * 00190000 OI NEXT,B'01000000' 0070 00191000 * J = 11; /* EXIT INNER LOOP * 00192000 MVC J(2),@CH00501 0071 00193000 * END; 0072 00194000 * END; /* END INNER-LOOP * 00195000 * 0073 00196000 @RC00067 DS 0H 0073 00197000 @DE00066 LH @10,J 0073 00198000 C @10,@CF00501 0073 00199000 BL @DL00066 0073 00200000 * IF NEXT = '0'B THEN /* IF MATCH NOT FOUND * 00201000 TM NEXT,B'01000000' 0074 00202000 BNZ @RF00074 0074 00203000 * DO; /* THEN * 00204000 * ERR = '1'B; /* INDICATE ERROR * 00205000 * LOOP = '1'B; /* EXIT OUTER-LOOP * 00206000 OI ERR,B'10010000' 0077 00207000 * END; 0078 00208000 * ELSE /* IF MATCH WAS FOUND * 00209000 * DO; /* THEN * 00210000 B @RC00074 0079 00211000 @RF00074 DS 0H 0080 00212000 * NEXT = '0'B; /* RE-INIT INDICATOR * 00213000 NI NEXT,B'10111111' 0080 00214000 * K = K+1; /* INDEX TO NEXT CHAR IN 0081 00215000 * LINE NUMBER * 00216000 LA @10,1 0081 00217000 AH @10,K 0081 00218000 STH @10,K 0081 00219000 * IF K = CALENGTH THEN /* IF END OF LINE #, @ZA16411* 00220000 SLR @08,@08 0082 00221000 IC @08,CALENGTH(,COMMREG) 0082 00222000 CR @10,@08 0082 00223000 BNE @RF00082 0082 00224000 * LOOP = '1'B; /* EXIT OUTER-LOOP * 00225000 OI LOOP,B'00010000' 0083 00226000 * END; 0084 00227000 @RF00082 DS 0H 0085 00228000 * END; /* END OUTER - LOOP * 00229000 * 0085 00230000 @RC00074 DS 0H 0085 00231000 @DE00064 TM LOOP,B'00010000' 0085 00232000 BZ @DL00064 0085 00233000 * IF ERR = '1'B THEN /* IF ERROR FOUND IN LINE NBR * 00234000 TM ERR,B'10000000' 0086 00235000 BNO @RF00086 0086 00236000 * DO; /* THEN * 00237000 * RETSAVE = 8; /* SET RETURN CODE * 00238000 MVC RETSAVE(4),@CF00061 0088 00239000 * NONNUM = '1'B; /* INDICATE NON-NUMERIC * 00240000 OI NONNUM,B'00100000' 0089 00241000 * CALL INVNUM; /* ISSUE ERROR MESSAGE * 00242000 BAL @14,INVNUM 0090 00243000 * END; 0091 00244000 * 0091 00245000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00246000 * 0092 00247000 @RF00086 DS 0H 0092 00248000 IKJEBERT (14,12),,RC=(15) 00249000 * END NUMCHEK; 0093 00250000 @EL00003 DS 0H 0093 00251000 @EF00003 DS 0H 0093 00252000 @ER00003 BR @14 0093 00253000 */******* 0094 00254000 * * SEGMENT NAME - 0094 00255000 * * COPYDS 0094 00256000 * * 0094 00257000 * * FUNCTION - 0094 00258000 * * THIS ROUTINE COPIES THE RE-NUMBERED INCORE DATA SET TO 0094 00259000 * * A NEW UTILITY DATA SET. 0094 00260000 * * 0094 00261000 * * INPUT - 0094 00262000 * * NEW UTILITY DATA SET 0094 00263000 * * INCORE DATA SET 0094 00264000 * * 0094 00265000 * * OUTPUT - 0094 00266000 * * RETURN CODE - 0 = COPY SUCCESSFUL 0094 00267000 * * 8 = COPY TERMINATED, INVALID LINE NUMBER 0094 00268000 * * 0094 00269000 * *******/ 0094 00270000 * COPYDS: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0094 00271000 COPYDS DS 0H 0095 00272000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE * 00273000 * 0095 00274000 IKJEBESV (14,12),,,CODEREG=NO,COMMREG=NO 00275000 * PREVNUM = 0; /* INIT PREVIOUS LINE NUMBER * 00276000 SLR @10,@10 0096 00277000 ST @10,PREVNUM 0096 00278000 * INDEX = CALINE; /* SET INDEX TO SEQ# @ZA16411* 00279000 SLR @10,@10 0097 00280000 IC @10,CALINE(,COMMREG) 0097 00281000 STH @10,INDEX 0097 00282000 * INCORPTR = DSADDR; /* PTR TO 1ST RECORD @ZA16411* 00283000 L @10,INPTR 0098 00284000 L @10,EXITPARM(,@10) 0098 00285000 L @10,DSADDR-1(,@10) 0098 00286000 LA @10,0(,@10) 0098 00287000 ST @10,INCORPTR 0098 00288000 * PROCRECD: 0099 00289000 * IF CARECFM = '0'B THEN /* IF VARIABLE FORMAT @ZA16411* 00290000 PROCRECD TM CARECFM(COMMREG),B'01000000' 0099 00291000 BNZ @RF00099 0099 00292000 * INCORPTR = INCORPTR + 4; /* SKIP LL00 FIELD @ZA16411* 00293000 * 0100 00294000 LA @10,4 0100 00295000 AL @10,INCORPTR 0100 00296000 ST @10,INCORPTR 0100 00297000 * CALL NUMCHEK; /* CHECK LINE NBR FOR NON-NUM * 00298000 @RF00099 BAL @14,NUMCHEK 0101 00299000 * IF RETSAVE = 0 THEN /* IF CHECK GOOD * 00300000 L @10,RETSAVE 0102 00301000 LTR @10,@10 0102 00302000 BNZ @RF00102 0102 00303000 * DO; /* THEN * 00304000 * PKAREA(1) = 'F0'X; /* INIT 1ST CHAR IN PACK AREA * 00305000 MVI PKAREA,X'F0' 0104 00306000 * P = ADDR(PKAREA(1)); /* POINT TO 1ST CHAR * 00307000 LA @10,PKAREA 0105 00308000 ST @10,P 0105 00309000 * Q = ADDR(PKAREA(2)); /* POINT TO 2ND CHAR * 00310000 LA @08,PKAREA+1 0106 00311000 ST @08,Q 0106 00312000 * Q->AREA1 = P->AREA2; /* INIT REST OF PACK AREA * 00313000 MVC AREA1(7,@08),AREA2(@10) 0107 00314000 * /* MOVE LINE NUMBER TO PACKAREA* 00315000 * PKAREA(9-CALENGTH:8) = INCOREC(INDEX:INDEX+CALENGTH-1); 00316000 LA @10,9 0108 00317000 SLR @08,@08 0108 00318000 IC @08,CALENGTH(,COMMREG) 0108 00319000 SLR @10,@08 0108 00320000 LA @08,PKAREA-1(@10) 0108 00321000 LCR @10,@10 0108 00322000 AL @10,@CF00061 0108 00323000 LH @15,INDEX 0108 00324000 L @14,INCORPTR 0108 00325000 ALR @14,@15 0108 00326000 BCTR @14,0 0108 00327000 EX @10,@SM00532 0108 00328000 * /* LINE # TO PACK AREA @ZA16411* 00329000 * RFY CVBREG RSTD; 0109 00330000 * GENERATE REFS(CVBAREA); /* PACK AND CONVERT TO BINARY * 00331000 PACK CVBAREA(8),PKAREA(8) 00332000 CVB CVBREG,CVBAREA 00333000 * CURNUM = CVBREG; /* SAVE CONVERTED LINE NUMBER * 00334000 ST CVBREG,CURNUM 0111 00335000 * RFY CVBREG UNRSTD; 0112 00336000 * IF PREVNUM > CURNUM THEN /* IF LINE NBRS OUT OF ORDER * 00337000 L @10,CURNUM 0113 00338000 C @10,PREVNUM 0113 00339000 BNL @RF00113 0113 00340000 * DO; /* THEN * 00341000 * RETSAVE = 8; /* SET RETURN CODE * 00342000 MVC RETSAVE(4),@CF00061 0115 00343000 * CALL INVNUM; /* ISSUE ERROR MESSAGE * 00344000 BAL @14,INVNUM 0116 00345000 * END; 0117 00346000 * ELSE /* IF LINE NBRS GOOD * 00347000 * DO; /* THEN * 00348000 B @RC00113 0118 00349000 @RF00113 DS 0H 0119 00350000 * PREVNUM = CURNUM; /* SET PREVIOUS NUMBER FOR 0119 00351000 * NEXT LINE CHECK * 00352000 L @10,CURNUM 0119 00353000 ST @10,PREVNUM 0119 00354000 * /* PUT BINARY LINE NBR IN BUF * 00355000 * CATEMPBF(1:4) = CURNUM; 0120 00356000 STCM @10,15,CATEMPBF(COMMREG) 0120 00357000 * /* IF FIXED FORMAT, * 00358000 * IF CARECFM = '1'B THEN 0121 00359000 TM CARECFM(COMMREG),B'01000000' 0121 00360000 BNO @RF00121 0121 00361000 * DO; /* THEN * 00362000 * MOVELL = CALRECL-4; /* SET LEN FOR MOVE @YM07203* 00363000 LH @10,CALRECL(,COMMREG) 0123 00364000 LR @08,@10 0123 00365000 SL @08,@CF00385 0123 00366000 STH @08,MOVELL 0123 00367000 * /* PUT LEN & OFFSET IN BUF * 00368000 * Q = INCORPTR; /* POINT TO RECORD HEAD @ZA16411* 00369000 L @08,INCORPTR 0124 00370000 ST @08,Q 0124 00371000 * CATEMPBF(5:6) = CALRECL; 0125 00372000 STCM @10,3,CATEMPBF+4(COMMREG) 0125 00373000 * CATEMPBF(7:8) = 0; 0126 00374000 SLR @10,@10 0126 00375000 STCM @10,3,CATEMPBF+6(COMMREG) 0126 00376000 * J = 9; /* SET INDEX FOR TEXT * 00377000 MVC J(2),@CH00510 0127 00378000 * END; 0128 00379000 * ELSE /* IF VARIABLE FORMAT * 00380000 * DO; /* THEN * 00381000 B @RC00121 0129 00382000 @RF00121 DS 0H 0130 00383000 * J = 5; /* SET INDEX FOR TEXT * 00384000 MVC J(2),@CH00135 0130 00385000 * Q = INCORPTR-4; /* POINT TO LL00 @ZA16411* 00386000 L @10,INCORPTR 0131 00387000 SL @10,@CF00385 0131 00388000 ST @10,Q 0131 00389000 * MOVELL =Q->INCORLL; /* GET MOVE LENGTH @ZA16411* 00390000 MVC MOVELL(2),INCORLL(@10) 0132 00391000 * END; 0133 00392000 * /* MOVE RECORD TEXT TO BUFFER * 00393000 * CATEMPBF(J:MOVELL+J-1) = Q->INCOREC(1:MOVELL); 0134 00394000 @RC00121 LH @10,J 0134 00395000 ALR @10,COMMREG 0134 00396000 LH @08,J 0134 00397000 LH @15,MOVELL 0134 00398000 ALR @15,@08 0134 00399000 SLR @15,@08 0134 00400000 BCTR @15,0 0134 00401000 L @08,Q 0134 00402000 EX @15,@SM00534 0134 00403000 * /* @ZA16411* 00404000 * 0135 00405000 * /* SET UP PARMS FOR UT * 00406000 * UTDCB = NEWDCB; /* PTR TO NEW UTILITY DCB * 00407000 MVC UTDCB(3),NEWDCB+1 0135 00408000 * UTOPTION = '21'X; /* SET WRIT SEQUENTIAL @ZA28932* 00409000 MVI UTOPTION,X'21' 0136 00410000 * UTKEY=ADDR(CATEMPBF); /* PTR TO BUFFER * 00411000 LA @10,CATEMPBF(,COMMREG) 0137 00412000 ST @10,UTKEY 0137 00413000 * GENERATE REFS(CAPTUT);/* WRITE RECORD * 00414000 IKJEBESH (COMMREG),IKJEBEUT,PARAM=((COMMREG),UTPLST), XX00415000 MF=(E,RESRPLST) 00416000 * IF RETCDREG>0 THEN /* IF WRITE FAILED THEN * 00417000 LTR RETCDREG,RETCDREG 0139 00418000 BNP @RF00139 0139 00419000 * RETSAVE = 8; /* SET RETURN CODE * 00420000 MVC RETSAVE(4),@CF00061 0140 00421000 * ELSE /* IF WRITE SUCCESSFUL * 00422000 * DO; /* THEN * 00423000 B @RC00139 0141 00424000 @RF00139 DS 0H 0142 00425000 * /* CHECK FOR CUR LINE REFERENCE* 00426000 * IF Q = CURREFPT THEN 0142 00427000 L @10,INPTR 0142 00428000 L @10,EXITPARM(,@10) 0142 00429000 L @10,SUBCMDPT(,@10) 0142 00430000 CLC Q(4),CURREFPT(@10) 0142 00431000 BNE @RF00142 0142 00432000 * /* AND SET IN COMMAREA @ZA16411* 00433000 * CACURNUM = CURNUM; 0143 00434000 L @10,CURNUM 0143 00435000 ST @10,CACURNUM(,COMMREG) 0143 00436000 * /* PT TO NEXT RECORD IN DS * 00437000 * INCORPTR = Q + MOVELL; 0144 00438000 @RF00142 LH @10,MOVELL 0144 00439000 AL @10,Q 0144 00440000 ST @10,INCORPTR 0144 00441000 * /* IF END OF DATA SET, @ZA16411* 00442000 * IF INCORPTR = DSADDR+DSLENTH THEN 0145 00443000 L @08,INPTR 0145 00444000 L @08,EXITPARM(,@08) 0145 00445000 L @15,DSATTRIB(,@08) 0145 00446000 L @08,DSADDR-1(,@08) 0145 00447000 LA @08,0(,@08) 0145 00448000 AL @08,DSLENTH(,@15) 0145 00449000 CR @10,@08 0145 00450000 BE @RT00145 0145 00451000 * GO TO EOF; /* EXIT * 00452000 * ELSE /* ELSE, * 00453000 * GO TO PROCRECD; /* PROCESS NEXT RECORD * 00454000 B PROCRECD 0147 00455000 * END; 0148 00456000 * END; /* END CHECK ON PREVIOUS LINE */ 00457000 @RC00139 DS 0H 0150 00458000 * END; /* END CHECK ON NON-NUMERICS * 00459000 * 0150 00460000 @RC00113 DS 0H 0151 00461000 *EOF: 0151 00462000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00463000 @RF00102 DS 0H 0151 00464000 EOF DS 0H 0151 00465000 IKJEBERT (14,12),,RC=(15) 00466000 * END COPYDS; 0152 00467000 @EL00004 DS 0H 0152 00468000 @EF00004 DS 0H 0152 00469000 @ER00004 BR @14 0152 00470000 */******* 0153 00471000 * * SEGMENT NAME - 0153 00472000 * * NOEXIT 0153 00473000 * * 0153 00474000 * * FUNCTION - 0153 00475000 * * THIS ROUTINE ISSUES AN ERROR MESSAGE WHEN THE DATA EXIT 0153 00476000 * * ROUTINE IS NOT IN THE SYSTEM. 0153 00477000 * * 0153 00478000 * * INPUT - 0153 00479000 * * ERROR TYPE 0153 00480000 * * 0153 00481000 * * OUTPUT - 0153 00482000 * * ERROR MESSAGE 0153 00483000 * * 0153 00484000 * *******/ 0153 00485000 * NOEXIT: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0153 00486000 NOEXIT DS 0H 0154 00487000 * /* RESTRICT NEEDED REGISTERS * 00488000 * RFY (LEV1MSG,LEV2MSG,LEV1INS,LEV2INS) RSTD; 0154 00489000 * ECTPTR = CAPTECT; /* PTR TO ECT @Z30NQKG* 00490000 L ECTPTR,CAPTECT(,COMMREG) 0155 00491000 * LEV1MSG = 1797; /* 1ST LEVEL MESSAGE * 00492000 LA LEV1MSG,1797 0156 00493000 * LEV1INS = ADDR(MSGAREA); /* PTR TO 1ST INSERT(FUNCTION) * 00494000 LA LEV1INS,MSGAREA 0157 00495000 * MSGPTR = ADDR(MSGPTR2); /* PTR TO 2ND INSERT(TYPE) * 00496000 LA @10,MSGPTR2 0158 00497000 ST @10,MSGPTR 0158 00498000 * MSGLEN = 12; /* LENGTH OF 1ST INSERT@Z30NQKG* 00499000 LA @10,12 0159 00500000 STH @10,MSGLEN 0159 00501000 * MSGOFF = 10; /* OFFSET OF 1ST INSERT * 00502000 MVC MSGOFF(2),@CH00464 0160 00503000 * MSGTEXT(1:8) = ECTSCMD(1:8); /* TEXT OF 1ST INSERT @Z30NQKG* 00504000 MVC MSGTEXT(8),ECTSCMD(ECTPTR) 0161 00505000 * MSGPTR2 = 0; /* LAST INSERT INDICATOR * 00506000 SLR @08,@08 0162 00507000 ST @08,MSGPTR2 0162 00508000 * MSGLEN2 = 12; /* LENGTH OF 2ND INSERT * 00509000 STH @10,MSGLEN2 0163 00510000 * MSGOFF2 = 29; /* OFFSET OF 2ND INSERT * 00511000 MVC MSGOFF2(2),@CH00518 0164 00512000 * MSGTEXT2 = CADSTYPE; /* TEXT OF 2ND INSERT * 00513000 * 0165 00514000 MVC MSGTEXT2(8),CADSTYPE(COMMREG) 0165 00515000 * LEV2MSG = 1; /* 2ND LEVEL MESSAGE * 00516000 LA LEV2MSG,1 0166 00517000 * LEV2INS = 0; /* NO INSERTS * 00518000 * 0167 00519000 SLR LEV2INS,LEV2INS 0167 00520000 * GENERATE REFS(CAPTMS); /* ISSUE MESSAGE * 00521000 IKJEBEML (LEV1MSG),(LEV2MSG),(LEV1INS),(LEV2INS),MF=(E,AREAM) 00522000 * /* RELEASE REGISTERS * 00523000 * RFY (LEV1MSG,LEV2MSG,LEV1INS,LEV2INS) UNRSTD; 0169 00524000 * 0169 00525000 * RETCDREG = 8; 0170 00526000 LA RETCDREG,8 0170 00527000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00528000 IKJEBERT (14,12),,RC=(15) 00529000 * END NOEXIT; 0172 00530000 @EL00005 DS 0H 0172 00531000 @EF00005 DS 0H 0172 00532000 @ER00005 BR @14 0172 00533000 */******* 0173 00534000 * * SEGMENT NAME - 0173 00535000 * * INVNUM 0173 00536000 * * 0173 00537000 * * FUNCTION - 0173 00538000 * * THIS ROUTINE ISSUES AN ERROR MESSAGE WHEN AN INVALID LINE 0173 00539000 * * NUMBER HAS BEEN FOUND. 0173 00540000 * * 0173 00541000 * * INPUT - 0173 00542000 * * ERROR TYPE INDICATOR (NON-NUMERIC LINE NUMBER, OR LINE 0173 00543000 * * NUMBERS NOT IN ASCENDING ORDER) 0173 00544000 * * 0173 00545000 * * OUTPUT - 0173 00546000 * * ERROR MESSAGE 0173 00547000 * * 0173 00548000 * *******/ 0173 00549000 * INVNUM: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0173 00550000 INVNUM DS 0H 0174 00551000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE * 00552000 * 0174 00553000 IKJEBESV (14,12),,CODEREG=NO,COMMREG=NO 00554000 * /* RESTRICT NEEDED REGISTERS * 00555000 * RFY (LEV1MSG,LEV2MSG,LEV1INS,LEV2INS) RSTD; 0175 00556000 * ECTPTR = CAPTECT; /* PTR TO ECT @Z30NQKG* 00557000 L ECTPTR,CAPTECT(,COMMREG) 0176 00558000 * CADSMODS = '0'B; /* @YM07203* 00559000 NI CADSMODS(COMMREG),B'01111111' 0177 00560000 * LEV1MSG = 1804; /* 1ST LEVEL MSG * 00561000 LA LEV1MSG,1804 0178 00562000 * LEV1INS = ADDR(MSGAREA); /* PTR TO 1ST INSERT(CMD) * 00563000 LA LEV1INS,MSGAREA 0179 00564000 * MSGPTR = ADDR(MSGPTR2); /* PTR TO 2ND INSERT(TYPE) * 00565000 LA @10,MSGPTR2 0180 00566000 ST @10,MSGPTR 0180 00567000 * MSGLEN = 12; /* LENGTH OF 1ST INSERT@Z30NQKG* 00568000 LA @10,12 0181 00569000 STH @10,MSGLEN 0181 00570000 * MSGOFF = 10; /* OFFSET OF 1ST INSERT * 00571000 MVC MSGOFF(2),@CH00464 0182 00572000 * MSGTEXT(1:8) = ECTSCMD(1:8); /* TEXT OF 1ST INSERT @Z30NQKG* 00573000 MVC MSGTEXT(8),ECTSCMD(ECTPTR) 0183 00574000 * MSGPTR2 = 0; /* LAST INSERT INDICATOR * 00575000 SLR @08,@08 0184 00576000 ST @08,MSGPTR2 0184 00577000 * MSGLEN2 = 12; /* LENGTH OF 2ND INSERT * 00578000 STH @10,MSGLEN2 0185 00579000 * MSGOFF2 = 49; /* OFFSET OF 2ND INSERT * 00580000 MVC MSGOFF2(2),@CH00523 0186 00581000 * MSGTEXT2 = CADSTYPE; /* TEXT OF 2ND INSERT * 00582000 * 0187 00583000 MVC MSGTEXT2(8),CADSTYPE(COMMREG) 0187 00584000 * IF NONNUM = '1'B THEN /* IF NON-NUMERIC LINE NBR * 00585000 TM NONNUM,B'00100000' 0188 00586000 BNO @RF00188 0188 00587000 * DO; /* SET UP 2ND LEVEL MSG * 00588000 * LEV2MSG = 1; /* 2ND LEVEL MSG * 00589000 LA LEV2MSG,1 0190 00590000 * LEV2INS = ADDR(MSG2AREA); /* PTR TO 1ST INSERT(EXIT) * 00591000 LA LEV2INS,MSG2AREA 0191 00592000 * MSG2PTR = ADDR(MSG2PTR2); /* PTR TO 2ND INSERT(CURNBR) * 00593000 LA @15,MSG2PTR2 0192 00594000 ST @15,MSG2PTR 0192 00595000 * MSG2LEN = 12; /* LENGTH OF 1ST INSERT * 00596000 STH @10,MSG2LEN 0193 00597000 * MSG2OFF = 28; /* OFFSET OF 1ST INSERT * 00598000 MVC MSG2OFF(2),@CH00088 0194 00599000 * MSG2TXT = CXDATEXT; /* TEXT OF 1ST INSERT * 00600000 L @10,CAPTPDXT(,COMMREG) 0195 00601000 MVC MSG2TXT(8),CXDATEXT(@10) 0195 00602000 * MSG2PTR2 = 0; /* LAST INSERT INDICATOR * 00603000 ST @08,MSG2PTR2 0196 00604000 * MSG2LEN2 = CALENGTH+4; /* LENGTH OF 2ND INSERT * 00605000 SLR @10,@10 0197 00606000 IC @10,CALENGTH(,COMMREG) 0197 00607000 LA @08,4(,@10) 0197 00608000 STH @08,MSG2LEN2 0197 00609000 * MSG2OFF2 = 57; /* OFFSET OF 2ND INSERT * 00610000 MVC MSG2OFF2(2),@CH00524 0198 00611000 * /* TEXT OF 2ND INSERT * 00612000 * MSG2TXT2 = INCOREC(INDEX:INDEX+CALENGTH-1); 0199 00613000 MVI MSG2TXT2+1,C' ' 0199 00614000 MVC MSG2TXT2+2(6),MSG2TXT2+1 0199 00615000 BCTR @10,0 0199 00616000 LH @08,INDEX 0199 00617000 L @15,INCORPTR 0199 00618000 ALR @15,@08 0199 00619000 BCTR @15,0 0199 00620000 EX @10,@SM00537 0199 00621000 * END; 0200 00622000 * 0200 00623000 * ELSE /* IF NUMBERS OUT OF ORDER * 00624000 * DO; /* SET UP 2ND LEVEL MSG * 00625000 B @RC00188 0201 00626000 @RF00188 DS 0H 0202 00627000 * LEV2MSG = 2; /* 2ND LEVEL MSG * 00628000 LA LEV2MSG,2 0202 00629000 * LEV2INS = ADDR(MSG2AREA); /* PTR TO 1ST INSERT(EXIT) * 00630000 LA LEV2INS,MSG2AREA 0203 00631000 * MSG2PTR = ADDR(MSG2PTR2); /* PTR TO 2ND INSERT(CURNBR) * 00632000 LA @10,MSG2PTR2 0204 00633000 ST @10,MSG2PTR 0204 00634000 * MSG2LEN = 12; /* LENGTH OF 1ST INSERT * 00635000 MVC MSG2LEN(2),@CH00148 0205 00636000 * MSG2OFF = 28; /* OFFSET OF 1ST INSERT * 00637000 MVC MSG2OFF(2),@CH00088 0206 00638000 * MSG2TXT = CXDATEXT; /* TEXT OF 1ST INSERT * 00639000 L @10,CAPTPDXT(,COMMREG) 0207 00640000 MVC MSG2TXT(8),CXDATEXT(@10) 0207 00641000 * MSG2PTR2 = ADDR(MSG2PTR3);/* PTR TO 3RD INSERT(PREVNBR) */ 00642000 LA @10,MSG2PTR3 0208 00643000 ST @10,MSG2PTR2 0208 00644000 * MSG2LEN2 = CALENGTH+4; /* LENGTH OF 2ND INSERT * 00645000 SLR @10,@10 0209 00646000 IC @10,CALENGTH(,COMMREG) 0209 00647000 LA @08,4(,@10) 0209 00648000 STH @08,MSG2LEN2 0209 00649000 * MSG2OFF2 = 57; /* OFFSET OF 2ND INSERT * 00650000 MVC MSG2OFF2(2),@CH00524 0210 00651000 * /* TEXT OF 2ND INSERT * 00652000 * MSG2TXT2 = INCOREC(INDEX:INDEX+CALENGTH-1); 0211 00653000 MVI MSG2TXT2+1,C' ' 0211 00654000 MVC MSG2TXT2+2(6),MSG2TXT2+1 0211 00655000 BCTR @10,0 0211 00656000 LH @15,INDEX 0211 00657000 L @14,INCORPTR 0211 00658000 ALR @14,@15 0211 00659000 BCTR @14,0 0211 00660000 EX @10,@SM00539 0211 00661000 * MSG2PTR3 = 0; /* LAST INSERT INDICATOR * 00662000 SLR @10,@10 0212 00663000 ST @10,MSG2PTR3 0212 00664000 * MSG2LEN3 = CALENGTH+4; /* LENGTH OF 3RD INSERT * 00665000 STH @08,MSG2LEN3 0213 00666000 * MSG2OFF3 = 92; /* OFFSET OF 3RD INSERT * 00667000 MVC MSG2OFF3(2),@CH00292 0214 00668000 * RFY CVDREG RSTD; /* RESTRICT CONVERT REG * 00669000 * CVDREG = PREVNUM; /* LINE NBR IN REG * 00670000 L CVDREG,PREVNUM 0216 00671000 * GENERATE; /* CONVERT AND UNPACK * 00672000 CVD CVDREG,UNPACK 00673000 UNPK CVDNUM(8),UNPACK(8) 00674000 * FZERO = FZERO | 'F0'X; /* OR LAST BYTE * 00675000 OI FZERO,X'F0' 0218 00676000 * RFY CVDREG UNRSTD; /* RELEASE CONVERT REG * 00677000 * MSG2TXT3(1:5)=CVDNUM(4:8); /* TEXT OF 3RD INSERT * 00678000 MVC MSG2TXT3(5),CVDNUM+3 0220 00679000 * END; 0221 00680000 * 0221 00681000 * GENERATE REFS(CAPTMS); /* ISSUE MESSAGE * 00682000 @RC00188 DS 0H 0222 00683000 IKJEBEML (LEV1MSG),(LEV2MSG),(LEV1INS),(LEV2INS),MF=(E,AREAM) 00684000 * /* RELEASE REGISTERS * 00685000 * RFY (LEV1MSG,LEV2MSG,LEV1INS,LEV2INS) UNRSTD; 0223 00686000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00687000 IKJEBERT (14,12),,RC=(15) 00688000 * END INVNUM; 0225 00689000 * 0225 00690000 @EL00006 DS 0H 0225 00691000 @EF00006 DS 0H 0225 00692000 @ER00006 BR @14 0225 00693000 * END IKJEBEDX 0226 00694000 */* THE FOLLOWING INCLUDE STATEMENTS WERE FOUND IN THIS PROGRAM. * 00695000 */*%INCLUDE SYSLIB (IKJEBECA) * 00696000 */*%INCLUDE SYSLIB (IKJEBEMJ) * 00697000 */*%INCLUDE SYSLIB (IKJECT ) * 00698000 *; 0226 00699000 @DATA DS 0H 00700000 @CH00033 DC H'1' 00701000 @CH00135 DC H'5' 00702000 @CH00510 DC H'9' 00703000 @CH00464 DC H'10' 00704000 @CH00148 DC H'12' 00705000 @CH00088 DC H'28' 00706000 @CH00518 DC H'29' 00707000 @CH00523 DC H'49' 00708000 @CH00524 DC H'57' 00709000 @CH00292 DC H'92' 00710000 @SM00532 MVC 0(0,@08),INCOREC(@14) 00711000 @SM00534 MVC CATEMPBF-1(0,@10),INCOREC(@08) 00712000 @SM00537 MVC MSG2TXT2(0),INCOREC(@15) 00713000 @SM00539 MVC MSG2TXT2(0),INCOREC(@14) 00714000 @DATD DSECT 00715000 DS 0F 00716000 IKJEBEDX CSECT 00717000 DS 0F 00718000 @CF00385 DC F'4' 00719000 @CF00061 DC F'8' 00720000 @CF00501 DC F'11' 00721000 @CH00501 EQU @CF00501+2 00722000 @DATD DSECT 00723000 DS 0D 00724000 DXWKAREA DS CL173 00725000 ORG DXWKAREA 00726000 RETSAVE DS FL4 00727000 INPTR DS AL4 00728000 DCBPTR DS AL4 00729000 NEWDCB DS AL4 00730000 PREVNUM DS FL4 00731000 CURNUM DS FL4 00732000 INCORPTR DS AL4 00733000 MOVELL DS FL2 00734000 INDEX DS FL2 00735000 J DS FL2 00736000 K DS FL2 00737000 PKAREA DS CL8 00738000 DS CL4 00739000 CVBAREA DS CL8 00740000 Q DS AL4 00741000 P DS AL4 00742000 MSGAREA DS CL32 00743000 ORG MSGAREA 00744000 MSGPTR DS AL4 00745000 MSGLEN DS FL2 00746000 MSGOFF DS FL2 00747000 MSGTEXT DS CL8 00748000 MSGPTR2 DS AL4 00749000 MSGLEN2 DS FL2 00750000 MSGOFF2 DS FL2 00751000 MSGTEXT2 DS CL8 00752000 ORG DXWKAREA+96 00753000 MSG2AREA DS CL48 00754000 ORG MSG2AREA 00755000 MSG2PTR DS AL4 00756000 MSG2LEN DS FL2 00757000 MSG2OFF DS FL2 00758000 MSG2TXT DS CL8 00759000 MSG2PTR2 DS AL4 00760000 MSG2LEN2 DS FL2 00761000 MSG2OFF2 DS FL2 00762000 MSG2TXT2 DS CL8 00763000 MSG2PTR3 DS AL4 00764000 MSG2LEN3 DS FL2 00765000 MSG2OFF3 DS FL2 00766000 MSG2TXT3 DS CL8 00767000 ORG DXWKAREA+144 00768000 CVDNUM DS CL8 00769000 ORG CVDNUM 00770000 @NM00029 DS CL7 00771000 FZERO DS CL1 00772000 ORG DXWKAREA+152 00773000 UNPACK DS CL8 00774000 AREAM DS CL12 00775000 SWITCH DS CL1 00776000 ORG SWITCH 00777000 ERR DS BL1 00778000 NEXT EQU SWITCH+0 00779000 NONNUM EQU SWITCH+0 00780000 LOOP EQU SWITCH+0 00781000 ORG DXWKAREA+173 00782000 DS CL3 00783000 UTPLST DS CL8 00784000 ORG UTPLST 00785000 UTOPTION DS BL1 00786000 UTDCB DS AL3 00787000 UTKEY DS AL4 00788000 ORG UTPLST+8 00789000 ORG *+1-(*-@DATD)/(*-@DATD) INSURE DSECT DATA 00790000 @ENDDATD EQU * 00791000 IKJEBEDX CSECT 00792000 DS 0F 00793000 @SIZDATD DC AL1(1) 00794000 DC AL3(@ENDDATD-@DATD) 00795000 DS 0D 00796000 NUM DC CL1'0' 00797000 DC CL1'1' 00798000 DC CL1'2' 00799000 DC CL1'3' 00800000 DC CL1'4' 00801000 DC CL1'5' 00802000 DC CL1'6' 00803000 DC CL1'7' 00804000 DC CL1'8' 00805000 DC CL1'9' 00806000 @00 EQU 00 EQUATES FOR REGISTERS 0-15 00807000 @01 EQU 01 00808000 @02 EQU 02 00809000 @03 EQU 03 00810000 @04 EQU 04 00811000 @05 EQU 05 00812000 @06 EQU 06 00813000 @07 EQU 07 00814000 @08 EQU 08 00815000 @09 EQU 09 00816000 @10 EQU 10 00817000 @11 EQU 11 00818000 @12 EQU 12 00819000 @13 EQU 13 00820000 @14 EQU 14 00821000 @15 EQU 15 00822000 ECTPTR EQU @06 00823000 PARMREG0 EQU @00 00824000 PARMREG1 EQU @01 00825000 LEV1MSG EQU @02 00826000 LEV2MSG EQU @03 00827000 LEV1INS EQU @04 00828000 LEV2INS EQU @05 00829000 CVBREG EQU @06 00830000 CVDREG EQU @07 00831000 COMMREG EQU @09 00832000 BASEREG EQU @11 00833000 DATAREG EQU @12 00834000 RETCDREG EQU @15 00835000 RETREG EQU @14 00836000 SAVEREG EQU @13 00837000 IKJEBECA EQU 0 00838000 CAPTMS EQU IKJEBECA+20 00839000 CAPTUT EQU IKJEBECA+24 00840000 CAPTPRSD EQU IKJEBECA+36 00841000 CAPRSPDL EQU CAPTPRSD 00842000 CAPTIBFR EQU IKJEBECA+40 00843000 CAPTCDCB EQU IKJEBECA+52 00844000 CAATTN EQU IKJEBECA+120 00845000 CACFLAG EQU IKJEBECA+124 00846000 CACFLAG1 EQU CACFLAG 00847000 CACFLAG2 EQU CACFLAG+1 00848000 CADSMODS EQU CACFLAG2 00849000 CARECFM EQU CACFLAG2 00850000 CACFLAG3 EQU CACFLAG+2 00851000 CAIMFLG EQU CACFLAG3 00852000 CACFLAG4 EQU CACFLAG+3 00853000 CACFLAG5 EQU CACFLAG+4 00854000 CACFLAG6 EQU CACFLAG+5 00855000 CAPD EQU IKJEBECA+152 00856000 CADSTYPE EQU CAPD 00857000 CALINE EQU CAPD+18 00858000 CALENGTH EQU CAPD+19 00859000 CADSATTR EQU CAPD+41 00860000 CADSATR2 EQU CAPD+42 00861000 CAPTPDXT EQU IKJEBECA+228 00862000 CALRECL EQU IKJEBECA+232 00863000 CAEDFLAG EQU IKJEBECA+236 00864000 CAEDFLG2 EQU IKJEBECA+237 00865000 CASAFLAG EQU IKJEBECA+376 00866000 CASAFLG2 EQU IKJEBECA+377 00867000 CACURNUM EQU IKJEBECA+456 00868000 CASYNLST EQU IKJEBECA+496 00869000 CASYNWA EQU IKJEBECA+508 00870000 CASYNOPT EQU IKJEBECA+524 00871000 CASYNSW EQU CASYNOPT+3 00872000 CATMPLST EQU IKJEBECA+528 00873000 CAPTECT EQU CATMPLST+4 00874000 CAMAWKA EQU IKJEBECA+596 00875000 MACFLAGS EQU CAMAWKA+28 00876000 MACFLAG2 EQU CAMAWKA+29 00877000 CAMODEMG EQU IKJEBECA+928 00878000 CATEMPBF EQU IKJEBECA+2648 00879000 CANXTSVA EQU IKJEBECA+3896 00880000 IKJEBECX EQU 0 00881000 CXDATEXT EQU IKJEBECX 00882000 ECT EQU 0 00883000 ECTSCMD EQU ECT+20 00884000 ECTSWS EQU ECT+28 00885000 ECTSWS2 EQU ECT+40 00886000 ECTSWS21 EQU ECTSWS2 00887000 DXPARMS EQU 0 00888000 EXITPARM EQU DXPARMS 00889000 EXTLIST EQU 0 00890000 DSADDR EQU EXTLIST+13 00891000 SUBCMDPT EQU EXTLIST+16 00892000 DSATTRIB EQU EXTLIST+20 00893000 ATTRAREA EQU 0 00894000 DSLENTH EQU ATTRAREA+4 00895000 INCOREC EQU 0 00896000 INCORLL EQU INCOREC 00897000 AREA1 EQU 0 00898000 AREA2 EQU 0 00899000 INTERFAC EQU 0 00900000 CURREFPT EQU INTERFAC+24 00901000 FREEPARM EQU UTPLST 00902000 FREEPTR EQU FREEPARM 00903000 FREELEN EQU FREEPARM+4 00904000 AGO .@UNREFD START UNREFERENCED COMPONENTS 00905000 @NM00038 EQU INTERFAC+20 00906000 @NM00037 EQU INTERFAC+16 00907000 @NM00036 EQU INTERFAC+12 00908000 @NM00035 EQU INTERFAC+8 00909000 @NM00034 EQU INTERFAC+4 00910000 @NM00033 EQU INTERFAC 00911000 INCOR00 EQU INCOREC+2 00912000 ATTRLRCL EQU ATTRAREA 00913000 FLAGS EQU EXTLIST+12 00914000 @NM00032 EQU EXTLIST+8 00915000 @NM00031 EQU EXTLIST+4 00916000 @NM00030 EQU EXTLIST 00917000 EDCOMPTR EQU DXPARMS+4 00918000 @NM00028 EQU ECT+52 00919000 @NM00027 EQU ECT+48 00920000 @NM00026 EQU ECT+44 00921000 @NM00025 EQU ECTSWS2+1 00922000 @NM00024 EQU ECTSWS21 00923000 ECTTABND EQU ECTSWS21 00924000 ECTDEFCS EQU ECTSWS21 00925000 ECTBKPB EQU ECT+36 00926000 ECTUSER EQU ECT+32 00927000 ECTDDNUM EQU ECT+29 00928000 ECTATTN EQU ECTSWS 00929000 ECTBKGRD EQU ECTSWS 00930000 ECTNNOT EQU ECTSWS 00931000 ECTNMAL EQU ECTSWS 00932000 ECTLOGF EQU ECTSWS 00933000 ECTATRM EQU ECTSWS 00934000 @NM00023 EQU ECTSWS 00935000 ECTNOPD EQU ECTSWS 00936000 ECTPCMD EQU ECT+12 00937000 ECTSMSG EQU ECT+9 00938000 ECTMSGF EQU ECT+8 00939000 ECTIOWA EQU ECT+4 00940000 ECTRTCD EQU ECT+1 00941000 ECTRCDF EQU ECT 00942000 CAPDEXT EQU IKJEBECA+3984 00943000 CADSNRC2 EQU IKJEBECA+3928 00944000 CADSNOF2 EQU IKJEBECA+3926 00945000 CADSNLN2 EQU IKJEBECA+3924 00946000 CADSNPT2 EQU IKJEBECA+3920 00947000 @NM00022 EQU IKJEBECA+3900 00948000 CASVAREA EQU IKJEBECA+3176 00949000 CABFRPL EQU IKJEBECA+2120 00950000 CASCWKA EQU IKJEBECA+1448 00951000 CAFIBFR EQU IKJEBECA+1188 00952000 CAAEDCB EQU IKJEBECA+1096 00953000 CALDROP EQU IKJEBECA+1064 00954000 CAATNWKA EQU IKJEBECA+956 00955000 CAATNBUF EQU IKJEBECA+952 00956000 CAMODETX EQU CAMODEMG+12 00957000 CAMODEOF EQU CAMODEMG+10 00958000 CAMODELN EQU CAMODEMG+8 00959000 CAMODEPT EQU CAMODEMG+4 00960000 CAMODEIS EQU CAMODEMG 00961000 CASRWKA EQU IKJEBECA+728 00962000 CAMSWKA EQU IKJEBECA+628 00963000 @NM00021 EQU CAMAWKA+30 00964000 @NM00020 EQU MACFLAG2 00965000 MATABLE1 EQU MACFLAG2 00966000 @NM00019 EQU MACFLAGS 00967000 MAENDPRC EQU MACFLAGS 00968000 MAABBREV EQU MACFLAGS 00969000 MAECTMOD EQU MACFLAGS 00970000 @NM00018 EQU CAMAWKA 00971000 CASTAEPL EQU IKJEBECA+576 00972000 CASTAXPL EQU IKJEBECA+556 00973000 CASRPLST EQU CATMPLST+12 00974000 CAPTECB EQU CATMPLST+8 00975000 CAPTUPT EQU CATMPLST 00976000 CASYNSCN EQU CASYNSW 00977000 CASYNML EQU CASYNSW 00978000 CASYNSF EQU CASYNSW 00979000 CASYNRFM EQU CASYNSW 00980000 CASYNIS EQU CASYNSW 00981000 @NM00017 EQU CASYNSW 00982000 CASYNLN EQU CASYNSW 00983000 @NM00016 EQU CASYNSW 00984000 CASYNRCL EQU CASYNOPT+2 00985000 CASYNCD2 EQU CASYNOPT+1 00986000 CASYNCD1 EQU CASYNOPT 00987000 CASYNTEM EQU CASYNWA+12 00988000 CASYNMS2 EQU CASYNWA+8 00989000 CASYNMS1 EQU CASYNWA+4 00990000 CASYNWAP EQU CASYNWA+1 00991000 CASYNECD EQU CASYNWA 00992000 CASYNPTO EQU CASYNLST+8 00993000 CASYNPWA EQU CASYNLST+4 00994000 CASYNBFR EQU CASYNLST 00995000 @NM00015 EQU IKJEBECA+484 00996000 CARECNO EQU IKJEBECA+480 00997000 CAINSAVE EQU IKJEBECA+476 00998000 @NM00014 EQU IKJEBECA+472 00999000 CAIMLINC EQU IKJEBECA+468 01000000 CAIMLLNO EQU IKJEBECA+464 01001000 CAINCRE EQU IKJEBECA+460 01002000 CANXTREC EQU IKJEBECA+452 01003000 CASTNUM EQU IKJEBECA+448 01004000 CASAPSWD EQU IKJEBECA+440 01005000 CASADDN EQU IKJEBECA+432 01006000 CASAMEMB EQU IKJEBECA+424 01007000 CASADSN EQU IKJEBECA+380 01008000 CASADSNL EQU IKJEBECA+378 01009000 CASADQTY EQU CASAFLG2 01010000 CASANCTG EQU CASAFLG2 01011000 CASAALOC EQU CASAFLAG 01012000 CASAUNCG EQU CASAFLAG 01013000 CASADSOR EQU CASAFLAG 01014000 CASAMEM EQU CASAFLAG 01015000 CASADISP EQU CASAFLAG 01016000 CASAINCP EQU CASAFLAG 01017000 CASAFNCP EQU CASAFLAG 01018000 CASAVEDS EQU CASAFLAG 01019000 CADSNREC EQU IKJEBECA+320 01020000 CADSNOFF EQU IKJEBECA+318 01021000 CADSNLEN EQU IKJEBECA+316 01022000 CADSNPTR EQU IKJEBECA+312 01023000 CAEDTSIZ EQU IKJEBECA+308 01024000 CAEDPSWD EQU IKJEBECA+300 01025000 CAEDDDN EQU IKJEBECA+292 01026000 CAEDMEMB EQU IKJEBECA+284 01027000 CAEDDSN EQU IKJEBECA+240 01028000 CAEDDSNL EQU IKJEBECA+238 01029000 CAEDPRTC EQU CAEDFLG2 01030000 CAEDALOC EQU CAEDFLAG 01031000 CAEDUNCG EQU CAEDFLAG 01032000 CAEDDSOR EQU CAEDFLAG 01033000 CAEDMEM EQU CAEDFLAG 01034000 CAEDDISP EQU CAEDFLAG 01035000 CAEDINCP EQU CAEDFLAG 01036000 CAEDFNCP EQU CAEDFLAG 01037000 CAEDITDS EQU CAEDFLAG 01038000 CABLK2 EQU IKJEBECA+234 01039000 @NM00013 EQU IKJEBECA+226 01040000 CAPDEND EQU CAPD+82 01041000 CADATEXT EQU CAPD+74 01042000 CAEXTNAM EQU CAPD+66 01043000 CAPRNAME EQU CAPD+58 01044000 CACHKOPT EQU CAPD+56 01045000 CAULRLMX EQU CAPD+54 01046000 CAULRLDF EQU CAPD+52 01047000 CAVLRLMX EQU CAPD+50 01048000 CAVLRLDF EQU CAPD+48 01049000 CAFLRLMX EQU CAPD+46 01050000 CAFLRLDF EQU CAPD+44 01051000 CARECFMD EQU CAPD+43 01052000 @NM00012 EQU CADSATR2 01053000 CAINLIST EQU CADSATR2 01054000 CARUNDS EQU CADSATR2 01055000 CAOBJGEN EQU CADSATR2 01056000 CADSNDEF EQU CADSATR2 01057000 CALINTAB EQU CADSATR2 01058000 @NM00011 EQU CADSATTR 01059000 CALRECLX EQU CADSATTR 01060000 CALNNUM EQU CADSATTR 01061000 CADSCONT EQU CADSATTR 01062000 CACAPSDF EQU CADSATTR 01063000 CACAPSRQ EQU CADSATTR 01064000 CASCAN EQU CADSATTR 01065000 CARUN EQU CADSATTR 01066000 CADSCODE EQU CAPD+40 01067000 CASYNAME EQU CAPD+32 01068000 CATABS EQU CAPD+20 01069000 CABLKS EQU CAPD+16 01070000 CADSQUAL EQU CAPD+8 01071000 @NM00010 EQU CACFLAG+8 01072000 CAPLIRTM EQU CACFLAG+7 01073000 CAPLILFM EQU CACFLAG+6 01074000 @NM00009 EQU CACFLAG6 01075000 CACHAR60 EQU CACFLAG6 01076000 CACHAR48 EQU CACFLAG6 01077000 CAFREE EQU CACFLAG6 01078000 @NM00008 EQU CACFLAG5 01079000 CAEDLNDP EQU CACFLAG5 01080000 CADSUSED EQU CACFLAG4 01081000 CARECURS EQU CACFLAG4 01082000 CAINPROC EQU CACFLAG4 01083000 CASCRC20 EQU CACFLAG4 01084000 CAABEND EQU CACFLAG4 01085000 CATPUTVF EQU CACFLAG4 01086000 CAPTGTBF EQU CACFLAG4 01087000 CAFINDIS EQU CACFLAG4 01088000 @NM00007 EQU CAIMFLG 01089000 CAIMINPT EQU CAIMFLG 01090000 CAIMSFPT EQU CAIMFLG 01091000 CAIMCIN EQU CAIMFLG 01092000 CAIMIR EQU CAIMFLG 01093000 CAIMSC EQU CAIMFLG 01094000 CAIMINS EQU CAIMFLG 01095000 CAIMPT EQU CAIMFLG 01096000 @NM00006 EQU CACFLAG2 01097000 CAX22ABN EQU CACFLAG2 01098000 CAX37ABN EQU CACFLAG2 01099000 CASEQCOL EQU CACFLAG2 01100000 CAMODMSG EQU CACFLAG2 01101000 CASCANON EQU CACFLAG2 01102000 CANONUM EQU CACFLAG1 01103000 CACAPS EQU CACFLAG1 01104000 CAENDSC EQU CACFLAG1 01105000 CAINITSC EQU CACFLAG1 01106000 CASCANSW EQU CACFLAG1 01107000 CAPROMPT EQU CACFLAG1 01108000 CAVRFYSW EQU CACFLAG1 01109000 CALNTOVF EQU CACFLAG1 01110000 CAATTNIS EQU CAATTN 01111000 @NM00005 EQU CAATTN 01112000 @NM00004 EQU IKJEBECA+118 01113000 CAMAXBLK EQU IKJEBECA+116 01114000 CAESDSPL EQU IKJEBECA+112 01115000 @NM00003 EQU IKJEBECA+88 01116000 CAPTICLN EQU IKJEBECA+84 01117000 CAPTICDS EQU IKJEBECA+80 01118000 CAPTNBFR EQU IKJEBECA+76 01119000 CAPTCHK EQU IKJEBECA+72 01120000 CACORELN EQU IKJEBECA+68 01121000 CAPTCORE EQU IKJEBECA+64 01122000 CAUTILNO EQU IKJEBECA+60 01123000 CAPTPDCB EQU IKJEBECA+56 01124000 @NM00002 EQU IKJEBECA+50 01125000 CASCMDLN EQU IKJEBECA+48 01126000 CAPTSCMD EQU IKJEBECA+44 01127000 CAOPERND EQU CAPTIBFR 01128000 CAFREEDL EQU CAPRSPDL 01129000 CAPTRTRY EQU IKJEBECA+32 01130000 CAPTMSGM EQU IKJEBECA+28 01131000 CAPTLE EQU IKJEBECA+16 01132000 CAPTAT EQU IKJEBECA+12 01133000 CAPTAE EQU IKJEBECA+8 01134000 @NM00001 EQU IKJEBECA+4 01135000 CAPTTMP EQU IKJEBECA 01136000 .@UNREFD ANOP END UNREFERENCED COMPONENTS 01137000 @RT00145 EQU EOF 01138000 @RF00145 EQU PROCRECD 01139000 @PB00006 EQU @EL00001 01140000 @PB00005 EQU @PB00006 01141000 @PB00004 EQU @PB00005 01142000 @PB00003 EQU @PB00004 01143000 @PB00002 EQU @PB00003 01144000 @ENDDATA EQU * 01145000 END IKJEBEDX,(C'PLS1339',0701,78093) 01146000