1 /3 TTY HANDLER FOR BUILD 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 /COPYRIGHT (C) 1974,1975,1977 BY DIGITAL EQUIPMENT CORPORATION 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22 /THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE 23 /AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT 24 /CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY 25 /FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. 26 / 27 /THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER 28 /UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED 29 /(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH 30 /SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL. 31 / 32 /DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE 33 /OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY 34 /DIGITAL. 35 / 36 / 37 / 38 / 39 / 40 / 41 / 42 / 43 / 44 / 45 *0 46 000000 7777 -1 47 000001 0123 DEVICE AS33;DEVICE TTY;0;1;ZBLOCK 2 000002 6363 000003 2424 000004 3100 000005 0000 000006 0001 000007 0000 000010 0000 48 49 TTYVERSION="A&77 50 51 /V3 FIXES: 52 53 /1. NOW RECOGNIZES PARITY ^Z ON OUTPUT 54 /2. NOW RECOGNIZES ^Z ON OUTPUT EVEN IF NOT 55 / FOLLOWED BY 0'S 56 /3. VERSION # IS NOW 1. 57 58 *200 59 /TELETYPE HANDLER - NOT VERY INTELLEGENT. 60 /ONLY RECOGNIZES ^Z AND ^C ON INPUT 61 /AND ^C AND ^O ON OUTPUT 62 /OH WELL, WHAT CAN YOU EXPECT IN ONE PAGE. 63 / THE LOGIC IS VERY SIMILIAR TO THE PTR AND PTP HANDLERS. 64 000200 0360 TTY360, 360 /MUST BE FIRST LOC ON PAGE! 65 000201 0001 TTY, TTYVERSION 66 000202 7600 TT7600, 7600 67 000203 6214 RDF 68 000204 1312 TAD TTYCIF 69 000205 3260 DCA TTYXIT /SAVE RETURN FIELD 70 000206 1601 TAD I TTY 71 000207 0251 AND TT70 72 000210 1321 TAD TTCDF 73 000211 3303 DCA TTYCDF /DATA FIELD OF BUFFER 74 000212 7330 CLA CLL CML RAR 75 000213 1601 TAD I TTY 76 000214 0335 AND TT3700 77 000215 7040 CMA 78 000216 3301 DCA TTYWC 79 000217 2201 ISZ TTY 80 000220 1601 TAD I TTY 81 000221 3300 DCA TTYCA /SAVE BUFFER ADDRESS 82 000222 2201 ISZ TTY 83 000223 2201 ISZ TTY 84 000224 5252 JMP TTKLG 85 000225 7620 TTYLP, SNL CLA 86 000226 5322 JMP TTYGLP /ZER LINK MEANS READ 87 000227 4302 JMS TTYTST /TEST FOR ^C 88 000230 1373 TAD TTYM14 /-203-14=-217 =-"^O" 89 000231 7650 SNA CLA 90 000232 5375 JMP TTYCTO 91 000233 1700 TAD I TTYCA /CHARACTER 1 IS LOW ORDER 8 BITS OF WORD 1 92 000234 4263 JMS TTYPCH 93 000235 3346 DCA TTYGCH 94 000236 2300 ISZ TTYCA 95 000237 7400 TT7400, 7400 96 000240 1700 TAD I TTYCA /CHARACTER 2 IS LOW ORDER 8 BITS OF WORD 2 97 000241 4263 JMS TTYPCH 98 000242 7112 CLL RTR 99 000243 7012 RTR 100 000244 1346 TAD TTYGCH 101 000245 7112 CLL RTR 102 000246 7012 RTR /CHARACTER 3 IS HIGH ORDER 4 BITS OF WORDS 1 AND 2 103 000247 4263 JMS TTYPCH /WILL SET LINK ON! 104 000250 2300 TTLOOP, ISZ TTYCA /AC HAPPENS TO BE ZERO HERE 105 000251 0070 TT70, 70 106 000252 2301 TTKLG, ISZ TTYWC 107 000253 5225 JMP TTYLP 108 000254 1303 TTYRTN, TAD TTYCDF 109 000255 7141 CLL CIA 110 000256 7620 SNL CLA 111 000257 2201 ISZ TTY /SKIP PAST ERROR RETURN 112 000260 7402 TTYXIT, HLT /RESTORE CALLING FIELDS 113 000261 7004 RAL 114 000262 5601 JMP I TTY 115 000263 0000 TTYPCH, 0 /MUST SET LINK ON! 116 000264 3302 DCA TTYTST 117 000265 1302 TAD TTYTST 118 000266 1324 TAD TTYM32 /ONLY CARE IF LOW ORDER 7 BITS ARE -32 119 000267 0374 AND TTY177 /SO ONLY LOOK AT THESE BITS 120 000270 7650 SNA CLA 121 000271 5254 JMP TTYRTN /WAS A ^Z 122 000272 1302 TAD TTYTST /GET BACK ALL 12 BITS 123 000273 4314 JMS TTPRNT 124 000274 0237 AND TT7400 /BUT RETURN ONLY LEFT THIRD 125 000275 7120 STL /**** CRUD 126 000276 5663 JMP I TTYPCH 127 000277 0212 TTY212, 212 128 IFNZRO .-TTY360-100 129 000300 0000 TTYCA, 0 130 000301 0000 TTYWC, 0 131 000302 0000 TTYTST, 0 132 000303 0000 TTYCDF, 0 133 000304 1337 TAD TTY200 134 000305 6034 KRS /TEST FOR ^C WITH FLAG UP 135 000306 1371 TAD TTM203 136 000307 7450 SNA 137 000310 6031 KSF 138 000311 5702 JMP I TTYTST 139 000312 6203 TTYCIF, CDF CIF 0 140 000313 5602 JMP I TT7600 141 000314 0000 TTPRNT, 0 142 000315 6046 TLS 143 000316 6041 TSF 144 000317 5316 JMP .-1 145 000320 5714 JMP I TTPRNT 146 000321 6201 TTCDF, CDF 0 147 148 /FOLLOWING CODE READS TTY AND PACKS IN BUFFER. 149 000322 4346 TTYGLP, JMS TTYGCH 150 000323 3700 DCA I TTYCA 151 000324 4346 TTYM32, JMS TTYGCH 152 000325 3263 DCA TTYPCH 153 000326 4346 JMS TTYGCH 154 000327 7006 RTL 155 000330 7006 RTL 156 000331 3346 DCA TTYGCH 157 000332 1346 TAD TTYGCH 158 000333 0237 AND TT7400 159 000334 1700 TAD I TTYCA 160 000335 3700 TT3700, DCA I TTYCA 161 000336 1346 TAD TTYGCH 162 000337 0200 TTY200, AND TTY360 163 000340 7106 CLL RTL 164 000341 7006 RTL /CLEARS LINK 165 000342 1263 TAD TTYPCH 166 000343 2300 ISZ TTYCA 167 000344 3700 DCA I TTYCA 168 000345 5250 JMP TTLOOP 169 IFNZRO .-TTY360-146 170 000346 0000 TTYGCH, 0 /MUST BE AT REL LOC 146 171 000347 1303 TAD TTYCDF 172 000350 7700 TT7700, SMA CLA 173 000351 5746 JMP I TTYGCH 174 000352 2302 ISZ TTYTST 175 000353 5356 JMP TTYKSF 176 000354 1277 TAD TTY212 177 000355 5367 JMP TTECHO 178 000356 6031 TTYKSF, KSF 179 000357 5356 JMP .-1 180 000360 4302 JMS TTYTST 181 000361 1372 TAD TTM27 182 000362 7450 SNA /IS IT A ^Z? 183 000363 3303 DCA TTYCDF /YES - SET END-OF-FILE FLAG 184 000364 1377 TAD TTY14 185 000365 3302 DCA TTYTST /TTYTST=-1 IF CARRIAGE RETURN 186 000366 6036 KRB 187 000367 4314 TTECHO, JMS TTPRNT /ECHO THE INPUT CHARACTER 188 000370 5746 JMP I TTYGCH 189 000371 7575 TTM203, -203 190 000372 7751 TTM27, -27 191 000373 7764 TTYM14, -14 192 000374 0177 TTY177, 177 193 IFNZRO .-TTY360-175 194 000375 6032 TTYCTO, 6032 /SHOULD BE AT REL LOC 175 FOR PATCHERS 195 000376 5254 JMP TTYRTN 196 000377 0014 TTY14, 14 197 $ TT3700 0335 TT70 0251 TT7400 0237 TT7600 0202 TT7700 0350 unreferenced TTCDF 0321 TTECHO 0367 TTKLG 0252 TTLOOP 0250 TTM203 0371 TTM27 0372 TTPRNT 0314 TTY 0201 TTY14 0377 TTY177 0374 TTY200 0337 TTY212 0277 TTY360 0200 TTYCA 0300 TTYCDF 0303 TTYCIF 0312 TTYCTO 0375 TTYGCH 0346 TTYGLP 0322 TTYKSF 0356 TTYLP 0225 TTYM14 0373 TTYM32 0324 TTYPCH 0263 TTYRTN 0254 TTYTST 0302 TTYVER 0001 TTYWC 0301 TTYXIT 0260