100 TAD CONFIG /ADD ON GROUP AND HSET BITS 110 DCA WAIT /SAVE FOR NOW 120 TAD SECTLO /GET LOW-ORDER ADDRESS BACK 130 AND (7400) /JUST HIGHEST 4 BITS 140 CLL RAL /MOVE UP 150 TAD WAIT /NOW HAVE HIGHEST 13 BITS OF ADDRESS 160 RTL;RTL /MOVE DOWN 170 DCA SECTMD /STORE IN MIDDLE ADDRESS 180 TAD SECTMD /GET IT BACK 190 AND (7400) /ISOLATE GROUP BITS 200 RTL;RTL;RAL /MOVE DOWN 210 TAD UNIT /ADD ON UNIT BITS 220 DCA SECTHI /STORE AS HIGH-ORDER ADDRESS 230 EJECT 240 RDF /GET CALLING FIELD 250 TAD (CIF) /MAKE IT CIF RETURN FIELD 260 DCA WINEXIT /STORE IN-LINE 270 ISZ WINHND /BUMP PAST ARGUMENT POINTER 280 JMS LOC8 /FIND OUT WHERE WE ARE LOADED 290 LOC8, .-. /WILL BE OUR OWN PC 300 DSRS /GET STATUS 310 SPA CLA /SKIP IF CONTROLLER IS IDLE 320 JMP .-2 /ELSE WE MIGHT AS WELL WAIT 330 RIF /GET OUR FIELD 340 CLL RTR;RAR /MOVE DOWN (BANK AND) FIELD 350 DSHI /SEND HIGH-ORDER COMMAND ADDRESS 360 DSRS /GET STATUS 370 SMA CLA /SKIP IF BUSY 380 JMP .-2 /ELSE KEEP WAITING 390 DSCF /CLEAR DONE FLAG NOW 400 TAD LOC8 /GET OUR PC 410 TAD (TABLE-LOC8) /ADJUST TO COMMAND TABLE 420 DSGO /GO START IT UP 430 JMS WAIT /WAIT FOR COMMAND TO TAKE 440 DSIM /FINISH THE COMMAND 450 JMS WAIT /WAIT FOR COMMAND TO COMPLETE 460 ISZ WINHND /BUMP TO GOOD RETURN 470 WINEXIT,.-. /WILL BE CIF RETURN FIELD 480 JMP I WINHND /RETURN TO CALLER 490 500 WAIT, .-. /WAIT ROUTINE 510 DSSF /FLAG UP? 520 JMP .-1 /NO, WAIT FOR IT 530 DSCF /YES, CLEAR IT 540 DSRS /GET STATUS NOW 550 CLL RAL /REMOVE BUSY BIT 560 SNA CLA /SKIP IF ANY ERRORS 570 JMP I WAIT /ELSE RETURN 580 DSRS /GET STATUS AGAIN 590 JMP WINEXIT /TAKE ERROR RETURN THERE 600 610 CONFIG, GROUP-1^2+HSET^10 /GROUP AND HANDLER SET WORD 620 UNIT, LOGUNIT^40 /LOGICAL UNIT WORD 630 WOFF, OFFSET^40 /OFFSET WORD 640 EJECT 650 / COMMAND TABLE. 660 670 TABLE, IDNUM^400+6+DMA /TABLE LENGTH PLUS DMA INDICATOR AND ID 680 RWCOM, .-.&377 /0010 IF READING, 0012 IF WRITING 690 SECTHI, .-.&377 /UNIT BITS AND HIGH-ORDER SECTOR ADDRESS 700 SECTMD, .-.&377 /MIDDLE SECTOR ADDRESS 710 SECTLO, .-.&377 /LOW-ORDER SECTOR ADDRESS 720 SCTCNT, .-.&377 /SECTOR COUNTER (1-40) 730 CONTRL, 0&377 /CONTROL WORD 740 TRFLD, .-.&377 /BANK (0000) AND TRANSFER FIELD (0-7) 750 TRADDR, .-. /TRANSFER ADDRESS 760 770 PAGE 780 790 $ /THAT'S ALL FOLK!