1 /7 OS/8 MCPIP MAGTAPE AND CASSETTE PIP 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 46 / S.R. 47 48 / REVISED FEB. 11, 1974 49 / SECOND REVISION: 7-AUG-75 50 51 52 /1. INSTALLED PATCH SEQ #1 , SEPT. 1974 DSN 53 / (NOW TRANSFERS LAST 2 BYTES CORRECTLY IN IMAGE MODE) 54 /2. BUMPED VERSION NUMBER TO V5 55 /3. FIXED /L BUG IF DEVICE NOT MAGTAPE OR CASSETTE 56 57 KCLR=6700 /CLEAR ALL 58 /CLEAR STATUS A AND B REGISTERS. 59 KSDR=6701 /SKIP ON DATA FLAG 60 KSEN=6702 /SKIP ON ERROR 61 KSBF=6703 /SKIP ON READY FLAG 62 KLSA=6704 /LOAD STATUS A FROM AC 4-11 63 /CLEAR AC, THEN 64 /LOAD 8 BIT COMPLEMENT OF STATUS A 65 /BACK INTO AC 66 KSAF=6705 /SKIP ON ANY FLAG OR ERROR 67 KGOA=6706 /ASSERT THE CONTENTS OF STATUS A, 68 /TRANSFER DATA IF READ OR WRITE 69 KRSB=6707 /READ STATUS B INTO AC 4-11 70 71 72 FIXMRI CALL=4400 73 FIXMRI EXIT=5400 74 FIXMRI INCR=2000 75 76 /CORE ALLOCATION 77 78 /00000-01777 COMMAND DECODER 79 /02000-02377 OUTPUT HANDLER 80 /02400-02777 INPUT HANDLER 81 /03000-03777 CASSETTE OUTPUT BUFFER 82 /04000-04777 CASSETTE INPUT BUFFER 83 /05000-05577 STAND ALONE CASSETTE HANDLER 84 /05600-07577 LOOKUP, ENTER, CLOSE 85 /07600-07777 OS/8 86 87 /10000-11777 USR 88 /12000-14577 PIPC 89 /14600-17577 OS/8 INPUT/OUTPUT BUFFER 90 /17600-17777 OS/8 91 /USR HAS THE FOLLOWING FREE LOCATIONS: 92 /0-6 93 /10-17 (BUT GET DESTROYED) 94 /20-37 95 96 TEMP=20 97 TEMP1=21 98 TEMP2=22 99 TEMP3=23 100 101 / STARTING ADDRESS = 12000 102 / JOB STATUS WORD = 6003 103 104 INHAND=2400 105 OUTHAND=2000 106 COBUF=3000 107 CIBUF=4000 108 109 PIPVERSION=6 110 PATCHLEV=77&"A 111 112 SPCODE=6 113 CLCODE=0 114 REWCOD=1 115 FICODE=3 116 EOCODE=5 117 RECCOD=2 118 /V3 CHANGES: 119 120 /1. SHRUNK 0S/8 BUFFER TO 3000 WORDS 121 /2. ADDED VERSION NUMBER (/V) 122 /3. MADE INDEPENDENT OF MAGIC LOCATIONS IN CASSETTE HANDLER 123 /4. ADDED MAGTAPE SUPPORT OF CASSETTE FILE STRUCTURE 124 /5. ALTMODE MEANS RETURN TO KBM 125 /6. ^C DOESN'T CLOSE CASSETTES UNLESS WE ALREADY WROTE ON IT 126 /7. FIXED BUG THAT CSA2 THRU CSA7 DIDN'T WORK 127 /8. CR ALONE TO CD GIVES NO ERROR MESSAGE 128 /9. ADDED ^O AND ^C SUPPORT TO MESSAGE PRINTOUT 129 /10. GIVE ERRORS ON ILLEGAL * OR ? IN NAME 130 /11. USES TTY: AS DEFAULT OUTPUT DEVICE ON /L 131 132 /PROPOSED: 133 /8. ALLOW *.* FOR CASSETTE INPUT 134 /9. SUPPORT OF UNLABELED MAGTAPE STANDARD 135 /10. /7 OR /9 SPECIFIES CHANNEL 136 137 /FIXES SINCE FIELD TEST : 138 139 /1. ^C ALWAYS BRINGS YOU BACK TO KBM 140 /2. FIXED BUG RE CHECK FOR FILE FULL 141 /3. MADE COMPATIBLE WITH NEW TM8E HANDLER 142 /4. TIME-OUT ON CASSETTE READ 143 /5. BE NICE-GUY IF OS/8 LOOKUP FAILURE 144 /THIS ROUTINE LEAVES WITH INTERRUPTS OFF AND DEVICE SELECTED 145 /AND READY. 146 /THE NEW UNIT NUMBER (0-7) IS IN THE AC. 147 /THE UNIT NUMBER IS IN BITS 8-11 OF THE AC. 148 /RETURN 1 IS MADE IF THE UNIT IS NOT READY. 149 /CINUSE IS SET TO 1. 150 /THE HANDLER MUST NOT ALREADY BE IN USE. 151 /THE DATA FIELD IS INTERROGATED 152 /AND A RETURN CIF CDF IS BUILT 153 /AND STORED IN LOCATION RETCIF 154 155 *5000 156 157 005000 0000 FIXDVC, 0 158 005001 3245 DCA DVC 159 005002 6214 RDF 160 005003 1377 TAD (CIF CDF 161 005004 6201 CDF 0 162 005005 3244 DCA TMP 163 005006 1600 TAD I FIXDVC 164 005007 3261 DCA ERRET 165 005010 2200 ISZ FIXDVC 166 005011 1244 TAD TMP 167 005012 3661 DCA I ERRET 168 005013 1245 TAD DVC 169 005014 7450 SNA 170 005015 5247 JMP CHECKR 171 005016 7010 RAR /MOVE UNIT TO LINK; DEVICE TO AC 172 005017 0376 AND (3 /MASK OFF DEVICE CODE 173 005020 3245 DCA DVC /SAVE DEVICE CODE 174 005021 7430 SZL 175 005022 1375 TAD (100 176 005023 3774 DCA I (ABUNIT /SET UNIT IN BIT 5 177 005024 1245 TAD DVC 178 005025 7106 CLL RTL 179 005026 7004 RAL /UGLY 180 005027 3245 DCA DVC /MOVE TO BITS 6-8 181 005030 1373 TAD (IOTBL 182 005031 3246 DCA IOTPTR 183 005032 1646 IOTLOOP,TAD I IOTPTR 184 005033 7450 SNA /END OF TABLE? 185 005034 5247 JMP CHECKR /YES 186 005035 3244 DCA TMP 187 005036 1644 TAD I TMP 188 005037 0372 AND (7707 /MASK OUT OLD DVC 189 005040 1245 TAD DVC /INSERT NEW ONE 190 005041 3644 DCA I TMP /REPLACE 191 005042 2246 ISZ IOTPTR /POINT TO NEXT ONE 192 005043 5232 JMP IOTLOOP 193 194 005044 0000 TMP, 0 195 005045 0000 DVC, 0 /DEVICE CODE 196 005046 0000 IOTPTR, 0 197 005047 4771 CHECKR, JMS I (CLEAR 198 005050 1370 TAD (200 199 005051 4767 JMS I (LOADA /SELECT DRIVE 200 005052 4766 JMS I (CHECKB 201 005053 0365 AND (7735 /IGNORE EOT/BOT FLAG 202 /AND WLO 203 005054 1364 TAD (-1 204 005055 7640 SZA CLA 205 005056 5661 JMP I ERRET /NOT READY 206 005057 2763 ISZ I (CINUSE 207 005060 5600 JMP I FIXDVC 208 209 005061 0000 ERRET, 0 /ERROR RETURN LOCATION 210 005062 0000 FIDDLE, 0 211 005063 6212 CIF 10 212 005064 4762 JMS I (FID2 /NEED ROOM 213 005065 1361 TAD (CIBUF+11 214 005066 3010 DCA 10 215 005067 1331 TAD FAST 216 005070 7640 SZA CLA 217 005071 5322 JMP DIREOL 218 005072 1360 TAD (40 219 005073 3410 DCA I 10 220 005074 1757 TAD I (CIBUF+20 221 005075 3410 DCA I 10 222 005076 1757 TAD I (CIBUF+20 223 005077 0356 AND (177 224 005100 7440 SZA 225 005101 1355 TAD (-40 226 005102 7640 SZA CLA 227 005103 1354 TAD ("/-40 228 005104 1360 TAD (40 229 005105 3332 DCA SLSH 230 005106 1753 TAD I (CIBUF+21 231 005107 3410 DCA I 10 232 005110 1332 TAD SLSH 233 005111 3410 DCA I 10 234 005112 2010 INCR 10 235 005113 2010 INCR 10 236 005114 1332 TAD SLSH 237 005115 3410 DCA I 10 238 005116 1752 TAD I (CIBUF+22 239 005117 3410 DCA I 10 240 005120 1751 TAD I (CIBUF+23 241 005121 3410 DCA I 10 242 005122 1350 DIREOL, TAD (15 243 005123 3410 DCA I 10 244 005124 1347 TAD (12 245 005125 3410 DCA I 10 246 005126 1346 TAD (32 247 005127 3410 DCA I 10 248 005130 5662 FIDLV, EXIT FIDDLE 249 250 /0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20 21 22 23 24 25 251 /F I L E N A M E S D D M M Y Y 252 /F I L E N A . M E S M M / D D / Y Y CR LF ^Z 253 254 005131 0000 FAST, 0 /0 MEANS F NOT SPECIFIED 255 005132 0257 SLSH, "/ 256 257 005133 5262 IOTBL, IOT0 258 005134 5273 IOT1 259 005135 5741 IOT4 260 005136 5336 IOT5 261 005137 5265 IOT6 262 005140 5472 IOT6C 263 005141 5254 IOT7 264 005142 0000 0 265 005146 0032 PAGE 005147 0012 005150 0015 005151 4023 005152 4022 005153 4021 005154 0217 005155 7740 005156 0177 005157 4020 005160 0040 005161 4011 005162 2400 005163 5303 005164 7777 005165 7735 005166 5253 005167 5737 005170 0200 005171 5260 005172 7707 005173 5133 005174 5747 005175 0100 005176 0003 005177 6203 266 005200 0000 UTIL, 0 267 005201 3250 DCA TEMPU 268 005202 3252 DCA REWSW /ZERO REWIND SWITCH 269 005203 1600 TAD I UTIL 270 005204 1377 TAD (-10 271 005205 7450 SNA 272 005206 2252 ISZ REWSW 273 005207 2200 ISZ UTIL 274 005210 1376 TAD (210 275 005211 3251 DCA TEMPFN 276 005212 1250 TAD TEMPU 277 005213 4775 JMS I (FIXDVC /FIX DEVICE CODE 278 005214 5226 UTEND /UNIT NOT READY 279 005215 1374 TAD (UT 280 005216 3330 DCA CRET /SET RETURN ADDRESS 281 005217 7240 STA 282 005220 3773 DCA I (RW /NOTE FACT THAT OP AINT READ 283 005221 1251 TAD TEMPFN 284 005222 4772 JMS I (LOADA 285 005223 4264 JMS GO /INITIATE UTIL 286 005224 5331 JMP CRET+1 287 005225 2200 ISZ UTIL 288 005226 7402 UTEND, HLT 289 005227 5600 JMP I UTIL 290 005230 4253 UT, JMS CHECKB /LOOK AT STATUS B 291 005231 0371 AND (50 /CHECK FOR CL, EMPTY, OR WLO 292 /GIVE NO ERROR ON WLO ************ 293 /BAD FOR WRGAP 294 005232 7450 SNA 295 005233 5242 JMP OK /NO ERRORS 296 005234 1370 TAD (-40 297 005235 7640 SZA CLA 298 005236 5241 JMP NOTOK /ERROR NOT CL 299 005237 1252 TAD REWSW 300 005240 7650 SNA CLA /CL OK IF DID REWIND 301 005241 7240 NOTOK, STA 302 005242 4260 OK, JMS CLEAR 303 005243 1303 TAD CINUSE 304 005244 7700 SMA CLA 305 005245 5225 JMP UTEND-1 306 005246 1304 TAD BSTATE /ERROR 307 005247 5226 JMP UTEND 308 309 005250 0000 TEMPU, 0 310 005251 0000 TEMPFN, 0 311 005252 0000 REWSW, 0 /1 MEANS OPERATION IS REWIND 312 005253 0000 CHECKB, 0 313 005254 6707 IOT7, KRSB /READ STATUS B INTO AC 4-11 314 005255 3304 DCA BSTATE /SAVE STATUS B 315 005256 1304 TAD BSTATE 316 005257 5653 JMP I CHECKB 317 318 005260 0000 CLEAR, 0 319 005261 3303 DCA CINUSE /LEAVE STATUS CONDITION IN AC; -1 MEANS ERROR 320 005262 6700 IOT0, KCLR /CLEAR STATUS A AND B 321 005263 5660 JMP I CLEAR 322 323 005264 0000 GO, 0 324 005265 6706 IOT6, KGOA /ASSERT CONTENTS OF STATUS A 325 005266 7200 CLA 326 005267 5664 JMP I GO 327 328 005270 0000 CHK, 0 329 005271 4767 JMS I (CHECKB 330 005272 0366 AND (374 331 005273 6701 IOT1, KSDR 332 005274 7410 SKP /DATA FLAG NOT UP - 333 005275 5670 JMP I CHK 334 005276 1365 TAD (-20 335 005277 7650 SNA CLA /IS IT END OF FILE? 336 005300 5764 JMP I (ERRR /YES, ERROR - BUT DON'T RETRY 337 005301 1304 TAD BSTATE 338 005302 5670 JMP I CHK 339 340 005303 0000 CINUSE, 0 /1 MEANS HANDLER IN USE 341 005304 0000 BSTATE, 0 /STATUS OF REGISTER B ON ERROR 342 005305 0000 DTEM, 0 343 344 005306 4763 DOPTION,JMS I (CONVRT 345 005307 7601 7601 346 005310 3305 DCA DTEM 347 005311 1762 TAD I (OUNIT 348 005312 4761 JMS I (LOOKUP 349 005313 5760 JMP I (XER4 350 005314 5320 JMP MBNF /NOT FOUND 351 005315 2305 INCR DTEM 352 005316 4757 JMS I (DELET 353 005317 5756 JMP I (XER77 /OUTPUT ERROR 354 005320 1305 MBNF, TAD DTEM 355 005321 7650 SNA CLA /ANYTHING DELETED? 356 005322 5755 JMP I (XER24 /NO 357 005323 4200 JMS UTIL 358 005324 0010 REWIND 359 005325 7200 CLA 360 005326 6213 CIF CDF 10 /YES 361 005327 5754 JMP I (DECODE 362 005330 0000 CRET, 0 363 005331 6201 CDF 0 364 005332 1353 TAD (-200 /COUNT OF HOW LONG TO WAIT 365 005333 3752 DCA I (OUTER 366 005334 4751 IOL, JMS I (CTRLC 367 005335 4750 JMS I (TIMEOUT 368 005336 6705 IOT5, KSAF 369 005337 5334 JMP IOL 370 005340 5730 EXIT CRET 371 005350 6124 PAGE 005351 6502 005352 6136 005353 7600 005354 2002 005355 7130 005356 7530 005357 6071 005360 6347 005361 6000 005362 7134 005363 7000 005364 5525 005365 7760 005366 0374 005367 5253 005370 7740 005371 0050 005372 5737 005373 5434 005374 5230 005375 5000 005376 0210 005377 7770 372 005400 0000 HANDLER,0 373 005401 3300 DCA TUN 374 005402 1600 TAD I HANDLER /GET FUNCTION CONTROL WORD 375 005403 0345 AND L70 /ISOLATE FIELD OF BUFFER 376 005404 1263 TAD LCDF 377 005405 3257 DCA WCDF 378 005406 1600 TAD I HANDLER /RETRIEVE FUNCTION CONTROL WORD 379 005407 7004 RAL /READ/WRITE BIT TO LINK 380 005410 7204 CLA RAL 381 005411 3234 DCA RW /RW=1 IF WRITE 382 005412 2200 ISZ HANDLER /POINT TO BUFFER ADDRESS 383 005413 1600 TAD I HANDLER /GET BUFFER ADDRESS 384 005414 3357 DCA BUFFER /SAVE IT 385 005415 2200 ISZ HANDLER /POINT TO ERROR RETURN 386 005416 1300 TAD TUN 387 005417 4777 JMS I (FIXDVC 388 005420 5432 LV /NOT READY 389 005421 1257 TAD WCDF 390 005422 3343 DCA BFIELD 391 005423 1257 TAD WCDF 392 005424 3300 DCA BFLD 393 005425 7346 STA CLL RTL /TAD (-3 394 005426 3235 DCA ERKNT 395 005427 4236 JMS SETUP /SET UP READ OR WRITE 396 005430 5776 JMP I (CRET+1 397 005431 2200 ISZ HANDLER /POINT TO GOOD RETURN 398 005432 7402 LV, HLT 399 005433 5600 JMP I HANDLER 400 005434 0000 RW, 0 /1 IF WRITE (-1 IF UTIL) 401 005435 7775 ERKNT, -3 402 005436 0000 SETUP, 0 403 005437 1234 TAD RW 404 005440 1375 TAD (WRITEX 405 005441 3774 DCA I (CRET /SET RETURN ADDRESS 406 005442 1357 TAD BUFFER 407 005443 3355 DCA BPTR 408 005444 1305 TAD BSIZE 409 005445 7040 CMA /WANT TO READ ONE MORE 410 005446 1234 TAD RW 411 005447 3354 DCA BKNT 412 005450 1234 TAD RW 413 005451 3306 DCA OUTSW 414 005452 1234 TAD RW 415 005453 7106 CLL RTL 416 005454 7006 RTL /WRITE FN CODE=20 417 005455 1373 TAD (200 /SELECT AND INTERRUPT ENABLE 418 005456 4772 JMS I (LOADA 419 005457 7402 WCDF, HLT 420 005460 1234 TAD RW 421 005461 7640 SZA CLA 422 005462 1755 TAD I BPTR 423 005463 6201 LCDF, CDF 0 424 005464 4771 JMS I (GO 425 005465 5636 JMP I SETUP 426 427 005466 4770 READX, JMS I (CHK 428 005467 0303 AND L374 429 005470 7440 SZA 430 005471 5321 JMP ERRX 431 005472 6706 IOT6C, KGOA /GET CHAR JUST READ 432 005473 3356 DCA BYTE 433 005474 2354 ISZ BKNT 434 005475 7410 SKP 435 005476 5307 JMP RWCRC 436 005477 1356 BMODE, TAD BYTE 437 TUN, 438 005500 7402 BFLD, HLT 439 005501 3755 DCA I BPTR 440 005502 2355 ISZ BPTR 441 005503 0374 L374, 374 442 005504 5776 JMP I (CRET+1 /CRET ALREADY SET UP 443 444 005505 0200 BSIZE, 200 445 005506 0000 OUTSW, 0 /1 MEANS WE BEGAN TO WRITE 446 005507 1367 RWCRC, TAD (260 /ENABLE, ENABLE INTER, READ CRC 447 005510 4772 JMS I (LOADA 448 005511 4771 JMS I (GO 449 005512 4774 JMS I (CRET 450 005513 4770 JMS I (CHK 451 005514 4771 CRCMN, JMS I (GO 452 005515 4774 JMS I (CRET 453 005516 4766 JMS I (CHECKB 454 005517 0365 AND (7775 /IGNORE WLO 455 005520 1364 TAD (-1 456 005521 7650 ERRX, SNA CLA /ERRORS? 457 005522 5326 JMP ERRR+1 /NO - CLEAN BILL OF HEALTH 458 005523 2235 ISZ ERKNT /TRY 3 TIMES 459 005524 5763 JMP I (ERRCOV /RETRY 460 005525 7240 ERRR, STA /ERROR WHILE READING CRC 461 005526 4762 JMS I (CLEAR 462 005527 1761 TAD I (CINUSE 463 005530 7700 SMA CLA 464 005531 5231 JMP LV-1 465 005532 1760 TAD I (BSTATE 466 005533 5232 JMP LV 467 005534 5266 WRITEX, JMP READX 468 005535 4770 JMS I (CHK 469 005536 7440 SZA 470 005537 5321 JMP ERRX 471 005540 2354 ISZ BKNT 472 005541 7410 SKP 473 005542 5351 JMP WCRC 474 005543 7402 BFIELD, HLT 475 005544 2355 ISZ BPTR 476 005545 0070 L70, 70 477 005546 1755 TAD I BPTR 478 005547 4771 JMS I (GO 479 005550 5776 JMP I (CRET+1 480 481 482 005551 1367 WCRC, TAD (260 483 005552 4772 JMS I (LOADA 484 005553 5314 JMP CRCMN 485 005554 0000 BKNT, 0 /NUMBER OF CHARS EXPECTED 486 005555 0000 BPTR, 0 /NEXT LOCATION IN BUFFER TO STORE INTO 487 005556 0000 BYTE, 0 /TEMPORARILY HOLDS BYTE FOUND 488 005557 0000 BUFFER, 0 489 005560 5304 PAGE 005561 5303 005562 5260 005563 6110 005564 7777 005565 7775 005566 5253 005567 0260 005570 5270 005571 5264 005572 5737 005573 0200 005574 5330 005575 5534 005576 5331 005577 5000 490 / LOOKUP, ETC. 491 492 F1=10 493 READ=0 494 WRITE=4000 495 496 REWIND=10 497 BACKFIL=30 498 WRGAP=40 499 BACKBLOCK=50 500 SKPFIL=70 501 502 HSIZE=40 503 OBUFFER=4600 /LOCATION OF OS/8 I/O BUFFER 504 BINBUF=OBUFFER 505 OBUFLEN=3000 506 HOBUFLEN=OBUFLEN%2 507 MAXBLK=OBUFLEN%400 508 509 005600 0000 FILNUM, 0 510 / ENTER 511 512 / TAD UNIT 513 / JMS I (ENTER 514 / 515 / 516 517 / ENTER FILENAME AS SPECIFIED IN SINCH 518 / USER MUST SET SINCH BUT ONLY FIRST 25 (OCTAL) LOCATIONS. 519 520 005601 0000 ENTER, 0 521 005602 4777 JMS I (LOOKUP 522 005603 5220 JMP ERET /ERROR WHILE READING 523 005604 5207 JMP NTF 524 005605 4776 JMS I (DELET 525 005606 5220 JMP ERET /ERROR WHILE DELETING 526 005607 4227 NTF, JMS BACK 527 005610 5220 JMP ERET /ERROR BACKING UP 528 005611 4746 JMS I QH1 /WRITE NEW HEADER 529 005612 4000 WRITE 530 005613 7200 SINCH 531 005614 5220 JMP ERET /CASSETTE NOT READY 532 005615 1775 TAD I (RECSIZ 533 005616 3774 DCA I (BSIZE 534 005617 2201 INCR ENTER 535 005620 5601 ERET, EXIT ENTER 536 537 005621 0000 RDOR, 0 538 005622 0373 AND (374 /CASSETTE ONLY 539 005623 1372 TAD (-200 540 005624 7640 SZA CLA /WAS ERROR JUST CRC? 541 005625 5627 EXIT BACK /NO 542 005626 5621 EXIT RDOR /YES, OK CONTINUE 543 005627 0000 BACK, 0 544 005630 4745 BK4, JMS I QU1 545 005631 0030 BK2, BACKFIL /GO BACK TO FILE GAP 546 005632 5627 EXIT BACK 547 005633 4745 BK3, JMS I QU1 548 005634 0050 BACKBLOCK /BACK TO LAST RECORD 549 005635 5253 JMP BKERR 550 005636 1775 TAD I (RECSIZ 551 005637 3774 DCA I (BSIZE 552 005640 4746 JMS I QH1 /READ LAST RECORD OF PREV FILE 553 005641 0010 READ+F1 /DON'T STORE IN BUFFER 554 005642 4600 BINBUF 555 005643 4221 JMS RDOR /^******* 556 /ERROR READING LAST BLOCK 557 005644 4745 NEWGAP, JMS I QU1 558 005645 0040 WRGAP /WRITE A NEW GAP 559 005646 5627 EXIT BACK 560 005647 1371 BK9, TAD (HSIZE 561 005650 3774 DCA I (BSIZE 562 005651 2227 INCR BACK 563 005652 5627 EXIT BACK 564 565 005653 0370 BKERR, AND (3775 /CASSETTES ONLY 566 005654 1367 TAD (-41 567 005655 7640 SZA CLA /WAS ERROR CLEAR LEADER? 568 005656 5627 EXIT BACK 569 005657 5244 JMP NEWGAP 570 571 005660 5247 BK1, JMP BK9 572 573 /FOR MAGTAPES: 574 575 /BK2_BACKBLOCK 576 /BK3_BK1 577 005661 0000 CLOSE, 0 578 005662 4745 JMS I QU1 579 005663 0040 WRGAP 580 005664 5277 JMP CLRET /ERROR WHILE WRITING GAP 581 005665 1371 TAD (HSIZE 582 005666 3774 DCA I (BSIZE 583 005667 4746 JMS I QH1 584 005670 4000 WRITE /WRITE SENTINEL 585 005671 6104 ZER 586 005672 5277 JMP CLRET 587 005673 4745 JMS I QU1 588 005674 0010 REWIND 589 005675 5277 JMP CLRET 590 005676 2261 INCR CLOSE /SKIP ERROR RETURN 591 005677 5661 CLRET, EXIT CLOSE 592 005700 0000 CRED, 0 593 005701 1766 TAD I (INRECSZ 594 005702 3774 DCA I (BSIZE 595 005703 1765 TAD I (IUNIT 596 005704 4746 JMS I QH1 597 005705 0000 READ 598 005706 4000 CIBUF 599 005707 5316 JMP INER 600 005710 1364 TAD (CIBUF 601 005711 3763 DCA I (CIPTR 602 005712 1766 TAD I (INRECSZ 603 005713 7041 CIA 604 005714 3762 DCA I (CIKNT 605 / CLA IAC 606 / DCA DATAFLG 607 005715 5700 EXIT CRED 608 005716 0344 INER, AND EOFBIT 609 005717 7640 SZA CLA /REAL ERROR? 610 005720 5761 JMP I (XER4 /YES 611 / TAD DATAFLG 612 / SNA CLA /READ ANY DATA? 613 / JMP INTO /NO REWIND 614 / DCA DATAFLG /YES, COULD CLOSE OUTPUT AND OPEN NEXT INPUT 615 005721 7200 INTO, CLA 616 005722 1765 TAD I (IUNIT 617 005723 4745 JMS I QU1 618 005724 0010 REWIND 619 005725 7200 CLA 620 005726 1760 TAD I (BIPTR 621 005727 6213 CIF CDF 10 /NO, MERELY END-OF-FILE 622 005730 1357 TAD (-OBUFFER+377 623 005731 7106 CLL RTL 624 005732 7006 RTL 625 005733 7004 RAL 626 005734 0356 AND (17 627 005735 3755 DCA I (INTEN /NUMBER OF BLOCKS GOT 628 005736 5754 JMP I (XFIN 629 630 005737 0000 LOADA, 0 631 005740 1347 TAD ABUNIT 632 005741 6704 IOT4, KLSA 633 005742 7200 CLA 634 005743 5737 JMP I LOADA 635 636 005744 0254 EOFBIT, 254 /CHANGED TO 3673 FOR MAGTAPE 637 /DATAFLG,0 /1 MEANS READ DATA 638 005745 5200 QU1, UTIL 639 005746 5400 QH1, HANDLER 640 005747 0000 ABUNIT, 0 641 005754 2655 PAGE 005755 2645 005756 0017 005757 3577 005760 6477 005761 6347 005762 6600 005763 6601 005764 4000 005765 7135 005766 7136 005767 7737 005770 3775 005771 0040 005772 7600 005773 0374 005774 5505 005775 6337 005776 6071 005777 6000 642 643 / LOOKUP 644 645 / TAD UNIT 646 / JMS I (LOOKUP 647 / I/O ERROR RETURN 648 / 649 / 650 / ALWAYS LOOKS FOR THING SPECIFIED IN SINCH 651 652 006000 0000 LOOKUP, 0 653 006001 3266 DCA P1 654 006002 6211 CDF 10 655 006003 1777 TAD I (7644 656 006004 6201 CDF 0 657 006005 0376 AND (10 /IS /U SPECIFIED? 658 006006 7640 SZA CLA 659 006007 5253 JMP GOODRT /YES, DO NOTHING 660 006010 1266 TAD P1 661 006011 4706 JMS I QU2 662 006012 0010 REWIND 663 006013 5255 JMP ERRIT 664 006014 1375 TAD (HSIZE /SET LENGTH OF RECORD HEADER 665 006015 3774 DCA I (BSIZE 666 006016 3773 DCA I (FILNUM 667 006017 5223 FL1, JMP FL2 /ZERO THIS LOCATION FOR MAGTAPES 668 006020 4706 FLOOP, JMS I QU2 669 006021 0070 SKPFIL 670 006022 5255 JMP ERRIT 671 006023 2773 FL2, INCR I (FILNUM 672 006024 4705 JMS I QH2 673 006025 0000 READ 674 006026 7240 INCH 675 006027 5255 JMP ERRIT 676 006030 1372 TAD (INCH 677 006031 3266 DCA P1 678 006032 1666 TAD I P1 679 006033 7650 SNA CLA /SENTINEL FILE? 680 006034 5254 JMP NFNDRET /YES, NOT FOUND 681 006035 1371 TAD (SINCH /NO, IS THIS THE ONE WANTED? 682 006036 3267 DCA P2 683 006037 1370 TAD (-10 684 006040 3270 DCA SCNT 685 006041 1666 SLOOP, TAD I P1 686 006042 7041 CIA 687 006043 1667 TAD I P2 688 006044 0367 AND (177 /ONLY LAST 7 BITS NEED MATCH 689 006045 7640 SZA CLA 690 006046 5220 JMP FLOOP /FILE KEY NOT ONE DESIRED 691 006047 2266 INCR P1 692 006050 2267 INCR P2 693 006051 2270 ISZ SCNT 694 006052 5241 JMP SLOOP 695 006053 2200 GOODRT, INCR LOOKUP /SKIP NOT FOUND RETURN 696 006054 2200 NFNDRET,INCR LOOKUP /SKIP ERROR RETURN 697 006055 7200 ERRIT, CLA 698 006056 1766 TAD I (RECSIZ 699 006057 3774 DCA I (BSIZE /BE NICE TO USER 700 006060 5600 LRET, EXIT LOOKUP /BYE-BYE 701 702 006061 0265 ERRT, AND EOTBIT /REAL ERROR? 703 006062 7640 SZA CLA 704 006063 5255 JMP ERRIT /YES 705 006064 5254 JMP NFNDRET /NO, MERELY END-OF CASSETTE 706 707 /END OF CASSETTD IS SIGNALLED BY 708 709 /A SENTINEL FILE 710 /B DOUBLE FILE GAP 711 /C EOT 712 713 006065 0314 EOTBIT, 314 /CHANGE TO 3663 FOR MAGTAPE 714 006066 0000 P1, 0 715 006067 0000 P2, 0 716 006070 0000 SCNT, 0 717 006071 0000 DELET, 0 718 006072 4765 JMS I (BACK 719 006073 5671 EXIT DELET 720 006074 4705 JMS I QH2 /WRITE EMPTY HEADER 721 006075 4010 WRITE+10 722 006076 4500 EMPTINCH 723 006077 5671 EXIT DELET /ERROR WHILE DELETING 724 006100 7344 CLL STA RAL /-2 725 006101 1200 TAD LOOKUP 726 006102 3200 DCA LOOKUP 727 006103 5220 JMP FLOOP /JUMP INTO LOOKUP TO CONTINUE 728 006104 0000 ZER, 0 729 730 006105 5400 QH2, HANDLER 731 006106 5200 QU2, UTIL 732 006107 5223 FL3, JMP FL2 733 006110 4764 ERRCOV, JMS I (CLEAR 734 006111 4763 JMS I (CTRLC 735 006112 1362 TAD (250 736 006113 4761 JMS I (LOADA 737 006114 4760 JMS I (GO /BACKSPACE BLOCK 738 006115 4757 JMS I (CRET /WAIT 739 006116 4756 JMS I (CHECKB 740 006117 0355 AND (374 /KILL WRITE-LOCK BIT 741 006120 7640 SZA CLA 742 006121 5754 JMP I (ERRR 743 006122 4753 JMS I (SETUP /RE-SET UP OPERATION 744 006123 5752 JMP I (CRET+1 /GO AWAY 745 006124 0000 TIMEOUT,0 746 006125 2335 ISZ INNER 747 006126 5724 JMP I TIMEOUT 748 006127 2336 ISZ OUTER 749 006130 5724 JMP I TIMEOUT 750 006131 1751 TAD I (RW / I/O HAS TAKEN A LOT OF TIME 751 006132 7640 SZA CLA /IS IT A READ OP? 752 006133 5724 JMP I TIMEOUT /NO, RETURN 753 006134 5754 JMP I (ERRR /YES, ERROR 754 755 006135 0000 INNER, 0 756 006136 7600 OUTER, -200 757 006151 5434 PAGE 006152 5331 006153 5436 006154 5525 006155 0374 006156 5253 006157 5330 006160 5264 006161 5737 006162 0250 006163 6502 006164 5260 006165 5627 006166 6337 006167 0177 006170 7770 006171 7200 006172 7240 006173 5600 006174 5505 006175 0040 006176 0010 006177 7644 758 /SEND CONTENTS OF OS/8 BUFFER TO CASSETTE 759 /VIA CASSETTE OUTPUT BUFFER 760 761 006200 0000 CWRITE, 0 762 006201 1377 TAD (OBUFFER 763 006202 3250 DCA BUPTR /PT TO BEGIN OF BUFFER 764 006203 6211 CDF 10 765 006204 1776 TAD I (INTEN /GET NO. OF BLOCKS READ 766 006205 7450 SNA 767 006206 5246 JMP CWLV 768 006207 6201 CDF 0 769 006210 7112 CLL RTR 770 006211 7012 RTR 771 006212 7010 RAR /CONVERT TO WORDS 772 006213 7001 IAC 773 006214 0375 AND (7776 /ROUND UP TO EVEN NO. 774 006215 7110 CLL RAR /DIVIDE BY TWO 775 006216 7041 CIA /USE AS COUNT OF DOUBLE-WORDS 776 006217 3251 DCA BUKNT /2000 TWO-WORD ENTRIES 777 006220 6211 CWLOOP, CDF 10 778 006221 1650 TAD I BUPTR 779 006222 4252 JMS CWR /SENT TO CASSETTE OUTPUT BUFFER 780 006223 6211 CDF 10 781 006224 1650 TAD I BUPTR 782 006225 0374 AND (7400 783 006226 3021 DCA TEMP1 784 006227 2250 INCR BUPTR /PT TO 2ND HALF 785 006230 1650 TAD I BUPTR 786 006231 4252 JMS CWR 787 006232 6211 CDF 10 788 006233 1650 TAD I BUPTR 789 006234 0374 AND (7400 790 006235 7112 CLL RTR 791 006236 7012 RTR 792 006237 1021 TAD TEMP1 793 006240 7012 RTR 794 006241 7012 RTR 795 006242 4252 JMS CWR 796 006243 2250 INCR BUPTR /PT TO NEXT DOUBLE-WORD 797 006244 2251 ISZ BUKNT /AT END OF BUFFER? 798 006245 5220 JMP CWLOOP /NO 799 006246 6213 CWLV, CIF CDF 10 800 006247 5600 EXIT CWRITE /YES, RETURN 801 006250 0000 BUPTR, 0 /PTS INTO OBUUFER 802 006251 0000 BUKNT, 0 803 /INSERT CHAR IN CASSETTE OUTPUT BUFFER 804 /AND OUTPUT BUFFER IF BUFFER FULL 805 806 006252 0000 CWR, 0 807 006253 0373 AND (377 808 006254 6201 CDF 0 809 006255 3356 DCA CWTMP 810 006256 1353 TAD LDRFLG 811 006257 7640 SZA CLA 812 006260 4772 JMS I (LDRTST 813 006261 6211 CDF 10 814 006262 1771 TAD I (7643 815 006263 7006 RTL /PUT /B OPTION IN LINK 816 006264 6201 CDF 0 817 006265 7620 SNL CLA 818 006266 5273 JMP GOK 819 006267 1356 TAD CWTMP 820 006270 1313 TAD M200 821 006271 7650 SNA CLA 822 006272 5770 JMP I (PREFIN 823 006273 1355 GOK, TAD CWTMP2 824 006274 4302 JMS CWR2 825 006275 1354 TAD CWTMP1 826 006276 3355 DCA CWTMP2 827 006277 1356 TAD CWTMP 828 006300 3354 DCA CWTMP1 829 006301 5652 CWREX, EXIT CWR 830 831 006302 0000 CWR2, 0 832 006303 7510 SPA 833 006304 5313 JMP CWRIGN /IGNORE -1 834 006305 6201 CDF 0 835 006306 3740 DCA I COPTR /INSERT CHAR IN COBUF 836 006307 2340 INCR COPTR 837 006310 2341 ISZ COKNT /COBUF FULL? 838 006311 5702 EXIT CWR2 /NO, SO RETURN 839 006312 4315 JMS CWRI 840 M200, 841 006313 7600 CWRIGN, 7600 /CLA 842 006314 5702 EXIT CWR2 843 006315 0000 CWRI, 0 844 006316 1341 TAD COKNT 845 006317 1337 TAD RECSIZ 846 006320 7650 SNA CLA 847 006321 5715 EXIT CWRI /DO NOTHING IF BUFFER EMPTY 848 006322 1337 TAD RECSIZ 849 006323 3767 DCA I (BSIZE 850 006324 1766 TAD I (OUNIT 851 006325 4757 JMS I QH3 /YES, WRITE OUT BUFFER 852 006326 4000 WRITE /WRITE FROM FIELD 0 853 006327 3000 PCOBUF, COBUF /LOCATION COBUF 854 006330 5342 JMP XER7 /OUTPUT ERROR 855 006331 1327 TAD PCOBUF 856 006332 3340 DCA COPTR /BUFFER IS NOW EMPTY 857 006333 1337 TAD RECSIZ 858 006334 7041 CIA 859 006335 3341 DCA COKNT 860 006336 5715 EXIT CWRI 861 862 006337 0000 RECSIZ, 0 /RECORD SIZE ON OUTPUT 863 006340 3000 COPTR, COBUF /PTS TO NEXT FREE LOCATION IN COBUF 864 006341 7000 COKNT, -1000 /NUMBER OF EMPTY SLOTS LEFT IN COBUF 865 866 006342 6213 XER7, CIF CDF 10 867 006343 0365 AND (40 868 006344 7640 SZA CLA /CLEAR LEADER? 869 006345 5764 JMP I (ER5 /YES, DEVICE FULL 870 006346 5763 JMP I (ER7 /OUTPUT ERROR 871 006347 6213 XER4, CIF CDF 10 872 006350 5762 JMP I (ER4 873 006351 6213 XER8, CIF CDF 10 874 006352 5761 JMP I (ER8 875 876 006353 0000 LDRFLG, 0 /NON-ZERO IF IGNORING LEADER 877 006354 7777 CWTMP1, -1 878 006355 7777 CWTMP2, -1 879 006356 0000 CWTMP, 0 880 006357 5400 QH3, HANDLER 881 006361 2465 PAGE 006362 2667 006363 3537 006364 2475 006365 0040 006366 7134 006367 5505 006370 6400 006371 7643 006372 7300 006373 0377 006374 7400 006375 7776 006376 2645 006377 4600 882 006400 1377 PREFIN, TAD (200 883 006401 4776 JMS I (CWR2 /WRITE OUT TRAILER 884 006402 5207 JMP CFIN2 /BUT NO CHECKSUM 885 006403 1775 CFIN, TAD I (CWTMP2 /V3C 886 006404 4776 JMS I (CWR2 887 006405 1774 TAD I (CWTMP1 /V3C 888 006406 4776 JMS I (CWR2 889 006407 4773 CFIN2, JMS I (CWRI 890 006410 1772 TAD I (OUNIT 891 006411 4771 XCLOSE, JMS I (CLOSE 892 006412 5770 JMP I (XER8 893 006413 6213 XLV, CIF CDF 10 894 006414 5767 JMP I (DECODE 895 CTRTEM, 896 006415 0000 CREAD, 0 897 006416 1366 TAD (OBUFFER 898 006417 3277 DCA BIPTR 899 006420 1365 TAD (-OBUFLEN 900 006421 3300 DCA BIKNT 901 006422 6211 ZRLUP, CDF 10 902 006423 3677 DCA I BIPTR /ZERO BUFFER 903 006424 7201 CLA IAC 904 006425 0764 AND I (7643 905 006426 7640 SZA CLA 906 006427 1363 TAD (DCRE-CRE /GOT L OPTION 907 006430 1362 TAD (CRE 908 006431 6201 CDF 0 909 006432 3301 DCA XCRE /PT TO INPUT SUBR 910 006433 2277 INCR BIPTR 911 006434 2300 ISZ BIKNT 912 006435 5222 JMP ZRLUP 913 006436 1366 TAD (OBUFFER 914 006437 3277 DCA BIPTR 915 006440 1361 TAD (-HOBUFLEN 916 006441 3300 DCA BIKNT /# OF DOUBLE-WORDS 917 006442 4701 CRLOOP, JMS I XCRE 918 006443 6211 CDF 10 919 006444 3677 DCA I BIPTR 920 006445 4701 JMS I XCRE 921 006446 3022 DCA TEMP2 922 006447 4701 JMS I XCRE 923 006450 3023 DCA TEMP3 924 006451 6211 CDF 10 925 006452 1023 TAD TEMP3 926 006453 7006 RTL 927 006454 7006 RTL 928 006455 0360 AND (7400 929 006456 1677 TAD I BIPTR 930 006457 3677 DCA I BIPTR 931 006460 2277 INCR BIPTR 932 006461 1023 TAD TEMP3 933 006462 7012 RTR 934 006463 7012 RTR 935 006464 7010 RAR 936 006465 0360 AND (7400 937 006466 1022 TAD TEMP2 938 006467 3677 DCA I BIPTR 939 006470 2277 INCR BIPTR 940 006471 2300 ISZ BIKNT 941 006472 5242 JMP CRLOOP /REITERATE 942 006473 6213 CIF CDF 10 943 006474 1357 TAD (MAXBLK 944 006475 3756 DCA I (INTEN /READ 10 BLOCKS 945 006476 5615 EXIT CREAD /ALL DONE 946 006477 0000 BIPTR, 0 /PTS INTO OBUFFER 947 006500 0000 BIKNT, 0 948 006501 6602 XCRE, CRE 949 950 006502 0000 CTRLC, 0 951 006503 6031 KSF 952 006504 5702 EXIT CTRLC 953 006505 1355 TAD (7600 954 006506 6034 KRS 955 006507 1354 TAD (-7603 956 006510 7640 SZA CLA 957 006511 5702 EXIT CTRLC 958 006512 4753 JMS I (CLEAR 959 006513 1772 TAD I (OUNIT 960 006514 7710 SPA CLA 961 006515 5755 JMP I (7600 962 006516 1772 TAD I (OUNIT 963 006517 3215 DCA CTRTEM 964 006520 7240 STA 965 006521 3772 DCA I (OUNIT 966 006522 1215 TAD CTRTEM 967 006523 4771 JMS I (CLOSE 968 006524 5770 JMP I (XER8 969 006525 5755 JMP I (7600 970 006526 1752 LOPTION,TAD I (IUNIT 971 006527 4743 JMS I QU3 972 006530 0010 REWIND 973 006531 5751 JMP I (INER 974 006532 7201 CLA IAC 975 006533 3750 DCA I (CIBUF 976 006534 5340 LM1, JMP LM2 /ZERO FOR MAGTAPE 977 006535 4743 JMS I QU3 978 006536 0070 SKPFIL 979 006537 5751 JMP I (INER 980 006540 6213 LM2, CIF CDF 10 981 006541 5747 JMP I (CHLOOP 982 006542 5340 LM3, JMP LM2 983 006543 5200 QU3, UTIL 984 006547 2107 PAGE 006550 4000 006551 5716 006552 7135 006553 5260 006554 0175 006555 7600 006556 2645 006557 0006 006560 7400 006561 6400 006562 6602 006563 0021 006564 7643 006565 5000 006566 4600 006567 2002 006570 6351 006571 5661 006572 7134 006573 6315 006574 6354 006575 6355 006576 6302 006577 0200 985 006600 7777 CIKNT, -1 /ONE'S COMPLEMENT OF # OF BYTES LEFT IN CIBUF 986 006601 4000 CIPTR, CIBUF /PTS TO NEXT BYTE IN CIBUF TO BE READ 987 988 006602 0000 CRE, 0 989 006603 6201 CDF 0 990 006604 1257 TAD FTFLG /FIRST TIME THROUGH? 991 006605 7640 SZA CLA 992 006606 5241 JMP FT /YES 993 006607 1261 TAD TLRFLG 994 006610 7650 SNA CLA 995 006611 5316 JMP EPI /TRAILER 996 006612 2200 ISZ CIKNT 997 006613 7410 SKP 998 006614 4777 JMS I (CRED 999 006615 1601 TAD I CIPTR 1000 006616 4244 JMS CHKSUM 1001 006617 4267 JMS CHKTLR 1002 006620 1601 TAD I CIPTR 1003 006621 2201 INCR CIPTR 1004 / AND (377 1005 006622 5602 EXIT CRE 1006 1007 1008 /READ DIRECTORY 1009 006623 0000 DCRE, 0 1010 006624 6201 CDF 0 1011 006625 2200 ISZ CIKNT 1012 006626 7410 SKP 1013 006627 4323 JMS DCRED 1014 006630 1601 TAD I CIPTR 1015 006631 1376 TAD (-32 1016 006632 7450 SNA 1017 006633 5224 JMP DCRE+1 /ALLOW '32' TO SHORTEN BUFFER 1018 006634 1375 TAD (32 1019 006635 7450 SNA 1020 006636 1374 TAD (232 1021 006637 2201 INCR CIPTR 1022 006640 5623 EXIT DCRE 1023 006641 3257 FT, DCA FTFLG 1024 006642 1373 TAD (200 /SEND LEADER 1025 006643 5602 EXIT CRE 1026 1027 006644 0000 CHKSUM, 0 1028 006645 3255 DCA CHTEM 1029 006646 1255 TAD CHTEM 1030 006647 0373 AND (200 1031 006650 7650 SNA CLA 1032 006651 1255 TAD CHTEM 1033 006652 1256 TAD CHECKSUM 1034 006653 3256 DCA CHECKSUM 1035 006654 5644 EXIT CHKSUM 1036 006655 0000 CHTEM, 0 1037 006656 0000 CHECKSUM,0 1038 006657 0001 FTFLG, 1 /1 IF FIRST TIME HERE 1039 006660 6662 CHKPTR, CHKTBL 1040 006661 0000 TLRFLG, 0 1041 1042 006662 0000 CHKTBL, 0 /CHECKSUM LEFT PART 1043 006663 0000 0 /CHECKSUM RIGHT PART 1044 006664 0200 200 /TRAILER 1045 006665 0032 32 /CTRL/Z 1046 006666 7777 -1 /TABLE END 1047 1048 006667 0000 CHKTLR, 0 1049 006670 6211 CDF 10 1050 006671 1772 TAD I (7643 1051 006672 6201 CDF 0 1052 006673 7006 RTL /B SWITCH TO LINK 1053 006674 7620 SNL CLA 1054 006675 5667 EXIT CHKTLR 1055 006676 1601 TAD I CIPTR 1056 006677 1371 TAD (-200 1057 006700 7640 SZA CLA 1058 006701 5667 EXIT CHKTLR 1059 006702 3261 DCA TLRFLG 1060 006703 1370 TAD (CHKTBL 1061 006704 3260 DCA CHKPTR 1062 006705 1256 TAD CHECKSUM 1063 006706 7012 RTR 1064 006707 7012 RTR 1065 006710 7012 RTR 1066 006711 0367 AND (77 1067 006712 3262 DCA CHKTBL 1068 006713 1256 TAD CHECKSUM 1069 006714 0367 AND (77 1070 006715 3263 DCA CHKTBL+1 1071 006716 1660 EPI, TAD I CHKPTR 1072 006717 7510 SPA 1073 006720 5766 JMP I (INTO 1074 006721 2260 INCR CHKPTR 1075 006722 5602 EXIT CRE 1076 006723 0000 DCRED, 0 1077 006724 1365 TAD (40 1078 006725 3764 DCA I (BSIZE 1079 006726 1734 TAD I PCIBUF 1080 006727 7650 SNA CLA 1081 006730 5766 JMP I (INTO 1082 006731 1763 TAD I (IUNIT 1083 006732 4755 JMS I QH4 1084 006733 0000 READ 1085 006734 4000 PCIBUF, CIBUF 1086 006735 5762 JMP I (INER 1087 006736 1334 TAD PCIBUF 1088 006737 3201 DCA CIPTR 1089 006740 1601 TAD I CIPTR 1090 006741 7640 SZA CLA 1091 006742 1361 TAD (-23 1092 006743 1360 TAD (-2 1093 006744 3200 DCA CIKNT 1094 006745 4757 JMS I (FIDDLE 1095 006746 1601 TAD I CIPTR 1096 006747 7650 SNA CLA 1097 006750 5723 EXIT DCRED 1098 006751 4756 JMS I QU4 1099 006752 0070 SKPFIL 1100 006753 5762 JMP I (INER 1101 006754 5723 EXIT DCRED 1102 1103 006755 5400 QH4, HANDLER 1104 006756 5200 QU4, UTIL 1105 /THIS WAS VERY UNOPTIMAL ADDING IN MAGTAPE SUPPORT 1106 /AFTER THE PROGRAM WAS ALL DONE AND BURIED. 1107 /IT COULD HAVE BEEN DONE IN A MUCH BETTER METHOD 1108 /IF IT WAS DESIGNED IN BEFORE THE PROGRAM WAS WRITTEN. 1109 006757 5062 PAGE 006760 7776 006761 7755 006762 5716 006763 7135 006764 5505 006765 0040 006766 5721 006767 0077 006770 6662 006771 7600 006772 7643 006773 0200 006774 0232 006775 0032 006776 7746 006777 5700 1110 /FIRST ARG: PTS TO OS/8 FILENAME IN FIELD 1 1111 1112 007000 0000 CONVRT, 0 1113 007001 7240 STA 1114 007002 1600 TAD I CONVRT 1115 007003 3300 DCA ONPTR 1116 007004 2200 INCR CONVRT 1117 007005 1377 TAD (SINCH 1118 007006 3301 DCA CNPTR 1119 007007 1376 TAD (-4 1120 007010 3302 DCA CKNT 1121 007011 6211 CONLUP, CDF 10 1122 007012 2300 INCR ONPTR 1123 007013 1700 TAD I ONPTR 1124 007014 6201 CDF 0 1125 007015 7012 RTR 1126 007016 7012 RTR 1127 007017 7012 RTR 1128 007020 4271 JMS CNV 1129 007021 3701 DCA I CNPTR 1130 007022 2301 INCR CNPTR 1131 007023 6211 CDF 10 1132 007024 1700 TAD I ONPTR 1133 007025 6201 CDF 0 1134 007026 4271 JMS CNV 1135 007027 3701 DCA I CNPTR 1136 007030 2301 INCR CNPTR 1137 007031 2302 ISZ CKNT 1138 007032 5211 JMP CONLUP 1139 007033 1375 TAD (40 1140 007034 3701 DCA I CNPTR 1141 007035 6211 CDF 10 1142 007036 1774 TAD I (7643 1143 007037 6201 CDF 0 1144 007040 7006 RTL 1145 007041 7620 SNL CLA 1146 007042 5600 EXIT CONVRT / NOT /B 1147 007043 6211 CDF 10 1148 007044 1774 TAD I (7643 1149 007045 7004 RAL 1150 007046 7200 CLA 1151 007047 1700 TAD I ONPTR 1152 007050 6201 CDF 0 1153 007051 7640 SZA CLA 1154 007052 5600 EXIT CONVRT /EXTENSION SPECIFIED 1155 007053 7430 SZL 1156 007054 5600 EXIT CONVRT / /A 1157 007055 7344 CLL STA RAL 1158 007056 1301 TAD CNPTR 1159 007057 3301 DCA CNPTR 1160 007060 1373 TAD ("B /SET EXTENSION TO .BIN 1161 007061 3701 DCA I CNPTR 1162 007062 2301 INCR CNPTR 1163 007063 1372 TAD ("I 1164 007064 3701 DCA I CNPTR 1165 007065 2301 INCR CNPTR 1166 007066 1371 TAD ("N 1167 007067 3701 DCA I CNPTR 1168 007070 5600 EXIT CONVRT 1169 007071 0000 CNV, 0 1170 007072 0370 AND (77 1171 007073 7440 SZA /CHANGE 0 TO BLANK 1172 007074 1375 TAD (40 1173 007075 0370 AND (77 1174 007076 1375 TAD (40 1175 007077 5671 EXIT CNV 1176 1177 007100 0000 ONPTR, 0 1178 007101 0000 CNPTR, 0 1179 007102 0000 CKNT, 0 1180 1181 007103 4200 LOOK4ME,JMS CONVRT 1182 007104 7606 7606 1183 007105 1335 TAD IUNIT 1184 007106 4767 JMS I (LOOKUP 1185 007107 5766 JMP I (XER4 1186 007110 5330 JMP XER24 1187 007111 1765 TAD I (INCH+12 /GET H.O. INPUT RECORD SIZE 1188 007112 7112 CLL RTR 1189 007113 7012 RTR 1190 007114 7010 RAR 1191 007115 1764 TAD I (INCH+13 1192 007116 3336 DCA INRECSZ 1193 007117 1336 TAD INRECSZ 1194 007120 7450 SNA 1195 007121 5337 JMP XER40 /RECORD SIZE 0 1196 007122 7100 CLL 1197 007123 1363 TAD (-1001 1198 007124 7630 SZL CLA 1199 007125 5341 JMP XER10 1200 007126 6213 CIF CDF 10 1201 007127 5762 JMP I (CHLOOP 1202 1203 007130 6213 XER24, CIF CDF 10 1204 007131 5761 JMP I (ER24 1205 007132 6213 XER25, CIF CDF 10 1206 007133 5760 JMP I (ER3 1207 007134 0000 OUNIT, 0 1208 007135 0000 IUNIT, 0 1209 /IN CASE OF CASSETTES, CONTAINS UNIT (AS CHAR) 1210 /IN CASE OF MAGTAPE, CONTAINS HANDLER ENTRY ADDRESS 1211 /OUNIT IS -1 DURING A ^C CLOSE 1212 /-1 MEANS DON'T CLOSE ON ERROR 1213 007136 0200 INRECSZ,200 /RECORD SIZE ON INPUT 1214 007137 6213 XER40, CIF CDF 10 1215 007140 5757 JMP I (ER40 1216 007141 6213 XER10, CIF CDF 10 1217 007142 5756 JMP I (ER10 1218 007143 0000 F1CTRLC,0 1219 007144 4755 JMS I (CTRLC 1220 007145 6213 CIF CDF 10 1221 007146 5743 EXIT F1CTRLC 1222 007155 6502 PAGE 007156 3600 007157 4054 007160 2736 007161 2526 007162 2107 007163 6777 007164 7253 007165 7252 007166 6347 007167 6000 007170 0077 007171 0316 007172 0311 007173 0302 007174 7643 007175 0040 007176 7774 007177 7200 1223 007200 0000 SINCH, ZBLOCK 16 007201 0000 007202 0000 007203 0000 007204 0000 007205 0000 007206 0000 007207 0000 007210 0000 007211 0000 007212 0000 007213 0000 007214 0000 007215 0000 1224 007216 0040 40;40;40;40;40;40 007217 0040 007220 0040 007221 0040 007222 0040 007223 0040 1225 007224 0000 ZBLOCK 14 007225 0000 007226 0000 007227 0000 007230 0000 007231 0000 007232 0000 007233 0000 007234 0000 007235 0000 007236 0000 007237 0000 1226 007240 0000 INCH, ZBLOCK 40 007241 0000 007242 0000 007243 0000 007244 0000 007245 0000 007246 0000 007247 0000 007250 0000 007251 0000 007252 0000 007253 0000 007254 0000 007255 0000 007256 0000 007257 0000 007260 0000 007261 0000 007262 0000 007263 0000 007264 0000 007265 0000 007266 0000 007267 0000 007270 0000 007271 0000 007272 0000 007273 0000 007274 0000 007275 0000 007276 0000 007277 0000 1227 1228 007300 0000 LDRTST, 0 1229 007301 1777 TAD I (CWTMP 1230 007302 1376 TAD (-200 1231 007303 7650 SNA CLA /LEADER? 1232 007304 5775 JMP I (CWREX /YES, EXIT CWR 1233 007305 3774 DCA I (LDRFLG /NO 1234 007306 5700 EXIT LDRTST 1235 007307 1373 ENTERO, TAD (COBUF 1236 007310 3772 DCA I (COPTR 1237 007311 4771 JMS I (CONVRT 1238 007312 7601 7601 1239 007313 4770 JMS I (MAKDAT 1240 007314 1767 TAD I (RECSIZ 1241 007315 7106 CLL RTL 1242 007316 7006 RTL 1243 007317 7004 RAL 1244 007320 0366 AND (17 1245 007321 3765 DCA I (SINCH+12 1246 007322 1767 TAD I (RECSIZ 1247 007323 0364 AND (377 1248 007324 3763 DCA I (SINCH+13 1249 007325 6211 CDF 10 1250 007326 1762 TAD I (FILTYP 1251 007327 6201 CDF 0 1252 007330 3761 DCA I (SINCH+11 1253 007331 3760 DCA I (SINCH+14 1254 007332 3757 DCA I (SINCH+15 1255 007333 6211 CDF 10 1256 007334 1756 TAD I (VRSNO 1257 007335 6201 CDF 0 1258 007336 3755 DCA I (SINCH+24 1259 007337 1754 TAD I (OUNIT 1260 007340 4753 JMS I (ENTER 1261 007341 5752 JMP I (XER25 1262 007342 6213 CIF CDF 10 1263 007343 3751 DCA I (OSWITCH 1264 007344 5750 JMP I (CONT1 1265 007350 2106 PAGE 007351 3510 007352 7132 007353 5601 007354 7134 007355 7224 007356 2515 007357 7215 007360 7214 007361 7211 007362 2327 007363 7213 007364 0377 007365 7212 007366 0017 007367 6337 007370 7436 007371 7000 007372 6340 007373 3000 007374 6353 007375 6301 007376 7600 007377 6356 1266 007400 1777 ZOPTION,TAD I (OUNIT 1267 007401 4732 JMS I QU5 1268 007402 0010 REWIND 1269 007403 5330 JMP XER77 /OUTPUT ERROR 1270 007404 6211 CDF 10 1271 007405 1776 TAD I (7601 1272 007406 6201 CDF 0 1273 007407 7650 SNA CLA 1274 007410 5235 JMP NOFILE 1275 007411 4775 JMS I (CONVRT 1276 007412 7601 7601 1277 007413 4774 JMS I (LOOKUP 1278 007414 5773 JMP I (XER4 1279 007415 5772 JMP I (XER24 1280 007416 4732 JMS I QU5 1281 007417 0070 SKPFIL 1282 007420 5772 JMP I (XER24 1283 007421 1371 TAD (40 1284 007422 3770 DCA I (BSIZE 1285 007423 4733 JMS I QH5 1286 007424 0000 READ 1287 007425 7240 INCH 1288 007426 5330 JMP XER77 1289 007427 4767 CLO3, JMS I (BACK 1290 007430 5330 JMP XER77 1291 007431 4733 JMS I QH5 1292 007432 4000 WRITE 1293 007433 6104 ZER 1294 007434 5330 JMP XER77 1295 007435 5766 NOFILE, JMP I (XCLOSE 1296 007436 0000 MAKDAT, 0 1297 007437 6211 CDF 10 1298 007440 1765 TAD I (DATE 1299 007441 6201 CDF 0 1300 007442 7450 SNA 1301 007443 5267 JMP SETOBL 1302 007444 3302 DCA SKNT 1303 007445 1364 TAD (SINCH+16 1304 007446 3301 DCA SPTR 1305 007447 1302 TAD SKNT 1306 007450 7012 RTR 1307 007451 7010 RAR 1308 007452 0363 AND (37 1309 007453 4305 JMS TWO /INSERT DAY 1310 007454 1302 TAD SKNT 1311 007455 7006 RTL 1312 007456 7006 RTL 1313 007457 7004 RAL 1314 007460 0362 AND (17 1315 007461 4305 JMS TWO /INSERT MONTH 1316 007462 1302 TAD SKNT 1317 007463 0361 AND (7 1318 007464 1360 TAD (106 1319 007465 4305 JMS TWO /INSERT YEAR 1320 007466 5636 EXIT MAKDAT 1321 1322 007467 1357 SETOBL, TAD (-6 /SET DATE TO BLANKS 1323 007470 3302 DCA SKNT 1324 007471 1364 TAD (SINCH+16 1325 007472 3301 DCA SPTR 1326 007473 1371 SELOOP, TAD (40 1327 007474 3701 DCA I SPTR 1328 007475 2301 INCR SPTR 1329 007476 2302 ISZ SKNT 1330 007477 5273 JMP SELOOP 1331 007500 5636 EXIT MAKDAT 1332 1333 007501 0000 SPTR, 0 1334 007502 0000 SKNT, 0 1335 007503 0000 TEM2, 0 1336 007504 0000 TENS, 0 1337 007505 0000 TWO, 0 1338 007506 3303 DCA TEM2 1339 007507 1356 TAD (60 1340 007510 3304 DCA TENS 1341 007511 1303 TAD TEM2 1342 007512 1355 TWOLUP, TAD (-12 1343 007513 7510 SPA 1344 007514 5317 JMP NEG 1345 007515 2304 INCR TENS 1346 007516 5312 JMP TWOLUP 1347 007517 1354 NEG, TAD (72 1348 007520 3303 DCA TEM2 1349 007521 1304 TAD TENS 1350 007522 3701 DCA I SPTR 1351 007523 2301 INCR SPTR 1352 007524 1303 TAD TEM2 1353 007525 3701 DCA I SPTR 1354 007526 2301 INCR SPTR 1355 007527 5705 EXIT TWO 1356 1357 007530 6213 XER77, CIF CDF 10 1358 007531 5753 JMP I (ER7 /OUTPUT ERROR 1359 1360 007532 5200 QU5, UTIL 1361 007533 5400 QH5, HANDLER 1362 007534 0000 MHANDLER,0 /AC CONTAINS HANDLER ENTRY ADDRESS 1363 007535 6212 CIF 10 1364 007536 5752 JMP I (MHAN /KLUDGEY LINK TO FIELD 1 1365 1366 007537 0000 MUTIL, 0 /AC CONTAINS ETC. 1367 007540 6212 CIF 10 1368 007541 5751 JMP I (MUT 1369 007551 4433 PAGE 007552 4401 007553 3537 007554 0072 007555 7766 007556 0060 007557 7772 007560 0106 007561 0007 007562 0017 007563 0037 007564 7216 007565 3113 007566 6411 007567 5627 007570 5505 007571 0040 007572 7130 007573 6347 007574 6000 007575 7000 007576 7601 007577 7134 1370 FIELD 1 1371 1372 XR=10 1373 1374 *2000 1375 1376 012000 5206 START, JMP DEC2 /NORMAL STARTING ADDRESS 1377 012001 5211 CHAIN, JMP NODEC /CHAIN STARTING ADDRESS 1378 012002 7330 DECODE, STL CLA RAR 1379 012003 0777 AND I (7642 1380 012004 7640 SZA CLA 1381 012005 5325 JMP KBM /RETURN TO KBM ON $ 1382 / WOULD BE NICE HERE TO TELL CD/BATCH NOT TO SPOOL 1383 012006 4776 DEC2, CALL (200 1384 012007 0005 5 /COMMAND DECODE 1385 012010 5200 5200 /USING SPECIAL MODE 1386 012011 1375 NODEC, TAD (OUTHAND+1 1387 012012 3232 DCA ENTR /RESET PTR TO HANDLER LOCATION 1388 012013 7240 STA 1389 012014 3774 DCA I (OSWITCH 1390 012015 4773 JMS I (CHKSW /CHECK FOR SWITCH OPTIONS 1391 012016 6201 CDF 0 1392 012017 3772 DCA I (OUTSW 1393 012020 7240 STA 1394 012021 3771 DCA I (OUNIT 1395 012022 6211 CDF 10 1396 012023 1770 TAD I (7666 1397 012024 3767 DCA I (DATE 1398 012025 1766 FET, TAD I (7600 /GET DEVICE NUMBER OF OUTPUT FILE 1399 012026 7450 SNA /WAS ONE SPECIFIED? 1400 012027 5320 JMP NOF /NO - NO OUTPUT FILE 1401 012030 4776 CALL (200 1402 012031 0001 1 /FETCH HANDLER 1403 012032 2001 ENTR, OUTHAND+1 /INTO PAGES 2400 AND 2600 1404 /REPLACED BY HANDLER STARTING ADDRESS 1405 012033 5765 JMP I (ER6 /OUTPUT DEVICE DOESN'T EXIST 1406 012034 1764 TAD I (7644 1407 012035 0363 AND (1000 1408 012036 7640 SZA CLA 1409 012037 5762 JMP I (FOXOUT /O SPECIFIED 1410 012040 7332 STL CLA RTR 1411 012041 0761 AND I (7645 1412 012042 1760 TAD I (7601 1413 012043 7650 SNA CLA 1414 012044 5254 JMP NOCAS /NO OUTPUT NAME 1415 012045 1366 TAD (7600 1416 012046 4757 JMS I (CHKNAM 1417 012047 5756 JMP I (STARER /*.* 1418 012050 1766 TAD I (7600 1419 012051 4755 JMS I (TCAS /CASSETTE? 1420 012052 5754 JMP I (FIXOUT /YES 1421 012053 5753 JMP I (FXMOUT /MAGTAPE 1422 012054 1360 NOCAS, TAD (7601 /NO 1423 012055 3300 DCA OBLK /GET PTR TO OUTPUT FILE NAME 1424 012056 1232 TAD ENTR 1425 012057 3752 DCA I (OENTRY /STORE AWAY OUTPUT HANDLER ENTRY PT 1426 012060 1351 TAD (OWRITE 1427 012061 3317 DCA PWRITE 1428 012062 1350 TAD (FINIO 1429 012063 3747 DCA I (XFINIO 1430 012064 1746 TAD I (7643 1431 012065 7006 RTL 1432 012066 7620 SNL CLA 1433 012067 5275 JMP NOB 1434 012070 1745 TAD I (7604 /GET EXT 1435 012071 7640 SZA CLA 1436 012072 5275 JMP NOB 1437 012073 1344 TAD (216 /SET TO .BN 1438 012074 3745 DCA I (7604 1439 012075 1766 NOB, TAD I (7600 /GET DEVICE NUMBER AGAIN 1440 012076 4776 CALL (200 1441 012077 0003 3 /OPEN OUTPUT FILE 1442 012100 7601 OBLK, 7601 /PTS TO OUTPUT FILE NAME 1443 /REPLACED BY STARTING BLOCK NUMBER 1444 012101 0000 LEN, 0 /REPLACED BY NEGATIVE OF LENGTH OF OUT AREA 1445 012102 5743 JMP I (ER3 /FILE OPEN ERROR 1446 012103 3742 DCA I (REALEN /ZERO REAL LENGTH 1447 012104 1300 TAD OBLK 1448 012105 3741 DCA I (OBLOCK /SET STARTING BLOCK NUMBER 1449 012106 4740 CONT1, JMS I (GETIN 1450 / INITIALIZE INPUT STUFF 1451 012107 6203 CHLOOP, CIF CDF 0 1452 012110 4737 JMS I (F1CTRLC 1453 012111 4716 CALL PREAD 1454 012112 6203 CIF CDF 0 1455 012113 4737 JMS I (F1CTRLC 1456 012114 4717 CALL PWRITE 1457 012115 5307 JMP CHLOOP 1458 012116 2600 PREAD, OREAD 1459 012117 3200 PWRITE, OWRITE 1460 012120 7332 NOF, STL CLA RTR 1461 012121 0761 AND I (7645 1462 012122 7650 SNA CLA 1463 012123 5736 JMP I (ER1 1464 012124 5762 JMP I (FOXOUT /Z IMPLIES O 1465 1466 012125 6203 KBM, CIF CDF 0 1467 012126 5735 JMP I (7605 1468 012135 7605 PAGE 012136 4034 012137 7143 012140 3000 012141 3240 012142 2462 012143 2736 012144 0216 012145 7604 012146 7643 012147 2646 012150 2455 012151 3200 012152 3251 012153 2272 012154 2226 012155 4001 012156 3707 012157 3645 012160 7601 012161 7645 012162 2223 012163 1000 012164 7644 012165 2516 012166 7600 012167 3113 012170 7666 012171 7134 012172 5506 012173 3730 012174 3510 012175 2001 012176 0200 012177 7642 1469 012200 0000 UDIG, 0 1470 1471 012201 0000 GETSWDIG,0 1472 012202 3200 DCA UDIG 1473 012203 1777 TAD I (7645 1474 012204 0376 AND (1774 1475 012205 7450 SNA 1476 012206 5601 EXIT GETSWDIG /NO UNIT 1477 012207 2201 INCR GETSWDIG 1478 012210 7006 RTL 1479 012211 7004 RAL 1480 012212 7430 LUDIG, SZL 1481 012213 5217 JMP GOTUD 1482 012214 2200 INCR UDIG 1483 012215 7004 RAL 1484 012216 5212 JMP LUDIG 1485 G7600, 1486 012217 7600 GOTUD, 7600 1487 012220 1200 TAD UDIG 1488 012221 1375 TAD (60 1489 012222 5601 EXIT GETSWDIG 1490 012223 4201 FOXOUT, JMS GETSWDIG 1491 012224 5774 JMP I (ER1 /NO OUTPUT UNIT 1492 012225 5230 JMP GOTOU 1493 012226 1773 FIXOUT, TAD I (ENTR 1494 012227 4772 JMS I (GETDVC 1495 012230 6201 GOTOU, CDF 0 1496 012231 3771 DCA I (OUNIT 1497 012232 6211 CDF 10 1498 012233 4770 JMS I (SETCAS 1499 012234 1767 YAHAOU, TAD I (7643 1500 012235 0366 AND (400 1501 012236 7640 SZA CLA 1502 012237 5335 JMP DOPT 1503 012240 7332 STL CLA RTR 1504 012241 0777 AND I (7645 1505 012242 7640 SZA CLA 1506 012243 5337 JMP ZOPT 1507 012244 1617 TAD I G7600 1508 012245 7012 RTR 1509 012246 7012 RTR 1510 012247 0365 AND (377 /ISOLATE FILE TYPE 1511 012250 3327 DCA FILTYP /SAVE IT 1512 012251 4764 JMS I (GETLEN 1513 012252 1363 TAD (CW 1514 012253 3762 DCA I (PWRITE 1515 012254 1361 TAD (CFINIO 1516 012255 3760 DCA I (XFINIO 1517 012256 1767 TAD I (7643 1518 012257 7006 RTL /B TO LINK 1519 012260 7630 SZL CLA 1520 012261 7201 CLA IAC 1521 012262 6203 CIF CDF 0 1522 012263 3757 DCA I (LDRFLG 1523 012264 7240 STA 1524 012265 3756 DCA I (CWTMP1 1525 012266 7240 STA 1526 012267 3755 DCA I (CWTMP2 1527 012270 3754 DCA I (CHECKSUM 1528 012271 5753 JMP I (ENTERO 1529 / RETURN TO CONT1 1530 1531 012272 1773 FXMOUT, TAD I (ENTR 1532 012273 6201 CDF 0 1533 012274 3771 DCA I (OUNIT 1534 012275 6211 CDF 10 1535 012276 4752 JMS I (SETMAG 1536 012277 1773 TAD I (ENTR /GET LOCATION OF MAGTAPE HANDLER 1537 012300 4302 JMS SETDEN 1538 012301 5234 JMP YAHAOU 1539 012302 0000 SETDEN, 0 1540 012303 0217 AND G7600 1541 012304 3341 DCA MTA 1542 012305 1751 TAD I (7644 1543 012306 0350 AND (10 1544 012307 7640 SZA CLA /IS /U SPECIFIED? 1545 012310 7001 IAC /YES, USE DENSITY 3 1546 012311 1347 TAD (2 /NO, USE DENSITY 2 1547 012312 3344 DCA DEN 1548 012313 6201 CDF 0 1549 012314 1342 TAD PARITY 1550 012315 7110 CLL RAR /LINK ON IF PARITY SPECIFIED 1551 012316 7430 SZL 1552 012317 1343 TAD PAR 1553 012320 7420 SNL 1554 012321 1741 TAD I MTA /GET RELATIVE LOC 0 1555 012322 0366 AND (400 /ISOLATE PARITY 1556 012323 1344 TAD DEN /FORCE CORE DUMP MODE 1557 012324 3741 DCA I MTA /STORE BACK DENSITY AND PARITY 1558 012325 6211 CDF 10 1559 012326 5702 JMP I SETDEN 1560 012327 0000 FILTYP, 0 1561 012330 0000 BINTYP, 0 /SET BINARY TYPE - DON'T TOUCH LINK 1562 012331 7001 IAC 1563 012332 7001 IAC 1564 012333 3327 DCA FILTYP 1565 012334 5730 EXIT BINTYP 1566 1567 012335 6203 DOPT, CIF CDF 0 1568 012336 5746 JMP I (DOPTION 1569 1570 012337 6203 ZOPT, CIF CDF 0 1571 012340 5745 JMP I (ZOPTION 1572 1573 012341 0000 MTA, 0 /FIRST LOC OF MAGTAPE HANDLER 1574 012342 0000 PARITY, 0 /0 MENAS NOT SPECIFIED, 1 MEANS SPECIFIED PARITY 1575 012343 0000 PAR, 0 /0 OR 400 SPECIFYING PARITY 1576 012344 0002 DEN, 2 /DENSITY 1577 012345 7400 PAGE 012346 5306 012347 0002 012350 0010 012351 7644 012352 4224 012353 7307 012354 6656 012355 6355 012356 6354 012357 6353 012360 2646 012361 3547 012362 2117 012363 4140 012364 2432 012365 0377 012366 0400 012367 7643 012370 4200 012371 7134 012372 3614 012373 2032 012374 4034 012375 0060 012376 1774 012377 7645 1578 012400 0000 FID2, 0 1579 012401 1777 TAD I (CIBUF 1580 012402 0376 AND (177 /DF=0 1581 012403 1375 TAD (-52 1582 012404 7650 SNA CLA 1583 012405 4220 JMS EMPTY 1584 012406 1774 TAD I (CIBUF+10 1585 012407 3773 DCA I (CIBUF+11 1586 012410 1772 TAD I (CIBUF+7 1587 012411 3774 DCA I (CIBUF+10 1588 012412 1771 TAD I (CIBUF+6 1589 012413 3772 DCA I (CIBUF+7 1590 012414 1370 TAD (". 1591 012415 3771 DCA I (CIBUF+6 1592 012416 6202 CIF 0 1593 012417 5600 JMP I FID2 1594 1595 012420 0000 EMPTY, 0 1596 012421 1767 TAD I (FAST 1597 012422 7650 SNA CLA 1598 012423 5620 JMP I EMPTY 1599 012424 7240 STA 1600 012425 3766 DCA I (CIKNT 1601 012426 1365 TAD (32 1602 012427 3777 DCA I (CIBUF 1603 012430 6202 CIF 0 1604 012431 5764 JMP I (FIDLV 1605 012432 0000 GETLEN, 0 1606 012433 7350 CLL STA RAR /3777 1607 012434 0763 AND I (7642 /GET H.O. OPTION 1608 012435 3315 DCA VRSNO 1609 012436 1762 TAD I (7646 /GET = OPTION (L.O. 12 BITS) 1610 012437 7100 CLL 1611 012440 1361 TAD (-1001 1612 012441 7630 SZL CLA /LESS THAN 1001? 1613 012442 5760 JMP I (ER10 /NO, ERROR 1614 012443 1762 TAD I (7646 /YES 1615 012444 7450 SNA 1616 012445 1357 TAD (200 /200 IS DEFAULT RECORD SIZE 1617 012446 6201 CDF 0 1618 012447 3756 DCA I (RECSIZ 1619 012450 1756 TAD I (RECSIZ 1620 012451 7041 CIA 1621 012452 3755 DCA I (COKNT 1622 012453 6211 CDF 10 1623 012454 5632 EXIT GETLEN 1624 1625 012455 4754 FINIO, JMS I (OWRITE 1626 012456 1753 TAD I (7600 /GET OUTPUT DEVICE NUMBER 1627 012457 4757 CALL (200 1628 012460 0004 4 /CLOSE 1629 012461 7601 7601 /PTR TO FILE NAME 1630 012462 0000 REALEN, 0 /LENGTH OF NEW OUTPUT FILE 1631 012463 5265 JMP ER8 /CLOSE ERROR 1632 012464 5752 JMP I (DECODE 1633 012465 4751 ER8, JMS I (PRINT 1634 012466 7703 TEXT /?CLOSE ERROR/ 012467 1417 012470 2305 012471 4005 012472 2222 012473 1722 012474 0000 1635 012475 4751 ER5, JMS I (PRINT 1636 012476 7717 TEXT /?OUTPUT DEVICE FULL/ 012477 2524 012500 2025 012501 2440 012502 0405 012503 2611 012504 0305 012505 4006 012506 2514 012507 1400 1637 012510 4751 ER30, JMS I (PRINT 1638 012511 7717 TEXT /?OUT=IN/ 012512 2524 012513 7511 012514 1600 1639 012515 0000 VRSNO, 0 1640 1641 012516 4751 ER6, JMS I (PRINT 1642 012517 7706 TEXT /?FETCH ERROR/ 012520 0524 012521 0310 012522 4005 012523 2222 012524 1722 012525 0000 1643 012526 7240 ER24, STA 1644 012527 3777 DCA I (SPSWTCH /RETURN FROM PRINT 1645 012530 4751 JMS I (PRINT 1646 012531 7706 TEXT /?FILE NOT FOUND/ 012532 1114 012533 0540 012534 1617 012535 2440 012536 0617 012537 2516 012540 0400 1647 012541 2750 ISZ I (FUDSW /FIXUP CASSETTE 1648 012542 5747 JMP I (CLO 1649 012547 3461 PAGE 012550 3513 012551 3400 012552 2002 012553 7600 012554 3200 012555 6341 012556 6337 012557 0200 012560 3600 012561 6777 012562 7646 012563 7642 012564 5130 012565 0032 012566 6600 012567 5131 012570 0256 012571 4006 012572 4007 012573 4011 012574 4010 012575 7726 012576 0177 012577 4000 1650 012600 0000 OREAD, 0 1651 012601 1377 TAD (MAXBLK 1652 012602 3245 DCA INTEN /TRY TO READ 10 BLOCKS 1653 012603 1376 TAD (MAXBLK^200+10 1654 012604 3226 DCA READSZ 1655 012605 1775 TAD I (7605 1656 012606 0374 AND (17 1657 012607 1373 TAD (7757 1658 012610 3020 DCA TEMP /GET DCB ADDR 1659 012611 1420 TAD I TEMP /GET DCB 1660 012612 0372 AND (1000 1661 012613 7640 SZA CLA 1662 012614 5267 JMP ER4 /INPUT DEVICE IS WRITE-ONLY 1663 012615 1420 TAD I TEMP 1664 012616 7700 SMA CLA 1665 012617 5224 JMP YES /NOT FILE-STRUCTURED 1666 012620 1771 TAD I (INLEN 1667 012621 1377 TAD (MAXBLK 1668 012622 7740 SMA SZA CLA /CAN I READ IN 10 BLOCKS? 1669 012623 4247 JMS SHORT /NO 1670 012624 6202 YES, CIF 0 /YES 1671 012625 4664 JMS I IENTRY /CALL INPUT HANDLER 1672 012626 2010 READSZ, 2010 /READ 20 PAGES INTO FIELD 1 1673 012627 4600 OBUFFER /LOCATION 4000 1674 012630 0000 IBLOCK, 0 /INPUT BLOCK NUMBER 1675 012631 5265 JMP QER4 /INPUT ERROR 1676 012632 1230 TAD IBLOCK 1677 012633 1245 TAD INTEN 1678 012634 3230 DCA IBLOCK /UPDATE BLOCK NUMBER 1679 012635 1771 TAD I (INLEN 1680 012636 1245 TAD INTEN 1681 012637 3771 DCA I (INLEN /UPDATE LENGTH LEFT 1682 012640 1245 TAD INTEN 1683 012641 1370 TAD (-MAXBLK 1684 012642 7640 SZA CLA 1685 012643 5255 JMP XFIN 1686 012644 5600 EXIT OREAD /RETURN 1687 012645 0010 INTEN, 10 /NUMBER OF BLOCKS JUST READ 1688 012646 2455 XFINIO, FINIO 1689 1690 012647 0000 SHORT, 0 1691 012650 1771 TAD I (INLEN /HOW MANY BLOCKS LEFT? 1692 012651 7041 CIA /MAKE POSITIVE 1693 012652 3245 DCA INTEN /THAT'S AS MUCH AS WE CAN READ 1694 012653 1245 TAD INTEN 1695 012654 7450 SNA 1696 012655 5646 XFIN, JMP I XFINIO /NO MORE 1697 012656 7112 CLL RTR 1698 012657 7012 RTR 1699 012660 7012 RTR /CONVERT TO PAGES IN BITS 1-5 1700 012661 1367 TAD (10 /ADD IN FIELD 1 BIT 1701 012662 3226 DCA READSZ 1702 012663 5647 EXIT SHORT /RETURN 1703 012664 0000 IENTRY, 0 /PTS TO INPUT HANDLER ENTRY POINT 1704 012665 7700 QER4, SMA CLA 1705 012666 5310 JMP SFIN /NON-FATAL END-OF FILE 1706 012667 4766 ER4, JMS I (PRINT 1707 012670 7711 TEXT /?INPUT ERROR/ 012671 1620 012672 2524 012673 4005 012674 2222 012675 1722 012676 0000 1708 012677 4766 ER26, JMS I (PRINT 1709 012700 7724 TEXT /?TOO MANY FILES/ 012701 1717 012702 4015 012703 0116 012704 3140 012705 0611 012706 1405 012707 2300 1710 012710 1365 SFIN, TAD (7600 1711 012711 3335 DCA TPTR 1712 012712 7240 SLUP, STA 1713 012713 1335 TAD TPTR 1714 012714 3335 DCA TPTR 1715 012715 1735 TAD I TPTR 1716 012716 7650 SNA CLA 1717 012717 5312 JMP SLUP 1718 012720 1335 TAD TPTR 1719 012721 1364 TAD (-OBUFFER+1 1720 012722 7450 SNA 1721 012723 5333 JMP ALLZ 1722 012724 1363 TAD (377 /CHANGED FROM PIPC'S 376 1723 012725 7106 CLL RTL 1724 012726 7006 RTL 1725 012727 7004 RAL 1726 012730 0374 AND (17 1727 012731 3245 DCA INTEN 1728 012732 5255 JMP XFIN 1729 012733 7201 ALLZ, CLA IAC 1730 012734 5331 JMP .-3 1731 012735 0000 TPTR, 0 1732 012736 4766 ER3, JMS I (PRINT 1733 012737 7705 TEXT /?ENTER ERROR/ 012740 1624 012741 0522 012742 4005 012743 2222 012744 1722 012745 0000 1734 012763 0377 PAGE 012764 3201 012765 7600 012766 3400 012767 0010 012770 7772 012771 3112 012772 1000 012773 7757 012774 0017 012775 7605 012776 1410 012777 0006 1735 013000 0000 GETIN, 0 /OPEN INPUT FILE 1736 013001 3313 DCA DATE 1737 013002 1777 TAD I (7605 /ANY MORE FILES SPECIFIED? 1738 013003 7650 SNA CLA 1739 013004 5315 JMP NOIN /NO 1740 013005 1776 TAD I (7612 1741 013006 7640 SZA CLA 1742 013007 5775 JMP I (ER26 /2ND INPUT FILE IS BAD 1743 013010 1377 TAD (7605 1744 013011 4774 JMS I (CHKNAM 1745 013012 5773 JMP I (STARER /*.* 1746 013013 1372 TAD (7606 1747 013014 3254 DCA IN /SET PTR TO FILE NAME 1748 013015 1371 TAD (INHAND+1 1749 013016 3222 DCA IN3 1750 013017 1777 TAD I (7605 /GET DEVICE NUMBER 1751 013020 4770 CALL (200 1752 013021 0001 1 /FETCH NEW DEVICE HANDLER 1753 013022 2401 IN3, INHAND+1 /INTO PAGES 3200 AND 3400 1754 /REPLACED BY ENTRY PT TO INPUT HANDLER 1755 013023 5767 JMP I (ER6 /FETCH ERROR 1756 013024 1766 TAD I (7643 1757 013025 0365 AND (10 1758 013026 7640 SZA CLA 1759 013027 5764 JMP I (FOXIN /I SPECIFIED 1760 013030 7201 CLA IAC /V3C 1761 013031 0766 AND I (7643 /LOOK AT /L OPTION 1762 013032 1772 TAD I (7606 1763 013033 7650 SNA CLA 1764 013034 5241 JMP NOCAS2 1765 /IF NO NAME IS GIVEN AND /L IS NOT SPECIFIED, THEN USE 1766 /MAGTAPE OR CASSETTE HANDLER AS IS, I.E. AS 1767 /A NON-FILE-STRUCTURED OS/8 DRIVER. 1768 013035 1777 TAD I (7605 1769 013036 4763 JMS I (TCAS /CASSETTE? 1770 013037 5762 JMP I (FIXIN /YES 1771 013040 5761 JMP I (FIXMIN /MAGTAPE 1772 013041 7201 NOCAS2, CLA IAC 1773 013042 0766 AND I (7643 1774 013043 7640 SZA CLA 1775 013044 5322 JMP ER11 /V3C /L SPECIFIED WHEN DEVICE WAS NOT MAGTAPE OR CASSETTE 1776 013045 1360 TAD (OREAD 1777 013046 3757 DCA I (PREAD 1778 013047 1222 TAD IN3 /GET NEW HANDLER ENTRY PT 1779 013050 3756 DCA I (IENTRY /STORE AWAY 1780 013051 1777 TAD I (7605 /GET DEVICE NUMBER AGAIN 1781 013052 4770 CALL (200 1782 013053 0002 2 /PERFORM A LOOKUP 1783 013054 0000 IN, 0 /PTR TO FILE NAME 1784 /REPLACED BY INPUT BLOCK NUMBER 1785 013055 0000 IN2, 0 /REPLACED BY NEGATIVE OF INPUT FILE LENGTH 1786 013056 5277 JMP LKERR /LOOKUP ERROR 1787 013057 1254 TAD IN /GET NEW INPUT BLOCK 1788 013060 3755 DCA I (IBLOCK /STORE AWAY 1789 013061 1255 TAD IN2 /GET NEW INPUT FILE LENGTH 1790 013062 3312 DCA INLEN 1791 013063 1754 TAD I (1404 /GET # OF ADDITIONAL WORDS 1792 013064 7450 SNA 1793 013065 5275 JMP NONE 1794 013066 1017 TAD 17 1795 013067 3314 DCA POINTER 1796 013070 1714 TAD I POINTER /GET FILE CREATION DATE 1797 013071 7450 SNA 1798 013072 5275 JMP NONE 1799 013073 3313 SETDAT, DCA DATE 1800 013074 5600 EXIT GETIN 1801 013075 1753 NONE, TAD I (7666 /USE TODAY'S DATE 1802 013076 5273 JMP SETDAT 1803 013077 7200 LKERR, CLA 1804 013100 1752 TAD I (7611 1805 013101 7640 SZA CLA 1806 013102 5751 JMP I (ER24 /FILE NOT FOUND 1807 013103 1766 TAD I (7643 /TRY .BN 1808 013104 7006 RTL 1809 013105 7620 SNL CLA 1810 013106 5751 JMP I (ER24 / NOT /B 1811 013107 1350 TAD (216 1812 013110 3752 DCA I (7611 1813 013111 5201 JMP GETIN+1 1814 1815 013112 0000 INLEN, 0 1816 013113 0000 DATE, 0 /OS8 DATE OF INPUT FILE 1817 013114 0000 POINTER,0 1818 1819 013115 7201 NOIN, CLA IAC 1820 013116 0766 AND I (7643 1821 013117 7650 SNA CLA 1822 013120 5747 JMP I (ER21 1823 013121 5764 JMP I (FOXIN / /L SPECIFIED 1824 013122 4746 ER11, JMS I (PRINT /V3C 1825 013123 7714 TEXT /?L OPTION OUT OF CONTEXT/ 013124 4017 013125 2024 013126 1117 013127 1640 013130 1725 013131 2440 013132 1706 013133 4003 013134 1716 013135 2405 013136 3024 013137 0000 1826 013146 3400 PAGE 013147 4127 013150 0216 013151 2526 013152 7611 013153 7666 013154 1404 013155 2630 013156 2664 013157 2116 013160 2600 013161 3324 013162 3256 013163 4001 013164 3253 013165 0010 013166 7643 013167 2516 013170 0200 013171 2401 013172 7606 013173 3707 013174 3645 013175 2677 013176 7612 013177 7605 1827 /ENTER WITH INTEN BLOCKS TO WRITE 1828 013200 0000 OWRITE, 0 1829 013201 1777 TAD I (INTEN /HOW MUCH IS THERE TO WRITE? 1830 013202 7450 SNA 1831 013203 5600 EXIT OWRITE /NOTHING 1832 013204 3252 DCA OUTEN /SAVE NUMBER OF BLOCKS TO WRITE 1833 013205 1776 TAD I (7600 1834 013206 0375 AND (17 1835 013207 1374 TAD (7757 1836 013210 3020 DCA TEMP 1837 013211 7332 STL CLA RTR 1838 013212 0420 AND I TEMP 1839 013213 7640 SZA CLA 1840 013214 5773 JMP I (ER7 /OUTPUT DEVICE IS READ-ONLY 1841 013215 1252 TAD OUTEN 1842 013216 7112 CLL RTR 1843 013217 7012 RTR 1844 013220 7012 RTR /CONVERT TO PAGES 1845 013221 1372 TAD (4010 /FIELD 1 (WRITE DIRECTLY FROM INPUT BUFFER) 1846 013222 3236 DCA WRSIZ 1847 013223 1771 TAD I (LEN 1848 013224 7650 SNA CLA 1849 013225 5234 JMP NFS /NON-FILE STRUCTURED 1850 013226 1770 TAD I (REALEN 1851 013227 1252 TAD OUTEN 1852 013230 7120 STL 1853 013231 1771 TAD I (LEN 1854 013232 7660 SNL SZA CLA 1855 013233 5767 JMP I (ER5 1856 013234 6202 NFS, CIF 0 1857 013235 4651 JMS I OENTRY /CALL OUTPUT HANDLER 1858 013236 6010 WRSIZ, 6010 /WRITE 20 PAGES FROM FIELD 1 1859 013237 4600 OBUFFER /LOCATION 4000 1860 013240 0000 OBLOCK, 0 /OUTPUT BLOCK NUMBER 1861 013241 5773 JMP I (ER7 /OUTPUT ERROR 1862 013242 1240 TAD OBLOCK 1863 013243 1252 TAD OUTEN 1864 013244 3240 DCA OBLOCK /UPDATE OUTPUT BLOCK NUMBER 1865 013245 1770 TAD I (REALEN 1866 013246 1252 TAD OUTEN 1867 013247 3770 DCA I (REALEN /UPDATE LENGTH WROTE 1868 013250 5600 EXIT OWRITE 1869 1870 013251 0000 OENTRY, 0 1871 013252 0000 OUTEN, 0 1872 013253 4766 FOXIN, JMS I (GETSWDIG 1873 013254 5765 JMP I (ER21 1874 013255 5260 JMP GOTIU 1875 013256 1764 FIXIN, TAD I (IN3 /GET INPUT HANDLER ADDRESS 1876 013257 4763 JMS I (GETDVC 1877 013260 6201 GOTIU, CDF 0 1878 013261 3762 DCA I (IUNIT 1879 013262 6211 CDF 10 1880 013263 4761 JMS I (SETCAS 1881 013264 6201 YAHAIN, CDF 0 1882 013265 1760 TAD I (OUNIT 1883 013266 7041 CIA 1884 013267 1762 TAD I (IUNIT 1885 013270 7650 SNA CLA 1886 013271 5757 JMP I (ER30 1887 013272 7240 STA 1888 013273 3756 DCA I (CIKNT 1889 013274 3755 DCA I (CHECKSUM 1890 013275 7201 CLA IAC 1891 013276 3754 DCA I (TLRFLG 1892 013277 6211 CDF 10 1893 013300 1353 TAD (CR 1894 013301 3752 DCA I (PREAD 1895 013302 1751 TAD I (7643 1896 013303 7006 RTL 1897 013304 7204 CLA RAL 1898 013305 6201 CDF 0 1899 013306 3750 DCA I (FTFLG 1900 013307 6211 CDF 10 1901 013310 4747 JMS I (GETLEN 1902 013311 1751 TAD I (7643 1903 013312 0346 AND (100 / F OPTION? 1904 013313 6201 CDF 0 1905 013314 3745 DCA I (FAST 1906 013315 6211 CDF 10 1907 013316 7201 CLA IAC 1908 013317 0751 AND I (7643 1909 013320 6203 CIF CDF 0 1910 013321 7640 SZA CLA 1911 013322 5744 JMP I (LOPTION 1912 013323 5743 JMP I (LOOK4ME 1913 /RETURN TO CHLOOP 1914 013324 1764 FIXMIN, TAD I (IN3 1915 013325 6201 CDF 0 1916 013326 3762 DCA I (IUNIT 1917 013327 6211 CDF 10 1918 013330 4742 JMS I (SETMAG 1919 013331 1764 TAD I (IN3 1920 013332 4741 JMS I (SETDEN 1921 013333 5264 JMP YAHAIN 1922 013341 2302 PAGE 013342 4224 013343 7103 013344 6526 013345 5131 013346 0100 013347 2432 013350 6657 013351 7643 013352 2116 013353 4144 013354 6661 013355 6656 013356 6600 013357 2510 013360 7134 013361 4200 013362 7135 013363 3614 013364 3022 013365 4127 013366 2201 013367 2475 013370 2462 013371 2101 013372 4010 013373 3537 013374 7757 013375 0017 013376 7600 013377 2645 1923 013400 0000 PRINT, 0 1924 013401 7200 CLA 1925 013402 6211 CDF 10 1926 013403 3335 DCA CTOFLG /ALLOW ECHOING 1927 013404 4327 JMS CRLF 1928 013405 1600 PRLUP, TAD I PRINT 1929 013406 7012 RTR 1930 013407 7012 RTR 1931 013410 7012 RTR 1932 013411 4216 JMS PRIN 1933 013412 1600 TAD I PRINT 1934 013413 4216 JMS PRIN 1935 013414 2200 INCR PRINT 1936 013415 5205 JMP PRLUP 1937 1938 013416 0000 PRIN, 0 1939 013417 0377 AND (77 1940 013420 7450 SNA 1941 013421 5251 JMP PRFIN 1942 013422 1376 TAD (240 1943 013423 0377 AND (77 1944 013424 1376 TAD (240 1945 013425 3336 DCA TM 1946 013426 6031 KSF 1947 013427 5246 JMP NOBOTH 1948 013430 1375 TAD (200 1949 013431 6034 KRS 1950 013432 1374 TAD (-203 1951 013433 7450 SNA 1952 013434 5311 JMP KBM2 1953 013435 1373 TAD (203-217 1954 013436 7640 SZA CLA 1955 013437 5246 JMP NOBOTH 1956 013440 1372 TAD ("^ 1957 013441 4314 JMS TYPE 1958 013442 1371 TAD ("O 1959 013443 4314 JMS TYPE 1960 013444 4327 JMS CRLF 1961 013445 2335 ISZ CTOFLG 1962 013446 1336 NOBOTH, TAD TM 1963 013447 4314 JMS TYPE 1964 013450 5616 EXIT PRIN 1965 013451 4327 PRFIN, JMS CRLF 1966 013452 3313 DCA FUDSW 1967 013453 1770 TAD I (SPSWTCH 1968 013454 7650 SNA CLA 1969 013455 5261 JMP CLO 1970 013456 3770 DCA I (SPSWTCH /SWITCH NON-ZERO MEANS RETURN 1971 013457 2200 INCR PRINT /POINT TO RETURN 1972 013460 5600 JMP I PRINT 1973 /DO A CLOSE IF OUTPUT CASSETTE OPEN 1974 013461 6201 CLO, CDF 0 1975 013462 1767 TAD I (OUNIT 1976 013463 6211 CDF 10 1977 013464 7710 SPA CLA 1978 013465 5766 JMP I (DECODE 1979 013466 1310 TAD OSWITCH 1980 013467 7640 SZA CLA 1981 013470 5766 JMP I (DECODE 1982 013471 6201 CDF 0 1983 013472 1765 TAD I (OUTSW 1984 013473 6211 CDF 10 1985 013474 7650 SNA CLA /DID WE WRITE ON OUTPUT CASSETTE? 1986 013475 5766 JMP I (DECODE /NO 1987 013476 6203 CIF CDF 0 1988 013477 1767 TAD I (OUNIT 1989 013500 3020 DCA TEMP 1990 013501 7240 STA 1991 013502 3767 DCA I (OUNIT 1992 013503 1313 TAD FUDSW 1993 013504 7640 SZA CLA 1994 013505 5764 JMP I (CLO3 1995 013506 1020 TAD TEMP 1996 013507 5763 JMP I (XCLOSE 1997 013510 7777 OSWITCH,-1 /0 MEANS OUTPUT CASSETTE OPEN 1998 1999 013511 6203 KBM2, CIF CDF 0 2000 013512 5725 JMP I L7600 /RETURN TO OS/8 2001 2002 013513 0000 FUDSW, 0 /1 MEANS GOT OS/8 LOOKUP FAILURE 2003 013514 0000 TYPE, 0 2004 013515 3336 DCA TM 2005 013516 1335 TAD CTOFLG 2006 013517 7640 SZA CLA 2007 013520 5714 EXIT TYPE /NOT ECHOING 2008 013521 1336 TAD TM 2009 013522 6046 TLS 2010 013523 6041 TSF 2011 013524 5323 JMP .-1 2012 013525 7600 L7600, 7600 2013 013526 5714 EXIT TYPE 2014 2015 013527 0000 CRLF, 0 2016 013530 1362 TAD (215 2017 013531 4314 JMS TYPE 2018 013532 1361 TAD (212 2019 013533 4314 JMS TYPE 2020 013534 5727 EXIT CRLF 2021 2022 013535 0000 CTOFLG, 0 /1 MEANS DON'T ECHO 2023 013536 0000 TM, 0 2024 2025 013537 4200 ER7, JMS PRINT 2026 013540 7717 TEXT /?OUTPUT ERROR/ 013541 2524 013542 2025 013543 2440 013544 0522 013545 2217 013546 2200 2027 2028 013547 6203 CFINIO, CIF CDF 0 2029 013550 4760 JMS I (CWRITE 2030 013551 6203 CIF CDF 0 2031 013552 5757 JMP I (CFIN /FINISH OUTPUT AND WRITE SENTINEL 2032 /RETURN TO DECODE 2033 013557 6403 PAGE 013560 6200 013561 0212 013562 0215 013563 6411 013564 7427 013565 5506 013566 2002 013567 7134 013570 4000 013571 0317 013572 0336 013573 7764 013574 7575 013575 0200 013576 0240 013577 0077 2034 013600 4777 ER10, JMS I (PRINT 2035 013601 7722 TEXT /?RECORD SIZE TOO BIG/ 013602 0503 013603 1722 013604 0440 013605 2311 013606 3205 013607 4024 013610 1717 013611 4002 013612 1107 013613 0000 2036 /ENTRY POINT REL 1: UNIT 1 2037 /ENTRY POINT REL 7: UNIT 0 2038 2039 013614 0000 GETDVC, 0 2040 013615 7001 IAC 2041 013616 3020 DCA TEMP 2042 013617 7326 STL CLA RTL /2 2043 013620 0020 AND TEMP 2044 013621 7010 RAR 2045 013622 3244 DCA UNIT /DETERMINE IF UNIT 0 OR 1 2046 013623 1020 TAD TEMP 2047 013624 0376 AND (7600 2048 013625 3020 DCA TEMP 2049 013626 6201 CDF 0 2050 013627 2020 LOOKIO, ISZ TEMP 2051 013630 1420 TAD I TEMP /SEARCH HANDLER FOR ANY IOT 2052 013631 0375 AND (7700 2053 013632 1374 TAD (-6700 2054 013633 7640 SZA CLA 2055 013634 5227 JMP LOOKIO 2056 013635 1420 TAD I TEMP /GET CASSETETE IOT 2057 013636 6211 CDF 10 2058 013637 0373 AND (30 /V3 BUG FIX FROM V2 2059 013640 7112 CLL RTR 2060 013641 1244 TAD UNIT 2061 013642 1372 TAD (60 2062 013643 5614 EXIT GETDVC /LEAVE IT IN AC 2063 2064 013644 0000 UNIT, 0 2065 013645 0000 CHKNAM, 0 /DON'T ALLOW *'S OR ?'S 2066 013646 3010 DCA XR /IN OUTPUT OR INPUT NAME 2067 013647 1410 TAD I XR 2068 013650 1371 TAD (-5200 2069 013651 7450 SNA 2070 013652 5320 JMP STARNM /ENTIRE NAME IS * 2071 013653 1370 TAD (5200 2072 013654 4265 JMS CHKSTR 2073 013655 1410 TAD I XR 2074 013656 4265 JMS CHKSTR 2075 013657 1410 TAD I XR 2076 013660 4265 JMS CHKSTR 2077 013661 1410 TAD I XR 2078 013662 4265 JMS CHKSTR 2079 013663 2245 ISZ CHKNAM 2080 013664 5645 JMP I CHKNAM /NAME GOOD, RETURN 2 2081 2082 013665 0000 CHKSTR, 0 2083 013666 3327 DCA TEM 2084 013667 1327 TAD TEM 2085 013670 7112 CLL RTR 2086 013671 7012 RTR 2087 013672 7012 RTR 2088 013673 4277 JMS CHC 2089 013674 1327 TAD TEM 2090 013675 4277 JMS CHC 2091 013676 5665 JMP I CHKSTR 2092 013677 0000 CHC, 0 2093 013700 0367 AND (77 2094 013701 1366 TAD (-52 2095 013702 7450 SNA 2096 013703 5307 JMP STARER /* IN NAME 2097 013704 1365 TAD (52-77 2098 013705 7640 SZA CLA 2099 013706 5677 JMP I CHC /OKAY 2100 013707 4777 STARER, JMS I (PRINT 2101 013710 7711 TEXT /?ILLEGAL * OR ?/ 013711 1414 013712 0507 013713 0114 013714 4052 013715 4017 013716 2240 013717 7700 2102 2103 013720 2010 STARNM, ISZ XR 2104 013721 2010 ISZ XR 2105 013722 1410 TAD I XR 2106 013723 1371 TAD (-5200 2107 013724 7640 SZA CLA 2108 013725 5307 JMP STARER /NOT *.* 2109 013726 5645 JMP I CHKNAM /TAKE SPECIAL RETURN ON *.* 2110 2111 013727 0000 TEM, 0 2112 013730 0000 CHKSW, 0 /CHECK SWITCHES 2113 013731 1764 TAD I (7644 2114 013732 0363 AND (4 /CHECK FOR /V 2115 013733 7640 SZA CLA 2116 013734 4762 JMS I (VERSN /PRINT MCPIP VERSION # 2117 013735 1764 TAD I (7644 2118 013736 0361 AND (400 /CHECK FOR /P 2119 /NOTE /P = 400 SAME AS ODD PARITY CODE 2120 013737 7440 SZA 2121 013740 5347 JMP ODDPAR 2122 013741 1760 TAD I (7643 2123 013742 0357 AND (200 /CHECK FOR /E 2124 013743 7640 SZA CLA 2125 013744 5347 JMP EVPAR 2126 013745 7000 GOTP, NOP 2127 013746 5730 JMP I CHKSW 2128 2129 ODDPAR, /400 IN AC 2130 013747 3756 EVPAR, DCA I (PAR 2131 013750 7201 CLA IAC 2132 013751 3755 DCA I (PARITY 2133 013752 5345 JMP GOTP 2134 013755 2342 PAGE 013756 2343 013757 0200 013760 7643 013761 0400 013762 4017 013763 0004 013764 7644 013765 7753 013766 7726 013767 0077 013770 5200 013771 2600 013772 0060 013773 0030 013774 1100 013775 7700 013776 7600 013777 3400 2135 014000 0000 SPSWTCH,0 /NON-ZERO MEANS RETURN FROM PRINT 2136 2137 /RET 1: CASSETTE 2138 /RET 2: MAGTAPE 2139 /RET 3: NEITHER 2140 2141 014001 0000 TCAS, 0 2142 014002 0377 AND (17 /ISOLATE 2143 014003 1376 TAD (7757 /ADD IN BASE OF DCB TABLE 2144 014004 3020 DCA TEMP /TO GET DCB ADDRESS 2145 014005 1420 TAD I TEMP /GET DCB 2146 014006 0375 AND (770 /ISOLATE UNIT TYPE 2147 014007 1374 TAD (-270 /CASSETTE HANDLER TYPE IS 27 2148 014010 7450 SNA 2149 014011 5216 JMP ITSCAS 2150 014012 1373 TAD (270-200 2151 014013 7640 SZA CLA 2152 014014 2201 INCR TCAS /NOTHING SPECIAL 2153 014015 2201 INCR TCAS /MAGTAPE 2154 014016 5601 ITSCAS, EXIT TCAS 2155 014017 0000 VERSN, 0 2156 014020 7240 STA 2157 014021 3200 DCA SPSWTCH /RETURN FROM PRINT 2158 014022 4772 JMS I (PRINT 2159 014023 1723 TEXT \OS/8 MCPIP V\ 014024 5770 014025 4015 014026 0320 014027 1120 014030 4026 014031 0000 2160 *.-1 2161 014031 6601 PIPVERSION+60^100+PATCHLEV 2162 014032 0000 0 2163 014033 5617 JMP I VERSN 2164 2165 014034 1771 ER1, TAD I (7605 2166 014035 7650 SNA CLA 2167 014036 5770 JMP I (DECODE /NO OUT AND NO IN 2168 014037 7201 CLA IAC 2169 014040 0767 AND I (7643 /WAS /L SPECIFIED? 2170 014041 7640 SZA CLA 2171 014042 5301 JMP SETTY /YES 2172 014043 4772 JMS I (PRINT 2173 014044 7716 TEXT /?NO OUTPUT FILE/ 014045 1740 014046 1725 014047 2420 014050 2524 014051 4006 014052 1114 014053 0500 2174 014054 4772 ER40, JMS I (PRINT 2175 014055 7703 TEXT /?CANNOT HANDLE VARIABLE-LENGTH RECORDS/ 014056 0116 014057 1617 014060 2440 014061 1001 014062 1604 014063 1405 014064 4026 014065 0122 014066 1101 014067 0214 014070 0555 014071 1405 014072 1607 014073 2410 014074 4022 014075 0503 014076 1722 014077 0423 014100 0000 2176 014101 1366 SETTY, TAD (3100 2177 014102 3306 DCA Y 2178 014103 4765 JMS I (200 2179 014104 0012 12 /INQUIRE 2180 014105 2424 TT, 2424 2181 014106 3100 Y, 3100 /DEVICE TTY 2182 014107 0000 0 2183 014110 5314 JMP ER99 2184 014111 1306 TAD Y /GET DEVICE NO. OF TTY: 2185 014112 3764 DCA I (7600 2186 014113 5763 JMP I (FET 2187 2188 014114 4772 ER99, JMS I (PRINT 2189 014115 7724 TEXT /?TTY DOES NOT EXIST/ 014116 2431 014117 4004 014120 1705 014121 2340 014122 1617 014123 2440 014124 0530 014125 1123 014126 2400 2190 014127 4772 ER21, JMS I (PRINT 2191 014130 7716 TEXT /?NO INPUT FILE/ 014131 1740 014132 1116 014133 2025 014134 2440 014135 0611 014136 1405 014137 0000 2192 014140 0000 CW, 0 2193 014141 6203 CIF CDF 0 2194 014142 4762 JMS I (CWRITE 2195 014143 5740 EXIT CW 2196 2197 014144 0000 CR, 0 2198 014145 6203 CIF CDF 0 2199 014146 4761 JMS I (CREAD 2200 014147 5744 EXIT CR 2201 014161 6415 PAGE 014162 6200 014163 2025 014164 7600 014165 0200 014166 3100 014167 7643 014170 2002 014171 7605 014172 3400 014173 0070 014174 7510 014175 0770 014176 7757 014177 0017 2202 014200 0000 SETCAS, 0 2203 014201 1377 TAD (UTIL 2204 014202 4246 JMS SETU 2205 014203 1376 TAD (HANDLER 2206 014204 4265 JMS SETH 2207 014205 6201 CDF 0 2208 014206 1375 TAD (BACKFIL 2209 014207 3774 DCA I (BK2 2210 014210 1773 TAD I (BK4 2211 014211 3772 DCA I (BK3 2212 014212 1371 TAD (254 2213 014213 3770 DCA I (EOFBIT 2214 014214 1767 TAD I (FL3 2215 014215 3766 DCA I (FL1 2216 014216 1365 TAD (314 2217 014217 3764 DCA I (EOTBIT 2218 014220 1763 TAD I (LM3 2219 014221 3762 DCA I (LM1 2220 014222 6211 CDF 10 2221 014223 5600 JMP I SETCAS 2222 2223 014224 0000 SETMAG, 0 2224 014225 1361 TAD (MUTIL 2225 014226 4246 JMS SETU 2226 014227 1360 TAD (MHANDLER 2227 014230 4265 JMS SETH 2228 014231 6201 CDF 0 2229 014232 1357 TAD (BACKBLOCK 2230 014233 3774 DCA I (BK2 2231 014234 1756 TAD I (BK1 2232 014235 3772 DCA I (BK3 2233 014236 1355 TAD (3673 2234 014237 3770 DCA I (EOFBIT 2235 014240 3766 DCA I (FL1 2236 014241 1354 TAD (3663 2237 014242 3764 DCA I (EOTBIT 2238 014243 3762 DCA I (LM1 2239 014244 6211 CDF 10 2240 014245 5624 JMP I SETMAG 2241 014246 0000 SETU, 0 2242 014247 3265 DCA SETH 2243 014250 6201 CDF 0 2244 014251 1265 TAD SETH 2245 014252 3753 DCA I (QU1 2246 014253 1265 TAD SETH 2247 014254 3752 DCA I (QU2 2248 014255 1265 TAD SETH 2249 014256 3751 DCA I (QU3 2250 014257 1265 TAD SETH 2251 014260 3750 DCA I (QU4 2252 014261 1265 TAD SETH 2253 014262 3747 DCA I (QU5 2254 014263 6211 CDF 10 2255 014264 5646 JMP I SETU 2256 014265 0000 SETH, 0 2257 014266 3246 DCA SETU 2258 014267 6201 CDF 0 2259 014270 1246 TAD SETU 2260 014271 3746 DCA I (QH1 2261 014272 1246 TAD SETU 2262 014273 3745 DCA I (QH2 2263 014274 1246 TAD SETU 2264 014275 3744 DCA I (QH3 2265 014276 1246 TAD SETU 2266 014277 3743 DCA I (QH4 2267 014300 1246 TAD SETU 2268 014301 3742 DCA I (QH5 2269 014302 6211 CDF 10 2270 014303 5665 JMP I SETH 2271 014342 7533 PAGE 014343 6755 014344 6357 014345 6105 014346 5746 014347 7532 014350 6756 014351 6543 014352 6106 014353 5745 014354 3663 014355 3673 014356 5660 014357 0050 014360 7534 014361 7537 014362 6534 014363 6542 014364 6065 014365 0314 014366 6017 014367 6107 014370 5744 014371 0254 014372 5633 014373 5630 014374 5631 014375 0030 014376 5400 014377 5200 2272 014400 0000 MH, 0 2273 2274 014401 7440 MHAN, SZA 2275 014402 3231 DCA MENTRY 2276 014403 1777 TAD I (MHANDLER 2277 014404 3200 DCA MH /PICK UP ARGS VIA MH 2278 014405 1600 TAD I MH /GET FN WORD 2279 014406 1376 TAD (SPCODE /ADD SPECIAL CODE 2280 014407 3222 DCA MARG1 2281 014410 2200 ISZ MH 2282 014411 1600 TAD I MH /GET CORE LOC 2283 014412 3223 DCA MARG2 2284 014413 2200 ISZ MH /PT TO ERROR RETURN 2285 014414 1775 TAD I (BSIZE /GET BLOCKSIZE 2286 014415 7041 CIA 2287 014416 3224 DCA MARG3 /STORE NEG 2288 014417 6211 CDF 10 2289 014420 6202 CIF 0 2290 014421 4631 JMS I MENTRY /CALL MAGTAPE HANDLER 2291 014422 7402 MARG1, HLT 2292 014423 7402 MARG2, HLT 2293 014424 7402 MARG3, HLT 2294 014425 7410 SKP /TAKE ERROR RETURN 2295 014426 2200 ISZ MH /NORMAL RETURN 2296 014427 6203 CIF CDF 0 2297 014430 5600 JMP I MH /GO BACK TO FIELD 0 2298 2299 014431 0000 MENTRY, 0 2300 014432 0000 MU, 0 2301 2302 014433 7440 MUT, SZA 2303 014434 3231 DCA MENTRY /DF=0 2304 014435 1774 TAD I (MUTIL /PICK UP ARGS 2305 014436 3232 DCA MU /VIA 'MU' 2306 014437 1632 TAD I MU /GET UTILITY FUNCTION 2307 014440 2232 ISZ MU 2308 014441 6211 CDF 10 2309 014442 1373 TAD (-REWIND 2310 014443 7450 SNA 2311 014444 5263 JMP REWT 2312 014445 1372 TAD (REWIND-BACKFIL 2313 014446 7450 SNA 2314 014447 5262 JMP BAKFT 2315 014450 1373 TAD (BACKFIL-WRGAP 2316 014451 7450 SNA 2317 014452 5264 JMP WRGT 2318 014453 1373 TAD (WRGAP-BACKBLOCK 2319 014454 7450 SNA 2320 014455 5265 JMP BAKBT 2321 014456 1372 TAD (BACKBLOCK-SKPFIL 2322 014457 7640 SZA CLA 2323 014460 7402 HLT /IMPOSSIBLE 2324 014461 7330 SKPFT, STL CLA RAR /4000=WRITE 2325 014462 1371 BAKFT, TAD (WRITE+FICODE-REWCOD 2326 014463 1370 REWT, TAD (REWCOD-EOCODE 2327 014464 1367 WRGT, TAD (EOCODE-RECCOD-WRITE 2328 014465 1371 BAKBT, TAD (RECCOD+WRITE 2329 014466 3271 DCA MRG1 2330 014467 6202 CIF 0 2331 014470 4631 JMS I MENTRY 2332 014471 7402 MRG1, HLT 2333 014472 7402 MCA, HLT /IRRELEVANT 2334 014473 7777 MWC, -1 2335 014474 7410 SKP /ERROR RETURN 2336 014475 2232 ISZ MU 2337 014476 6203 CIF CDF 0 2338 014477 5632 JMP I MU /RETURN 2339 014500 0052 EMPTINCH,52;105;115;120;124;131;40;40;40;14 014501 0105 014502 0115 014503 0120 014504 0124 014505 0131 014506 0040 014507 0040 014510 0040 014511 0014 2340 014512 0000 0;0;0;0;40;40;40;40;40;40 014513 0000 014514 0000 014515 0000 014516 0040 014517 0040 014520 0040 014521 0040 014522 0040 014523 0040 2341 014524 0000 ZBLOCK 14 014525 0000 014526 0000 014527 0000 014530 0000 014531 0000 014532 0000 014533 0000 014534 0000 014535 0000 014536 0000 014537 0000 2342 014567 4003 PAGE 014570 7774 014571 4002 014572 7760 014573 7770 014574 7537 014575 5505 014576 0006 014577 7534 2343 *2000 2344 $ ABUNIT 5747 ALLZ 2733 BACK 5627 BACKBL 0050 BACKFI 0030 BAKBT 4465 BAKFT 4462 BFIELD 5543 BFLD 5500 BIKNT 6500 BINBUF 4600 BINTYP 2330 BIPTR 6477 BK1 5660 BK2 5631 BK3 5633 BK4 5630 BK9 5647 BKERR 5653 BKNT 5554 BMODE 5477 unreferenced BPTR 5555 BSIZE 5505 BSTATE 5304 BUFFER 5557 BUKNT 6251 BUPTR 6250 BYTE 5556 CALL 4400 CFIN 6403 CFIN2 6407 CFINIO 3547 CHAIN 2001 unreferenced CHC 3677 CHECKB 5253 CHECKR 5047 CHECKS 6656 CHK 5270 CHKNAM 3645 CHKPTR 6660 CHKSTR 3665 CHKSUM 6644 CHKSW 3730 CHKTBL 6662 CHKTLR 6667 CHLOOP 2107 CHTEM 6655 CIBUF 4000 CIKNT 6600 CINUSE 5303 CIPTR 6601 CKNT 7102 CLCODE 0000 unreferenced CLEAR 5260 CLO 3461 CLO3 7427 CLOSE 5661 CLRET 5677 CNPTR 7101 CNV 7071 COBUF 3000 COKNT 6341 CONLUP 7011 CONT1 2106 CONVRT 7000 COPTR 6340 CR 4144 CRCMN 5514 CRE 6602 CREAD 6415 CRED 5700 CRET 5330 CRLF 3527 CRLOOP 6442 CTOFLG 3535 CTRLC 6502 CTRTEM 6415 CW 4140 CWLOOP 6220 CWLV 6246 CWR 6252 CWR2 6302 CWREX 6301 CWRI 6315 CWRIGN 6313 CWRITE 6200 CWTMP 6356 CWTMP1 6354 CWTMP2 6355 DATE 3113 DCRE 6623 DCRED 6723 DEC2 2006 DECODE 2002 DELET 6071 DEN 2344 DIREOL 5122 DOPT 2335 DOPTIO 5306 DTEM 5305 DVC 5045 EMPTIN 4500 EMPTY 2420 ENTER 5601 ENTERO 7307 ENTR 2032 EOCODE 0005 EOFBIT 5744 EOTBIT 6065 EPI 6716 ER1 4034 ER10 3600 ER11 3122 ER21 4127 ER24 2526 ER26 2677 ER3 2736 ER30 2510 ER4 2667 ER40 4054 ER5 2475 ER6 2516 ER7 3537 ER8 2465 ER99 4114 ERET 5620 ERKNT 5435 ERRCOV 6110 ERRET 5061 ERRIT 6055 ERRR 5525 ERRT 6061 unreferenced ERRX 5521 EVPAR 3747 EXIT 5400 F1 0010 F1CTRL 7143 FAST 5131 FET 2025 FICODE 0003 FID2 2400 FIDDLE 5062 FIDLV 5130 FILNUM 5600 FILTYP 2327 FINIO 2455 FIXDVC 5000 FIXIN 3256 FIXMIN 3324 FIXOUT 2226 FL1 6017 FL2 6023 FL3 6107 FLOOP 6020 FOXIN 3253 FOXOUT 2223 FT 6641 FTFLG 6657 FUDSW 3513 FXMOUT 2272 G7600 2217 GETDVC 3614 GETIN 3000 GETLEN 2432 GETSWD 2201 GO 5264 GOK 6273 GOODRT 6053 GOTIU 3260 GOTOU 2230 GOTP 3745 GOTUD 2217 HANDLE 5400 HOBUFL 1400 HSIZE 0040 IBLOCK 2630 IENTRY 2664 IN 3054 IN2 3055 IN3 3022 INCH 7240 INCR 2000 INER 5716 INHAND 2400 INLEN 3112 INNER 6135 INRECS 7136 INTEN 2645 INTO 5721 IOL 5334 IOT0 5262 IOT1 5273 IOT4 5741 IOT5 5336 IOT6 5265 IOT6C 5472 IOT7 5254 IOTBL 5133 IOTLOO 5032 IOTPTR 5046 ITSCAS 4016 IUNIT 7135 KBM 2125 KBM2 3511 KCLR 6700 KGOA 6706 KLSA 6704 KRSB 6707 KSAF 6705 KSBF 6703 unreferenced KSDR 6701 KSEN 6702 unreferenced L374 5503 L70 5545 L7600 3525 LCDF 5463 LDRFLG 6353 LDRTST 7300 LEN 2101 LKERR 3077 LM1 6534 LM2 6540 LM3 6542 LOADA 5737 LOOK4M 7103 LOOKIO 3627 LOOKUP 6000 LOPTIO 6526 LRET 6060 unreferenced LUDIG 2212 LV 5432 M200 6313 MAKDAT 7436 MARG1 4422 MARG2 4423 MARG3 4424 MAXBLK 0006 MBNF 5320 MCA 4472 unreferenced MENTRY 4431 MH 4400 MHAN 4401 MHANDL 7534 MRG1 4471 MTA 2341 MU 4432 MUT 4433 MUTIL 7537 MWC 4473 unreferenced NEG 7517 NEWGAP 5644 NFNDRE 6054 NFS 3234 NOB 2075 NOBOTH 3446 NOCAS 2054 NOCAS2 3041 NODEC 2011 NOF 2120 NOFILE 7435 NOIN 3115 NONE 3075 NOTOK 5241 NTF 5607 OBLK 2100 OBLOCK 3240 OBUFFE 4600 OBUFLE 3000 ODDPAR 3747 OENTRY 3251 OK 5242 ONPTR 7100 OREAD 2600 OSWITC 3510 OUNIT 7134 OUTEN 3252 OUTER 6136 OUTHAN 2000 OUTSW 5506 OWRITE 3200 P1 6066 P2 6067 PAR 2343 PARITY 2342 PATCHL 0001 PCIBUF 6734 PCOBUF 6327 PIPVER 0006 POINTE 3114 PREAD 2116 PREFIN 6400 PRFIN 3451 PRIN 3416 PRINT 3400 PRLUP 3405 PWRITE 2117 QER4 2665 QH1 5746 QH2 6105 QH3 6357 QH4 6755 QH5 7533 QU1 5745 QU2 6106 QU3 6543 QU4 6756 QU5 7532 RDOR 5621 READ 0000 READSZ 2626 READX 5466 REALEN 2462 RECCOD 0002 RECSIZ 6337 REWCOD 0001 REWIND 0010 REWSW 5252 REWT 4463 RW 5434 RWCRC 5507 SCNT 6070 SELOOP 7473 SETCAS 4200 SETDAT 3073 SETDEN 2302 SETH 4265 SETMAG 4224 SETOBL 7467 SETTY 4101 SETU 4246 SETUP 5436 SFIN 2710 SHORT 2647 SINCH 7200 SKNT 7502 SKPFIL 0070 SKPFT 4461 unreferenced SLOOP 6041 SLSH 5132 SLUP 2712 SPCODE 0006 SPSWTC 4000 SPTR 7501 STARER 3707 STARNM 3720 START 2000 unreferenced TCAS 4001 TEM 3727 TEM2 7503 TEMP 0020 TEMP1 0021 TEMP2 0022 TEMP3 0023 TEMPFN 5251 TEMPU 5250 TENS 7504 TIMEOU 6124 TLRFLG 6661 TM 3536 TMP 5044 TPTR 2735 TT 4105 unreferenced TUN 5500 TWO 7505 TWOLUP 7512 TYPE 3514 UDIG 2200 UNIT 3644 UT 5230 UTEND 5226 UTIL 5200 VERSN 4017 VRSNO 2515 WCDF 5457 WCRC 5551 WRGAP 0040 WRGT 4464 WRITE 4000 WRITEX 5534 WRSIZ 3236 XCLOSE 6411 XCRE 6501 XER10 7141 XER24 7130 XER25 7132 XER4 6347 XER40 7137 XER7 6342 XER77 7530 XER8 6351 XFIN 2655 XFINIO 2646 XLV 6413 unreferenced XR 0010 Y 4106 YAHAIN 3264 YAHAOU 2234 YES 2624 ZER 6104 ZOPT 2337 ZOPTIO 7400 ZRLUP 6422