TITLE 'EP=BLSCAAMS -- IPCS DAS ACCESS METHOD SERVICES INTERFAC*00001000 CE ' 00002000 * /* CHANGE ACTIVITY 00003000 * THIS MODULE IS WRITTEN FOR @G57LPSR 00004000 BLSCAAMS CSECT , 0002 00005000 @MAINENT DS 0H 0002 00006000 USING *,@15 0002 00007000 B @PROLOG 0002 00008000 DC AL1(16) 0002 00009000 DC C'BLSCAAMS 78.062' 0002 00010000 DROP @15 00011000 @PROLOG STM @14,@12,12(@13) 0002 00012000 BALR @12,0 0002 00013000 @PSTART DS 0H 0002 00014000 USING @PSTART,@12 0002 00015000 L @00,@SIZDATD 0002 00016000 BLSCGETS R,LV=(0) 00017000 LR @11,@01 0002 00018000 USING @DATD,@11 0002 00019000 ST @13,@SA00001+4 0002 00020000 LM @00,@01,20(@13) 0002 00021000 ST @11,8(,@13) 0002 00022000 LR @13,@11 0002 00023000 * DMCBPTR=GPR01P; /* BASE THE DMCB AND DMAL */ 00024000 LR DMCBPTR,GPR01P 0029 00025000 * RFY 0030 00026000 * GPR01P UNRSTD; 0030 00027000 * MODNAME=LMODNMC; 0031 00028000 MVC MODNAME(8),@CC00400 0031 00029000 * RETCODE=F0C; 0032 00030000 SLR @10,@10 0032 00031000 ST @10,RETCODE 0032 00032000 * SUBCODE=F0C; 0033 00033000 * 0033 00034000 ST @10,SUBCODE 0033 00035000 * /*****************************************************************/ 00036000 * /* */ 00037000 * /* INITIALIZE IDCAMS PARAMETER LIST ELEMENTS */ 00038000 * /* */ 00039000 * /*****************************************************************/ 00040000 * 0034 00041000 * OPTLLEN=F0C; /* NULL IDCAMS OPTION LIST */ 00042000 STH @10,OPTLLEN 0034 00043000 * DNAMLLEN=F0C; /* NULL IDCAMS DNAME LIST */ 00044000 STH @10,DNAMLLEN 0035 00045000 * PNLLEN=F0C; /* NULL IDCAMS PAGE NUMBER LIST */ 00046000 STH @10,PNLLEN 0036 00047000 * IOLNUM=F2C; /* SYSIN AND SYSPRINT ARE TO BE 00048000 * MANAGED */ 00049000 MVC IOLNUM(4),@CF00072 0037 00050000 * IOLINDDP=ADDR(INDD); /* ADDRESS OF SYSIN DDNAME ENTRY */ 00051000 LA @04,@CC00359 0038 00052000 ST @04,IOLINDDP 0038 00053000 * IOLMINP=ADDR(BLSCAMIN); /* SYSIN IN-CORE GET ROUTINE */ 00054000 L @04,@CV00284 0039 00055000 ST @04,IOLMINP 0039 00056000 * IOLINCBP=ADDR(INCB); /* ADDR OF BLSCAMIN CONTROL BLOCK*/ 00057000 LA @04,INCB 0040 00058000 ST @04,IOLINCBP 0040 00059000 * IOLOUDDP=ADDR(OUDD); /* ADDR OF SYSPRINT DDNAME ENTRY */ 00060000 LA @04,@CC00362 0041 00061000 ST @04,IOLOUDDP 0041 00062000 * IOLMPRP=ADDR(BLSCAMPR); /* SYSPRINT IN-CORE PUT ROUTINE */ 00063000 L @04,@CV00285 0042 00064000 ST @04,IOLMPRP 0042 00065000 * IOLOUCBP=ADDR(OUCB); /* ADDRESS OF BLSCAMPR CNTRL BLK */ 00066000 LA @04,OUCB 0043 00067000 ST @04,IOLOUCBP 0043 00068000 * OUHEAD=F0C; /* SYSPRINT CONTROL BLOCK */ 00069000 ST @10,OUHEAD 0044 00070000 * OUCUR=F0C; 0045 00071000 ST @10,OUCUR 0045 00072000 * OUTAIL=F0C; 0046 00073000 ST @10,OUTAIL 0046 00074000 * INHEAD=F0C; /* SYSIN CONTROL BLOCK */ 00075000 ST @10,INHEAD 0047 00076000 * INCUR=F0C; 0048 00077000 ST @10,INCUR 0048 00078000 * INTAIL=F0C; 0049 00079000 * 0049 00080000 ST @10,INTAIL 0049 00081000 * /*****************************************************************/ 00082000 * /* */ 00083000 * /* PREPARE IDCAMS SYSIN TEXT STREAM */ 00084000 * /* */ 00085000 * /*****************************************************************/ 00086000 * 0050 00087000 * MODELPTR=DMALMODP; /* ADDR OF THE ALLOCATION MODEL */ 00088000 L MODELPTR,DMALMODP(,DMCBPTR) 0050 00089000 * IF MMAMSLP=F0C THEN /* TEST FOR INVALID IDCAMS SYSIN 00090000 * STREAM POINTER IN MODEL */ 00091000 C @10,MMAMSLP(,MODELPTR) 0051 00092000 BNE @RF00051 0051 00093000 * DO; /* INVALID IDCAMS SYSIN STREAM 0052 00094000 * POINTER */ 00095000 * DO; /* BLSDMSG 0053 00096000 * (ZZ2,F3108C,DMCBMSG,BLSDMSGS) 00097000 * INSERT(DMCBMODL) */ 00098000 * IOPTLIST(1)=0; /* LAST INSERT */ 00099000 ST @10,IOPTLIST 0054 00100000 * IOPTLIST(2)=ADDR(DMCBMODL);/* INSERT NAME POINTER */ 00101000 LA @04,DMCBMODL(,DMCBPTR) 0055 00102000 ST @04,IOPTLIST+4 0055 00103000 * IOPTLIST(3)=0; /* ZERO RESERVED FIELD */ 00104000 ST @10,IOPTLIST+8 0056 00105000 * RFY 0057 00106000 * I015F BASED(ADDR(IOPTLIST(3)));/* ACCESS BYTES 1-2 */ 00107000 * I015F=LENGTH(DMCBMODL); /* INSERT LENGTH */ 00108000 LA @10,IOPTLIST+8 0058 00109000 MVC I015F(2,@10),@CH00044 0058 00110000 * CALL BLSDMSG0(ZZ2,F3108C,DMCBMSG,BLSDMSGS,'00000000'B,ADDR( 00111000 * IOPTLIST)); /* BUILD MESSAGE */ 00112000 L @10,DMCBTVP(,DMCBPTR) 0059 00113000 ST @10,@AL00001 0059 00114000 LA @10,@CF00382 0059 00115000 ST @10,@AL00001+4 0059 00116000 LA @10,DMCBMSG(,DMCBPTR) 0059 00117000 ST @10,@AL00001+8 0059 00118000 L @10,DMCBMSGS(,DMCBPTR) 0059 00119000 ST @10,@AL00001+12 0059 00120000 LA @10,@CB00411 0059 00121000 ST @10,@AL00001+16 0059 00122000 LA @10,IOPTLIST 0059 00123000 ST @10,@AFTEMPS+4 0059 00124000 LA @10,@AFTEMPS+4 0059 00125000 ST @10,@AL00001+20 0059 00126000 L @15,DMCBMSG0(,DMCBPTR) 0059 00127000 LA @01,@AL00001 0059 00128000 BALR @14,@15 0059 00129000 * END; /* BLSDMSG 0060 00130000 * (ZZ2,F3108C,DMCBMSG,BLSDMSGS) 00131000 * INSERT(DMCBMODL) BUILD INVALID 00132000 * IDCAMS SYSIN STREAM POINTER 0060 00133000 * MESSAGE */ 00134000 * RETCODE=ERROR; /* NOTIFY CALLER */ 00135000 MVC RETCODE(4),@CF00044 0061 00136000 * END; /* INVALID IDCAMS SYSIN STREAM 0062 00137000 * POINTER */ 00138000 * ELSE 0063 00139000 * DO; /* VALID IDCAMS SYSIN STREAM 0063 00140000 * POINTER */ 00141000 B @RC00051 0063 00142000 @RF00051 DS 0H 0064 00143000 * CALL BLDSTR(MMAMSLP); /* BUILD IDCAMS SYSIN STREAM */ 00144000 * 0064 00145000 LA @10,MMAMSLP(,MODELPTR) 0064 00146000 ST @10,@AL00001 0064 00147000 LA @01,@AL00001 0064 00148000 BAL @14,BLDSTR 0064 00149000 * /*************************************************************/ 00150000 * /* */ 00151000 * /* INVOKE ACCESS METHOD SERVICES TO GET SPACE FOR DATA SET */ 00152000 * /* */ 00153000 * /*************************************************************/ 00154000 * 0065 00155000 * IF RETCODE=F0C THEN /* TEST THAT ALL IS WELL */ 00156000 L @10,RETCODE 0065 00157000 LTR @10,@10 0065 00158000 BNZ @RF00065 0065 00159000 * DO; /* OK TO INVOKE IDCAMS */ 00160000 * CALL INVAMS; /* INVOKE IDCAMS TO GET SPACE FOR 00161000 * VSAM DATA SET */ 00162000 BAL @14,INVAMS 0067 00163000 * END; /* OK TO INVOKE IDCAMS */ 00164000 * END; /* VALID IDCAMS SYSIN STREAM 0069 00165000 * POINTER */ 00166000 * 0069 00167000 @RF00065 DS 0H 0070 00168000 * /*****************************************************************/ 00169000 * /* */ 00170000 * /* IDCAMS DATA SET ALLOCATION COMPLETE, RETURN TO CALLER */ 00171000 * /* */ 00172000 * /*****************************************************************/ 00173000 * 0070 00174000 * RETURN CODE(RETCODE); 0070 00175000 @RC00051 L @10,RETCODE 0070 00176000 L @13,4(,@13) 0070 00177000 L @00,@SIZDATD 0070 00178000 LR @01,@11 0070 00179000 BLSCFRES R,LV=(0),A=(1) 00180000 LR @15,@10 0070 00181000 L @14,12(,@13) 0070 00182000 LM @00,@12,20(@13) 0070 00183000 BR @14 0070 00184000 EJECT 00185000 * 0071 00186000 * /*****************************************************************/ 00187000 * /* */ 00188000 * /* PROCEDURE TO INVOKE IDCAMS TO GET SPACE FOR DATA SET */ 00189000 * /* */ 00190000 * /*****************************************************************/ 00191000 * 0071 00192000 *INVAMS: 0071 00193000 * PROCEDURE; /* INVOKE IDCAMS TO GET SPACE FOR 00194000 * DATA SET */ 00195000 INVAMS STM @14,@12,@SA00002 0071 00196000 * GEN FLOWS(LINKERR); 0072 00197000 * /* TELL COMPILER ABOUT 00198000 * ERRET(LINKERR) IN LINK MACRO 00199000 * DO; /* LINK EP(LINKNAME) PARAM(AMSOPT 00200000 * L,AMSDNAML,AMSPNL,AMSIOL) VL 00201000 * ERRET(LINKERR) */ 00202000 * I00601='00'X; /* EP/DE FLAG */ 00203000 MVI I00601,X'00' 0074 00204000 * I00602=ADDR(LINKNAME); /* ADDR OF EP/DE */ 00205000 LA @10,@CC00402 0075 00206000 STCM @10,7,I00602 0075 00207000 * I00604=0; /* DCB PTR */ 00208000 SLR @10,@10 0076 00209000 STCM @10,7,I00604 0076 00210000 * I00603='80'X; /* ERRET FLAG */ 00211000 MVI I00603,X'80' 0077 00212000 * I00605=ADDR(LINKERR); /* ERRET PTR */ 00213000 LA @10,LINKERR 0078 00214000 ST @10,I00605 0078 00215000 * IOPTLIST(1)=ADDR(AMSOPTL); /* ADDR OF PROB PROG PARM */ 00216000 LA @10,AMSOPTL 0079 00217000 ST @10,IOPTLIST 0079 00218000 * IOPTLIST(2)=ADDR(AMSDNAML); /* ADDR OF PROB PROG PARM */ 00219000 LA @10,AMSDNAML 0080 00220000 ST @10,IOPTLIST+4 0080 00221000 * IOPTLIST(3)=ADDR(AMSPNL); /* ADDR OF PROB PROG PARM */ 00222000 LA @10,AMSPNL 0081 00223000 ST @10,IOPTLIST+8 0081 00224000 * IOPTLIST(4)=ADDR(AMSIOL); /* ADDR OF PROB PROG PARM */ 00225000 LA @10,AMSIOL 0082 00226000 ST @10,IOPTLIST+12 0082 00227000 * IOPTLIST(4)=IOPTLIST(4)|'80000000'X;/* SET VL BIT */ 00228000 O @10,@CF00370 0083 00229000 ST @10,IOPTLIST+12 0083 00230000 * RESPECIFY 0084 00231000 * (GPR01P) RESTRICTED; 0084 00232000 * GPR01P=ADDR(IOPTLIST); /* ADDR OF OPTLIST */ 00233000 LA GPR01P,IOPTLIST 0085 00234000 * RESPECIFY 0086 00235000 * (GPR15P) RESTRICTED; 0086 00236000 * GPR15P=ADDR(I006); /* ADDR OF LINK LIST */ 00237000 LA GPR15P,I006 0087 00238000 * SVC(6); /* ISSUE LINK SVC */ 00239000 SVC 6 0088 00240000 * RESPECIFY 0089 00241000 * (GPR01P) UNRESTRICTED; 0089 00242000 * RESPECIFY 0090 00243000 * (GPR15P) UNRESTRICTED; 0090 00244000 * END; /* LINK EP(LINKNAME) PARAM(AMSOPT 00245000 * L,AMSDNAML,AMSPNL,AMSIOL) VL 00246000 * ERRET(LINKERR) GET SPACE FOR 00247000 * NEW DATA SET */ 00248000 * RFY 0092 00249000 * GPR15F RSTD; 0092 00250000 * SUBCODE=GPR15F; /* SAVE THE RETURN CODE */ 00251000 ST GPR15F,SUBCODE 0093 00252000 * RFY 0094 00253000 * GPR15F UNRSTD; 0094 00254000 * IF SUBCODE^=F0C THEN /* TEST FOR IDCAMS ERROR */ 00255000 L @10,SUBCODE 0095 00256000 LTR @10,@10 0095 00257000 BZ @RF00095 0095 00258000 * DO; /* IDCAMS ERROR */ 00259000 * IF SUBCODEF0C&RETCODE=F0C; /* LOOP THRU IDCAMS TEXT RECORDS */ 00652000 B @DE00177 0177 00653000 @DL00177 DS 0H 0178 00654000 * RECLEN=MAX(LENGTH(INRECF),MVLEN);/* LENGTH OF INREC */ 00655000 LA RECLEN,68 0178 00656000 CR RECLEN,MVLEN 0178 00657000 BNL *+6 00658000 LR RECLEN,MVLEN 0178 00659000 * DO; /* GETMAIN (RC) LV(RECLEN+F4C) 0179 00660000 * SP(DMCBSPID) RTCD(SUBCODE) */ 00661000 * RESPECIFY 0180 00662000 * (GPR01F, 0180 00663000 * GPR15F, 0180 00664000 * GPR00F) RESTRICTED; 0180 00665000 * GPR01F=0; /* REG 1 MUST BE ZERO */ 00666000 SLR GPR01F,GPR01F 0181 00667000 * GPR15F=0; /* RC-TYPE GETMAIN */ 00668000 SLR GPR15F,GPR15F 0182 00669000 * GPR00F=RECLEN+F4C; /* LENGTH REQUESTED */ 00670000 LA GPR00F,4 0183 00671000 ALR GPR00F,RECLEN 0183 00672000 * GPR15F=GPR15F|((DMCBSPID)*256);/* SP IN BYTE 2 */ 00673000 SLR @14,@14 0184 00674000 IC @14,DMCBSPID(,DMCBPTR) 0184 00675000 SLA @14,8 0184 00676000 OR GPR15F,@14 0184 00677000 * SVC(120); /* RC/RU-FORM OF GETMAIN */ 00678000 SVC 120 0185 00679000 * SUBCODE=GPR15F; /* SET RETURN CODE */ 00680000 ST GPR15F,SUBCODE 0186 00681000 * RESPECIFY 0187 00682000 * (GPR01F, 0187 00683000 * GPR15F, 0187 00684000 * GPR00F) UNRESTRICTED; 0187 00685000 * END; /* GETMAIN (RC) LV(RECLEN+F4C) 0188 00686000 * SP(DMCBSPID) RTCD(SUBCODE) 0188 00687000 * SPACE FOR TEXT LINE */ 00688000 * RFY 0189 00689000 * GPR01P RSTD; 0189 00690000 * INPTR=GPR01P; /* ADDRESS OF TEXT LINE */ 00691000 ST GPR01P,INPTR 0190 00692000 * RFY 0191 00693000 * GPR01P UNRSTD; 0191 00694000 * IF SUBCODE^=F0C THEN /* TEST FOR GETMAIN ERROR */ 00695000 L @10,SUBCODE 0192 00696000 LTR @10,@10 0192 00697000 BZ @RF00192 0192 00698000 * DO; /* GETMAIN FAILED */ 00699000 * RETCODE=ERROR; /* NOTIFY CALLER */ 00700000 MVC RETCODE(4),@CF00044 0194 00701000 * CALL BLSCGMF(DMCB,DMCBMSG,MODNAME);/* BUILD GETMAIN FAILURE 00702000 * MESSAGE */ 00703000 ST DMCBPTR,@AL00001 0195 00704000 LA @10,DMCBMSG(,DMCBPTR) 0195 00705000 ST @10,@AL00001+4 0195 00706000 LA @10,MODNAME 0195 00707000 ST @10,@AL00001+8 0195 00708000 L @15,@CV00286 0195 00709000 LA @01,@AL00001 0195 00710000 BALR @14,@15 0195 00711000 * END; /* GETMAIN FAILED */ 00712000 * ELSE 0197 00713000 * DO; /* GETMAIN OK */ 00714000 B @RC00192 0197 00715000 @RF00192 DS 0H 0198 00716000 * IF INHEAD=F0C THEN /* TEST FOR FIRST ENTRY */ 00717000 L @10,INHEAD 0198 00718000 LTR @10,@10 0198 00719000 BNZ @RF00198 0198 00720000 * INHEAD=INPTR; /* INIT TEXT LIST HEADER */ 00721000 L @10,INPTR 0199 00722000 ST @10,INHEAD 0199 00723000 * ELSE 0200 00724000 * DO; /* NOT FIRST SYSIN TEXT LINE */ 00725000 B @RC00198 0200 00726000 @RF00198 DS 0H 0201 00727000 * INTAIL->INNEXT=INPTR; /* HOOK THIS LINE TO LIST */ 00728000 L @10,INPTR 0201 00729000 L @09,INTAIL 0201 00730000 ST @10,INNEXT(,@09) 0201 00731000 * END; /* NOT FIRST SYSIN TEXT LINE */ 00732000 * INTAIL=INPTR; /* END OF LIST */ 00733000 @RC00198 L @10,INPTR 0203 00734000 ST @10,INTAIL 0203 00735000 * INNEXT=F0C; /* MARK END OF LIST */ 00736000 SLR @09,@09 0204 00737000 ST @09,INNEXT(,@10) 0204 00738000 * INRECF=LBLNKC; /* BLANK THE SYSIN TEXT RECORD 0205 00739000 * AREA */ 00740000 MVI INRECF+1(@10),C' ' 0205 00741000 MVC INRECF+2(66,@10),INRECF+1(@10) 0205 00742000 MVI INRECF(@10),C' ' 0205 00743000 * INREC(F1C:MVLEN)=MMAMSREC(F1C:MVLEN);/* MOVE RECORD TO 0206 00744000 * SYSIN LIST */ 00745000 LR @09,MVLEN 0206 00746000 BCTR @09,0 0206 00747000 EX @09,@SM00525 0206 00748000 * INLEN=RECLEN; /* FORCE CORRECT LENGTH FOR 0207 00749000 * FREEMAIN */ 00750000 STH RECLEN,INLEN(,@10) 0207 00751000 * CALL SCAN; /* SEARCH FOR IDCAMS PARAMETERS 00752000 * TO BE OVERRIDDEN */ 00753000 BAL @14,SCAN 0208 00754000 * MAMSLP=MAMSLP+MVLEN; /* BUMP MODEL RECORD BASE */ 00755000 ALR MAMSLP,MVLEN 0209 00756000 * MVLEN=MMAMSLEN; /* NEW RECORD LENGTH */ 00757000 SLR MVLEN,MVLEN 0210 00758000 ICM MVLEN,3,MMAMSLEN(MAMSLP) 0210 00759000 * END; /* GETMAIN OK */ 00760000 * END; /* LOOP THRU IDCAMS TEXT RECORDS */ 00761000 @RC00192 DS 0H 0212 00762000 @DE00177 SLR @10,@10 0212 00763000 CR MVLEN,@10 0212 00764000 BNH @DC00177 0212 00765000 C @10,RETCODE 0212 00766000 BE @DL00177 0212 00767000 @DC00177 DS 0H 0213 00768000 * END BLDSTR; /* BUILD IDCAMS SYSIN STREAM */ 00769000 @EL00003 DS 0H 0213 00770000 @EF00003 DS 0H 0213 00771000 @ER00003 LM @14,@12,@SA00003 0213 00772000 BR @14 0213 00773000 EJECT 00774000 * 0214 00775000 * /*****************************************************************/ 00776000 * /* */ 00777000 * /* PROCEDURE TO SCAN IDCAMS PARAMETER FOR OVERRIDE */ 00778000 * /* */ 00779000 * /*****************************************************************/ 00780000 * 0214 00781000 *SCAN: 0214 00782000 * PROCEDURE; 0214 00783000 SCAN STM @14,@12,@SA00004 0214 00784000 * DCL 0215 00785000 * LCYLC CHAR(3) CONSTANT('CYL');/* LITERAL 'CYL' */ 00786000 * DCL 0216 00787000 * LTRKC CHAR(3) CONSTANT('TRK');/* LITERAL 'TRK' */ 00788000 * DCL 0217 00789000 * LLENDC CHAR(3) CONSTANT(') -');/* IDCAMS LINE END */ 00790000 * DCL 0218 00791000 * LCYLSC CHAR(11) CONSTANT(' CYLINDERS(');/* IDCAMS VERB */ 00792000 * DCL 0219 00793000 * LNAMEC CHAR(6) CONSTANT(' NAME(');/* IDCAMS VERB */ 00794000 * DCL 0220 00795000 * LTRKSC CHAR(8) CONSTANT(' TRACKS(');/* IDCAMS VERB */ 00796000 * DCL 0221 00797000 * LVOLSC CHAR(9) CONSTANT(' VOLUMES(');/* IDCAMS VERB */ 00798000 * DCL 0222 00799000 * 1 DSNTXT DEF(INTEXT), /* NAME OVERRIDE MAP */ 00800000 * 2 DSNTYP CHAR(LENGTH(LNAMEC)),/* NAME VERB FIELD */ 00801000 * 2 DSNVAL CHAR(44), /* DATA SET NAME */ 00802000 * 2 DSNEND CHAR(LENGTH(LLENDC));/* LINE END TEXT */ 00803000 * DCL 0223 00804000 * 1 VOLTXT DEF(INTEXT), /* VOLUMES OVERRIDE MAP */ 00805000 * 2 VOLTYP CHAR(LENGTH(LVOLSC)),/* VOLUMES VERB FIELD */ 00806000 * 2 VOLVAL CHAR(6), /* VOLUME SERIAL */ 00807000 * 2 VOLEND CHAR(LENGTH(LLENDC));/* LINE END TEXT */ 00808000 * DCL 0224 00809000 * 1 CYLTXT DEF(INTEXT), /* CYLINDERS OVERRIDE MAP */ 00810000 * 2 CYLTYP CHAR(LENGTH(LCYLSC)),/* CYLINDERS VERB FIELD */ 00811000 * 2 CYLPRI CHAR(4), /* PRIMARY ALLOCATION VALUE */ 00812000 * 2 * CHAR(1), /* 1 BLANK */ 00813000 * 2 CYLSEC CHAR(4), /* SECONDARY ALLOCATION VALUE */ 00814000 * 2 CYLEND CHAR(LENGTH(LLENDC));/* LINE END TEXT */ 00815000 * DCL 0225 00816000 * 1 TRKTXT DEF(INTEXT), /* TRACKS OVERRIDE MAP */ 00817000 * 2 TRKTYP CHAR(LENGTH(LTRKSC)),/* TRACKS VERB FIELD */ 00818000 * 2 TRKPRI CHAR(4), /* PRIMARY ALLOCATION VALUE */ 00819000 * 2 * CHAR(1), /* 1 BLANK */ 00820000 * 2 TRKSEC CHAR(4), /* SECONDARY ALLOCATION VALUE */ 00821000 * 2 TRKEND CHAR(LENGTH(LLENDC));/* LINE END TEXT */ 00822000 * DCL 0226 00823000 * DMCBDSN1 CHAR(1) DEF(DMCBDSN);/* BYTE 1, LENGTH ONE */ 00824000 * DCL 0227 00825000 * DMCBVOL1 CHAR(1) DEF(DMCBVOL);/* BYTE 1, LENGTH ONE */ 00826000 * DCL 0228 00827000 * DMCBSPT1 CHAR(1) DEF(DMCBSPTY);/* BYTE 1, LENGTH ONE */ 00828000 SPACE 1 00829000 * IF DSNTYP=LNAMEC& /* TEST FOR DATA SET NAME VERB */ 00830000 * DMCBDSN1^=LHEX0C THEN /* NON NULL OVERRIDE DATA SET 0229 00831000 * NAME */ 00832000 L @10,INPTR 0229 00833000 CLC DSNTYP(6,@10),@CC00471 0229 00834000 BNE @RF00229 0229 00835000 CLI DMCBDSN1(DMCBPTR),X'00' 0229 00836000 BE @RF00229 0229 00837000 * DO; /* BUILD DATA SET NAME TEXT 0230 00838000 * RECORD */ 00839000 * INTXTF=LNAMEC; /* FILL IN VERB AND BLANK REST OF 00840000 * RECORD */ 00841000 MVI INTXTF+6(@10),C' ' 0231 00842000 MVC INTXTF+7(57,@10),INTXTF+6(@10) 0231 00843000 MVC INTXTF(6,@10),@CC00471 0231 00844000 * DSNVAL=DMCBDSN; /* MOVE IN DATA SET NAME */ 00845000 MVC DSNVAL(44,@10),DMCBDSN(DMCBPTR) 0232 00846000 * DSNEND=LLENDC; /* MOVE IN LINE END */ 00847000 MVC DSNEND(3,@10),@CC00466 0233 00848000 * END; /* BUILD DATA SET NAME TEXT 0234 00849000 * RECORD */ 00850000 * IF VOLTYP=LVOLSC& /* TEST FOR VOLUME SERIAL VERB */ 00851000 * DMCBVOL1^=LHEX0C THEN /* NON NULL OVERRIDE VOLUME 0235 00852000 * SERIAL */ 00853000 @RF00229 L @10,INPTR 0235 00854000 CLC VOLTYP(9,@10),@CC00475 0235 00855000 BNE @RF00235 0235 00856000 CLI DMCBVOL1(DMCBPTR),X'00' 0235 00857000 BE @RF00235 0235 00858000 * DO; /* BUILD VOLUME SERIAL TEXT 0236 00859000 * RECORD */ 00860000 * INTXTF=LVOLSC; /* FILL IN VERB AND BLANK REST OF 00861000 * RECORD */ 00862000 MVI INTXTF+9(@10),C' ' 0237 00863000 MVC INTXTF+10(54,@10),INTXTF+9(@10) 0237 00864000 MVC INTXTF(9,@10),@CC00475 0237 00865000 * VOLVAL=DMCBVOL; /* MOVE IN VOLUME SERIAL */ 00866000 MVC VOLVAL(6,@10),DMCBVOL(DMCBPTR) 0238 00867000 * VOLEND=LLENDC; /* MOVE IN LINE END */ 00868000 MVC VOLEND(3,@10),@CC00466 0239 00869000 * END; /* BUILD VOLUME SERIAL TEXT 0240 00870000 * RECORD */ 00871000 * IF CYLTYP=LCYLSC| /* TEST FOR SPACE IN CYLINDERS 0241 00872000 * VERB */ 00873000 * TRKTYP=LTRKSC THEN /* TEST FOR SPACE IN TRACKS VERB */ 00874000 @RF00235 L @10,INPTR 0241 00875000 CLC CYLTYP(11,@10),@CC00468 0241 00876000 BE @RT00241 0241 00877000 CLC TRKTYP(8,@10),@CC00473 0241 00878000 BNE @RF00241 0241 00879000 @RT00241 DS 0H 0242 00880000 * DO; /* SPACE SPECIFICATION VERB */ 00881000 * IF DMCBSPT1=LBLNKC THEN /* TEST NULL OVERRIDE SPACE 0243 00882000 * SPECIFICATION */ 00883000 CLI DMCBSPT1(DMCBPTR),C' ' 0243 00884000 BE @RT00243 0243 00885000 * ; /* NULL OVERRIDE SPACE 0244 00886000 * SPECIFICATION */ 00887000 * ELSE 0245 00888000 * DO; /* NON NULL OVERRIDE SPACE IN 0245 00889000 * CYLINDERS */ 00890000 * IF DMCBSPTY=LCYLC& /* OVERRIDE SPACE IN CYLINDERS */ 00891000 * DMCBSPPR>F0C THEN /* NON NULL PRIMARY SPACE VALUE */ 00892000 CLC DMCBSPTY(3,DMCBPTR),@CC00462 0246 00893000 BNE @RF00246 0246 00894000 L @10,DMCBSPPR(,DMCBPTR) 0246 00895000 LTR @10,@10 0246 00896000 BNP @RF00246 0246 00897000 * DO; /* BUILD SPACE IN CYLINDERS TEXT 00898000 * RECORD */ 00899000 * INTXTF=LCYLSC; /* FILL IN VERB AND BLANK REST OF 00900000 * RECORD */ 00901000 L @10,INPTR 0248 00902000 MVI INTXTF+11(@10),C' ' 0248 00903000 MVC INTXTF+12(52,@10),INTXTF+11(@10) 0248 00904000 MVC INTXTF(11,@10),@CC00468 0248 00905000 * CALL BINCHAR(DMCBSPPR,CYLPRI);/* MOVE IN PRIMARY 0249 00906000 * SPACE VALUE */ 00907000 LA @04,DMCBSPPR(,DMCBPTR) 0249 00908000 ST @04,@AL00001 0249 00909000 LA @10,CYLPRI(,@10) 0249 00910000 ST @10,@AL00001+4 0249 00911000 LA @01,@AL00001 0249 00912000 BAL @14,BINCHAR 0249 00913000 * IF DMCBSPSE>F0C THEN/* NON NULL SECONDARY SPACE VALUE*/ 00914000 L @10,DMCBSPSE(,DMCBPTR) 0250 00915000 LTR @10,@10 0250 00916000 BNP @RF00250 0250 00917000 * CALL BINCHAR(DMCBSPSE,CYLSEC);/* MOVE IN SECONDARY 00918000 * SPACE VALUE */ 00919000 LA @10,DMCBSPSE(,DMCBPTR) 0251 00920000 ST @10,@AL00001 0251 00921000 L @10,INPTR 0251 00922000 LA @10,CYLSEC(,@10) 0251 00923000 ST @10,@AL00001+4 0251 00924000 LA @01,@AL00001 0251 00925000 BAL @14,BINCHAR 0251 00926000 * CYLEND=LLENDC; /* MOVE IN LINE END */ 00927000 @RF00250 L @10,INPTR 0252 00928000 MVC CYLEND(3,@10),@CC00466 0252 00929000 * END; /* BUILD SPACE IN CYLINDERS TEXT 00930000 * RECORD */ 00931000 * ELSE 0254 00932000 * IF DMCBSPTY=LTRKC& /* OVERRIDE SPACE IN TRACKS */ 00933000 * DMCBSPPR>F0C THEN /* NON NULL PRIMARY SPACE VALUE */ 00934000 B @RC00246 0254 00935000 @RF00246 CLC DMCBSPTY(3,DMCBPTR),@CC00464 0254 00936000 BNE @RF00254 0254 00937000 L @10,DMCBSPPR(,DMCBPTR) 0254 00938000 LTR @10,@10 0254 00939000 BNP @RF00254 0254 00940000 * DO; /* BUILD SPACE IN TRACKS TEXT 0255 00941000 * RECORD */ 00942000 * INTXTF=LTRKSC; /* FILL IN VERB AND BLANK REST OF 00943000 * RECORD */ 00944000 L @10,INPTR 0256 00945000 MVI INTXTF+8(@10),C' ' 0256 00946000 MVC INTXTF+9(55,@10),INTXTF+8(@10) 0256 00947000 MVC INTXTF(8,@10),@CC00473 0256 00948000 * CALL BINCHAR(DMCBSPPR,TRKPRI);/* MOVE IN PRIMARY 0257 00949000 * SPACE VALUE */ 00950000 LA @04,DMCBSPPR(,DMCBPTR) 0257 00951000 ST @04,@AL00001 0257 00952000 LA @10,TRKPRI(,@10) 0257 00953000 ST @10,@AL00001+4 0257 00954000 LA @01,@AL00001 0257 00955000 BAL @14,BINCHAR 0257 00956000 * IF DMCBSPSE>F0C THEN/* NON NULL SECONDARY SPACE 0258 00957000 * VALUE */ 00958000 L @10,DMCBSPSE(,DMCBPTR) 0258 00959000 LTR @10,@10 0258 00960000 BNP @RF00258 0258 00961000 * CALL BINCHAR(DMCBSPSE,TRKSEC);/* MOVE IN 0259 00962000 * SECONDARY SPACE VALUE */ 00963000 LA @10,DMCBSPSE(,DMCBPTR) 0259 00964000 ST @10,@AL00001 0259 00965000 L @10,INPTR 0259 00966000 LA @10,TRKSEC(,@10) 0259 00967000 ST @10,@AL00001+4 0259 00968000 LA @01,@AL00001 0259 00969000 BAL @14,BINCHAR 0259 00970000 * TRKEND=LLENDC; /* MOVE IN LINE END */ 00971000 @RF00258 L @10,INPTR 0260 00972000 MVC TRKEND(3,@10),@CC00466 0260 00973000 * END; /* BUILD SPACE IN TRACKS TEXT 0261 00974000 * RECORD */ 00975000 * END; /* NON NULL OVERRIDE SPACE IN 0262 00976000 * TRACKS */ 00977000 * END; /* SPACE SPECIFICATION VERB */ 00978000 * END SCAN; 0264 00979000 @EL00004 DS 0H 0264 00980000 @EF00004 DS 0H 0264 00981000 @ER00004 LM @14,@12,@SA00004 0264 00982000 BR @14 0264 00983000 SPACE 2 00984000 * 0265 00985000 * /*****************************************************************/ 00986000 * /* */ 00987000 * /* PROCEDURE TO CONVERT A BINARY INTEGER TO 4 BYTE CHARACTER */ 00988000 * /* */ 00989000 * /*****************************************************************/ 00990000 * 0265 00991000 *BINCHAR: 0265 00992000 * PROCEDURE(BCSRC,BCRES); 0265 00993000 BINCHAR STM @14,@12,12(@13) 0265 00994000 MVC @PC00005(8),0(@01) 0265 00995000 * DCL 0266 00996000 * BCSRC BIN(31), /* SOURCE IN BINARY */ 00997000 * BCRES CHAR(4), /* RESULT FIELD 4 BYTE CHARACTER */ 00998000 * BCI BIN(31), /* DO LOOP INDEX */ 00999000 * 1 BCWRK CHAR(8) BDY(DWORD), /* PACKED RESULT OF CONVERT TO 0266 01000000 * DECIMAL */ 01001000 * 2 BCWRES CHAR(7), /* PLACE HOLDER */ 01002000 * 2 BCWRK88 CHAR(1); /* LOW ORDER DIGIT AN SIGN */ 01003000 * CVD(BCSRC,BCWRK); /* CONVERT SOURCE TO PACKED */ 01004000 L @10,@PC00005 0267 01005000 L @10,BCSRC(,@10) 0267 01006000 CVD @10,BCWRK 0267 01007000 * BCWRK88=BCWRK88|LHEX0FC; /* MAKE RESULT UNSIGNED */ 01008000 OI BCWRK88,X'0F' 0268 01009000 * UNPK(BCRES,BCWRK); /* UNPACK TO CHARACTER */ 01010000 L @10,@PC00005+4 0269 01011000 UNPK BCRES(4,@10),BCWRK(8) 0269 01012000 * DO BCI=F1C TO LENGTH(BCRES)-F1C WHILE BCRES(BCI)=F0C;/* BLANK 0270 01013000 * LEADING ZEROS */ 01014000 LA BCI,1 0270 01015000 @DL00270 L @10,@PC00005+4 0270 01016000 LR @03,BCI 0270 01017000 BCTR @03,0 0270 01018000 SLR @15,@15 0270 01019000 IC @15,BCRES(@03,@10) 0270 01020000 C @15,@CF00190 0270 01021000 BNE @DC00270 0270 01022000 * BCRES(BCI)=LBLNKC; 0271 01023000 ALR @10,BCI 0271 01024000 BCTR @10,0 0271 01025000 MVI BCRES(@10),C' ' 0271 01026000 * END; /* BLANK LEADING ZEROS */ 01027000 AL BCI,@CF00046 0272 01028000 C BCI,@CF00101 0272 01029000 BNH @DL00270 0272 01030000 @DC00270 DS 0H 0273 01031000 * END BINCHAR; 0273 01032000 @EL00005 DS 0H 0273 01033000 @EF00005 DS 0H 0273 01034000 @ER00005 LM @14,@12,12(@13) 0273 01035000 BR @14 0273 01036000 EJECT 01037000 * 0274 01038000 * /*****************************************************************/ 01039000 * /* */ 01040000 * /* END OF EXECUTABLE PROCEDURE STATEMENTS */ 01041000 * /* */ 01042000 * /*****************************************************************/ 01043000 * 0274 01044000 * DECLARE /* GENERAL PURPOSE REGISTERS */ 01045000 * GPR00F FIXED(31) REG(0), 0274 01046000 * GPR01F FIXED(31) REG(1), 0274 01047000 * GPR15F FIXED(31) REG(15), 0274 01048000 * GPR01P PTR(31) REG(1), 0274 01049000 * GPR15P PTR(31) REG(15); 0274 01050000 * DCL 0275 01051000 * 1 I006 DEF(ILIST), /* DEFINE LIST */ 01052000 * 2 I00601 CHAR(1), /* EP/DE FLAG */ 01053000 * 2 I00602 PTR(24), /* EP/DE PTR */ 01054000 * 2 I00603 CHAR(1), /* ERRET FLAG */ 01055000 * 2 I00604 PTR(24), /* DCB PTR */ 01056000 * 2 I00605 PTR(31); /* ERRET PTR */ 01057000 * DECLARE 0276 01058000 * ILIST CHAR(12) BDY(DWORD); /* STANDARD LIST */ 01059000 * DECLARE /* COMMON VARIABLES */ 01060000 * I256C CHAR(256) BASED, 0277 01061000 * I031F FIXED(31) BASED, 0277 01062000 * I031P PTR(31) BASED, 0277 01063000 * I015F FIXED(15) BASED, 0277 01064000 * I015P PTR(15) BASED, 0277 01065000 * I008P PTR(8) BASED, 0277 01066000 * I001C CHAR(1) BASED; 0277 01067000 * DECLARE 0278 01068000 * IOPTLIST(12) PTR(31) BDY(WORD);/* OPTION LIST ARRAY */ 01069000 * DCL 0279 01070000 * 1 DASPATCH LOCAL BDY(DWORD), /* PATCH AREA */ 01071000 * 2 DASPATA(DASPATLN) PTR INIT((DASPATLN)0); 0279 01072000 * GEN DATA DEFS(HEXTBL); 0280 01073000 * END BLSCAAMS 0281 01074000 * 0281 01075000 */* THE FOLLOWING INCLUDE STATEMENTS WERE FOUND IN THIS PROGRAM. */ 01076000 */*%INCLUDE SYSLIB (BLSCAMOM) */ 01077000 */*%INCLUDE SYSLIB (BLSDMSGD) */ 01078000 */*%INCLUDE SYSLIB (BLSCAMCB) */ 01079000 */*%INCLUDE SYSLIB (BLSCLKR ) */ 01080000 * 0281 01081000 * ; 0281 01082000 @EL00001 L @13,4(,@13) 0281 01083000 @EF00001 L @00,@SIZDATD 0281 01084000 LR @01,@11 0281 01085000 BLSCFRES R,LV=(0),A=(1) 01086000 @ER00001 LM @14,@12,12(@13) 0281 01087000 BR @14 0281 01088000 @DATA DS 0H 01089000 @SM00525 MVC INREC(0,@10),MMAMSREC(MAMSLP) 01090000 @DATD DSECT 01091000 DS 0F 01092000 @SA00001 DS 18F 01093000 @SA00003 DS 15F 01094000 @PC00003 DS 1F 01095000 @SA00002 DS 15F 01096000 @SA00004 DS 15F 01097000 @PC00005 DS 2F 01098000 @AL00001 DS 6A 01099000 @AFTEMPS DS 2F 01100000 BLSCAAMS CSECT 01101000 DS 0F 01102000 @CF00190 DC F'0' 01103000 @CF00046 DC F'1' 01104000 @CF00072 DC F'2' 01105000 @CF00101 DC F'3' 01106000 @CF00044 DC F'8' 01107000 @CH00044 EQU @CF00044+2 01108000 @CF00382 DC F'3108' 01109000 @CF00384 DC F'3110' 01110000 @CF00386 DC F'3111' 01111000 @CF00370 DC XL4'80000000' 01112000 @DATD DSECT 01113000 DS 0D 01114000 MMTUP DS AL4 01115000 ORG MMTUP 01116000 MMTUPND DS BL1 01117000 ORG MMTUP+4 01118000 MODSTAT DS CL16 01119000 ORG MODSTAT 01120000 MODNAME DS CL8 01121000 RETCODE DS FL4 01122000 SUBCODE DS FL4 01123000 ORG MODSTAT+16 01124000 RESULT DS CL8 01125000 DS CL4 01126000 CHSTR8 DS CL8 01127000 ORG CHSTR8 01128000 CHSTR813 DS CL3 01129000 CHSTR847 DS CL4 01130000 CHSTR88 DS CL1 01131000 ORG CHSTR8+8 01132000 CTEMP DS CL9 01133000 ORG CTEMP 01134000 CTEMP18 DS CL8 01135000 ORG CTEMP+9 01136000 DS CL3 01137000 BLSCAMCB DS CL96 01138000 ORG BLSCAMCB 01139000 MCBOPTL DS CL4 01140000 MCBDNAML DS CL4 01141000 MCBPNL DS CL4 01142000 MCBIOL DS CL28 01143000 MCBINCB DS CL24 01144000 MCBOUCB DS CL24 01145000 MCBINPTR DS AL4 01146000 MCBOUPTR DS AL4 01147000 ORG BLSCAMCB+96 01148000 DS CL4 01149000 BCWRK DS CL8 01150000 ORG BCWRK 01151000 BCWRES DS CL7 01152000 BCWRK88 DS CL1 01153000 ORG BCWRK+8 01154000 ILIST DS CL12 01155000 IOPTLIST DS 12A 01156000 BLSCAAMS CSECT 01157000 DS 0F 01158000 @SIZDATD DC AL1(0) 01159000 DC AL3(@ENDDATD-@DATD) 01160000 @CV00284 DC V(BLSCAMIN) 01161000 @CV00285 DC V(BLSCAMPR) 01162000 @CV00286 DC V(BLSCGMF) 01163000 @CV00287 DC V(BLSCHOK) 01164000 @CV00288 DC V(BLSCAMOD) 01165000 DS 0D 01166000 @CC00468 DC C' CYLINDERS(' 01167000 @CC00359 DC C'DDSYSIN ' 01168000 @CC00362 DC C'DDSYSPRINT' 01169000 @CC00475 DC C' VOLUMES(' 01170000 @CC00400 DC C'BLSCAAMS' 01171000 @CC00402 DC C'IDCAMS ' 01172000 @CC00473 DC C' TRACKS(' 01173000 @CC00471 DC C' NAME(' 01174000 @CC00462 DC C'CYL' 01175000 @CC00464 DC C'TRK' 01176000 @CC00466 DC C') -' 01177000 @CB00394 DC X'00' 01178000 @CB00411 DC B'00000000' 01179000 DS CL7 01180000 DASPATCH DS CL80 01181000 ORG DASPATCH 01182000 DASPATA DC 20A(0) 01183000 ORG DASPATCH+80 01184000 BLSCAAMS CSECT 01185000 * /* 01186000 HEXTBL EQU *-240 01187000 DC CL16'0123456789ABCDEF' 01188000 @DATD DSECT 01189000 ORG *+1-(*-@DATD)/(*-@DATD) INSURE DSECT DATA 01190000 @ENDDATD EQU * 01191000 BLSCAAMS CSECT 01192000 @00 EQU 00 EQUATES FOR REGISTERS 0-15 01193000 @01 EQU 01 01194000 @02 EQU 02 01195000 @03 EQU 03 01196000 @04 EQU 04 01197000 @05 EQU 05 01198000 @06 EQU 06 01199000 @07 EQU 07 01200000 @08 EQU 08 01201000 @09 EQU 09 01202000 @10 EQU 10 01203000 @11 EQU 11 01204000 @12 EQU 12 01205000 @13 EQU 13 01206000 @14 EQU 14 01207000 @15 EQU 15 01208000 BCI EQU @02 01209000 RECLEN EQU @08 01210000 MVLEN EQU @06 01211000 MAMSLP EQU @07 01212000 REASON EQU @06 01213000 ABENDC EQU @04 01214000 OUFPTR EQU @05 01215000 MODELPTR EQU @02 01216000 DMCBPTR EQU @05 01217000 GPR01P EQU @01 01218000 GPR15P EQU @15 01219000 GPR15F EQU @15 01220000 GPR01F EQU @01 01221000 GPR00F EQU @00 01222000 DMCB EQU 0 01223000 DMCBTVP EQU DMCB+8 01224000 DMCBFTY EQU DMCB+20 01225000 DMCBOPN EQU DMCB+21 01226000 DMCBRMOD EQU DMCB+23 01227000 DMCBOUT EQU DMCBRMOD 01228000 DMCBOPTS EQU DMCB+24 01229000 DMCBGKY EQU DMCBOPTS 01230000 DMCBMFLG EQU DMCB+28 01231000 DMCBBUFP EQU DMCB+32 01232000 DMCBKEYP EQU DMCB+44 01233000 DMCBMSG EQU DMCB+52 01234000 DMCBRI EQU DMCB+64 01235000 DMCBMSG0 EQU DMCB+68 01236000 DMCBMSGS EQU DMCB+72 01237000 DMCBSPID EQU DMCB+84 01238000 DMCBFRE EQU DMCB+88 01239000 DMCBEOB EQU DMCB+92 01240000 DMCBACBE EQU DMCB+124 01241000 DMCBVOL EQU DMCB+268 01242000 DMCBDSN EQU DMCB+284 01243000 DMCBMODL EQU DMCB+348 01244000 DMCBSPTY EQU DMCB+369 01245000 DMCBSPPR EQU DMCB+372 01246000 DMCBSPSE EQU DMCB+376 01247000 DMCBSPEC EQU DMCB+380 01248000 DMCBAMS EQU DMCB+416 01249000 DMCBAUDT EQU DMCB+568 01250000 DMCBLSCP EQU DMCBAUDT+16 01251000 DMCBWRK EQU DMCB+648 01252000 MODLMAP EQU 0 01253000 MMACBDCB EQU MODLMAP+16 01254000 MMRPLP EQU MODLMAP+20 01255000 MMOPCLP EQU MODLMAP+24 01256000 MMDYRBP EQU MODLMAP+28 01257000 MMAMSLP EQU MODLMAP+32 01258000 MMACB EQU 0 01259000 MMDYRB EQU 0 01260000 MMAMSREC EQU 0 01261000 MMAMSLEN EQU MMAMSREC 01262000 MMTUPL EQU 0 01263000 MMTUPTR EQU MMTUPL 01264000 MMTUNIT EQU 0 01265000 MMTUENT EQU MMTUNIT+4 01266000 MSGDENT EQU 0 01267000 MSGDPRF EQU MSGDENT 01268000 MSGDSPID EQU MSGDPRF 01269000 MSGDFLEN EQU MSGDPRF+1 01270000 MSGDWRT EQU MSGDENT+8 01271000 MSGDMOV EQU MSGDWRT+4 01272000 MSGWENT EQU 0 01273000 MSGWNXT EQU MSGWENT 01274000 MSGWMOV EQU MSGWENT+4 01275000 BLSDMSGS EQU 0 01276000 BLSDMSG0 EQU 0 01277000 ZZ2 EQU 0 01278000 INENT EQU 0 01279000 INNEXT EQU INENT 01280000 INLEN EQU INENT+4 01281000 INTEXT EQU INENT+8 01282000 OUENT EQU 0 01283000 I015F EQU 0 01284000 DMCBDMGR EQU 0 01285000 DMCBRQC EQU 0 01286000 I001C EQU 0 01287000 I008P EQU 0 01288000 I015P EQU 0 01289000 I031F EQU 0 01290000 I031P EQU 0 01291000 I256C EQU 0 01292000 MMAMSL EQU 0 01293000 MMDCB EQU 0 01294000 MMOPCL EQU 0 01295000 MMRPL EQU 0 01296000 MODELNAM EQU 0 01297000 BLDSTRP EQU 0 01298000 BCSRC EQU 0 01299000 BCRES EQU 0 01300000 DMCBVSM EQU DMCBAMS 01301000 DMCBQSM EQU DMCBAMS 01302000 DMAL EQU DMCBWRK 01303000 DMALMODA EQU DMAL+4 01304000 DMALMODP EQU DMAL+12 01305000 MMACBMCF EQU MMACB+12 01306000 MMACBMC1 EQU MMACBMCF 01307000 MMRB EQU MMDYRB 01308000 MMRSC EQU MMRB+4 01309000 MMTXTPP EQU MMRB+8 01310000 OUPTR EQU MCBOUPTR 01311000 AMSOPTL EQU MCBOPTL 01312000 OPTLLEN EQU AMSOPTL 01313000 AMSDNAML EQU MCBDNAML 01314000 DNAMLLEN EQU AMSDNAML 01315000 AMSPNL EQU MCBPNL 01316000 PNLLEN EQU AMSPNL 01317000 AMSIOL EQU MCBIOL 01318000 IOLNUM EQU AMSIOL 01319000 IOLINDDP EQU AMSIOL+4 01320000 IOLMINP EQU AMSIOL+8 01321000 IOLINCBP EQU AMSIOL+12 01322000 IOLOUDDP EQU AMSIOL+16 01323000 IOLMPRP EQU AMSIOL+20 01324000 IOLOUCBP EQU AMSIOL+24 01325000 INCB EQU MCBINCB 01326000 INHEAD EQU INCB 01327000 INCUR EQU INCB+4 01328000 INTAIL EQU INCB+8 01329000 OUCB EQU MCBOUCB 01330000 OUHEAD EQU OUCB 01331000 OUCUR EQU OUCB+4 01332000 OUTAIL EQU OUCB+8 01333000 INPTR EQU MCBINPTR 01334000 INREC EQU INENT+4 01335000 INRECF EQU INENT+4 01336000 INTXTF EQU INRECF+4 01337000 I006 EQU ILIST 01338000 I00601 EQU I006 01339000 I00602 EQU I006+1 01340000 I00603 EQU I006+4 01341000 I00604 EQU I006+5 01342000 I00605 EQU I006+8 01343000 DSNTXT EQU INTEXT 01344000 DSNTYP EQU DSNTXT 01345000 DSNVAL EQU DSNTXT+6 01346000 DSNEND EQU DSNTXT+50 01347000 VOLTXT EQU INTEXT 01348000 VOLTYP EQU VOLTXT 01349000 VOLVAL EQU VOLTXT+9 01350000 VOLEND EQU VOLTXT+15 01351000 CYLTXT EQU INTEXT 01352000 CYLTYP EQU CYLTXT 01353000 CYLPRI EQU CYLTXT+11 01354000 CYLSEC EQU CYLTXT+16 01355000 CYLEND EQU CYLTXT+20 01356000 TRKTXT EQU INTEXT 01357000 TRKTYP EQU TRKTXT 01358000 TRKPRI EQU TRKTXT+8 01359000 TRKSEC EQU TRKTXT+13 01360000 TRKEND EQU TRKTXT+17 01361000 DMCBDSN1 EQU DMCBDSN 01362000 DMCBVOL1 EQU DMCBVOL 01363000 DMCBSPT1 EQU DMCBSPTY 01364000 OUREC EQU OUENT+4 01365000 AGO .@UNREFD START UNREFERENCED COMPONENTS 01366000 @NM00002 EQU TRKTXT+12 01367000 @NM00001 EQU CYLTXT+15 01368000 INRES EQU INRECF 01369000 OURESV01 EQU OUCB+20 01370000 OUECODE EQU OUCB+16 01371000 OURCODE EQU OUCB+12 01372000 INRESV01 EQU INCB+20 01373000 INECODE EQU INCB+16 01374000 INRCODE EQU INCB+12 01375000 PNLTXT EQU AMSPNL+2 01376000 DNAMLENT EQU AMSDNAML+2 01377000 OPTLTXT EQU AMSOPTL+2 01378000 MMFLAG2 EQU MMRB+16 01379000 MMRSV01 EQU MMRB+12 01380000 MMINFO EQU MMRSC+2 01381000 MMERROR EQU MMRSC 01382000 MMFLAG1 EQU MMRB+2 01383000 MMVERB EQU MMRB+1 01384000 MMRBLN EQU MMRB 01385000 MMACBKEY EQU MMACBMC1 01386000 DMALEND EQU DMAL+1196 01387000 DMALTUS EQU DMAL+172 01388000 DMALTUPL EQU DMAL+44 01389000 DMALTUBS EQU DMAL+40 01390000 DMALTUPM EQU DMAL+36 01391000 DMALDYRB EQU DMAL+16 01392000 DMALPRMP EQU DMAL+8 01393000 DMALID EQU DMAL 01394000 DMCBRES7 EQU DMCBQSM+96 01395000 DMCBDCB EQU DMCBQSM 01396000 DMCBACB EQU DMCBVSM+76 01397000 DMCBRPL EQU DMCBVSM 01398000 OUTEXT EQU OUENT+8 01399000 OUPAD EQU OUENT+6 01400000 OULEN EQU OUENT+4 01401000 OUNEXT EQU OUENT 01402000 INPAD EQU INENT+6 01403000 MSGWTXT EQU MSGWMOV+4 01404000 MSGWPAD EQU MSGWMOV+2 01405000 MSGWLEN EQU MSGWMOV 01406000 MSGDTXT EQU MSGDMOV+4 01407000 MSGDPAD EQU MSGDMOV+2 01408000 MSGDLEN EQU MSGDMOV 01409000 MSGDNXT EQU MSGDWRT 01410000 MSGDBAK EQU MSGDPRF+4 01411000 MMTUPAR EQU MMTUENT+2 01412000 MMTULNG EQU MMTUENT 01413000 MMTUNUM EQU MMTUNIT+2 01414000 MMTUKEY EQU MMTUNIT 01415000 MMTUPLN EQU MMTUPTR 01416000 MMAMSTXT EQU MMAMSREC+4 01417000 MMAMSPAD EQU MMAMSREC+2 01418000 MMACBID EQU MMACB 01419000 MMRRL EQU MODLMAP+36 01420000 MMNAME EQU MODLMAP+8 01421000 MMRESV1 EQU MODLMAP+4 01422000 MMNXMOD EQU MODLMAP 01423000 DMCBRES8 EQU DMCB+640 01424000 DMCBMODN EQU DMCB+632 01425000 DMCBCARY EQU DMCBAUDT+20 01426000 DMCBCLC EQU DMCBAUDT+12 01427000 DMCBOPC EQU DMCBAUDT+8 01428000 DMCBFRC EQU DMCBAUDT+4 01429000 DMCBALC EQU DMCBAUDT 01430000 DMCBFR EQU DMCB+412 01431000 DMCBRES6 EQU DMCB+410 01432000 DMCBIRSC EQU DMCB+408 01433000 DMCBSUBC EQU DMCB+404 01434000 DMCBDRBP EQU DMCB+400 01435000 DMCBRSZM EQU DMCB+398 01436000 DMCBRSZA EQU DMCB+396 01437000 DMCBCISZ EQU DMCB+394 01438000 DMCBDCBL EQU DMCB+392 01439000 DMCBDCLR EQU DMCB+390 01440000 DMCBDCFM EQU DMCB+389 01441000 DMCBRES5 EQU DMCB+388 01442000 DMCBLBRT EQU DMCB+386 01443000 DMCBLBSQ EQU DMCB+384 01444000 DMCBLBPS EQU DMCB+383 01445000 DMCBLBTY EQU DMCB+382 01446000 DMCBRES4 EQU DMCB+381 01447000 DMCBSPRS EQU DMCBSPEC 01448000 DMCBSPRN EQU DMCBSPEC 01449000 DMCBSPCT EQU DMCBSPEC 01450000 DMCBSPRL EQU DMCBSPEC 01451000 DMCBODIS EQU DMCB+368 01452000 DMCBDISP EQU DMCB+367 01453000 DMCBSTAT EQU DMCB+366 01454000 DMCBRES3 EQU DMCB+364 01455000 DMCBMEMB EQU DMCB+356 01456000 DMCBRES9 EQU DMCB+340 01457000 DMCBPID EQU DMCB+332 01458000 DMCBTYPE EQU DMCB+328 01459000 DMCBUNIT EQU DMCB+276 01460000 DMCBDSOR EQU DMCB+274 01461000 DMCBDDNM EQU DMCB+260 01462000 DMCBSYNM EQU DMCB+132 01463000 DMCBRPLF EQU DMCB+128 01464000 DMCBDCBE EQU DMCBACBE 01465000 DMCBARC EQU DMCB+120 01466000 DMCBCPC EQU DMCB+116 01467000 DMCBRET EQU DMCB+112 01468000 DMCBSTL EQU DMCB+96 01469000 DMCBRES2 EQU DMCB+85 01470000 DMCBRESC EQU DMCB+80 01471000 DMCBZZ1P EQU DMCB+76 01472000 DMCBRRL EQU DMCB+60 01473000 DMCBRBA EQU DMCB+56 01474000 DMCBKEYL EQU DMCB+48 01475000 DMCBKPC EQU DMCBKEYP 01476000 DMCBORL EQU DMCB+40 01477000 DMCBBLEN EQU DMCB+36 01478000 DMCBBFPC EQU DMCBBUFP 01479000 DMCBRES1 EQU DMCB+31 01480000 DMCBACCM EQU DMCB+30 01481000 DMCBREJ EQU DMCB+29 01482000 DMCBRESB EQU DMCBMFLG 01483000 DMCBFMOD EQU DMCBMFLG 01484000 DMCBLOPT EQU DMCB+27 01485000 DMCBLRM EQU DMCB+26 01486000 DMCBLRQ EQU DMCB+25 01487000 DMCBOPRS EQU DMCBOPTS 01488000 DMCBLRD EQU DMCBOPTS 01489000 DMCBBWD EQU DMCBOPTS 01490000 DMCBUPD EQU DMCBOPTS 01491000 DMCBAPX EQU DMCBOPTS 01492000 DMCBRNO EQU DMCBGKY 01493000 DMCBKYD EQU DMCBOPTS 01494000 DMCBRMRS EQU DMCBRMOD 01495000 DMCBRM5 EQU DMCBRMOD 01496000 DMCBRM6 EQU DMCBRMOD 01497000 DMCBTMP EQU DMCBOUT 01498000 DMCBRQST EQU DMCB+22 01499000 DMCBRESA EQU DMCBOPN 01500000 DMCBSOUT EQU DMCBOPN 01501000 DMCBSIN EQU DMCBOPN 01502000 DMCBVSF EQU DMCBFTY 01503000 DMCBKSF EQU DMCBFTY 01504000 DMCBFTRS EQU DMCBFTY 01505000 DMCBSHF EQU DMCBFTY 01506000 DMCBIRL EQU DMCB+16 01507000 DMCBRTC EQU DMCB+12 01508000 DMCBNEXT EQU DMCB+4 01509000 DMCBID EQU DMCB 01510000 .@UNREFD ANOP END UNREFERENCED COMPONENTS 01511000 @RC00095 EQU @EL00002 01512000 @RF00241 EQU @EL00004 01513000 @RT00243 EQU @EL00004 01514000 @RF00254 EQU @EL00004 01515000 @RC00246 EQU @EL00004 01516000 @ENDDATA EQU * 01517000 END BLSCAAMS,(C'PLS1144',0701,78062) 01518000