1 ; BOOT MONITOR 2 ; 3 ; REBASE HIGHER LINK/BOT:140000 4 ; WANT PERFORMANCE COUNTER - CLOCK TICKS TO DO SOMETHING? 5 6 177776 PSW = 177776 7 177570 CNSW = 177570 8 177564 DL11XCSR = 177564 9 000064 DL11VEC = 64 10 11 177546 KW11LKS = 177546 12 000100 KW11VEC = 100 13 14 .ASECT 15 140000 .=140000 16 140000 000005 START: RESET ; 140000 17 140002 005037 177776 CLR @#PSW 18 140006 012706 140000 MOV #START,SP 19 140012 005037 177564 CLR @#DL11XCSR ; CLEAR THE XCSR 20 140016 012700 141125 MOV #BANNER,R0 21 140022 004767 140154' JSR PC,PRINT 22 140026 012737 140130 000100 MOV #CLKAST,@#KW11VEC 23 140034 012737 000340 000102 MOV #340,@#KW11VEC+2 24 140042 052737 000100 177546 BIS #100,@#KW11LKS ; SET CLOCK TICKING 25 26 140050 012700 141155 MOV #PROMPT,R0 27 140054 004767 140154' JSR PC,PRINT 28 140060 162706 000256 SUB #256,SP 29 140064 010600 MOV SP,R0 30 140066 004767 140250' JSR PC,INPUT 31 140072 005000 CLR R0 32 140074 010037 177570 1$: MOV R0,@#CNSW ; UPDATE THE FRONT PANEL DATA DISPLAY WITH R0 33 140100 000001 WAIT 34 140102 005200 INC R0 35 140104 005767 140124' TST LGHTON 36 140110 001771 BEQ 1$ 37 140112 012746 054000 MOV #054000,-(SP) ; SUPER PRIORITY 0 ALT REG 38 140116 016746 140124' MOV LGHTON,-(SP) ; CALL SUPER LOOP START 39 140122 000002 RTI 40 41 140124 000000 LGHTON: .WORD 0 42 140126 000000 CLKTIC: .WORD 0 43 44 CLKAST: ; 140124 45 140130 005267 140126' INC CLKTIC 46 140134 000002 RTI 47 48 ONECHR: 49 140136 105737 177564 TSTB @#DL11XCSR ; 140132 50 140142 100375 BPL ONECHR 51 140144 110037 177566 MOVB R0,@#177566 52 140150 000207 RTS PC 53 54 140152 000000 PRTPTR: .WORD 0 ; 140146 55 56 PRINT: ; 140150 57 140154 132737 000100 177564 BITB #100,@#DL11XCSR 58 140162 001374 BNE PRINT 59 140164 010067 140152' MOV R0,PRTPTR 60 140170 012737 140214 000064 MOV #PRTAST,@#DL11VEC 61 140176 012737 000200 000066 MOV #200,@#DL11VEC+2 62 140204 152737 000100 177564 BISB #100,@#DL11XCSR 63 140212 000207 RTS PC 64 65 PRTAST: ; 140210 66 140214 105777 140152' TSTB @PRTPTR 67 140220 001406 BEQ 2$ 68 140222 117737 140152' 177566 MOVB @PRTPTR,@#177566 69 140230 005267 140152' INC PRTPTR 70 140234 000002 RTI 71 140236 105037 177564 2$: CLRB @#177564 72 140242 000002 RTI 73 74 140244 000000 BUFFER: .WORD 0 ; INPUT BUFFER POINTER 75 140246 000000 LENGTH: .WORD 0 ; INPUT BUFFER LENGTH 76 77 INPUT: 78 140250 010067 140244' MOV R0,BUFFER ; 140244 79 140254 005067 140246' CLR LENGTH 80 140260 012737 140304 000060 MOV #INPAST,@#60 81 140266 012737 000200 000062 MOV #200,@#62 82 140274 152737 000100 177560 BISB #100,@#177560 83 140302 000207 RTS PC 84 85 INPAST: ; 140300 86 140304 010046 MOV R0,-(SP) 87 140306 113700 177562 MOVB @#177562,R0 88 140312 120027 000015 CMPB R0,#15 89 140316 001455 BEQ 7$ ; CARRIAGE RETURN 90 140320 120027 000177 CMPB R0,#127. 91 140324 001403 BEQ 2$ ; 92 140326 120027 000010 CMPB R0,#10 93 140332 001012 BNE 4$ ; BACK SPACE 94 140334 005767 140246' 2$: TST LENGTH ; DATA IN BUFFER? 95 140340 001406 BEQ 3$ 96 140342 005367 140246' DEC LENGTH ; LENGTH 97 140346 012700 141043 MOV #DEL,R0 98 140352 004767 140154' JSR PC,PRINT 99 140356 000453 3$: BR 9$ 100 140360 120027 000040 4$: CMPB R0,#40 101 140364 002450 BLT 9$ ; BELOW SPACE 102 140366 120027 000177 CMPB R0,#177 103 140372 002045 BGE 9$ ; SKIP STUFF TOO BIG 104 140374 004767 140136' JSR PC,ONECHR ; ECHO CHAR 105 140400 120027 000172 CMPB R0,#172 106 140404 003005 BGT 5$ ; ABOVE Z 107 140406 120027 000141 CMPB R0,#141 108 140412 002402 BLT 5$ ; BELOW A 109 140414 142700 000040 BICB #40,R0 ; CONVERT TO UPPER CASE 110 140420 026727 140246' 000254 5$: CMP LENGTH,#254 111 140426 002027 BGE 9$ 112 140430 110046 MOVB R0,-(SP) 113 140432 016700 140244' MOV BUFFER,R0 114 140436 066700 140246' ADD LENGTH,R0 115 140442 112610 MOVB (SP)+,(R0) 116 140444 005267 140246' INC LENGTH 117 140450 000416 BR 9$ 118 119 140452 016700 140244' 7$: MOV BUFFER,R0 120 140456 066700 140246' ADD LENGTH,R0 121 140462 105010 CLRB (R0) 122 140464 012737 140512 000240 MOV #CMD,@#240 ; CALL CMD AT PRIORITY 2 123 140472 012737 000100 000242 MOV #100,@#242 124 140500 012737 002000 177772 MOV #2000,@#177772 125 140506 012600 9$: MOV (SP)+,R0 126 140510 000002 RTI 127 128 CMD: ; 140506 129 140512 005037 177772 CLR @#177772 ; NO MORE PIR CALLS 130 140516 010046 MOV R0,-(SP) 131 140520 010146 MOV R1,-(SP) 132 140522 010246 MOV R2,-(SP) 133 140524 010346 MOV R3,-(SP) 134 140526 010446 MOV R4,-(SP) 135 140530 012700 141040 MOV #EOL,R0 136 140534 004767 140154' JSR PC,PRINT 137 140540 132737 000100 177564 1$: BITB #100,@#177564 138 140546 001374 BNE 1$ 139 140550 005004 CLR R4 140 140552 012703 141047 MOV #CMDLST,R3 ; CMD LIST 141 140556 112300 3$: MOVB (R3)+,R0 142 140560 001431 BEQ 13$ 143 140562 016702 140244' MOV BUFFER,R2 ; USER CMD 144 140566 112201 4$: MOVB (R2)+,R1 145 140570 001431 BEQ 15$ ; NULL COMMAND? 146 140572 120127 000040 CMPB R1,#40 147 140576 001773 BEQ 4$ ; SKIP SPACE 148 140600 120001 5$: CMPB R0,R1 149 140602 001010 BNE 7$ 150 140604 112300 MOVB (R3)+,R0 151 140606 001412 BEQ 9$ 152 140610 112201 MOVB (R2)+,R1 153 140612 001410 BEQ 9$ 154 140614 120127 000040 CMPB R1,#40 155 140620 001367 BNE 5$ 156 140622 000404 BR 9$ 157 140624 112300 7$: MOVB (R3)+,R0 158 140626 001376 BNE 7$ 159 140630 005204 INC R4 160 140632 000751 BR 3$ 161 140634 006304 9$: ASL R4 162 140636 004774 140704 JSR PC,@CMDTBL(R4) ; EXECUTE 163 140642 000404 BR 15$ 164 165 140644 012700 141103 13$: MOV #UNKMSG,R0 166 140650 004767 140154' JSR PC,PRINT 167 168 140654 005067 140246' 15$: CLR LENGTH 169 140660 012700 141155 MOV #PROMPT,R0 170 140664 004767 140154' JSR PC,PRINT 171 140670 012604 MOV (SP)+,R4 172 140672 012603 MOV (SP)+,R3 173 140674 012602 MOV (SP)+,R2 174 140676 012601 MOV (SP)+,R1 175 140700 012600 MOV (SP)+,R0 176 140702 000002 RTI 177 178 179 140704 142054 141250 141264 CMDTBL: .WORD BOOT,HALT,TEST,LIGHTS,HELP 140712 141370 141236 180 140716 103 117 115 HLPMSG: .ASCIZ 'COMMANDS ARE BOOT, HALT, LIGHTS, TEST AND HELP'<15><12>'BOOT DEVICES ARE RK? RL? OR RP?'<15><12> 140721 115 101 116 140724 104 123 040 140727 101 122 105 140732 040 102 117 140735 117 124 054 140740 040 110 101 140743 114 124 054 140746 040 114 111 140751 107 110 124 140754 123 054 040 140757 124 105 123 140762 124 040 101 140765 116 104 040 140770 110 105 114 140773 120 015 012 140776 102 117 117 141001 124 040 104 141004 105 126 111 141007 103 105 123 141012 040 101 122 141015 105 040 122 141020 113 077 040 141023 122 114 077 141026 040 117 122 141031 040 122 120 141034 077 015 012 141037 000 181 141040 015 012 000 EOL: .BYTE 15,12,0 182 141043 010 040 010 DEL: .BYTE 10,40,10,0 141046 000 183 141047 102 117 117 CMDLST: .ASCIZ 'BOOT' 141052 124 000 184 141054 110 101 114 .ASCIZ 'HALT' 141057 124 000 185 141061 124 105 123 .ASCIZ 'TEST' 141064 124 000 186 141066 114 111 107 .ASCIZ 'LIGHTS' 141071 110 124 123 141074 000 187 141075 110 105 114 .ASCIZ 'HELP' 141100 120 000 188 141102 000 .BYTE 0 189 141103 125 116 113 UNKMSG: .ASCIZ 'UNKNOWN COMMAND'<12><15> 141106 116 117 127 141111 116 040 103 141114 117 115 115 141117 101 116 104 141122 012 015 000 190 141125 120 104 120 BANNER: .ASCIZ 'PDP-11 MONITOR V1.0'<12><15><12><15> 141130 055 061 061 141133 040 115 117 141136 116 111 124 141141 117 122 040 141144 126 061 056 141147 060 012 015 141152 012 015 000 191 ; 'ADAPTED FROM CODE BY PAUL NANKERVIS '<12><15><12><15> 192 141155 102 117 117 PROMPT: .ASCIZ 'BOOT> ' 141160 124 076 040 141163 000 193 141164 125 116 113 BADBOO: .ASCIZ 'UNKNOWN BOOT DEVICE'<12><15> 141167 116 117 127 141172 116 040 102 141175 117 117 124 141200 040 104 105 141203 126 111 103 141206 105 012 015 141211 000 194 141212 040 040 040 PERMSG: .ASCIZ ' CLOCK TICKS'<12><15> 141215 040 040 040 141220 103 114 117 141223 103 113 040 141226 124 111 103 141231 113 123 012 141234 015 000 195 196 .EVEN 197 198 HELP: ; 141244 199 141236 012700 140716 MOV #HLPMSG,R0 200 141242 004767 140154' JSR PC,PRINT 201 141246 000207 RTS PC 202 203 HALT: ; 141260 204 141250 000000 HALT 205 141252 012700 141040 MOV #EOL,R0 206 141256 004767 140154' JSR PC,PRINT 207 141262 000207 RTS PC 208 209 TEST: ; 141272 210 141264 005067 140126' CLR CLKTIC 211 212 141270 012705 015000 MOV #15000,R5 213 141274 010537 177570 10$: MOV R5,@#177570 ; DISPLAY 214 141300 010504 MOV R5,R4 215 141302 006204 ASR R4 216 141304 005000 15$: CLR R0 217 141306 010501 MOV R5,R1 218 141310 071004 DIV R4,R0 219 141312 010002 MOV R0,R2 220 141314 070204 MUL R4,R2 221 141316 060301 ADD R3,R1 222 141320 020105 CMP R1,R5 223 141322 001401 BEQ 20$ 224 141324 000000 HALT 225 141326 077412 20$: SOB R4,15$ 226 141330 077517 SOB R5,10$ 227 228 141332 012700 141217 MOV #PERMSG+5,R0 229 141336 016703 140126' MOV CLKTIC,R3 230 231 141342 005002 25$: CLR R2 ; 141350 232 141344 071227 000010 DIV #10,R2 233 141350 062703 000060 ADD #'0,R3 234 141354 110340 MOVB R3,-(R0) 235 141356 010203 MOV R2,R3 236 141360 001370 BNE 25$ 237 238 141362 004767 140154' JSR PC,PRINT 239 141366 000207 RTS PC 240 241 242 177572 MMR0=177572 243 177574 MMR1=177574 244 177576 MMR2=177576 245 172516 MMR3=172516 246 247 LIGHTS: ; 141376 248 141370 012703 077406 MOV #77406,R3 ; DEFAULT PDR 249 141374 005002 CLR R2 250 141376 005001 CLR R1 251 141400 012700 000010 MOV #8.,R0 252 141404 010361 172300 1$: MOV R3,172300(R1) ; KERNEL I PDR 253 141410 010261 172340 MOV R2,172340(R1) ; KERNEL I PAR 254 141414 010361 172320 MOV R3,172320(R1) ; KERNEL D PDR 255 141420 010261 172360 MOV R2,172360(R1) ; KERNEL D PAR 256 141424 010361 172200 MOV R3,172200(R1) ; SUPER I PDR 257 141430 010261 172240 MOV R2,172240(R1) ; SUPER I PAR 258 141434 010361 172220 MOV R3,172220(R1) ; SUPER D PDR 259 141440 010261 172260 MOV R2,172260(R1) ; SUPER D PAR 260 141444 010361 177600 MOV R3,177600(R1) ; USER I PDR 261 141450 010261 177640 MOV R2,177640(R1) ; USER I PAR 262 141454 010361 177620 MOV R3,177620(R1) ; USER D PDR 263 141460 010361 177660 MOV R3,177660(R1) ; USER D PAR 264 141464 062702 000200 ADD #200,R2 265 141470 062701 000002 ADD #2,R1 266 141474 077035 SOB R0,1$ 267 141476 052737 176000 172376 BIS #176000,@#172376 ; KERNEL D POINTS TO I/O SPACE 268 141504 052737 176000 172276 BIS #176000,@#172276 ; SUPER D POINTS TO I/O SPACE 269 141512 052737 176000 177676 BIS #176000,@#177676 ; USER D POINTS TO I/O SPACE 270 141520 012737 000077 172516 MOV #77,@#MMR3 ; 77 FOR 22 BIT 271 141526 012737 000001 177572 MOV #1,@#MMR0 272 273 141534 012737 001700 172244 MOV #1700,@#172244 ; BASE SUPER I (PAR 2) #40000 AT #170000 274 141542 012737 001700 172264 MOV #1700,@#172264 ; BASE SUPER D (PAR 2) #40000 AT #170000 275 141550 012737 010000 177776 MOV #010000,@#177776 ; SET PM TO SUPER 276 277 141556 012703 040200 MOV #40200,R3 ; SUPER CODE ADDRESS 278 141562 012702 141610 MOV #SUPERS,R2 ; ADDRESS SUPER CODE 279 141566 012246 10$: MOV (R2)+,-(SP) 280 141570 006623 MTPI (R3)+ 281 141572 020227 142054 CMP R2,#SUPERE 282 141576 103773 BLO 10$ 283 284 141600 012767 040200 140124' MOV #40200,LGHTON ; CHANGE IDLE TASK 285 141606 000207 RTS PC 286 287 ; 288 ; TO BE COPIED TO SUPER #40200 AT PHYSICAL #170000 289 ; #40000 TO #40200 FOR WAIT & JMP INSTRUCTIONS 290 ; 291 SUPERS: ; 141616 292 141610 012700 000037 MOV #37,R0 ; LOAD PATTERN 293 141614 012701 174000 MOV #174000,R1 294 141620 032737 000001 177570 BIT #1,@#177570 295 141626 001414 BEQ 10$ 296 141630 012700 007417 MOV #7417,R0 297 141634 010001 MOV R0,R1 298 141636 005101 COM R1 299 141640 032737 000002 177570 BIT #2,@#177570 300 141646 001404 BEQ 10$ 301 141650 012700 036163 MOV #36163,R0 302 141654 012701 037000 MOV #37000,R1 303 141660 010102 10$: MOV R1,R2 304 141662 162702 000002 SUB #2,R2 305 141666 042702 000001 BIC #1,R2 ; WAIT ADDRESS 306 141672 010203 MOV R2,R3 307 141674 042703 177701 BIC #177701,R3 ; ADDRESS OFFSET 308 141700 012763 000001 040000 MOV #0000001,40000(R3) ; WRITE WAIT 309 141706 062703 000002 ADD #2,R3 310 141712 012763 000113 040000 MOV #0000113,40000(R3) ; WRITE JMP (R3) 311 312 141720 010204 MOV R2,R4 313 141722 072427 177772 ASH #-6,R4 314 141726 042704 177600 BIC #177600,R4 315 141732 012705 001700 MOV #1700,R5 316 141736 160405 SUB R4,R5 ; PAR ADDRESS BASE FOR WAIT 317 141740 010204 MOV R2,R4 318 141742 072427 177764 ASH #-12.,R4 319 141746 042704 177761 BIC #177761,R4 ; PAR SELECT OFFSET 320 141752 010564 172240 MOV R5,172240(R4) ; SUPER I SPACE 321 322 141756 010103 MOV R1,R3 323 141760 072327 177764 ASH #-12.,R3 324 141764 042703 177761 BIC #177761,R3 ; PAR SELECT OFFSET 325 141770 020304 CMP R3,R4 ; SAME PAR 326 141772 001412 BEQ 30$ 327 141774 010104 MOV R1,R4 328 141776 072427 177772 ASH #-6,R4 329 142002 042704 177600 BIC #177600,R4 330 142006 012705 001700 MOV #1700,R5 331 142012 160405 SUB R4,R5 ; PAR ADDRESS BASE FOR JMP 332 142014 010563 172240 MOV R5,172240(R3) ; SUPER I SPACE 333 30$: 334 142020 012704 000003 MOV #3,R4 335 142024 063704 177570 ADD @#177570,R4 336 142030 012703 000002 MOV #2,R3 337 142034 060703 ADD PC,R3 338 142036 000112 40$: JMP (R2) 339 142040 077402 SOB R4,40$ 340 142042 010002 MOV R0,R2 341 142044 006002 ROR R2 ; ROTATE PATTERN 342 142046 006101 ROL R1 343 142050 006000 ROR R0 344 142052 000702 BR 10$ 345 SUPERE: 346 347 BOOT: ; 142062 348 142054 005003 CLR R3 ; UNIT 349 142056 112201 1$: MOVB (R2)+,R1 350 142060 001545 BEQ BOOTRK ; DEFAULT DEVICE IS RK0 351 142062 120127 000040 CMPB R1,#40 352 142066 001773 BEQ 1$ 353 142070 120127 000122 CMPB R1,#'R 354 142074 001405 BEQ 5$ 355 356 142076 012700 141164 MOV #BADBOO,R0 357 142102 004767 140154' JSR PC,PRINT 358 142106 000207 RTS PC 359 360 142110 112201 5$: MOVB (R2)+,R1 ; HOPEFULLY K, L OR P 361 142112 112200 7$: MOVB (R2)+,R0 ; DIGIT 362 142114 001416 BEQ 9$ 363 142116 120027 000040 CMPB R0,#40 364 142122 001413 BEQ 9$ 365 142124 120027 000067 CMPB R0,#'7 366 142130 003031 BGT 11$ 367 142132 162700 000060 SUB #'0,R0 368 142136 002426 BLT 11$ 369 142140 006303 ASL R3 370 142142 006303 ASL R3 371 142144 006303 ASL R3 372 142146 050003 BIS R0,R3 ; PUT DIGIT INTO UNIT 373 142150 000760 BR 7$ 374 142152 005002 9$: CLR R2 375 142154 012722 000137 MOV #137,(R2)+ ; STORE "JMP @#140000" INSTRUCTION AT ADDRESS 0 376 142160 012722 140000 MOV #START,(R2)+ 377 142164 012722 140000 MOV #START,(R2)+ ; STORE #140000 IN VECTOR 4, IN CASE OF TRAP TO 4 378 142170 005022 CLR (R2)+ 379 142172 120127 000113 CMPB R1,#'K 380 142176 001476 BEQ BOOTRK 381 142200 120127 000114 CMPB R1,#'L 382 142204 001410 BEQ BOOTRL 383 142206 120127 000120 CMPB R1,#'P 384 142212 001517 BEQ BOOTRP 385 386 142214 012700 141103 11$: MOV #UNKMSG,R0 387 142220 004767 140154' JSR PC,PRINT 388 142224 000207 RTS PC 389 390 174400 RLCS=174400 391 BOOTRL: ; 142326 392 142226 000005 RESET 393 142230 000303 SWAB R3 ; UNIT NUMBER 394 142232 012701 174400 MOV #RLCS,R1 ; CSR 395 142236 012761 000013 000004 MOV #13,4(R1) ; CLR ERR 396 142244 052703 000004 BIS #4,R3 ; UNIT+GSTAT 397 142250 010311 MOV R3,(R1) ; ISSUE CMD 398 142252 105711 TSTB (R1) ; WAIT 399 142254 100376 BPL .-2 400 142256 105003 CLRB R3 401 142260 052703 000010 BIS #10,R3 ; UNIT+RDHDR 402 142264 010311 MOV R3,(R1) ; ISSUE CMD 403 142266 105711 TSTB (R1) ; WAIT 404 142270 100376 BPL .-2 405 142272 016102 000006 MOV 6(R1),R2 ; GET HDR 406 142276 042702 000077 BIC #77,R2 ; CLR SECTOR 407 142302 005202 INC R2 ; MAGIC BIT 408 142304 010261 000004 MOV R2,4(R1) ; SEEK TO 0 409 142310 105003 CLRB R3 410 142312 052703 000006 BIS #6,R3 ; UNIT+SEEK 411 142316 010311 MOV R3,(R1) ; ISSUE CMD 412 142320 105711 TSTB (R1) ; WAIT 413 142322 100376 BPL .-2 414 142324 005061 000002 CLR 2(R1) ; CLR BA 415 142330 005061 000004 CLR 4(R1) ; CLR DA 416 142334 012761 177000 000006 MOV #-512.,6(R1) ; SET WC 417 142342 105003 CLRB R3 418 142344 052703 000014 BIS #14,R3 ; UNIT+READ 419 142350 010311 MOV R3,(R1) ; ISSUE CMD 420 142352 105711 TSTB (R1) ; WAIT 421 142354 100376 BPL .-2 422 142356 042711 000377 BIC #377,(R1) 423 142362 005002 CLR R2 424 142364 005003 CLR R3 425 142366 005004 CLR R4 426 142370 005005 CLR R5 427 142372 005007 CLR PC 428 429 177412 RKDA=177412 430 000005 READGO=5 431 BOOTRK: 432 142374 000005 RESET ; 142402 433 142376 000303 SWAB R3 ; UNIT NUMBER 434 142400 006303 ASL R3 435 142402 006303 ASL R3 436 142404 006303 ASL R3 437 142406 006303 ASL R3 438 142410 006303 ASL R3 439 142412 012701 177412 MOV #RKDA,R1 ; CSR 440 142416 010311 MOV R3,(R1) ; LOAD DA 441 142420 005041 CLR -(R1) ; CLEAR BA 442 142422 012741 177000 MOV #-256.*2,-(R1) ; LOAD WC 443 142426 012741 000005 MOV #READGO,-(R1) ; READ & GO 444 142432 005002 CLR R2 445 142434 005003 CLR R3 446 142436 005004 CLR R4 447 142440 005005 CLR R5 448 142442 105711 TSTB (R1) 449 142444 100376 BPL .-2 450 142446 105011 CLRB (R1) 451 142450 005007 CLR PC 452 453 176700 RPCSR=0176700 454 BOOTRP: ; 142460 455 142452 000005 RESET 456 142454 012701 176700 MOV #RPCSR, R1 457 142460 012761 000040 000010 MOV #0000040, 10(R1) ; RESET 458 142466 010361 000010 MOV R3, 10(R1) ; SET UNIT 459 142472 012711 000021 MOV #0000021, (R1) ; PACK ACK 460 142476 012761 010000 000032 MOV #0010000, 32(R1) ; 16B MODE 461 142504 012761 177000 000002 MOV #-512., 2(R1) ; SET WC 462 142512 005061 000004 CLR 4(R1) ; CLR BA 463 142516 005061 000006 CLR 6(R1) ; CLR DA 464 142522 005061 000034 CLR 34(R1) ; CLR CYL 465 142526 012711 000071 MOV #0000071, (R1) ; READ 466 142532 105711 TSTB (R1) ; WAIT 467 142534 100376 BPL .-2 468 142536 105011 CLRB (R1) 469 142540 010300 MOV R3,R0 470 142542 005007 CLR PC 471 472 .END START 472