TITLE 'INCORE COPY ROUTINE *00001000 ' 00002000 IKJEBEDC CSECT , 0001 00003000 @PROLOG DS 0H 0002 00004000 IKJEBESV (14,12),,*,,COMMREG=0(PARMREG1) 00005000 * DATAREG = ADDR(CASRWKA); /* PTR TO WORKAREA * 00006000 LA DATAREG,CASRWKA(,COMMREG) 0016 00007000 * GENERATE; /* WORKAREA ADDRESSABILITY * 00008000 USING @DATD,DATAREG 00009000 * INPTR = PARMREG1; /* PTR TO INPUT PARAMETERS * 00010000 ST PARMREG1,INPTR 0018 00011000 * ENTRYCD = PARMREG0; /* SAVE ENTRY CODE * 00012000 * 0019 00013000 ST PARMREG0,ENTRYCD 0019 00014000 * IF ENTRYCD = 0 THEN /* IF ENTRY CODE IS 0 * 00015000 L @10,ENTRYCD 0020 00016000 LTR @10,@10 0020 00017000 BNZ @RF00020 0020 00018000 * GETSP = 78; /* SET SUBPOOL TO 78 * 00019000 MVI GETSP,X'4E' 0021 00020000 * ELSE /* OTHERWISE, * 00021000 * GETSP = 1; /* SET SUBPOOL TO 1 * 00022000 B @RC00020 0022 00023000 @RF00020 MVI GETSP,X'01' 0022 00024000 * IF CAUTILNO = 0 THEN /* IF NO RECORDS IN DS, * 00025000 @RC00020 L @10,CAUTILNO(,COMMREG) 0023 00026000 LTR @10,@10 0023 00027000 BNZ @RF00023 0023 00028000 * RETSAVE = 4; /* INDICATE EMPTY DS * 00029000 MVC RETSAVE(4),@CF00375 0024 00030000 * ELSE 0025 00031000 * DO; /* IF NOT EMPTY DS, * 00032000 B @RC00023 0025 00033000 @RF00023 DS 0H 0026 00034000 * IF CARECFM = '1'B THEN /* IF RECFM IS FIXED * 00035000 TM CARECFM(COMMREG),B'01000000' 0026 00036000 BNO @RF00026 0026 00037000 * DO; /* THEN * 00038000 * LRECL = CALRECL-4; /* GET LOGICAL RECORD LENGTH * 00039000 LH @10,CALRECL(,COMMREG) 0028 00040000 SL @10,@CF00375 0028 00041000 ST @10,LRECL 0028 00042000 * INDEX = 8; /* SET INDEX FOR COPY * 00043000 MVC INDEX(2),@CH00058 0029 00044000 * END; 0030 00045000 * ELSE /* OTHERWISE, * 00046000 * DO; /* ASSUME LRECL IS VARIABLE * 00047000 B @RC00026 0031 00048000 @RF00026 DS 0H 0032 00049000 * LRECL = CALRECL; /* GET LOGICAL RECORD LENGTH * 00050000 LH @10,CALRECL(,COMMREG) 0032 00051000 ST @10,LRECL 0032 00052000 * INDEX = 4; /* SET INDEX FOR COPY * 00053000 MVC INDEX(2),@CH00375 0033 00054000 * END; 0034 00055000 * OUTLRECL = LRECL; /* STORE LRECL IN OUTAREA * 00056000 @RC00026 L @10,LRECL 0035 00057000 L @08,INPTR 0035 00058000 L @08,OUTPTR(,@08) 0035 00059000 ST @10,OUTLRECL(,@08) 0035 00060000 * GETLEN = LRECL * CAUTILNO;/* COMPUTE GETMAIN LENGTH * 00061000 LR @03,@10 0036 00062000 M @02,CAUTILNO(,COMMREG) 0036 00063000 ST @03,GETLEN 0036 00064000 * GETMODE = '20'X; /* SET MODE FOR GETMAIN * 00065000 MVI GETMODE,X'20' 0037 00066000 * PARMREG1 = ADDR(GETAREA); /* PTR TO PARMS IN REG 1 * 00067000 LA PARMREG1,GETAREA 0038 00068000 * GENERATE; /* ISSUE GETMAIN * 00069000 GETMAIN ,A=GETPTR,MF=(E,(1)) 00070000 * IF RETCDREG = 0 THEN /* IF GETMAIN SUCCESSFUL * 00071000 SLR @14,@14 0040 00072000 CR RETCDREG,@14 0040 00073000 BNE @RF00040 0040 00074000 * DO; /* THEN * 00075000 * OUTDSPTR = GETPTR; /* STORE ADDRESS IN OUTAREA * 00076000 L @10,INPTR 0042 00077000 L @10,OUTPTR(,@10) 0042 00078000 MVC OUTDSPTR(4,@10),GETPTR 0042 00079000 * OUTCURLN = 0; /* PTR TO 1ST LINE @YM03458* 00080000 ST @14,OUTCURLN(,@10) 0043 00081000 * OUTLENGH = GETLEN; /* LENGTH OF DS * 00082000 MVC OUTLENGH(4,@10),GETLEN 0044 00083000 * IF ENTRYCD = 0 THEN /* IF SUBPOOL 78 @YM03458* 00084000 C @14,ENTRYCD 0045 00085000 BNE @RF00045 0045 00086000 * DO; /* @YM03458* 00087000 * CAPTICDS = ADDR(OUTDSPTR); /* PTR AND @YM03458* 00088000 ST @10,CAPTICDS(,COMMREG) 0047 00089000 * CAPTICLN = ADDR(OUTLENGH); /* LENGTH @YM03458* 00090000 LA @10,OUTLENGH(,@10) 0048 00091000 ST @10,CAPTICLN(,COMMREG) 0048 00092000 * END; /* @YM03458* 00093000 * DSPTR = GETPTR; /* PTR TO 1ST RECORD POSITION * 00094000 @RF00045 MVC DSPTR(4),GETPTR 0050 00095000 * CALL READUT; /* COPY UTILITY TO INCORE DS * 00096000 BAL @14,READUT 0051 00097000 * CALL FREECHK; /* CHECK FOR EXTRA CORE * 00098000 BAL @14,FREECHK 0052 00099000 * END; 0053 00100000 * ELSE /* IF GETMAIN FAILED, * 00101000 * CALL NOCORE; /* SET RETURN CODE * 00102000 B @RC00040 0054 00103000 @RF00040 BAL @14,NOCORE 0054 00104000 * END; 0055 00105000 @RC00040 DS 0H 0056 00106000 * RETCDREG = RETSAVE; /* RETURN CODE IN REG 15 * 00107000 @RC00023 L RETCDREG,RETSAVE 0056 00108000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00109000 IKJEBERT (14,12),,RC=(15) 00110000 */***** 0058 00111000 * * SEGMENT NAME - 0058 00112000 * * READUT 0058 00113000 * * 0058 00114000 * * FUNCTION - 0058 00115000 * * THIS ROUTINE READS RECORDS FROM THE UTILITY DATA SET, AND 0058 00116000 * * MOVES THEM TO THE INCORE DATA SET UNTIL END OF FILE IS 0058 00117000 * * REACHED. 0058 00118000 * * 0058 00119000 * * INPUT - 0058 00120000 * * ADDRESS OF UTILITY DATA SET 0058 00121000 * * ADDRESS OF INCORE DATA SET 0058 00122000 * * 0058 00123000 * * OUTPUT - 0058 00124000 * * RETURN CODE 0058 00125000 * * 0058 00126000 * *******/ 0058 00127000 * 0058 00128000 * READUT: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0058 00129000 @EL00001 DS 0H 0058 00130000 @EF00001 DS 0H 0058 00131000 @ER00001 BR @14 0058 00132000 READUT DS 0H 0059 00133000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE * 00134000 IKJEBESV (14,12),,,CODEREG=NO,COMMREG=NO 00135000 * UTOPTION = '84'X; /* INDICATE READ FIRST * 00136000 MVI UTOPTION,X'84' 0060 00137000 * LOOP = '0'B; /* INITIALIZE LOOP CONTROL * 00138000 NI LOOP,B'01111111' 0061 00139000 * DO WHILE (LOOP='0'B); /* BEGIN DO-WHILE * 00140000 B @DE00062 0062 00141000 @DL00062 DS 0H 0063 00142000 * UTWORD1 = CAPTCDCB; /* GET DCB ADDRESS * 00143000 MVC UTWORD1(3),CAPTCDCB+1(COMMREG) 0063 00144000 * GENERATE REFS(CAPTUT); /* READ A RECORD * 00145000 IKJEBESH (COMMREG),IKJEBEUT,PARAM=((COMMREG),UTOPTION), XX00146000 MF=(E,AREAM) 00147000 * IF RETCDREG = 0 THEN /* IF READ SUCCESSFUL, * 00148000 LTR RETCDREG,RETCDREG 0065 00149000 BNZ @RF00065 0065 00150000 * DO; /* THEN * 00151000 * UTRECPTR = PARMREG1; /* PTR TO RECORD READ * 00152000 ST PARMREG1,UTRECPTR 0067 00153000 * IF UTRECKY = CACURNUM THEN 0068 00154000 L @10,UTRECPTR 0068 00155000 CLC UTRECKY(4,@10),CACURNUM(COMMREG) 0068 00156000 BNE @RF00068 0068 00157000 * OUTCURLN = DSPTR; /* UPDATE CUR LINE REF @YM03458* 00158000 L @10,INPTR 0069 00159000 L @10,OUTPTR(,@10) 0069 00160000 MVC OUTCURLN(4,@10),DSPTR 0069 00161000 * /* MOVE RECORD READ TO INCORE 00162000 * DATA SET * 00163000 * DYNAMREC(1:UTRECLL-INDEX+4) = 0070 00164000 * UTRECORD(INDEX+1:UTRECLL+INDEX-4); 0070 00165000 @RF00068 L @10,DSPTR 0070 00166000 LH @08,INDEX 0070 00167000 L @15,UTRECPTR 0070 00168000 LH @14,UTRECLL(,@15) 0070 00169000 LR @07,@14 0070 00170000 SLR @07,@08 0070 00171000 AH @07,@CH00164 0070 00172000 ALR @15,@08 0070 00173000 EX @07,@SM00436 0070 00174000 * /* UPDATE RECORD PTR * 00175000 * DSPTR = DSPTR + UTRECLL - INDEX + 4; 0071 00176000 ALR @10,@14 0071 00177000 SLR @10,@08 0071 00178000 AL @10,@CF00375 0071 00179000 ST @10,DSPTR 0071 00180000 * UTOPTION = '82'X; /* INDICATE READ NEXT * 00181000 MVI UTOPTION,X'82' 0072 00182000 * END; 0073 00183000 * ELSE /* IF READ FAILED * 00184000 * IF RETCDREG > 4 THEN /* DUE TO I/O ERROR * 00185000 B @RC00065 0074 00186000 @RF00065 CH RETCDREG,@CH00375 0074 00187000 BNH @RF00074 0074 00188000 * DO; /* THEN * 00189000 * RETSAVE = 12; /* INDICATE I/O ERROR * 00190000 MVC RETSAVE(4),@CF00145 0076 00191000 * LOOP = '1'B; /* EXIT DO-WHILE * 00192000 OI LOOP,B'10000000' 0077 00193000 * END; 0078 00194000 * ELSE /* ELSE * 00195000 * DO; /* ASSUME END OF DATA SET * 00196000 B @RC00074 0079 00197000 @RF00074 DS 0H 0080 00198000 * RETSAVE = 0; /* SET RETURN CODE * 00199000 SLR @10,@10 0080 00200000 ST @10,RETSAVE 0080 00201000 * LOOP = '1'B; /* EXIT DO-WHILE * 00202000 OI LOOP,B'10000000' 0081 00203000 * END; 0082 00204000 * END; /* END DO-WHILE * 00205000 @RC00074 DS 0H 0083 00206000 @RC00065 DS 0H 0083 00207000 @DE00062 TM LOOP,B'10000000' 0083 00208000 BZ @DL00062 0083 00209000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00210000 * 0084 00211000 IKJEBERT (14,12),,RC=(15) 00212000 * END READUT; 0085 00213000 @EL00002 DS 0H 0085 00214000 @EF00002 DS 0H 0085 00215000 @ER00002 BR @14 0085 00216000 */****** 0086 00217000 * * SEGMENT NAME - 0086 00218000 * * FREECHK 0086 00219000 * * 0086 00220000 * * FUNCTION - 0086 00221000 * * THIS ROUTINE DETERMINES IF A FREEMAIN IS NECESSARY, AND 0086 00222000 * * ISSUES THE FREEMAIN. 0086 00223000 * * 0086 00224000 * * INPUT - 0086 00225000 * * ADDRESS OF INCORE DATA SET 0086 00226000 * * RETURN CODE FROM READ FUNCTION 0086 00227000 * * 0086 00228000 * * OUTPUT - 0086 00229000 * * UNUSED CORE RELEASED 0086 00230000 * * 0086 00231000 * ********/ 0086 00232000 * 0086 00233000 * FREECHK: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0086 00234000 FREECHK DS 0H 0087 00235000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE * 00236000 IKJEBESV (14,12),,,CODEREG=NO,COMMREG=NO 00237000 * FREEBIT = '0'B; /* INIT FREE INDICATOR * 00238000 NI FREEBIT,B'10111111' 0088 00239000 * IF RETSAVE = 0 THEN /* IF END OF DS REACHED, * 00240000 SLR @10,@10 0089 00241000 C @10,RETSAVE 0089 00242000 BNE @RF00089 0089 00243000 * DO; /* THEN * 00244000 * ACTSIZE = DSPTR-GETPTR; /* COMPUTE ACTUAL DS SIZE * 00245000 L @08,DSPTR 0091 00246000 LR @15,@08 0091 00247000 SL @15,GETPTR 0091 00248000 ST @15,ACTSIZE 0091 00249000 * OUTLENGH = ACTSIZE; /* STORE SIZE IN OUTAREA * 00250000 L @14,INPTR 0092 00251000 L @14,OUTPTR(,@14) 0092 00252000 ST @15,OUTLENGH(,@14) 0092 00253000 * EXTRA = GETLEN-ACTSIZE; /* COMPUTE FOR EXTRA CORE * 00254000 LCR @15,@15 0093 00255000 AL @15,GETLEN 0093 00256000 ST @15,EXTRA 0093 00257000 * IF EXTRA > 0 THEN /* IF CORE LEFT OVER * 00258000 CR @15,@10 0094 00259000 BNH @RF00094 0094 00260000 * DO; /* THEN * 00261000 * FREEBIT = '1'B; /* INDICATE TO FREE * 00262000 OI FREEBIT,B'01000000' 0096 00263000 * LEV2MSG = DSPTR; /* ADDRESS IN REG * 00264000 LR LEV2MSG,@08 0097 00265000 * LEV1INS = 8; /* CONSTANT 8 IN REG * 00266000 LA LEV1INS,8 0098 00267000 * GENERATE; /* DIVIDE * 00268000 DR LEV1MSG,LEV1INS 00269000 * IF LEV1MSG = 0 0100 00270000 * THEN DO; /* IF NO REMAINDER, @ZA17344* 00271000 LTR LEV1MSG,LEV1MSG 0100 00272000 BNZ @RF00100 0100 00273000 * FREEPTR = DSPTR; /* POINTER AND @ZA17344* 00274000 MVC FREEPTR(4),DSPTR 0102 00275000 * FREELEN = EXTRA; /* LENGTH OK. @ZA17344* 00276000 MVC FREELEN(4),EXTRA 0103 00277000 * END; /* @ZA17344* 00278000 * ELSE DO; /* OTHERWISE, @ZA17344* 00279000 B @RC00100 0105 00280000 @RF00100 DS 0H 0106 00281000 * FREEPTR = DSPTR+(8-LEV1MSG); /* ROUND TO DWORD * 00282000 LA @10,8 0106 00283000 LR @08,@10 0106 00284000 SLR @08,LEV1MSG 0106 00285000 AL @08,DSPTR 0106 00286000 ST @08,FREEPTR 0106 00287000 * FREELEN = EXTRA-(8-LEV1MSG); /* GET LEN TO FREE * 00288000 LCR @10,@10 0107 00289000 ALR @10,LEV1MSG 0107 00290000 AL @10,EXTRA 0107 00291000 ST @10,FREELEN 0107 00292000 * END; /* @ZA17344* 00293000 * IF FREELEN < 1 THEN 0109 00294000 @RC00100 L @10,FREELEN 0109 00295000 LTR @10,@10 0109 00296000 BP @RF00109 0109 00297000 * FREEBIT = '0'B; 0110 00298000 NI FREEBIT,B'10111111' 0110 00299000 * END; 0111 00300000 * END; 0112 00301000 * ELSE 0113 00302000 * IF RETSAVE = 12 THEN /* IF I/O ERROR OCCURRED * 00303000 B @RC00089 0113 00304000 @RF00089 CLC RETSAVE(4),@CF00145 0113 00305000 BNE @RF00113 0113 00306000 * DO; /* THEN * 00307000 * FREEBIT = '1'B; /* INDICATE TO FREE * 00308000 OI FREEBIT,B'01000000' 0115 00309000 * FREELEN = GETLEN; /* SET LENGTH TO FREE * 00310000 MVC FREELEN(4),GETLEN 0116 00311000 * FREEPTR = GETPTR; /* PTR TO AREA TO FREE * 00312000 MVC FREEPTR(4),GETPTR 0117 00313000 * END; 0118 00314000 * 0118 00315000 * IF FREEBIT = '1'B THEN /* IF FREE INDICATED * 00316000 @RF00113 DS 0H 0119 00317000 @RC00089 TM FREEBIT,B'01000000' 0119 00318000 BNO @RF00119 0119 00319000 * DO; /* THEN * 00320000 * FREEBIT = '0'B; /* TURN OFF INDICATOR * 00321000 NI FREEBIT,B'10111111' 0121 00322000 * PARMREG0 = GETSP; /* SET SUBPOOL * 00323000 SLR PARMREG0,PARMREG0 0122 00324000 IC PARMREG0,GETSP 0122 00325000 * GENERATE; /* ISSUE FREEMAIN * 00326000 FREEMAIN V,A=FREEPARM,SP=(0),MF=(E,FREEX) 00327000 * END; 0124 00328000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00329000 @RF00119 DS 0H 0125 00330000 IKJEBERT (14,12),,RC=(15) 00331000 * END FREECHK; 0126 00332000 @EL00003 DS 0H 0126 00333000 @EF00003 DS 0H 0126 00334000 @ER00003 BR @14 0126 00335000 */******** 0127 00336000 * * SEGMENT NAME - 0127 00337000 * * NOCORE 0127 00338000 * * 0127 00339000 * * FUNCTION - 0127 00340000 * * THIS ROUTINE ISSUES A MESSAGE NOTIFYING THE USER THAT NOT 0127 00341000 * * ENOUGH STORAGE IS AVAILABLE FOR THE SUBCOMMAND TO EXECUTE. 00342000 * * 0127 00343000 * * INPUT - 0127 00344000 * * ENTRY CODE 0127 00345000 * * 0127 00346000 * * OUTPUT - 0127 00347000 * * MESSAGE ISSUED 0127 00348000 * * 0127 00349000 * *******/ 0127 00350000 * 0127 00351000 * NOCORE: PROC OPTIONS(NOSAVEAREA,DONTSAVE); 0127 00352000 NOCORE DS 0H 0128 00353000 * GENERATE REFS(CANXTSVA); /* ENTRY LINKAGE */ 00354000 IKJEBESV (14,12),,,CODEREG=NO,COMMREG=NO 00355000 * RFY (LEV1MSG,LEV2MSG,LEV1INS,LEV2INS) RSTD; 0129 00356000 * RETSAVE = 8; /* INDICATE GETMAIN ERROR * 00357000 MVC RETSAVE(4),@CF00058 0130 00358000 * LEV1MSG = 270; /* 1ST LEVEL MSG * 00359000 LA LEV1MSG,270 0131 00360000 * LEV2MSG = 0; /* NO 2ND LEVEL MSG * 00361000 SLR LEV2MSG,LEV2MSG 0132 00362000 * MSGPTR = 0; /* SINGLE INSERTION * 00363000 * 0133 00364000 SLR @10,@10 0133 00365000 ST @10,MSGPTR 0133 00366000 * IF ENTRYCD = 0 THEN /* IF ENTRY CODE 0 * 00367000 C @10,ENTRYCD 0134 00368000 BNE @RF00134 0134 00369000 * DO; /* THEN * 00370000 * MSGLEN = 7; /* SET LENGTH OF INSERTION * 00371000 MVC MSGLEN(2),@CH00126 0136 00372000 * MSGTEXT = 'RUN'; /* SET INSERTION TEXT * 00373000 MVI MSGTEXT+3,C' ' 0137 00374000 MVC MSGTEXT+4(4),MSGTEXT+3 0137 00375000 MVC MSGTEXT(3),@CC00431 0137 00376000 * END; 0138 00377000 * ELSE /* IF ENTRY CODE 4 * 00378000 * DO; /* THEN * 00379000 B @RC00134 0139 00380000 @RF00134 DS 0H 0140 00381000 * MSGLEN = 9; /* SET LENGTH OF INSERTION * 00382000 MVC MSGLEN(2),@CH00432 0140 00383000 * MSGTEXT = 'RENUM'; /* SET INSERTION TEXT * 00384000 MVI MSGTEXT+5,C' ' 0141 00385000 MVC MSGTEXT+6(2),MSGTEXT+5 0141 00386000 MVC MSGTEXT(5),@CC00433 0141 00387000 * END; 0142 00388000 * 0142 00389000 * MSGOFF = 45; /* SET OFFSET FOR INSERTION * 00390000 @RC00134 MVC MSGOFF(2),@CH00434 0143 00391000 * LEV1INS = ADDR(MSGAREA); /* PTR TO INSERTION * 00392000 LA LEV1INS,MSGAREA 0144 00393000 * LEV2INS = 0; /* NO 2ND LEVEL INSERTION * 00394000 * 0145 00395000 SLR LEV2INS,LEV2INS 0145 00396000 * GENERATE REFS(CAPTMS); /* ISSUE MESSAGE * 00397000 IKJEBEML (LEV1MSG),(LEV2MSG),(LEV1INS),(LEV2INS),MF=(E,AREAM) 00398000 * RFY (LEV1MSG,LEV2MSG,LEV1INS,LEV2INS) UNRSTD; 0147 00399000 * GENERATE REFS(CANXTSVA); /* EXIT LINKAGE * 00400000 IKJEBERT (14,12),,RC=(15) 00401000 * END NOCORE; 0149 00402000 * 0149 00403000 @EL00004 DS 0H 0149 00404000 @EF00004 DS 0H 0149 00405000 @ER00004 BR @14 0149 00406000 * END IKJEBEDC 0150 00407000 */* THE FOLLOWING INCLUDE STATEMENTS WERE FOUND IN THIS PROGRAM. * 00408000 */*%INCLUDE SYSLIB (IKJEBECA) * 00409000 */*%INCLUDE SYSLIB (IKJEBEMJ) * 00410000 *; 0150 00411000 @DATA DS 0H 00412000 @CH00164 DC H'3' 00413000 @CH00126 DC H'7' 00414000 @CH00432 DC H'9' 00415000 @CH00434 DC H'45' 00416000 @SM00436 MVC DYNAMREC(0,@10),UTRECORD(@15) 00417000 @DATD DSECT 00418000 DS 0F 00419000 @ZTEMPS DS C 00420000 @ZTEMPND EQU * 00421000 @ZLEN EQU @ZTEMPND-@ZTEMPS 00422000 IKJEBEDC CSECT 00423000 DS 0F 00424000 @CF00375 DC F'4' 00425000 @CH00375 EQU @CF00375+2 00426000 @CF00058 DC F'8' 00427000 @CH00058 EQU @CF00058+2 00428000 @CF00145 DC F'12' 00429000 @DATD DSECT 00430000 DS 0D 00431000 DCWKAREA DS CL132 00432000 ORG DCWKAREA 00433000 RETSAVE DS FL4 00434000 FREEX DS CL12 00435000 AREAM DS CL40 00436000 UTPARMS DS CL4 00437000 ORG UTPARMS 00438000 UTOPTION DS BL1 00439000 UTWORD1 DS AL3 00440000 ORG DCWKAREA+60 00441000 GETAREA DS CL10 00442000 ORG GETAREA 00443000 GETLEN DS FL4 00444000 @NM00023 DS CL1 00445000 @NM00024 DS CL3 00446000 GETMODE DS BL1 00447000 GETSP DS AL1 00448000 ORG DCWKAREA+70 00449000 SWITCHES DS BL1 00450000 ORG SWITCHES 00451000 LOOP DS BL1 00452000 FREEBIT EQU SWITCHES+0 00453000 @NM00025 EQU SWITCHES+0 00454000 ORG DCWKAREA+72 00455000 LRECL DS FL4 00456000 INDEX DS FL2 00457000 DS CL2 00458000 ACTSIZE DS FL4 00459000 EXTRA DS FL4 00460000 ENTRYCD DS FL4 00461000 INPTR DS AL4 00462000 GETPTR DS AL4 00463000 DSPTR DS AL4 00464000 UTRECPTR DS AL4 00465000 FREEPARM DS CL8 00466000 ORG FREEPARM 00467000 FREEPTR DS AL4 00468000 FREELEN DS FL4 00469000 ORG DCWKAREA+116 00470000 MSGAREA DS CL16 00471000 ORG MSGAREA 00472000 MSGPTR DS AL4 00473000 MSGLEN DS FL2 00474000 MSGOFF DS FL2 00475000 MSGTEXT DS CL8 00476000 ORG DCWKAREA+132 00477000 ORG *+1-(*-@DATD)/(*-@DATD) INSURE DSECT DATA 00478000 @ENDDATD EQU * 00479000 IKJEBEDC CSECT 00480000 DS 0F 00481000 @SIZDATD DC AL1(0) 00482000 DC AL3(@ENDDATD-@DATD) 00483000 DS 0D 00484000 @CC00433 DC C'RENUM' 00485000 @CC00431 DC C'RUN' 00486000 @00 EQU 00 EQUATES FOR REGISTERS 0-15 00487000 @01 EQU 01 00488000 @02 EQU 02 00489000 @03 EQU 03 00490000 @04 EQU 04 00491000 @05 EQU 05 00492000 @06 EQU 06 00493000 @07 EQU 07 00494000 @08 EQU 08 00495000 @09 EQU 09 00496000 @10 EQU 10 00497000 @11 EQU 11 00498000 @12 EQU 12 00499000 @13 EQU 13 00500000 @14 EQU 14 00501000 @15 EQU 15 00502000 PARMREG0 EQU @00 00503000 PARMREG1 EQU @01 00504000 LEV1MSG EQU @02 00505000 LEV2MSG EQU @03 00506000 LEV1INS EQU @04 00507000 LEV2INS EQU @05 00508000 COMMREG EQU @09 00509000 BASEREG EQU @11 00510000 DATAREG EQU @12 00511000 RETCDREG EQU @15 00512000 RETREG EQU @14 00513000 SAVEREG EQU @13 00514000 IKJEBECA EQU 0 00515000 CAPTMS EQU IKJEBECA+20 00516000 CAPTUT EQU IKJEBECA+24 00517000 CAPTPRSD EQU IKJEBECA+36 00518000 CAPRSPDL EQU CAPTPRSD 00519000 CAPTIBFR EQU IKJEBECA+40 00520000 CAPTCDCB EQU IKJEBECA+52 00521000 CAUTILNO EQU IKJEBECA+60 00522000 CAPTICDS EQU IKJEBECA+80 00523000 CAPTICLN EQU IKJEBECA+84 00524000 CAATTN EQU IKJEBECA+120 00525000 CACFLAG EQU IKJEBECA+124 00526000 CACFLAG1 EQU CACFLAG 00527000 CACFLAG2 EQU CACFLAG+1 00528000 CARECFM EQU CACFLAG2 00529000 CACFLAG3 EQU CACFLAG+2 00530000 CAIMFLG EQU CACFLAG3 00531000 CACFLAG4 EQU CACFLAG+3 00532000 CACFLAG5 EQU CACFLAG+4 00533000 CACFLAG6 EQU CACFLAG+5 00534000 CAPD EQU IKJEBECA+152 00535000 CADSATTR EQU CAPD+41 00536000 CADSATR2 EQU CAPD+42 00537000 CAPTPDXT EQU IKJEBECA+228 00538000 CALRECL EQU IKJEBECA+232 00539000 CAEDFLAG EQU IKJEBECA+236 00540000 CAEDFLG2 EQU IKJEBECA+237 00541000 CASAFLAG EQU IKJEBECA+376 00542000 CASAFLG2 EQU IKJEBECA+377 00543000 CACURNUM EQU IKJEBECA+456 00544000 CASYNLST EQU IKJEBECA+496 00545000 CASYNWA EQU IKJEBECA+508 00546000 CASYNOPT EQU IKJEBECA+524 00547000 CASYNSW EQU CASYNOPT+3 00548000 CATMPLST EQU IKJEBECA+528 00549000 CAMAWKA EQU IKJEBECA+596 00550000 MACFLAGS EQU CAMAWKA+28 00551000 MACFLAG2 EQU CAMAWKA+29 00552000 CASRWKA EQU IKJEBECA+728 00553000 CAMODEMG EQU IKJEBECA+928 00554000 CANXTSVA EQU IKJEBECA+3896 00555000 IKJEBECX EQU 0 00556000 DYNAMREC EQU 0 00557000 UTRECORD EQU 0 00558000 UTRECKY EQU UTRECORD 00559000 UTRECLL EQU UTRECORD+4 00560000 INPARMS EQU 0 00561000 OUTPTR EQU INPARMS+4 00562000 OUTAREA EQU 0 00563000 OUTDSPTR EQU OUTAREA 00564000 OUTLENGH EQU OUTAREA+4 00565000 OUTLRECL EQU OUTAREA+8 00566000 OUTCURLN EQU OUTAREA+12 00567000 DYNAMDS EQU 0 00568000 AGO .@UNREFD START UNREFERENCED COMPONENTS 00569000 EDCOMPTR EQU INPARMS 00570000 CXDATEXT EQU IKJEBECX 00571000 CAPDEXT EQU IKJEBECA+3984 00572000 CADSNRC2 EQU IKJEBECA+3928 00573000 CADSNOF2 EQU IKJEBECA+3926 00574000 CADSNLN2 EQU IKJEBECA+3924 00575000 CADSNPT2 EQU IKJEBECA+3920 00576000 @NM00022 EQU IKJEBECA+3900 00577000 CASVAREA EQU IKJEBECA+3176 00578000 CATEMPBF EQU IKJEBECA+2648 00579000 CABFRPL EQU IKJEBECA+2120 00580000 CASCWKA EQU IKJEBECA+1448 00581000 CAFIBFR EQU IKJEBECA+1188 00582000 CAAEDCB EQU IKJEBECA+1096 00583000 CALDROP EQU IKJEBECA+1064 00584000 CAATNWKA EQU IKJEBECA+956 00585000 CAATNBUF EQU IKJEBECA+952 00586000 CAMODETX EQU CAMODEMG+12 00587000 CAMODEOF EQU CAMODEMG+10 00588000 CAMODELN EQU CAMODEMG+8 00589000 CAMODEPT EQU CAMODEMG+4 00590000 CAMODEIS EQU CAMODEMG 00591000 CAMSWKA EQU IKJEBECA+628 00592000 @NM00021 EQU CAMAWKA+30 00593000 @NM00020 EQU MACFLAG2 00594000 MATABLE1 EQU MACFLAG2 00595000 @NM00019 EQU MACFLAGS 00596000 MAENDPRC EQU MACFLAGS 00597000 MAABBREV EQU MACFLAGS 00598000 MAECTMOD EQU MACFLAGS 00599000 @NM00018 EQU CAMAWKA 00600000 CASTAEPL EQU IKJEBECA+576 00601000 CASTAXPL EQU IKJEBECA+556 00602000 CASRPLST EQU CATMPLST+12 00603000 CAPTECB EQU CATMPLST+8 00604000 CAPTECT EQU CATMPLST+4 00605000 CAPTUPT EQU CATMPLST 00606000 CASYNSCN EQU CASYNSW 00607000 CASYNML EQU CASYNSW 00608000 CASYNSF EQU CASYNSW 00609000 CASYNRFM EQU CASYNSW 00610000 CASYNIS EQU CASYNSW 00611000 @NM00017 EQU CASYNSW 00612000 CASYNLN EQU CASYNSW 00613000 @NM00016 EQU CASYNSW 00614000 CASYNRCL EQU CASYNOPT+2 00615000 CASYNCD2 EQU CASYNOPT+1 00616000 CASYNCD1 EQU CASYNOPT 00617000 CASYNTEM EQU CASYNWA+12 00618000 CASYNMS2 EQU CASYNWA+8 00619000 CASYNMS1 EQU CASYNWA+4 00620000 CASYNWAP EQU CASYNWA+1 00621000 CASYNECD EQU CASYNWA 00622000 CASYNPTO EQU CASYNLST+8 00623000 CASYNPWA EQU CASYNLST+4 00624000 CASYNBFR EQU CASYNLST 00625000 @NM00015 EQU IKJEBECA+484 00626000 CARECNO EQU IKJEBECA+480 00627000 CAINSAVE EQU IKJEBECA+476 00628000 @NM00014 EQU IKJEBECA+472 00629000 CAIMLINC EQU IKJEBECA+468 00630000 CAIMLLNO EQU IKJEBECA+464 00631000 CAINCRE EQU IKJEBECA+460 00632000 CANXTREC EQU IKJEBECA+452 00633000 CASTNUM EQU IKJEBECA+448 00634000 CASAPSWD EQU IKJEBECA+440 00635000 CASADDN EQU IKJEBECA+432 00636000 CASAMEMB EQU IKJEBECA+424 00637000 CASADSN EQU IKJEBECA+380 00638000 CASADSNL EQU IKJEBECA+378 00639000 CASADQTY EQU CASAFLG2 00640000 CASANCTG EQU CASAFLG2 00641000 CASAALOC EQU CASAFLAG 00642000 CASAUNCG EQU CASAFLAG 00643000 CASADSOR EQU CASAFLAG 00644000 CASAMEM EQU CASAFLAG 00645000 CASADISP EQU CASAFLAG 00646000 CASAINCP EQU CASAFLAG 00647000 CASAFNCP EQU CASAFLAG 00648000 CASAVEDS EQU CASAFLAG 00649000 CADSNREC EQU IKJEBECA+320 00650000 CADSNOFF EQU IKJEBECA+318 00651000 CADSNLEN EQU IKJEBECA+316 00652000 CADSNPTR EQU IKJEBECA+312 00653000 CAEDTSIZ EQU IKJEBECA+308 00654000 CAEDPSWD EQU IKJEBECA+300 00655000 CAEDDDN EQU IKJEBECA+292 00656000 CAEDMEMB EQU IKJEBECA+284 00657000 CAEDDSN EQU IKJEBECA+240 00658000 CAEDDSNL EQU IKJEBECA+238 00659000 CAEDPRTC EQU CAEDFLG2 00660000 CAEDALOC EQU CAEDFLAG 00661000 CAEDUNCG EQU CAEDFLAG 00662000 CAEDDSOR EQU CAEDFLAG 00663000 CAEDMEM EQU CAEDFLAG 00664000 CAEDDISP EQU CAEDFLAG 00665000 CAEDINCP EQU CAEDFLAG 00666000 CAEDFNCP EQU CAEDFLAG 00667000 CAEDITDS EQU CAEDFLAG 00668000 CABLK2 EQU IKJEBECA+234 00669000 @NM00013 EQU IKJEBECA+226 00670000 CAPDEND EQU CAPD+82 00671000 CADATEXT EQU CAPD+74 00672000 CAEXTNAM EQU CAPD+66 00673000 CAPRNAME EQU CAPD+58 00674000 CACHKOPT EQU CAPD+56 00675000 CAULRLMX EQU CAPD+54 00676000 CAULRLDF EQU CAPD+52 00677000 CAVLRLMX EQU CAPD+50 00678000 CAVLRLDF EQU CAPD+48 00679000 CAFLRLMX EQU CAPD+46 00680000 CAFLRLDF EQU CAPD+44 00681000 CARECFMD EQU CAPD+43 00682000 @NM00012 EQU CADSATR2 00683000 CAINLIST EQU CADSATR2 00684000 CARUNDS EQU CADSATR2 00685000 CAOBJGEN EQU CADSATR2 00686000 CADSNDEF EQU CADSATR2 00687000 CALINTAB EQU CADSATR2 00688000 @NM00011 EQU CADSATTR 00689000 CALRECLX EQU CADSATTR 00690000 CALNNUM EQU CADSATTR 00691000 CADSCONT EQU CADSATTR 00692000 CACAPSDF EQU CADSATTR 00693000 CACAPSRQ EQU CADSATTR 00694000 CASCAN EQU CADSATTR 00695000 CARUN EQU CADSATTR 00696000 CADSCODE EQU CAPD+40 00697000 CASYNAME EQU CAPD+32 00698000 CATABS EQU CAPD+20 00699000 CALENGTH EQU CAPD+19 00700000 CALINE EQU CAPD+18 00701000 CABLKS EQU CAPD+16 00702000 CADSQUAL EQU CAPD+8 00703000 CADSTYPE EQU CAPD 00704000 @NM00010 EQU CACFLAG+8 00705000 CAPLIRTM EQU CACFLAG+7 00706000 CAPLILFM EQU CACFLAG+6 00707000 @NM00009 EQU CACFLAG6 00708000 CACHAR60 EQU CACFLAG6 00709000 CACHAR48 EQU CACFLAG6 00710000 CAFREE EQU CACFLAG6 00711000 @NM00008 EQU CACFLAG5 00712000 CAEDLNDP EQU CACFLAG5 00713000 CADSUSED EQU CACFLAG4 00714000 CARECURS EQU CACFLAG4 00715000 CAINPROC EQU CACFLAG4 00716000 CASCRC20 EQU CACFLAG4 00717000 CAABEND EQU CACFLAG4 00718000 CATPUTVF EQU CACFLAG4 00719000 CAPTGTBF EQU CACFLAG4 00720000 CAFINDIS EQU CACFLAG4 00721000 @NM00007 EQU CAIMFLG 00722000 CAIMINPT EQU CAIMFLG 00723000 CAIMSFPT EQU CAIMFLG 00724000 CAIMCIN EQU CAIMFLG 00725000 CAIMIR EQU CAIMFLG 00726000 CAIMSC EQU CAIMFLG 00727000 CAIMINS EQU CAIMFLG 00728000 CAIMPT EQU CAIMFLG 00729000 @NM00006 EQU CACFLAG2 00730000 CAX37ABN EQU CACFLAG2 00731000 CASEQCOL EQU CACFLAG2 00732000 CAMODMSG EQU CACFLAG2 00733000 CASCANON EQU CACFLAG2 00734000 CADSMODS EQU CACFLAG2 00735000 CANONUM EQU CACFLAG1 00736000 CACAPS EQU CACFLAG1 00737000 CAENDSC EQU CACFLAG1 00738000 CAINITSC EQU CACFLAG1 00739000 CASCANSW EQU CACFLAG1 00740000 CAPROMPT EQU CACFLAG1 00741000 CAVRFYSW EQU CACFLAG1 00742000 CALNTOVF EQU CACFLAG1 00743000 CAATTNIS EQU CAATTN 00744000 @NM00005 EQU CAATTN 00745000 @NM00004 EQU IKJEBECA+118 00746000 CAMAXBLK EQU IKJEBECA+116 00747000 CAESDSPL EQU IKJEBECA+112 00748000 @NM00003 EQU IKJEBECA+88 00749000 CAPTNBFR EQU IKJEBECA+76 00750000 CAPTCHK EQU IKJEBECA+72 00751000 CACORELN EQU IKJEBECA+68 00752000 CAPTCORE EQU IKJEBECA+64 00753000 CAPTPDCB EQU IKJEBECA+56 00754000 @NM00002 EQU IKJEBECA+50 00755000 CASCMDLN EQU IKJEBECA+48 00756000 CAPTSCMD EQU IKJEBECA+44 00757000 CAOPERND EQU CAPTIBFR 00758000 CAFREEDL EQU CAPRSPDL 00759000 CAPTRTRY EQU IKJEBECA+32 00760000 CAPTMSGM EQU IKJEBECA+28 00761000 CAPTLE EQU IKJEBECA+16 00762000 CAPTAT EQU IKJEBECA+12 00763000 CAPTAE EQU IKJEBECA+8 00764000 @NM00001 EQU IKJEBECA+4 00765000 CAPTTMP EQU IKJEBECA 00766000 .@UNREFD ANOP END UNREFERENCED COMPONENTS 00767000 @RF00094 EQU @RC00089 00768000 @RF00109 EQU @RC00089 00769000 @PB00004 EQU @EL00001 00770000 @PB00003 EQU @PB00004 00771000 @PB00002 EQU @PB00003 00772000 @ENDDATA EQU * 00773000 END IKJEBEDC,(C'PLS2016',0701,77066) 00774000