cdc:nos2.source:opl.opl871:common:comcwtw
Common COMCWTW
Library Member Format: MODIFY
Source
Seq # *Modification Id* Act ----------------------------+ 00001 M00S00001.comcwtw +++| CTEXT COMCWTW - WRITE WORDS FROM WORKING BUFFER. 00002 M00S00002.comcwtw +++| WTW SPACE 4 00003 M00S00003.comcwtw +++| IF -DEF,QUAL$,1 00004 M00S00004.comcwtw +++| QUAL COMCWTW 00005 M00S00005.comcwtw +++| BASE D
Line S00006 Modification History | |
---|---|
M01 (Removed by) | 281l803 |
Seq # *Modification Id* Act ----------------------------+ 00006 M01S00006.281l803 ---|* COMMENT COPYRIGHT CONTROL DATA CORP. 1970.
Line S00001 Modification History | |
---|---|
M01 (Added by) | 281l803 |
Seq # *Modification Id* Act ----------------------------+ 00007 M01S00001.281l803 +++|* COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992. 00008 M00S00007.comcwtw +++| WTW SPACE 4 00009 M00S00008.comcwtw +++|*** WTW - WRITE WORDS FROM WORKING BUFFER. 00010 M00S00009.comcwtw +++|* D. A. CAHLANDER. 70/11/29. 00011 M00S00010.comcwtw +++|* R. E. TATE. 73/11/04. 00012 M00S00011.comcwtw +++| WTW SPACE 4 00013 M00S00012.comcwtw +++|*** WTW TRANSFERS DATA FROM A WORKING BUFFER TO A CIO 00014 M00S00013.comcwtw +++|* BUFFER. THIS DECK ALSO CONTAINS DCB=, AND WTX=. 00015 M00S00014.comcwtw +++|* IF THE BUFFER BECOMES SUFFICIENTLY FULL TO REQUIRE WRITING, 00016 M00S00015.comcwtw +++|* THE THRESHOLD CONDITION TO ISSUE WRITE FUNCTIONS 00017 M00S00016.comcwtw +++|* IS BUFFER HALF FULL FOR BUFFERS LARGER 00018 M00S00017.comcwtw +++|* THAN 511 DECIMAL WORDS, AND BUFFER TOTALLY 00019 M00S00018.comcwtw +++|* FULL FOR SMALLER BUFFERS. IF THE SYMBOL 00020 M00S00019.comcwtw +++|* WTX$ IS DEFINED, THEN THE THRESHOLD IS 00021 M00S00020.comcwtw +++|* BUFFER FULL FOR ALL BUFFER SIZES. 00022 M00S00021.comcwtw +++|* WTW WILL PERFORM A *WRITE* FUNCTION UNLESS THE SYMBOL *WRIF$* 00023 M00S00022.comcwtw +++|* IS DEFINED. IN THIS CASE, THE CIO FUNCTION THAT IS IN THE FET 00024 M00S00023.comcwtw +++|* WILL BE REISSUED. A *WRITEW* REQUEST MAY READ DATA FROM 00025 M00S00024.comcwtw +++|* BEYOND THE END OF THE WORKING BUFFER, THUS CAUSING AN ABORT 00026 M00S00025.comcwtw +++|* IF THE LAST WORD ADDRESS OF THE BUFFER IS WITHIN 4 WORDS OF 00027 M00S00026.comcwtw +++|* FL. 00028 M00S00027.comcwtw +++|* 00029 M00S00028.comcwtw +++|* WHEN CALLING CIO= FROM THIS ROUTINE B6 AND B7 00030 M00S00029.comcwtw +++|* MUST CONTAIN WORKING STORAGE BUFFER ADDRESS, 00031 M00S00030.comcwtw +++|* AND NUMBER OF WORDS TO TRANSFER RESPECTIVELY 00032 M00S00031.comcwtw +++|* AS ERROR PROCESSING ROUTINES DEPEND UPON 00033 M00S00032.comcwtw +++|* THESE REGISTERS. 00034 M00S00033.comcwtw +++|* 00035 M00S00034.comcwtw +++|* ENTRY (X2) = ADDRESS OF FET FOR FILE. 00036 M00S00035.comcwtw +++|* (B6) = FWA WORKING BUFFER. 00037 M00S00036.comcwtw +++|* (B7) = WORD COUNT OF WORKING BUFFER. 00038 M00S00037.comcwtw +++|* IF (B7) = 0, NO TRANSFER WILL BE PERFORMED. 00039 M00S00038.comcwtw +++|* 00040 M00S00039.comcwtw +++|* EXIT (X2) = ADDRESS OF FET FOR FILE. 00041 M00S00040.comcwtw +++|* (B6) = ADDRESS OF NEXT WORD TO BE TRANSFERRED FROM 00042 M00S00041.comcwtw +++|* WORKING BUFFER. 00043 M00S00042.comcwtw +++|* (B7) = 0 IF TRANSFER COMPLETE. 00044 M00S00043.comcwtw +++|* = REMAINING WORD COUNT IF *CIO=* WAS CALLED TO 00045 M00S00044.comcwtw +++|* WRITE DATA AND RETURNED AN ERROR STATUS. 00046 M00S00045.comcwtw +++|* (X7) = ERROR STATUS IF (B7) .NE. 0. 00047 M00S00046.comcwtw +++|* 00048 M00S00047.comcwtw +++|* USES X - 1, 2, 3, 4, 6, 7. 00049 M00S00048.comcwtw +++|* B - 1, 2, 3, 4, 5, 6, 7. 00050 M00S00049.comcwtw +++|* A - 1, 2, 3, 4, 6, 7. 00051 M00S00050.comcwtw +++|* 00052 M00S00051.comcwtw +++|* CALLS CIO=. 00053 M00S00052.comcwtw +++| 00054 M00S00053.comcwtw +++| 00055 M00S00054.comcwtw +++| WTW18 SX6 B3+B4 ADVANCE IN 00056 M00S00055.comcwtw +++| SB3 B3+B4 00057 M00S00056.comcwtw +++| SB6 B6+B4 00058 M00S00057.comcwtw +++| SB7 B7-B4 00059 M00S00058.comcwtw +++| NE B3,B5,WTW19 IF IN " LIMIT 00060 M00S00059.comcwtw +++| SA1 X2+B1 IN = FIRST 00061 M00S00060.comcwtw +++| SX6 X1 00062 M00S00061.comcwtw +++| WTW19 SA6 X2+2 UPDATE IN 00063 M00S00062.comcwtw +++| NZ B7,WTW1 IF NOT END OF TRANSFER 00064 M00S00063.comcwtw +++| 00065 M00S00064.comcwtw +++| WTW= PS ENTRY/EXIT 00066 M00S00065.comcwtw +++| WTW1 SA1 X2+3 (B4) = OUT 00067 M00S00066.comcwtw +++| SA3 X2+2 (B3) = IN 00068 M00S00067.comcwtw +++| IF -DEF,B1=1,1 00069 M00S00068.comcwtw +++| SB1 1 00070 M00S00069.comcwtw +++| SA4 A1+B1 (B5) = LIMIT 00071 M00S00070.comcwtw +++| ZR B7,WTW= IF WORKING BUFFER EMPTY 00072 M00S00071.comcwtw +++| SB4 X1 00073 M00S00072.comcwtw +++| SA1 X2+B1 (B2) = FIRST 00074 M00S00073.comcwtw +++| SB3 X3 00075 M00S00074.comcwtw +++| SB5 X4 00076 M00S00075.comcwtw +++| SB2 X1 00077 M00S00076.comcwtw +++| SA1 B6 READ FIRST WORD 00078 M00S00077.comcwtw +++| NE B2,B4,WTW2 IF OUT " FIRST 00079 M00S00078.comcwtw +++| SB4 B5 00080 M00S00079.comcwtw +++| WTW2 LT B3,B4,WTW3 IF NO END AROUND 00081 M00S00080.comcwtw +++| SB4 B5+1 00082 M00S00081.comcwtw +++| WTW3 SB4 B4-B1 CALCULATE FREE DATA SPACE 00083 M00S00082.comcwtw +++| SB4 B4-B3 (B4) = TRANSFER LENGTH 00084 M00S00083.comcwtw +++| ZR B4,WTW13 IF NO ROOM 00085 M00S00084.comcwtw +++| BX7 X1 00086 M00S00085.comcwtw +++| LE B4,B7,WTW4 IF NOT ENOUGH ROOM 00087 M00S00086.comcwtw +++| SB4 B7 00088 M00S00087.comcwtw +++| 00089 M00S00088.comcwtw +++|* INITIALIZE REGISTERS FOR TRANSFER. 00090 M00S00089.comcwtw +++| 00091 M00S00090.comcwtw +++| WTWA BSS 0 00092 M00S00091.comcwtw +++| WTW4 SA3 WTWC PRESET CMU CODE AND VOID STACK 00093 M00S00092.comcwtw +++| RJ WTW16 00094 M00S00093.comcwtw +++|* SA1 A1+B1 (NO CMU) 00095 M00S00094.comcwtw +++|* SX4 B4-B1 (NO CMU) 00096 M00S00095.comcwtw +++|* MX6 -3 (NO CMU) 00097 M00S00096.comcwtw +++|* SA7 B3 (NO CMU) 00098 M00S00097.comcwtw +++|* 00099 M00S00098.comcwtw +++|* GT B4,B1,WTW14 IF MORE THAN 1 WORD (CMU) 00100 M00S00099.comcwtw +++|* BX4 X4-X4 (CMU) 00101 M00S00100.comcwtw +++|* SA7 B3 (CMU) 00102 M00S00101.comcwtw +++| 00103 M00S00102.comcwtw +++| WTW5 BX3 -X6*X4 NUMBER OF ODD WORDS 00104 M00S00103.comcwtw +++| AX4 3 NUMBER OF BLOCKS 00105 M00S00104.comcwtw +++| ZR X3,WTW7 IF NO ODD WORDS 00106 M00S00105.comcwtw +++| 00107 M00S00106.comcwtw +++|* TRANSFER UP TO 7 WORDS. 00108 M00S00107.comcwtw +++| 00109 M00S00108.comcwtw +++| WTW6 SX3 X3-1 00110 M00S00109.comcwtw +++| BX7 X1 00111 M00S00110.comcwtw +++| SA1 A1+B1 00112 M00S00111.comcwtw +++| SA7 A7+B1 00113 M00S00112.comcwtw +++| NZ X3,WTW6 LOOP 00114 M00S00113.comcwtw +++| 00115 M00S00114.comcwtw +++|* PRE-READ REGISTERS. 00116 M00S00115.comcwtw +++| 00117 M00S00116.comcwtw +++| WTW7 ZR X4,WTW18 IF NO BLOCKS 00118 M00S00117.comcwtw +++| SB5 X2 (B5) = FET ADDRESS 00119 M00S00118.comcwtw +++| SA2 A1+B1 00120 M00S00119.comcwtw +++| SB2 B1+B1 (B2) = 2 00121 M00S00120.comcwtw +++| SA3 A2+B1 00122 M00S00121.comcwtw +++| SB3 X4 (B3) = BLOCK COUNT 00123 M00S00122.comcwtw +++| SA4 A3+B1 00124 M00S00123.comcwtw +++| 00125 M00S00124.comcwtw +++|* TRANSFER 8 WORD BLOCKS. 00126 M00S00125.comcwtw +++| 00127 M00S00126.comcwtw +++| WTW8 BX6 X1 00128 M00S00127.comcwtw +++| LX7 X2 00129 M00S00128.comcwtw +++| SA1 A3+B2 00130 M00S00129.comcwtw +++| SA2 A4+B2 00131 M00S00130.comcwtw +++| SA6 A7+B1 00132 M00S00131.comcwtw +++| SB3 B3-B1 00133 M00S00132.comcwtw +++| SA7 A6+B1 00134 M00S00133.comcwtw +++| BX6 X3 00135 M00S00134.comcwtw +++| LX7 X4 00136 M00S00135.comcwtw +++| SA3 A1+B2 00137 M00S00136.comcwtw +++| SA4 A2+B2 00138 M00S00137.comcwtw +++| SA6 A6+B2 00139 M00S00138.comcwtw +++| SA7 A7+B2 00140 M00S00139.comcwtw +++| BX6 X1 00141 M00S00140.comcwtw +++| LX7 X2 00142 M00S00141.comcwtw +++| SA1 A3+B2 00143 M00S00142.comcwtw +++| SA2 A4+B2 00144 M00S00143.comcwtw +++| SA6 A6+B2 00145 M00S00144.comcwtw +++| SA7 A7+B2 00146 M00S00145.comcwtw +++| BX6 X3 00147 M00S00146.comcwtw +++| LX7 X4 00148 M00S00147.comcwtw +++| SA3 A1+B2 00149 M00S00148.comcwtw +++| SA4 A2+B2 00150 M00S00149.comcwtw +++| SA6 A6+B2 00151 M00S00150.comcwtw +++| SA7 A7+B2 00152 M00S00151.comcwtw +++| NZ B3,WTW8 LOOP 00153 M00S00152.comcwtw +++| 00154 M00S00153.comcwtw +++|* WRITE EXIT. 00155 M00S00154.comcwtw +++| 00156 M00S00155.comcwtw +++| SA3 B5+B2 READ IN 00157 M00S00156.comcwtw +++| SA1 A3+B2 (B5) = LIMIT 00158 M00S00157.comcwtw +++| SX2 B5 00159 M00S00158.comcwtw +++| SB5 X1 00160 M00S00159.comcwtw +++| SA4 X2 CHECK BUFFER STATUS 00161 M00S00160.comcwtw +++| WTW9 SB6 B6+B4 00162 M00S00161.comcwtw +++| SB7 B7-B4 00163 M00S00162.comcwtw +++| SB3 X3+B4 ADVANCE IN 00164 M00S00163.comcwtw +++| SX6 X3+B4 00165 M00S00164.comcwtw +++| LX4 59-0 00166 M00S00165.comcwtw +++| SA3 X2+B1 READ FIRST 00167 M00S00166.comcwtw +++| NE B3,B5,WTW10 IF IN " LIMIT 00168 M00S00167.comcwtw +++| SX6 X3+ IN = FIRST 00169 M00S00168.comcwtw +++| WTX$ IF DEF,WTX$ 00170 M00S00169.comcwtw +++| WTW10 EQ WTW19 CLEAN UP AND RETURN 00171 M00S00170.comcwtw +++| WTX$ ELSE 00172 M00S00171.comcwtw +++| 00173 M00S00172.comcwtw +++|* TRY TO BUFFER AHEAD. 00174 M00S00173.comcwtw +++| 00175 M00S00174.comcwtw +++| WTW10 PL X4,WTW19 IF BUFFER BUSY 00176 M00S00175.comcwtw +++| SA1 X2+3 READ OUT 00177 M00S00176.comcwtw +++| SA6 X2+2 STORE IN 00178 M00S00177.comcwtw +++| SB2 X3 (LIMIT-FIRST) 00179 M00S00178.comcwtw +++| IX6 X1-X6 (OUT-IN) 00180 M00S00179.comcwtw +++| SX7 B5-B2 00181 M00S00180.comcwtw +++| LX3 X6,B1 2*(OUT-IN) 00182 M00S00181.comcwtw +++| AX6 60 SIGN OF (OUT-IN) 00183 M00S00182.comcwtw +++| BX4 X6-X7 INVERT BUFFER IF IN \ OUT 00184 M00S00183.comcwtw +++| IX6 X4-X3 BUFFER SIZE - 2*(OUT-IN) 00185 M00S00184.comcwtw +++| NG X6,WTW12 IF BUFFER THRESHOLD NOT REACHED 00186 M00S00185.comcwtw +++| AX7 9 00187 M00S00186.comcwtw +++| ZR X7,WTW12 IF BUFFER NOT BIG ENOUGH TO WRITE AHEAD 00188 M00S00187.comcwtw +++| WTX$ ENDIF 00189 M00S00188.comcwtw +++| WRIF$ IF DEF,WRIF$ 00190 M00S00189.comcwtw +++| WTW11 SA1 X2 RE-ISSUE CURRENT WRITE FUNCTION 00191 M00S00190.comcwtw +++| SX6 774B 00192 M00S00191.comcwtw +++| BX7 X6*X1 00193 M00S00192.comcwtw +++| RJ =XCIO= 00194 M00S00193.comcwtw +++| WRIF$ ELSE 1 00195 M00S00194.comcwtw +++| WTW11 WRITE X2 00196 M00S00195.comcwtw +++| NZ X7,WTW= IF ERROR IN LAST *CIO* REQUEST 00197 M00S00196.comcwtw +++| WTW12 NZ B7,WTW1 IF NOT DONE 00198 M00S00197.comcwtw +++| JP WTW= RETURN 00199 M00S00198.comcwtw +++| 00200 M00S00199.comcwtw +++|* DUMP CIRCULAR BUFFER. 00201 M00S00200.comcwtw +++| 00202 M00S00201.comcwtw +++| WTW13 SA1 X2 CHECK BUFFER STATUS 00203 M00S00202.comcwtw +++| LX1 59-0 00204 M00S00203.comcwtw +++| NG X1,WTW11 IF NOT BUSY 00205 M00S00204.comcwtw +++| ZR X1,WTW11 IF BLANK FET 00206 M00S00205.comcwtw +++| RECALL 00207 M00S00206.comcwtw +++| JP WTW1 CONTINUE WRITE 00208 M00S00207.comcwtw +++| 00209 M00S00208.comcwtw +++|* MOVE DATA WITH CMU. 00210 M00S00209.comcwtw +++| 00211 M00S00210.comcwtw +++| WTW14 SX4 B4-819 00212 M00S00211.comcwtw +++| PL X4,WTW15 IF TOO BIG FOR CMU 00213 M00S00212.comcwtw +++| SX4 B4 10 * WORDS = CHARACTERS 00214 M00S00213.comcwtw +++| LX6 X4,B1 00215 M00S00214.comcwtw +++| BX1 X0 SAVE X0 00216 M00S00215.comcwtw +++| LX4 3 00217 M00S00216.comcwtw +++| IX6 X4+X6 00218 M00S00217.comcwtw +++| SX7 B6 SET SOURCE ADDRESS 00219 M00S00218.comcwtw +++| SX4 B3 SET DESTINATION ADDRESS 00220 M00S00219.comcwtw +++| LX7 30 00221 M00S00220.comcwtw +++| BX4 X4+X7 00222 M00S00221.comcwtw +++| MX7 -4 00223 M00S00222.comcwtw +++| BX3 X7*X6 EXTRACT UPPER PORTION 00224 M00S00223.comcwtw +++| BX6 -X7*X6 EXTRACT LOWER PORTION 00225 M00S00224.comcwtw +++| LX3 48-4 00226 M00S00225.comcwtw +++| BX4 X4+X3 00227 M00S00226.comcwtw +++| LX6 26 00228 M00S00227.comcwtw +++| BX6 X4+X6 00229 M00S00228.comcwtw +++| AX3 51 00230 M00S00229.comcwtw +++| SA6 WTWC STORE DESCRIPTOR WORD 00231 M00S00230.comcwtw +++| IM WTWC MOVE DATA 00232 M00S00231.comcwtw +++| BX0 X1 RESTORE X0 00233 M00S00232.comcwtw +++| ZR X3,WTW18 IF NO WRITE EXIT 00234 M00S00233.comcwtw +++| SA4 X2 00235 M00S00234.comcwtw +++| SX3 B3 RESET IN 00236 M00S00235.comcwtw +++| JP WTW9 00237 M00S00236.comcwtw +++| 00238 M00S00237.comcwtw +++| WTWB BSS 0 00239 M00S00238.comcwtw +++| WTW15 SA1 A1+B1 MOVE DATA WITHOUT CMU 00240 M00S00239.comcwtw +++| SX4 B4-B1 00241 M00S00240.comcwtw +++| MX6 -3 00242 M00S00241.comcwtw +++| SA7 B3 00243 M00S00242.comcwtw +++| JP WTW5 00244 M00S00243.comcwtw +++| 00245 M00S00244.comcwtw +++|* CMU PRESET CODE. 00246 M00S00245.comcwtw +++|* WWTC IS READ UP AND THEN RETURN JUMPED TO IN ORDER TO VOID 00247 M00S00246.comcwtw +++|* STACK. WWTC IS ALSO USED AS THE CMU DESCRIPTOR WORD 00248 M00S00247.comcwtw +++| 00249 M00S00248.comcwtw +++| WTWC GT B4,B1,WTW14 IF MORE THAN 1 WORD TO MOVE (CMU) 00250 M00S00249.comcwtw +++| BX4 X4-X4 00251 M00S00250.comcwtw +++| SA7 B3 00252 M00S00251.comcwtw +++| WTW16 EQU WTWC USED TO VOID STACK 00253 M00S00252.comcwtw +++| 00254 M00S00253.comcwtw +++|* PRESET FOR CMU CODE. 00255 M00S00254.comcwtw +++| 00256 M00S00255.comcwtw +++| SA4 CMUR CHECK IF CMU AVAIALABLE 00257 M00S00256.comcwtw +++| SB4 WTWA 00258 M00S00257.comcwtw +++| NG X4,WTW17 IF CMU 00259 M00S00258.comcwtw +++| SA3 WTWB 00260 M00S00259.comcwtw +++| WTW17 BX6 X3 00261 M00S00260.comcwtw +++| SA6 B4 00262 M00S00261.comcwtw +++| JP WTW1 00263 M00S00262.comcwtw +++| 00264 M00S00263.comcwtw +++| WTX SPACE 4 00265 M00S00264.comcwtw +++|** WTX - WRITE EXIT. 00266 M00S00265.comcwtw +++|* IF BUFFER IS BUSY, RETURN. 00267 M00S00266.comcwtw +++|* OTHERWISE, WORD COUNT OF BUFFER IS CHECKED, AND A WRITE 00268 M00S00267.comcwtw +++|* FUNCTION IS REQUESTED IF NECESSARY. 00269 M00S00268.comcwtw +++|* 00270 M00S00269.comcwtw +++|* ENTRY (A2) = ADDRESS OF IN. 00271 M00S00270.comcwtw +++|* (A3) = ADDRESS OF FIRST. 00272 M00S00271.comcwtw +++|* (A4) = RETURN ADDRESS. 00273 M00S00272.comcwtw +++|* (B3) = IN+1. 00274 M00S00273.comcwtw +++|* (B4) = OUT. 00275 M00S00274.comcwtw +++|* (B5) = LIMIT. 00276 M00S00275.comcwtw +++|* (X2) = IN 00277 M00S00276.comcwtw +++|* 00278 M00S00277.comcwtw +++|* EXIT TO RETURN ADDRESS. 00279 M00S00278.comcwtw +++|* 00280 M00S00279.comcwtw +++|* CALLS NONE. 00281 M00S00280.comcwtw +++| 00282 M00S00281.comcwtw +++| 00283 M00S00282.comcwtw +++| WTX= SA1 A3-B1 CHECK BUFFER STATUS 00284 M00S00283.comcwtw +++| SX6 X2 STORE IN 00285 M00S00284.comcwtw +++| LX1 59 00286 M00S00285.comcwtw +++| SA6 A2 00287 M00S00286.comcwtw +++| WTX$ IF -DEF,WTX$ 00288 M00S00287.comcwtw +++| PL X1,WTX1 IF BUFFER BUSY 00289 M00S00288.comcwtw +++| 00290 M00S00289.comcwtw +++|* IF BUFFER IS NOT BUSY, CHECK SIZE OF BUFFER. 00291 M00S00290.comcwtw +++|* ISSUE WRITE IF THRESHOLD IS REACHED. 00292 M00S00291.comcwtw +++| 00293 M00S00292.comcwtw +++| SA1 A2+B1 REREAD OUT 00294 M00S00293.comcwtw +++| SA3 A3 FIRST 00295 M00S00294.comcwtw +++| SB4 X1 00296 M00S00295.comcwtw +++| SX6 B4-B3 (OUT-IN+1) 00297 M00S00296.comcwtw +++| SB2 X3 (LIMIT-FIRST) 00298 M00S00297.comcwtw +++| LX3 X6,B1 2*(OUT-IN+1) 00299 M00S00298.comcwtw +++| SX7 B5-B2 00300 M00S00299.comcwtw +++| AX6 60 SIGN OF (OUT-IN+1) 00301 M00S00300.comcwtw +++| BX4 X6-X7 INVERT BUFFER IF IN+1 \ OUT 00302 M00S00301.comcwtw +++| IX6 X4-X3 BUFFER SIZE - 2*(OUT-IN+1) 00303 M00S00302.comcwtw +++| NG X6,WTX1 IF BUFFER THRESHOLD NOT REACHED 00304 M00S00303.comcwtw +++| AX7 9 00305 M00S00304.comcwtw +++| ZR X7,WTX1 IF BUFFER NOT BIG ENOUGH TO WRITE AHEAD 00306 M00S00305.comcwtw +++| WRIF$ IF DEF,WRIF$ 00307 M00S00306.comcwtw +++| SA1 A3-B1 RE-ISSUE CURRENT WRITE FUNCTION 00308 M00S00307.comcwtw +++| SX6 774B 00309 M00S00308.comcwtw +++| BX7 X6*X1 00310 M00S00309.comcwtw +++| SX2 A1 SET FET ADDRESS 00311 M00S00310.comcwtw +++| RJ =XCIO= 00312 M00S00311.comcwtw +++| WRIF$ ELSE 1 00313 M00S00312.comcwtw +++| WRITE A3-B1 00314 M00S00313.comcwtw +++| 00315 M00S00314.comcwtw +++| WTX$ ENDIF 00316 M00S00315.comcwtw +++| WTX1 SB2 A4 SET RETURN ADDRESS 00317 M00S00316.comcwtw +++| SX2 A3-B1 RESET (X2) 00318 M00S00317.comcwtw +++| JP B2 RETURN 00319 M00S00318.comcwtw +++| DCB SPACE 4 00320 M00S00319.comcwtw +++|** DCB - DUMP CIRCULAR BUFFER. 00321 M00S00320.comcwtw +++|* IF BUFFER IS BUSY, RECALL AND RETURN. 00322 M00S00321.comcwtw +++|* IF BUFFER IS NOT BUSY, REQUEST WRITE FUNCTION AND RETURN. 00323 M00S00322.comcwtw +++|* 00324 M00S00323.comcwtw +++|* ENTRY (A2) = ADDRESS OF IN. 00325 M00S00324.comcwtw +++|* (A3) = ADDRESS OF FIRST. 00326 M00S00325.comcwtw +++|* (A4) = RETURN ADDRESS. 00327 M00S00326.comcwtw +++|* (B2) = FET STATUS READ PRIOR TO READ OF OUT. 00328 M00S00327.comcwtw +++|* (X2) = IN. 00329 M00S00328.comcwtw +++|* 00330 M00S00329.comcwtw +++|* EXIT TO RETURN ADDRESS - 1. 00331 M00S00330.comcwtw +++|* (X2) = FET ADDRESS. 00332 M00S00331.comcwtw +++| 00333 M00S00332.comcwtw +++| 00334 M00S00333.comcwtw +++| DCB= SX1 B2 CHECK BUFFER STATUS 00335 M00S00334.comcwtw +++| SX6 X2 STORE IN 00336 M00S00335.comcwtw +++| LX1 59 00337 M00S00336.comcwtw +++| SA6 A2 00338 M00S00337.comcwtw +++| NG X1,DCB1 IF NOT BUSY 00339 M00S00338.comcwtw +++| ZR X1,DCB1 IF BLANK FET 00340 M00S00339.comcwtw +++| SX2 A3-B1 RESET FET ADDRESS 00341 M00S00340.comcwtw +++| RECALL 00342 M00S00341.comcwtw +++| SB2 A4-B1 CONTINUE WRITE 00343 M00S00342.comcwtw +++| JP B2 00344 M00S00343.comcwtw +++| WRIF$ IF DEF,WRIF$ 00345 M00S00344.comcwtw +++| DCB1 SA1 A3-B1 RE-ISSUE CURRENT WRITE FUNCTION 00346 M00S00345.comcwtw +++| SX6 774B 00347 M00S00346.comcwtw +++| BX7 X6*X1 00348 M00S00347.comcwtw +++| SX2 A1 SET FET ADDRESS 00349 M00S00348.comcwtw +++| RJ =XCIO= 00350 M00S00349.comcwtw +++| WRIF$ ELSE 1 00351 M00S00350.comcwtw +++| DCB1 WRITE A3-B1 00352 M00S00351.comcwtw +++| SB2 A4-B1 CONTINUE WRITE 00353 M00S00352.comcwtw +++| JP B2 00354 M00S00353.comcwtw +++| SPACE 4 00355 M00S00354.comcwtw +++| BASE * 00356 M00S00355.comcwtw +++| QUAL$ IF -DEF,QUAL$ 00357 M00S00356.comcwtw +++| QUAL * 00358 M00S00357.comcwtw +++| WTW= EQU /COMCWTW/WTW= 00359 M00S00358.comcwtw +++| WTX= EQU /COMCWTW/WTX= 00360 M00S00359.comcwtw +++| DCB= EQU /COMCWTW/DCB= 00361 M00S00360.comcwtw +++| QUAL$ ENDIF 00362 M00S00361.comcwtw +++| ENDX
cdc/nos2.source/opl.opl871/common/comcwtw.txt ยท Last modified: by 127.0.0.1