TITLE 'SMS BUFFER FIND ROUTINE - ISTORABF(OS/VS1), ISTORFBF(OS*00001000 S/VS2) ' 00002000 ISTORFBF CSECT , 0001 00003000 @MAINENT DS 0H 0001 00004000 USING *,@15 0001 00005000 B @PROLOG 0001 00006000 DC AL1(16) 0001 00007000 DC C'ISTORFBF 75.325' 0001 00008000 DROP @15 00009000 @PROLOG BALR @09,0 0001 00010000 @PSTART DS 0H 0001 00011000 USING @PSTART,@09 0001 00012000 * R1SAV14=R14; /* SAVE INPUTTED REG14 */ 00013000 LR R1SAV14,R14 0031 00014000 * RFY R14 UNRSTD; 0032 00015000 * R5BUFSIZ=(((BPCBBSIZ+7)/8)*8)+8; /* ADJ BUFSIZE @XM02379*/ 00016000 LA @14,8 0033 00017000 LA @06,7 0033 00018000 AH @06,BPCBBSIZ(,R10BPCB) 0033 00019000 SRDA @06,32 0033 00020000 DR @06,@14 0033 00021000 SLA @07,3 0033 00022000 ALR @07,@14 0033 00023000 LR R5BUFSIZ,@07 0033 00024000 * IF R2BUFPTR=0 /* THIS FIRST CALL */ 00025000 * THEN /* YES */ 0034 00026000 LTR R2BUFPTR,R2BUFPTR 0034 00027000 BNZ @RF00034 0034 00028000 *TR01: DO; 0035 00029000 TR01 DS 0H 0036 00030000 * IF BPCBRESP=0 /* ANY RESIDUAL AREA EXIST */ 00031000 * THEN; /* NO */ 0036 00032000 L @06,BPCBRESP(,R10BPCB) 0036 00033000 LTR @06,@06 0036 00034000 BZ @RT00036 0036 00035000 * ELSE /* YES */ 0038 00036000 *ELS02: DO; 0038 00037000 ELS02 DS 0H 0039 00038000 * R2BUFPTR=BPCBRESP-R5BUFSIZ; /*@XM02379*/ 00039000 L R2BUFPTR,BPCBRESP(,R10BPCB) 0039 00040000 SLR R2BUFPTR,R5BUFSIZ 0039 00041000 * R8NBPGO=BPCBNUMR; 0040 00042000 LH R8NBPGO,BPCBNUMR(,R10BPCB) 0040 00043000 *RESCALL: CALL PFXMATCH; /* SEARCH FOR BUFF PREFIX MATCH */ 00044000 RESCALL BAL @14,PFXMATCH 0041 00045000 * IF R15CODE=0 /* WAS BUFFER FOUND */ 00046000 * THEN /* YES */ 0042 00047000 LTR R15CODE,R15CODE 0042 00048000 BZ @RT00042 0042 00049000 * GOTO RET; /* RETURN TO CALLER */ 00050000 * ELSE; /* NO */ 0044 00051000 * END ELS02; 0045 00052000 * IF BPCBADR1=0 /* ANY PRIVATE AREA EXIST */ 00053000 * THEN /* NO */ 0046 00054000 @RT00036 L @14,BPCBADR1(,R10BPCB) 0046 00055000 LTR @14,@14 0046 00056000 BNZ @RF00046 0046 00057000 *TR03: DO; 0047 00058000 TR03 DS 0H 0048 00059000 * R2BUFPTR=0; /* INDICAT END OF POOL REACHED */ 00060000 SLR R2BUFPTR,R2BUFPTR 0048 00061000 * GOTO RET; /* RETURN TO CALLER */ 00062000 B RET 0049 00063000 * END TR03; 0050 00064000 * ELSE /* YES, SET DUMMY ADDRESS */ 00065000 *ELS03: R2BUFPTR=BPCBADR1-R5BUFSIZ+8; /*@XM02379*/ 00066000 @RF00046 DS 0H 0051 00067000 ELS03 L R2BUFPTR,BPCBADR1(,R10BPCB) 0051 00068000 SLR R2BUFPTR,R5BUFSIZ 0051 00069000 AL R2BUFPTR,@CF00088 0051 00070000 * END TR01; 0052 00071000 * ELSE /* IF HERE, NOT FIRST CALL */ 00072000 *ELS01: DO; 0053 00073000 B @RC00034 0053 00074000 @RF00034 DS 0H 0053 00075000 ELS01 DS 0H 0054 00076000 * IF BPCBRESP=0 | /* NO RESIDUAL AREA EXISTS OR */ 00077000 * BPCBRESP > R2BUFPTR /* BUFF CANT BE IN RESIDUAL AREA*/ 00078000 * THEN; /* YES */ 0054 00079000 L @14,BPCBRESP(,R10BPCB) 0054 00080000 LTR @14,@14 0054 00081000 BZ @RT00054 0054 00082000 CR @14,R2BUFPTR 0054 00083000 BH @RT00054 0054 00084000 * ELSE /* NO */ 0056 00085000 *ELS04: DO; 0056 00086000 ELS04 DS 0H 0057 00087000 * R15RSEND=BPCBRESP+((BPCBNUMR-1)*R5BUFSIZ); /*@XM02379*/ 00088000 LH R15RSEND,BPCBNUMR(,R10BPCB) 0057 00089000 BCTR R15RSEND,0 0057 00090000 MR @14,R5BUFSIZ 0057 00091000 AL R15RSEND,BPCBRESP(,R10BPCB) 0057 00092000 * IF R2BUFPTR ^< R15RSEND /* IS BUFFER IN RESIDUAL AREA */ 00093000 * THEN; /* NO */ 0058 00094000 CR R2BUFPTR,R15RSEND 0058 00095000 BNL @RT00058 0058 00096000 * ELSE /* YES */ 0060 00097000 *ELS05: DO; 0060 00098000 ELS05 DS 0H 0061 00099000 * R8NBPGO=(R15RSEND-R2BUFPTR)/R5BUFSIZ; /*@XM02379*/ 00100000 LR @06,R15RSEND 0061 00101000 SLR @06,R2BUFPTR 0061 00102000 SRDA @06,32 0061 00103000 DR @06,R5BUFSIZ 0061 00104000 LR R8NBPGO,@07 0061 00105000 * GOTO RESCALL; 0062 00106000 B RESCALL 0062 00107000 * END ELS05; 0063 00108000 * END ELS04; 0064 00109000 @RT00058 DS 0H 0065 00110000 * END ELS01; 0065 00111000 @RT00054 DS 0H 0066 00112000 * IF BPCBAL48=OFF /* SPECIAL ALIGNMENT REQUIRED */ 00113000 * THEN /* NO */ 0066 00114000 @RC00034 TM BPCBAL48(R10BPCB),B'00001000' 0066 00115000 BNZ @RF00066 0066 00116000 *TR06: R3NBPAGE=AL08PSIZ/R5BUFSIZ; /*@XM02379*/ 00117000 TR06 L @06,@CF00081 0067 00118000 SRDA @06,32 0067 00119000 DR @06,R5BUFSIZ 0067 00120000 LR R3NBPAGE,@07 0067 00121000 * ELSE /* YES */ 0068 00122000 *ELS06: R3NBPAGE=AL48PSIZ/R5BUFSIZ; /*@XM02379*/ 00123000 B @RC00066 0068 00124000 @RF00066 DS 0H 0068 00125000 ELS06 LA @06,4092 0068 00126000 SRDA @06,32 0068 00127000 DR @06,R5BUFSIZ 0068 00128000 LR R3NBPAGE,@07 0068 00129000 * IF BPCBNUM <= R3NBPAGE /* ALL BUFFS FIT ON ONE PAGE */ 00130000 * THEN /* YES */ 0069 00131000 @RC00066 CH R3NBPAGE,BPCBNUM(,R10BPCB) 0069 00132000 BL @RF00069 0069 00133000 *TR07: R4NLPAGE=BPCBNUM; 0070 00134000 TR07 LH R4NLPAGE,BPCBNUM(,R10BPCB) 0070 00135000 * ELSE DO; /* NO */ 0071 00136000 B @RC00069 0071 00137000 @RF00069 DS 0H 0072 00138000 *ELS07: R4NLPAGE=BPCBNUM//R3NBPAGE; 0072 00139000 ELS07 LH @06,BPCBNUM(,R10BPCB) 0072 00140000 SRDA @06,32 0072 00141000 DR @06,R3NBPAGE 0072 00142000 LR R4NLPAGE,@06 0072 00143000 * IF R4NLPAGE=0 /*IF NO REMAINDER XL03HFX*/ 00144000 * THEN R4NLPAGE=R3NBPAGE; /*LAST PAGE IS FULL PAGE */ 00145000 LTR R4NLPAGE,R4NLPAGE 0073 00146000 BNZ @RF00073 0073 00147000 LR R4NLPAGE,R3NBPAGE 0074 00148000 * ELSE; /*XL03HFX*/ 00149000 @RF00073 DS 0H 0076 00150000 * END; /*END ELS07 */ 00151000 * R15CODE=4; /* FORCE AT LEAST ONE LOOP */ 00152000 @RC00069 LA R15CODE,4 0077 00153000 * IF BPCBNFCH=ON /* POOL ON PAGE BDY? @ZM49277*/ 00154000 * THEN /* NO @ZM49277*/ 00155000 TM BPCBNFCH(R10BPCB),B'00010000' 0078 00156000 BNO @RF00078 0078 00157000 * DO; /*@ZM49277*/ 00158000 * R8NBPGO=BPCBNUM; /* NUMBER OF BUFFERS @ZM49277*/ 00159000 LH R8NBPGO,BPCBNUM(,R10BPCB) 0080 00160000 * R2BUFPTR=BPCBADR1-R5BUFSIZ; /* SEARCH ADDR @ZM49277*/ 00161000 L R2BUFPTR,BPCBADR1(,R10BPCB) 0081 00162000 SLR R2BUFPTR,R5BUFSIZ 0081 00163000 * CALL PFXMATCH; /* SEARCH FOR MATCH @ZM49277*/ 00164000 BAL @14,PFXMATCH 0082 00165000 * IF R15CODE=0 /*@ZM49277*/ 00166000 * THEN; /*@ZM49277*/ 00167000 LTR R15CODE,R15CODE 0083 00168000 BZ @RT00083 0083 00169000 * ELSE R2BUFPTR=0; /*@ZM49277*/ 00170000 SLR R2BUFPTR,R2BUFPTR 0085 00171000 * END; /*@ZM49277*/ 00172000 * ELSE /*@ZM49277*/ 00173000 * DO; /* NOT PAGE BDY @ZM49277*/ 00174000 B @RC00078 0087 00175000 @RF00078 DS 0H 0088 00176000 *DOW01: DO WHILE(R15CODE^=0); /*LOOP TIL BUF FOUND OR POOL END*/ 00177000 DOW01 B @DE00088 0088 00178000 @DL00088 DS 0H 0089 00179000 * R8PBNDRY=R2BUFPTR & '00FFF000'X; /* ROUND TO PAGE BNDRY */ 00180000 LR R8PBNDRY,R2BUFPTR 0089 00181000 N R8PBNDRY,@CF00124 0089 00182000 * R15LASPG=BPCBADR2-AL08PSIZ; /* CALC ADDR OF LAST PAGE */ 00183000 L R15LASPG,BPCBADR2(,R10BPCB) 0090 00184000 SL R15LASPG,@CF00081 0090 00185000 * IF BPCBAL48=OFF /* SPECIAL ALIGNMENT REQUIRED */ 00186000 * THEN; /* NO */ 0091 00187000 TM BPCBAL48(R10BPCB),B'00001000' 0091 00188000 BZ @RT00091 0091 00189000 * ELSE /* YES */ 0093 00190000 *ELS08: DO; 0093 00191000 ELS08 DS 0H 0094 00192000 * R8PBNDRY=R8PBNDRY+4; 0094 00193000 LA @14,4 0094 00194000 ALR R8PBNDRY,@14 0094 00195000 * R15LASPG=R15LASPG+4; 0095 00196000 ALR R15LASPG,@14 0095 00197000 * END ELS08; 0096 00198000 * RFY R14PGEND RSTD; /*@XM02379*/ 00199000 @RT00091 DS 0H 0098 00200000 * IF R8PBNDRY=R15LASPG /* THIS THE LAST PAGE */ 00201000 * THEN /* YES */ 0098 00202000 CR R8PBNDRY,R15LASPG 0098 00203000 BNE @RF00098 0098 00204000 *TR09: R14PGEND=R8PBNDRY+((R4NLPAGE-1)*R5BUFSIZ); /*@XM02379*/ 00205000 TR09 LR @07,R4NLPAGE 0099 00206000 BCTR @07,0 0099 00207000 MR @06,R5BUFSIZ 0099 00208000 ALR @07,R8PBNDRY 0099 00209000 LR R14PGEND,@07 0099 00210000 * ELSE /* NO */ 0100 00211000 *ELS09: R14PGEND=R8PBNDRY+((R3NBPAGE-1)*R5BUFSIZ); /*@XM02379*/ 00212000 B @RC00098 0100 00213000 @RF00098 DS 0H 0100 00214000 ELS09 LR @07,R3NBPAGE 0100 00215000 BCTR @07,0 0100 00216000 MR @06,R5BUFSIZ 0100 00217000 ALR @07,R8PBNDRY 0100 00218000 LR R14PGEND,@07 0100 00219000 * IF R2BUFPTR < R14PGEND /* THIS LAST BUFFER ON PAGE */ 00220000 * THEN /* NO */ 0101 00221000 @RC00098 CR R2BUFPTR,R14PGEND 0101 00222000 BNL @RF00101 0101 00223000 *TR10: R8NBPGO=(R14PGEND-R2BUFPTR)/R5BUFSIZ; /*@XM02379*/ 00224000 TR10 LR @06,R14PGEND 0102 00225000 SLR @06,R2BUFPTR 0102 00226000 SRDA @06,32 0102 00227000 DR @06,R5BUFSIZ 0102 00228000 LR R8NBPGO,@07 0102 00229000 * ELSE /* YES */ 0103 00230000 *ELS10: DO; /* GET ADDR OF NEXT PAGE */ 00231000 B @RC00101 0103 00232000 @RF00101 DS 0H 0103 00233000 ELS10 DS 0H 0104 00234000 * RFY R14PGEND UNRSTD; /*@XM02379*/ 00235000 * R8PBNDRY=R8PBNDRY+AL08PSIZ; 0105 00236000 AL R8PBNDRY,@CF00081 0105 00237000 * IF R8PBNDRY>=BPCBADR2 /*JUST CHECKED LAST PAGE IN POOL*/ 00238000 * THEN /* YES */ 0106 00239000 C R8PBNDRY,BPCBADR2(,R10BPCB) 0106 00240000 BL @RF00106 0106 00241000 *TR11: DO; 0107 00242000 TR11 DS 0H 0108 00243000 * R2BUFPTR=0; /* INDICATE END OF POOL REACHED */ 00244000 SLR R2BUFPTR,R2BUFPTR 0108 00245000 * GOTO RET; /* EXIT FROM MODULE */ 00246000 B RET 0109 00247000 * END TR11; 0110 00248000 * ELSE 0111 00249000 *ELS11: DO; 0111 00250000 @RF00106 DS 0H 0111 00251000 ELS11 DS 0H 0112 00252000 * R2BUFPTR=R8PBNDRY-R5BUFSIZ; /*@XM02379*/ 00253000 LR R2BUFPTR,R8PBNDRY 0112 00254000 SLR R2BUFPTR,R5BUFSIZ 0112 00255000 * IF R8PBNDRY=R15LASPG /*JUST BEGINNING THE LAST PAGE */ 00256000 * THEN /* YES */ 0113 00257000 CR R8PBNDRY,R15LASPG 0113 00258000 BNE @RF00113 0113 00259000 *TR12: R8NBPGO=R4NLPAGE; 0114 00260000 TR12 LR R8NBPGO,R4NLPAGE 0114 00261000 * ELSE /* NO */ 0115 00262000 *ELS12: R8NBPGO=R3NBPAGE; 0115 00263000 B @RC00113 0115 00264000 @RF00113 DS 0H 0115 00265000 ELS12 LR R8NBPGO,R3NBPAGE 0115 00266000 * END ELS11; 0116 00267000 @RC00113 DS 0H 0117 00268000 * END ELS10; 0117 00269000 * CALL PFXMATCH; /* SEARCH FOR BUFF PREFIX MATCH */ 00270000 @RC00101 BAL @14,PFXMATCH 0118 00271000 * END DOW01; 0119 00272000 @DE00088 LTR R15CODE,R15CODE 0119 00273000 BNZ @DL00088 0119 00274000 * END; /*@ZM49277*/ 00275000 * RFY R14 RSTD; 0121 00276000 @RC00078 DS 0H 0122 00277000 *RET: R14=R1SAV14; 0122 00278000 RET LR R14,R1SAV14 0122 00279000 *PFXMATCH: PROC OPTIONS(NOSAVE,NOSAVEAREA); 0123 00280000 B @PB00002 0123 00281000 PFXMATCH DS 0H 0124 00282000 *DOW02: DO WHILE(R8NBPGO>0); 0124 00283000 DOW02 B @DE00124 0124 00284000 @DL00124 DS 0H 0125 00285000 * R8NBPGO=R8NBPGO-1; 0125 00286000 BCTR R8NBPGO,0 0125 00287000 * R2BUFPTR=R2BUFPTR+R5BUFSIZ; /*@XM02379*/ 00288000 ALR R2BUFPTR,R5BUFSIZ 0126 00289000 * IF R0MASK=BFPTSKID 0127 00290000 * THEN 0127 00291000 C R0MASK,BFPTSKID(,R2BUFPTR) 0127 00292000 BNE @RF00127 0127 00293000 *TR13: DO; 0128 00294000 TR13 DS 0H 0129 00295000 * R15CODE=0; 0129 00296000 SLR R15CODE,R15CODE 0129 00297000 * RETURN; 0130 00298000 @EL00002 DS 0H 0130 00299000 @EF00002 DS 0H 0130 00300000 @ER00002 BR @14 0130 00301000 * END TR13; 0131 00302000 * ELSE; 0132 00303000 @RF00127 DS 0H 0133 00304000 * END DOW02; 0133 00305000 @DE00124 LTR R8NBPGO,R8NBPGO 0133 00306000 BP @DL00124 0133 00307000 * R15CODE=4; 0134 00308000 LA R15CODE,4 0134 00309000 * END PFXMATCH; 0135 00310000 * 0135 00311000 B @EL00002 0135 00312000 @PB00002 DS 0H 0136 00313000 */* TPEPILOG */ 0136 00314000 * GEN (PRINT OFF); 0136 00315000 * 0136 00316000 PRINT OFF 00317000 */* ***** BUFFER POOL CONTOL BLOCK **** */ 0137 00318000 */* REVISIONS 004 07/14/75 */ 00319000 *DCL 1 ISTBPCB BDY(DWORD) BASED(BPCBPTR), 0137 00320000 * 2 BPCBFLAG BIT(16), /* POOL FLAGS */ 00321000 * 3 BPCBFM BIT(1), /* POOL FORMAT */ 00322000 * 3 BPCBDISP BIT(1), /* SHARED OR PRIVATE */ 00323000 * 3 BPCBFX BIT(1), /* FIXED OR PAGEABLE */ 00324000 * 3 BPCBNFCH BIT(1), /* NON-FETCH PROTECTION */ 00325000 * 3 BPCBAL48 BIT(1), /* 4,8 ALIGNEMENT OF BUFFERS */ 00326000 * 3 BPCBCBID BIT(1), /* CBID POOL */ 00327000 * 3 BPCBNWS BIT(1), /* NON-WORKING SET POOL */ 00328000 * 3 * BIT(1), /* RESERVED */ 00329000 * 3 BPCBUSRF BIT(1), /* USER REQ FIXED BUF */ 00330000 * 3 * BIT(7), /* RESERVED */ 00331000 * 2 * CHAR(1), /* RESERVED */ 00332000 * 2 BPCBSPNO FIXED(8), /* SUBPOOL NUMBER */ 00333000 * 2 BPCBFEXT PTR(31), /* POINTER TO FIRST EXTENT */ 00334000 * 3 BPCBPRIO BIT(1), /* INDICATOR FOR PRIORITY Q*/ 00335000 * 2 BPCBADR1 PTR(31), /* BEGINNING ADDRESS OF POOL */ 00336000 * 2 BPCBADR2 PTR(31), /* END ADDRESS OF POOL */ 00337000 * 2 BPCBRPHA PTR(31), /* PTR TO PRIORITY Q'D RPH'S */ 00338000 * 2 BPCBRPHB PTR(31), /* PTR TO NORMAL RPH QUEUE */ 00339000 * 2 BPCBPDTY PTR(31), /* POINTER TO POOL DIRECTORY */ 00340000 * 2 BPCBNXCB PTR(31), /* POINTER TO NEXT BPCB */ 00341000 * 2 BPCBBSIZ FIXED(15), /* BUFFER SIZE IN BYTES */ 00342000 * 2 BPCBTOTL FIXED(15), /* TOTAL NUMBER OF BUFFERS */ 00343000 * 2 BPCBTHRE FIXED(15), /* POOL THRESHOLD */ 00344000 * 2 BPCBTHR2 FIXED(15), /* POOL THRESHOLD #2 */ 00345000 * 2 BPCBQREQ FIXED(31), 0137 00346000 * 3 BPCBMQUE FIXED(15), /* MAX NO. REQUESTS QUEUED */ 00347000 * 3 BPCBCQUE FIXED(15), /* CURRENT NO. REQUESTS QUEUED*/ 00348000 * 2 BPCBMUSE FIXED(31), 0137 00349000 * 3 * FIXED(15), /* RESERVED */ 00350000 * 3 BPCMINAV FIXED(15), /* MIN AVAIL NO. THIS BPCB */ 00351000 * 2 BPCBRESP PTR(31), /* PTR TO LAST BUFF IN RESIDUE*/ 00352000 * 2 BPCBNUM FIXED(15), /* NUM BUFFS PRIVATE AREA */ 00353000 * 2 BPCBNUMR FIXED(15), /* NUM BUFFS RESIDUE AREA */ 00354000 * 2 BPCBCDS CHAR(8) BDY(DWORD), /* USED FOR CDS */ 00355000 * 3 BPCBCDS1 CHAR(4) BDY(DWORD), /* FOL WORD ADDR */ 00356000 * 4 BPCBFLG2 CHAR(1), /* SLOWDOWN STATUS */ 00357000 * 5 * BIT(1), /* RESERVED */ 00358000 * 5 BPCBLOW1 BIT(1), /* SLOWDOWN FLAG */ 00359000 * 5 BPCBLOW2 BIT(1), /* SLOWDOWN BDY XED */ 00360000 * 5 * BIT(5), /* RESERVED */ 00361000 * 4 BPCBFBA PTR(24), /* 1ST AVAIL BUF ADDR */ 00362000 * 3 BPCBCDS2 CHAR(4) BDY(WORD), /* FOL WORD ADDR */ 00363000 * 4 BPCBCCNT FIXED(15), /* INCREMENTED FOR EACH BUFFER*/ 00364000 * /* ENQUEUED */ 00365000 * 4 BPCBAVNO FIXED(15), /* NO. AVAIL BUFFS */ 00366000 * 2 BPCBRBLK FIXED(32), /* SRB LOCK AND POINTER */ 00367000 * 3 BPCBSRBG BIT(1), /* SRB GATE BIT */ 00368000 * 3 * BIT(7), /* RESERVED */ 00369000 * 3 BPCBSRBA PTR(24), /* SRB ADDRESS */ 00370000 * 2 BPCBSRB CHAR(LENGTH(SRB)); /* THE SRB ITSELF */ 00371000 * /* BUFFER PREFIX */ 0138 00372000 */* REVISIONS 002 03/06/75 */ 00373000 * DCL 1 ISTBFPFX BDY(DWORD) BASED(BFPFXPTR), 0138 00374000 * 2 BFPTSKID PTR(31), /* FIRST PREFIX WORD */ 00375000 * 3 BFPALLOC BIT(1), /* BUFF.ALLOCATED INDICATOR */ 00376000 * 3 BFPCBXNO BIT(7), /* CBID INDEX NUMBER */ 00377000 * 3 BFPPSTID PTR(24), /* PST ID OF BUFF OWNER */ 00378000 * 4 * BIT(16), /* ALIGNMENT */ 00379000 * 4 BFPTIK BIT(8), /* TASK ID, ONE BYTE REFERENCE*/ 00380000 * 2 BFPPCBA PTR(31), /* SECOND PREFIX WORD */ 00381000 * 3 BFPCBID BIT(1), /* BUFF IS A CBID INDICATOR */ 00382000 * 3 * BIT(7), /* RESERVED */ 00383000 * 3 BFPBPCB PTR(24), /* PTR TO BPCB FOR BUFFER */ 00384000 * 2 BFPNXCHN PTR(31), /* A(NEXT BUFF.) AND START OF */ 00385000 * 2 BFPSIZE FIXED(15), /* SIZE OF DATA IN BUFFER */ 00386000 * 2 BFPUSED FIXED(15), /* COUNT OF DATA BYTES USED */ 00387000 * /* IN THIS BUFFER */ 00388000 * 2 BFPDATA BDY(WORD), /* DATA PART OF THE BUFFER */ 00389000 * 3 BFPREGSA, /* START OF SAVE AREA'S FOR REG*/ 00390000 * 4 BFPR5SA FIXED(31),/* SAVE AREA FOR R5 */ 00391000 * 5 BFPPMCLR BIT(1),/* CLEAR REQUESTED */ 00392000 * 5 BFPPMCHN BIT(1),/* CHAINED CBID RELEASE */ 00393000 * 5 BFPPMDSB BIT(1),/* DISABLED, CAN'T PAGE FLT*/ 00394000 * 4 BFPR6SA FIXED(31),/* SAVE AREA FOR R6 */ 00395000 * 4 BFPR7SA FIXED(31),/* SAVE AREA FOR R7 */ 00396000 * 4 BFPR8SA FIXED(31),/* SAVE AREA FOR R8 */ 00397000 * 4 BFPR9SA FIXED(31),/* SAVE AREA FOR R9 */ 00398000 * 4 BFPRASA FIXED(31),/* SAVE AREA FOR R10 */ 00399000 * 4 BFPRBSA FIXED(31),/* SAVE AREA FOR R11 */ 00400000 * 4 BFPRCSA FIXED(31),/* SAVE AREA FOR R12 */ 00401000 * 4 BFPRDSA FIXED(31);/* SAVE AREA FOR R13 */ 00402000 * GEN (PRINT ON); 0139 00403000 PRINT ON 00404000 */* END OF TPEPILOG */ 0140 00405000 * END ISTORFBF 0140 00406000 */* THE FOLLOWING INCLUDE STATEMENTS WERE FOUND IN THIS PROGRAM. * 00407000 */*%INCLUDE SYSLIB (IHASRB ) * 00408000 *; 0140 00409000 @EL00001 DS 0H 0140 00410000 @EF00001 DS 0H 0140 00411000 @ER00001 BR @14 0140 00412000 @DATA DS 0H 00413000 @DATD DSECT 00414000 DS 0F 00415000 ISTORFBF CSECT 00416000 DS 0F 00417000 @CF00088 DC F'8' 00418000 @CF00081 DC F'4096' 00419000 @CF00124 DC XL4'00FFF000' 00420000 @DATD DSECT 00421000 DS 0D 00422000 SRBPTR DS A 00423000 BPCBPTR DS A 00424000 BFPFXPTR DS A 00425000 ORG *+1-(*-@DATD)/(*-@DATD) INSURE DSECT DATA 00426000 @ENDDATD EQU * 00427000 ISTORFBF CSECT 00428000 DS 0F 00429000 @SIZDATD DC AL1(0) 00430000 DC AL3(@ENDDATD-@DATD) 00431000 DS 0D 00432000 @00 EQU 00 EQUATES FOR REGISTERS 0-15 00433000 @01 EQU 01 00434000 @02 EQU 02 00435000 @03 EQU 03 00436000 @04 EQU 04 00437000 @05 EQU 05 00438000 @06 EQU 06 00439000 @07 EQU 07 00440000 @08 EQU 08 00441000 @09 EQU 09 00442000 @10 EQU 10 00443000 @11 EQU 11 00444000 @12 EQU 12 00445000 @13 EQU 13 00446000 @14 EQU 14 00447000 @15 EQU 15 00448000 R0MASK EQU @00 00449000 R1SAV14 EQU @01 00450000 R2BUFPTR EQU @02 00451000 R3NBPAGE EQU @03 00452000 R4NLPAGE EQU @04 00453000 R5BUFSIZ EQU @05 00454000 R8PBNDRY EQU @08 00455000 R8NBPGO EQU @08 00456000 R9BASE EQU @09 00457000 R10BPCB EQU @10 00458000 R11 EQU @11 00459000 R12 EQU @12 00460000 R13 EQU @13 00461000 R14 EQU @14 00462000 R14PGEND EQU @14 00463000 R15RSEND EQU @15 00464000 R15LASPG EQU @15 00465000 R15CODE EQU @15 00466000 SRBSECT EQU 0 00467000 SRBFLC EQU SRBSECT+12 00468000 ISTBPCB EQU 0 00469000 BPCBFLAG EQU ISTBPCB 00470000 BPCBNFCH EQU BPCBFLAG 00471000 BPCBAL48 EQU BPCBFLAG 00472000 BPCBFEXT EQU ISTBPCB+4 00473000 BPCBADR1 EQU ISTBPCB+8 00474000 BPCBADR2 EQU ISTBPCB+12 00475000 BPCBBSIZ EQU ISTBPCB+32 00476000 BPCBQREQ EQU ISTBPCB+40 00477000 BPCBMUSE EQU ISTBPCB+44 00478000 BPCBRESP EQU ISTBPCB+48 00479000 BPCBNUM EQU ISTBPCB+52 00480000 BPCBNUMR EQU ISTBPCB+54 00481000 BPCBCDS EQU ISTBPCB+56 00482000 BPCBCDS1 EQU BPCBCDS 00483000 BPCBFLG2 EQU BPCBCDS1 00484000 BPCBCDS2 EQU BPCBCDS+4 00485000 BPCBRBLK EQU ISTBPCB+64 00486000 ISTBFPFX EQU 0 00487000 BFPTSKID EQU ISTBFPFX 00488000 BFPPSTID EQU BFPTSKID+1 00489000 BFPPCBA EQU ISTBFPFX+4 00490000 BFPDATA EQU ISTBFPFX+16 00491000 BFPREGSA EQU BFPDATA 00492000 BFPR5SA EQU BFPREGSA 00493000 SRB EQU SRBSECT 00494000 AGO .@UNREFD START UNREFERENCED COMPONENTS 00495000 BFPRDSA EQU BFPREGSA+32 00496000 BFPRCSA EQU BFPREGSA+28 00497000 BFPRBSA EQU BFPREGSA+24 00498000 BFPRASA EQU BFPREGSA+20 00499000 BFPR9SA EQU BFPREGSA+16 00500000 BFPR8SA EQU BFPREGSA+12 00501000 BFPR7SA EQU BFPREGSA+8 00502000 BFPR6SA EQU BFPREGSA+4 00503000 BFPPMDSB EQU BFPR5SA 00504000 BFPPMCHN EQU BFPR5SA 00505000 BFPPMCLR EQU BFPR5SA 00506000 BFPUSED EQU ISTBFPFX+14 00507000 BFPSIZE EQU ISTBFPFX+12 00508000 BFPNXCHN EQU ISTBFPFX+8 00509000 BFPBPCB EQU BFPPCBA+1 00510000 @NM00011 EQU BFPPCBA 00511000 BFPCBID EQU BFPPCBA 00512000 BFPTIK EQU BFPPSTID+2 00513000 @NM00010 EQU BFPPSTID 00514000 BFPCBXNO EQU BFPTSKID 00515000 BFPALLOC EQU BFPTSKID 00516000 BPCBSRB EQU ISTBPCB+68 00517000 BPCBSRBA EQU BPCBRBLK+1 00518000 @NM00009 EQU BPCBRBLK 00519000 BPCBSRBG EQU BPCBRBLK 00520000 BPCBAVNO EQU BPCBCDS2+2 00521000 BPCBCCNT EQU BPCBCDS2 00522000 BPCBFBA EQU BPCBCDS1+1 00523000 @NM00008 EQU BPCBFLG2 00524000 BPCBLOW2 EQU BPCBFLG2 00525000 BPCBLOW1 EQU BPCBFLG2 00526000 @NM00007 EQU BPCBFLG2 00527000 BPCMINAV EQU BPCBMUSE+2 00528000 @NM00006 EQU BPCBMUSE 00529000 BPCBCQUE EQU BPCBQREQ+2 00530000 BPCBMQUE EQU BPCBQREQ 00531000 BPCBTHR2 EQU ISTBPCB+38 00532000 BPCBTHRE EQU ISTBPCB+36 00533000 BPCBTOTL EQU ISTBPCB+34 00534000 BPCBNXCB EQU ISTBPCB+28 00535000 BPCBPDTY EQU ISTBPCB+24 00536000 BPCBRPHB EQU ISTBPCB+20 00537000 BPCBRPHA EQU ISTBPCB+16 00538000 BPCBPRIO EQU BPCBFEXT 00539000 BPCBSPNO EQU ISTBPCB+3 00540000 @NM00005 EQU ISTBPCB+2 00541000 @NM00004 EQU BPCBFLAG+1 00542000 BPCBUSRF EQU BPCBFLAG+1 00543000 @NM00003 EQU BPCBFLAG 00544000 BPCBNWS EQU BPCBFLAG 00545000 BPCBCBID EQU BPCBFLAG 00546000 BPCBFX EQU BPCBFLAG 00547000 BPCBDISP EQU BPCBFLAG 00548000 BPCBFM EQU BPCBFLAG 00549000 @NM00002 EQU SRBSECT+40 00550000 @NM00001 EQU SRBSECT+38 00551000 SRBPRIOR EQU SRBSECT+37 00552000 SRBPKF EQU SRBSECT+36 00553000 SRBSAVE EQU SRBSECT+32 00554000 SRBPARM EQU SRBSECT+28 00555000 SRBRMTR EQU SRBSECT+24 00556000 SRBEP EQU SRBSECT+20 00557000 SRBPTCB EQU SRBFLC+4 00558000 SRBPASID EQU SRBFLC+2 00559000 SRBCPAFF EQU SRBFLC 00560000 SRBASCB EQU SRBSECT+8 00561000 SRBFLNK EQU SRBSECT+4 00562000 SRBID EQU SRBSECT 00563000 .@UNREFD ANOP END UNREFERENCED COMPONENTS 00564000 @RT00042 EQU RET 00565000 @RT00083 EQU @RC00078 00566000 @ENDDATA EQU * 00567000 END ISTORFBF,(C'PLS2005',0603,75325) 00568000