cdc:nos2.source:opl.opl871:common:comcmsf
Common COMCMSF
Library Member Format: MODIFY
Source
Seq # *Modification Id* Act ----------------------------+ 00001 M00S00001.comcmsf +++| CTEXT COMCMSF - MERGE SORTED FILES. 00002 M00S00002.comcmsf +++| SPACE 4 00003 M00S00003.comcmsf +++| IF -DEF,QUAL$,1 00004 M00S00004.comcmsf +++| QUAL COMCMSF 00005 M00S00005.comcmsf +++| BASE D 00006 M00S00006.comcmsf +++|* COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1996. 00007 M00S00007.comcmsf +++| SPACE 4,15 00008 M00S00008.comcmsf +++|*** MSF - MERGE SORTED FILES. 00009 M00S00009.comcmsf +++|* G. S. YODER. 96/04/24. 00010 M00S00010.comcmsf +++|* 00011 M00S00011.comcmsf +++|* ENTRY (X0) = LENGTH OF TABLE ENTRY. 00012 M00S00012.comcmsf +++|* (X1) = NUMBER OF ENTRIES IN FULL BLOCK. 00013 M00S00013.comcmsf +++|* (X2) = SORT KEY MASK. 00014 M00S00014.comcmsf +++|* (B4) = WORD OFFSET OF KEY IN TABLE ENTRY. 00015 M00S00015.comcmsf +++|* (B5) = LENGTH OF KEY IN WORDS. 00016 M00S00016.comcmsf +++|* (A0) = WORKING BUFFER 1 ADDRESS. 00017 M00S00017.comcmsf +++|* (A5) = WORKING BUFFER 2 ADDRESS. 00018 M00S00018.comcmsf +++|* ENTRIES TO SORT ON INPUT FILES 1 AND 2. 00019 M00S00019.comcmsf +++|* 00020 M00S00020.comcmsf +++|* EXIT SORTED ENTRIES ON FILE 3. 00021 M00S00021.comcmsf +++| 00022 M00S00022.comcmsf +++| 00023 M00S00023.comcmsf +++| MSF SUBR ENTRY/EXIT 00024 M00S00024.comcmsf +++| 00025 M00S00025.comcmsf +++|* PRESET SORT PARAMETERS. 00026 M00S00026.comcmsf +++| 00027 M00S00027.comcmsf +++| BX6 X1 00028 M00S00028.comcmsf +++| BX7 X2 00029 M00S00029.comcmsf +++| SA6 MSFA SAVE BLOCK SIZE 00030 M00S00030.comcmsf +++| SA7 MSFD SAVE SORT KEY MASK 00031 M00S00031.comcmsf +++| SX1 B5+ 00032 M00S00032.comcmsf +++| LX1 24 00033 M00S00033.comcmsf +++| BX0 X0+X1 SET KEY LENGTH AND ENTRY LENGTH 00034 M00S00034.comcmsf +++| PX0 X0,B4 SET KEY OFFSET 00035 M00S00035.comcmsf +++| 00036 M00S00036.comcmsf +++|* INITIALIZE NEXT PASS. 00037 M00S00037.comcmsf +++| 00038 M00S00038.comcmsf +++| MSF1 REWIND S1 REWIND INPUT FILE 1 00039 M00S00039.comcmsf +++| REWIND S2 REWIND INPUT FILE 2 00040 M00S00040.comcmsf +++| REWIND S3 REWIND OUTPUT FILE 1 00041 M00S00041.comcmsf +++| REWIND S4 REWIND OUTPUT FILE 2 00042 M00S00042.comcmsf +++| READ S1 INITIATE READ 00043 M00S00043.comcmsf +++| READ S2 INITIATE READ 00044 M00S00044.comcmsf +++| WRITE S3,* SET WRITE FUNCTION 00045 M00S00045.comcmsf +++| WRITE S4,* SET WRITE FUNCTION 00046 M00S00046.comcmsf +++| SX6 B0+ 00047 M00S00047.comcmsf +++| SX5 S3 INITIALIZE OUTPUT FILE FET ADDRESS 00048 M00S00048.comcmsf +++| SA6 MSFC CLEAR BLOCKS WRITTEN 00049 M00S00049.comcmsf +++| 00050 M00S00050.comcmsf +++|* INITIALIZE BLOCK MERGE. 00051 M00S00051.comcmsf +++| 00052 M00S00052.comcmsf +++| MSF2 SA1 MSFA 00053 M00S00053.comcmsf +++| BX6 X1 00054 M00S00054.comcmsf +++| SA6 MSFB INITIALIZE BLOCK 1 SIZE 00055 M00S00055.comcmsf +++| SA6 A6+1 INITIALIZE BLOCK 2 SIZE 00056 M00S00056.comcmsf +++| READW S1,A0,X0 READ BLOCK 1 ENTRY 00057 M00S00057.comcmsf +++| ZR X1,MSF9 IF NOT EOR 00058 M00S00058.comcmsf +++| EQ MSF13 CHECK MERGE COMPLETE 00059 M00S00059.comcmsf +++| 00060 M00S00060.comcmsf +++|* COMPARE SORT KEYS. 00061 M00S00061.comcmsf +++| 00062 M00S00062.comcmsf +++| MSF3 UX3,B4 X0 SET KEY OFFSET 00063 M00S00063.comcmsf +++| SA1 A0+B4 READ FIRST WORD OF FIRST ENTRY KEY 00064 M00S00064.comcmsf +++| SA2 A5+B4 READ FIRST WORD OF SECOND ENTRY KEY 00065 M00S00065.comcmsf +++| SA4 MSFD SET SORT KEY MASK 00066 M00S00066.comcmsf +++| AX3 24 SET KEY LENGTH 00067 M00S00067.comcmsf +++| MSF4 BX1 X4*X1 00068 M00S00068.comcmsf +++| BX2 X4*X2 00069 M00S00069.comcmsf +++| BX6 X1-X2 00070 M00S00070.comcmsf +++| IX7 X2-X1 00071 M00S00071.comcmsf +++| NG X6,MSF5 IF KEYS ARE OPPOSITE SIGN 00072 M00S00072.comcmsf +++| NZ X6,MSF6 IF KEYS NOT IDENTICAL 00073 M00S00073.comcmsf +++| SA1 A1+B1 00074 M00S00074.comcmsf +++| SA2 A2+B1 00075 M00S00075.comcmsf +++| SX3 X3-1 DECREMENT WORDS TO COMPARE 00076 M00S00076.comcmsf +++| ZR X3,MSF7 IF ALL WORDS OF KEY COMPARED 00077 M00S00077.comcmsf +++| EQ MSF4 COMPARE NEXT WORD OF KEYS 00078 M00S00078.comcmsf +++| 00079 M00S00079.comcmsf +++| MSF5 NG X1,MSF8 IF FIRST KEY GREATER 00080 M00S00080.comcmsf +++| EQ MSF7 WRITE FIRST ENTRY 00081 M00S00081.comcmsf +++| 00082 M00S00082.comcmsf +++| MSF6 NG X7,MSF8 IF FIRST KEY GREATER 00083 M00S00083.comcmsf +++| 00084 M00S00084.comcmsf +++|* WRITE ENTRY 1 AND READ NEXT ENTRY. 00085 M00S00085.comcmsf +++| 00086 M00S00086.comcmsf +++| MSF7 WRITEW X5,A0,X0 WRITE ENTRY 00087 M00S00087.comcmsf +++| SA1 MSFB 00088 M00S00088.comcmsf +++| SX6 B1 00089 M00S00089.comcmsf +++| IX6 X1-X6 COUNT ENTRY 00090 M00S00090.comcmsf +++| SA6 A1+ 00091 M00S00091.comcmsf +++| ZR X6,MSF11 IF END OF BLOCK 1 00092 M00S00092.comcmsf +++| READW S1,A0,X0 READ ENTRY 00093 M00S00093.comcmsf +++| ZR X1,MSF3 IF NOT EOR 00094 M00S00094.comcmsf +++| EQ MSF11 COPY BLOCK 2 00095 M00S00095.comcmsf +++| 00096 M00S00096.comcmsf +++|* WRITE ENTRY 2 AND READ NEXT ENTRY. 00097 M00S00097.comcmsf +++| 00098 M00S00098.comcmsf +++| MSF8 WRITEW X5,A5,X0 WRITE ENTRY 00099 M00S00099.comcmsf +++| SA1 MSFB+1 00100 M00S00100.comcmsf +++| SX6 B1 00101 M00S00101.comcmsf +++| IX6 X1-X6 COUNT ENTRY 00102 M00S00102.comcmsf +++| SA6 A1+ 00103 M00S00103.comcmsf +++| ZR X6,MSF10 IF END OF BLOCK 2 00104 M00S00104.comcmsf +++| MSF9 READW S2,A5,X0 READ ENTRY 00105 M00S00105.comcmsf +++| ZR X1,MSF3 IF NOT EOR 00106 M00S00106.comcmsf +++| 00107 M00S00107.comcmsf +++|* COPY REMAINDER OF BLOCK 1. 00108 M00S00108.comcmsf +++| 00109 M00S00109.comcmsf +++| MSF10 WRITEW X5,A0,X0 WRITE ENTRY 00110 M00S00110.comcmsf +++| SA1 MSFB 00111 M00S00111.comcmsf +++| SX6 B1 00112 M00S00112.comcmsf +++| IX6 X1-X6 COUNT ENTRY 00113 M00S00113.comcmsf +++| SA6 A1+ 00114 M00S00114.comcmsf +++| ZR X6,MSF12 IF END OF BLOCK 1 00115 M00S00115.comcmsf +++| READW S1,A0,X0 READ ENTRY 00116 M00S00116.comcmsf +++| ZR X1,MSF10 IF NOT EOR 00117 M00S00117.comcmsf +++| EQ MSF12 RESET OUTPUT FILE 00118 M00S00118.comcmsf +++| 00119 M00S00119.comcmsf +++|* COPY REMAINDER OF BLOCK 2. 00120 M00S00120.comcmsf +++| 00121 M00S00121.comcmsf +++| MSF11 WRITEW X5,A5,X0 WRITE ENTRY 00122 M00S00122.comcmsf +++| SA1 MSFB+1 00123 M00S00123.comcmsf +++| SX6 B1 00124 M00S00124.comcmsf +++| IX6 X1-X6 COUNT ENTRY 00125 M00S00125.comcmsf +++| SA6 A1+ 00126 M00S00126.comcmsf +++| ZR X6,MSF12 IF END OF BLOCK 2 00127 M00S00127.comcmsf +++| READW S2,A5,X0 READ ENTRY 00128 M00S00128.comcmsf +++| ZR X1,MSF11 IF NOT EOR 00129 M00S00129.comcmsf +++| 00130 M00S00130.comcmsf +++|* RESET OUTPUT FILE. 00131 M00S00131.comcmsf +++| 00132 M00S00132.comcmsf +++| MSF12 SA1 MSFC 00133 M00S00133.comcmsf +++| SX7 S3&S4 00134 M00S00134.comcmsf +++| SX6 B1 00135 M00S00135.comcmsf +++| BX5 X5-X7 SET NEW OUTPUT FILE 00136 M00S00136.comcmsf +++| IX6 X1+X6 COUNT BLOCK WRITTEN 00137 M00S00137.comcmsf +++| SA6 A1 00138 M00S00138.comcmsf +++| EQ MSF2 INITIALIZE BLOCK MERGE 00139 M00S00139.comcmsf +++| 00140 M00S00140.comcmsf +++|* FLUSH OUTPUT FILES AND CHECK MERGE COMPLETE. 00141 M00S00141.comcmsf +++| 00142 M00S00142.comcmsf +++| MSF13 SX7 S3&S4 00143 M00S00143.comcmsf +++| BX5 X5-X7 RESET LAST FILE WRITTEN 00144 M00S00144.comcmsf +++| WRITER X5 FLUSH LAST FILE WRITTEN 00145 M00S00145.comcmsf +++| SA1 MSFC 00146 M00S00146.comcmsf +++| SX7 1 00147 M00S00147.comcmsf +++| BX6 X2 00148 M00S00148.comcmsf +++| IX1 X1-X7 00149 M00S00149.comcmsf +++| ZR X1,MSFX IF ONE BLOCK WRITTEN 00150 M00S00150.comcmsf +++| SA1 MSFA 00151 M00S00151.comcmsf +++| LX1 1 00152 M00S00152.comcmsf +++| BX6 X1 00153 M00S00153.comcmsf +++| SA6 A1 SET FULL BLOCK SIZE FOR NEXT PASS 00154 M00S00154.comcmsf +++| SX7 S3&S4 00155 M00S00155.comcmsf +++| BX5 X5-X7 00156 M00S00156.comcmsf +++| WRITER X5 FLUSH OTHER OUTPUT FILE 00157 M00S00157.comcmsf +++| 00158 M00S00158.comcmsf +++|* SWAP INPUT AND OUTPUT FILE NAMES. 00159 M00S00159.comcmsf +++| 00160 M00S00160.comcmsf +++| RECALL S1 00161 M00S00161.comcmsf +++| RECALL S2 00162 M00S00162.comcmsf +++| RECALL S3 00163 M00S00163.comcmsf +++| RECALL S4 00164 M00S00164.comcmsf +++| SA1 S1 00165 M00S00165.comcmsf +++| SA2 S3 00166 M00S00166.comcmsf +++| BX6 X1 00167 M00S00167.comcmsf +++| BX7 X2 00168 M00S00168.comcmsf +++| SA6 A2 00169 M00S00169.comcmsf +++| SA7 A1 00170 M00S00170.comcmsf +++| SA1 S2 00171 M00S00171.comcmsf +++| SA2 S4 00172 M00S00172.comcmsf +++| BX6 X1 00173 M00S00173.comcmsf +++| BX7 X2 00174 M00S00174.comcmsf +++| SA6 A2 00175 M00S00175.comcmsf +++| SA7 A1 00176 M00S00176.comcmsf +++| EQ MSF1 INITIALIZE NEXT PASS 00177 M00S00177.comcmsf +++| 00178 M00S00178.comcmsf +++| 00179 M00S00179.comcmsf +++| MSFA CON 0 FULL BLOCK ENTRY COUNT 00180 M00S00180.comcmsf +++| MSFB CON 0 BLOCK 1 ENTRY COUNT 00181 M00S00181.comcmsf +++| CON 0 BLOCK 2 ENTRY COUNT 00182 M00S00182.comcmsf +++| MSFC CON 0 RECORDS WRITTEN COUNT 00183 M00S00183.comcmsf +++| MSFD CON 0 SORT KEY MASK 00184 M00S00184.comcmsf +++| FETS SPACE 4,10 00185 M00S00185.comcmsf +++|** FETS. 00186 M00S00186.comcmsf +++| 00187 M00S00187.comcmsf +++| 00188 M00S00188.comcmsf +++| S1 BSS 0 INPUT FILE 1 00189 M00S00189.comcmsf +++| ZZZZZGW FILEB MS1B,MSFBL,FET=10 00190 M00S00190.comcmsf +++| 00191 M00S00191.comcmsf +++| S2 BSS 0 INPUT FILE 2 00192 M00S00192.comcmsf +++| ZZZZZGX FILEB MS2B,MSFBL,FET=10 00193 M00S00193.comcmsf +++| 00194 M00S00194.comcmsf +++| S3 BSS 0 OUTPUT FILE 1 00195 M00S00195.comcmsf +++| ZZZZZGY FILEB MS3B,MSFBL,FET=10 00196 M00S00196.comcmsf +++| 00197 M00S00197.comcmsf +++| S4 BSS 0 OUTPUT FILE 4 00198 M00S00198.comcmsf +++| ZZZZZGZ FILEB MS4B,MSFBL,FET=10 00199 M00S00199.comcmsf +++| 00200 M00S00200.comcmsf +++| 00201 M00S00201.comcmsf +++| BASE * 00202 M00S00202.comcmsf +++| QUAL$ IF -DEF,QUAL$ 00203 M00S00203.comcmsf +++| QUAL * 00204 M00S00204.comcmsf +++| MSF EQU /COMCMSF/MSF 00205 M00S00205.comcmsf +++| S1 EQU /COMCMSF/S1 00206 M00S00206.comcmsf +++| S2 EQU /COMCMSF/S2 00207 M00S00207.comcmsf +++| S3 EQU /COMCMSF/S3 00208 M00S00208.comcmsf +++| S4 EQU /COMCMSF/S4 00209 M00S00209.comcmsf +++| QUAL$ ENDIF 00210 M00S00210.comcmsf +++| ENDX
cdc/nos2.source/opl.opl871/common/comcmsf.txt ยท Last modified: (external edit)