pcjs/apps/pdp11/boot/test/TEST.lst
2016-10-17 15:25:15 -07:00

538 lines
29 KiB
Text

1 ; BOOT LOADER CODE
2 ;
3 ; REBASE HIGHER LINK/BOT:140000
4 ; WANT PERFORMANCE COUNTER - CLOCK TICKS TO DO SOMETHING?
5
6 177776 PSW = 177776
7 177564 DL11XCSR = 177564
8 000064 DL11VEC = 64
9
10 177546 KW11LKS = 177546
11 000100 KW11VEC = 100
12
13 .ASECT
14 140000 .=140000
15 140000 000005 START: RESET ; 140000
16 140002 005037 177776 CLR @#PSW
17 140006 012706 140000 MOV #START,SP
18 140012 005037 177564 CLR @#DL11XCSR ; CLEAR THE XCSR
19 140016 012700 141121 MOV #BANNER,R0
20 140022 004767 140150' JSR PC,PRINT
21 140026 012737 140124 000100 MOV #CLKAST,@#KW11VEC
22 140034 012737 000340 000102 MOV #340,@#KW11VEC+2
23 140042 052737 000100 177546 BIS #100,@#KW11LKS ; SET CLOCK TICKING
24
25 140050 012700 141173 MOV #PROMPT,R0
26 140054 004767 140150' JSR PC,PRINT
27 140060 162706 000256 SUB #256,SP
28 140064 010600 MOV SP,R0
29 140066 004767 140244' JSR PC,INPUT
30 140072 005000 CLR R0
31 140074 000001 1$: WAIT
32 140076 005200 INC R0
33 140100 005767 140120' TST LGHTON
34 140104 001773 BEQ 1$
35 140106 012746 054000 MOV #054000,-(SP) ; SUPER PRIORITY 0 ALT REG
36 140112 016746 140120' MOV LGHTON,-(SP) ; CALL SUPER LOOP START
37 140116 000002 RTI
38
39 140120 000000 LGHTON: .WORD 0
40 140122 000000 CLKTIC: .WORD 0
41
42 CLKAST: ; 140124
43 140124 005267 140122' INC CLKTIC
44 140130 000002 RTI
45
46 ONECHR:
47 140132 105737 177564 TSTB @#DL11XCSR ; 140132
48 140136 100375 BPL ONECHR
49 140140 110037 177566 MOVB R0,@#177566
50 140144 000207 RTS PC
51
52 140146 000000 PRTPTR: .WORD 0 ; 140146
53
54 PRINT: ; 140150
55 140150 132737 000100 177564 BITB #100,@#DL11XCSR
56 140156 001374 BNE PRINT
57 140160 010067 140146' MOV R0,PRTPTR
58 140164 012737 140210 000064 MOV #PRTAST,@#DL11VEC
59 140172 012737 000200 000066 MOV #200,@#DL11VEC+2
60 140200 152737 000100 177564 BISB #100,@#DL11XCSR
61 140206 000207 RTS PC
62
63 PRTAST: ; 140210
64 140210 105777 140146' TSTB @PRTPTR
65 140214 001406 BEQ 2$
66 140216 117737 140146' 177566 MOVB @PRTPTR,@#177566
67 140224 005267 140146' INC PRTPTR
68 140230 000002 RTI
69 140232 105037 177564 2$: CLRB @#177564
70 140236 000002 RTI
71
72 140240 000000 BUFFER: .WORD 0 ; INPUT BUFFER POINTER
73 140242 000000 LENGTH: .WORD 0 ; INPUT BUFFER LENGTH
74
75 INPUT:
76 140244 010067 140240' MOV R0,BUFFER ; 140244
77 140250 005067 140242' CLR LENGTH
78 140254 012737 140300 000060 MOV #INPAST,@#60
79 140262 012737 000200 000062 MOV #200,@#62
80 140270 152737 000100 177560 BISB #100,@#177560
81 140276 000207 RTS PC
82
83 INPAST: ; 140300
84 140300 010046 MOV R0,-(SP)
85 140302 113700 177562 MOVB @#177562,R0
86 140306 120027 000015 CMPB R0,#15
87 140312 001455 BEQ 7$ ; CARRIAGE RETURN
88 140314 120027 000177 CMPB R0,#127.
89 140320 001403 BEQ 2$ ; <DEL>
90 140322 120027 000010 CMPB R0,#10
91 140326 001012 BNE 4$ ; BACK SPACE
92 140330 005767 140242' 2$: TST LENGTH ; DATA IN BUFFER?
93 140334 001406 BEQ 3$
94 140336 005367 140242' DEC LENGTH ; LENGTH
95 140342 012700 141037 MOV #DEL,R0
96 140346 004767 140150' JSR PC,PRINT
97 140352 000453 3$: BR 9$
98 140354 120027 000040 4$: CMPB R0,#40
99 140360 002450 BLT 9$ ; BELOW SPACE
100 140362 120027 000177 CMPB R0,#177
101 140366 002045 BGE 9$ ; SKIP STUFF TOO BIG
102 140370 004767 140132' JSR PC,ONECHR ; ECHO CHAR
103 140374 120027 000172 CMPB R0,#172
104 140400 003005 BGT 5$ ; ABOVE Z
105 140402 120027 000141 CMPB R0,#141
106 140406 002402 BLT 5$ ; BELOW A
107 140410 142700 000040 BICB #40,R0 ; CONVERT TO UPPER CASE
108 140414 026727 140242' 000254 5$: CMP LENGTH,#254
109 140422 002027 BGE 9$
110 140424 110046 MOVB R0,-(SP)
111 140426 016700 140240' MOV BUFFER,R0
112 140432 066700 140242' ADD LENGTH,R0
113 140436 112610 MOVB (SP)+,(R0)
114 140440 005267 140242' INC LENGTH
115 140444 000416 BR 9$
116
117 140446 016700 140240' 7$: MOV BUFFER,R0
118 140452 066700 140242' ADD LENGTH,R0
119 140456 105010 CLRB (R0)
120 140460 012737 140506 000240 MOV #CMD,@#240 ; CALL CMD AT PRIORITY 2
121 140466 012737 000100 000242 MOV #100,@#242
122 140474 012737 002000 177772 MOV #2000,@#177772
123 140502 012600 9$: MOV (SP)+,R0
124 140504 000002 RTI
125
126 CMD: ; 140506
127 140506 005037 177772 CLR @#177772 ; NO MORE PIR CALLS
128 140512 010046 MOV R0,-(SP)
129 140514 010146 MOV R1,-(SP)
130 140516 010246 MOV R2,-(SP)
131 140520 010346 MOV R3,-(SP)
132 140522 010446 MOV R4,-(SP)
133 140524 012700 141034 MOV #EOL,R0
134 140530 004767 140150' JSR PC,PRINT
135 140534 132737 000100 177564 1$: BITB #100,@#177564
136 140542 001374 BNE 1$
137 140544 005004 CLR R4
138 140546 012703 141043 MOV #CMDLST,R3 ; CMD LIST
139 140552 112300 3$: MOVB (R3)+,R0
140 140554 001431 BEQ 13$
141 140556 016702 140240' MOV BUFFER,R2 ; USER CMD
142 140562 112201 4$: MOVB (R2)+,R1
143 140564 001431 BEQ 15$ ; NULL COMMAND?
144 140566 120127 000040 CMPB R1,#40
145 140572 001773 BEQ 4$ ; SKIP SPACE
146 140574 120001 5$: CMPB R0,R1
147 140576 001010 BNE 7$
148 140600 112300 MOVB (R3)+,R0
149 140602 001412 BEQ 9$
150 140604 112201 MOVB (R2)+,R1
151 140606 001410 BEQ 9$
152 140610 120127 000040 CMPB R1,#40
153 140614 001367 BNE 5$
154 140616 000404 BR 9$
155 140620 112300 7$: MOVB (R3)+,R0
156 140622 001376 BNE 7$
157 140624 005204 INC R4
158 140626 000751 BR 3$
159 140630 006304 9$: ASL R4
160 140632 004774 140700 JSR PC,@CMDTBL(R4) ; EXECUTE
161 140636 000404 BR 15$
162
163 140640 012700 141077 13$: MOV #UNKMSG,R0
164 140644 004767 140150' JSR PC,PRINT
165
166 140650 005067 140242' 15$: CLR LENGTH
167 140654 012700 141173 MOV #PROMPT,R0
168 140660 004767 140150' JSR PC,PRINT
169 140664 012604 MOV (SP)+,R4
170 140666 012603 MOV (SP)+,R3
171 140670 012602 MOV (SP)+,R2
172 140672 012601 MOV (SP)+,R1
173 140674 012600 MOV (SP)+,R0
174 140676 000002 RTI
175
176
177 140700 142072 141266 141302 CMDTBL: .WORD BOOT,HALT,TEST,LIGHTS,HELP
140706 141406 141254
178 140712 103 117 115 HLPMSG: .ASCIZ 'COMMANDS ARE BOOT, HALT, LIGHTS, TEST AND HELP'<15><12>'BOOT DEVICES ARE RK? RL? OR RP?'<15><12>
140715 115 101 116
140720 104 123 040
140723 101 122 105
140726 040 102 117
140731 117 124 054
140734 040 110 101
140737 114 124 054
140742 040 114 111
140745 107 110 124
140750 123 054 040
140753 124 105 123
140756 124 040 101
140761 116 104 040
140764 110 105 114
140767 120 015 012
140772 102 117 117
140775 124 040 104
141000 105 126 111
141003 103 105 123
141006 040 101 122
141011 105 040 122
141014 113 077 040
141017 122 114 077
141022 040 117 122
141025 040 122 120
141030 077 015 012
141033 000
179 141034 015 012 000 EOL: .BYTE 15,12,0
180 141037 010 040 010 DEL: .BYTE 10,40,10,0
141042 000
181 141043 102 117 117 CMDLST: .ASCIZ 'BOOT'
141046 124 000
182 141050 110 101 114 .ASCIZ 'HALT'
141053 124 000
183 141055 124 105 123 .ASCIZ 'TEST'
141060 124 000
184 141062 114 111 107 .ASCIZ 'LIGHTS'
141065 110 124 123
141070 000
185 141071 110 105 114 .ASCIZ 'HELP'
141074 120 000
186 141076 000 .BYTE 0
187 141077 125 116 113 UNKMSG: .ASCIZ 'UNKNOWN COMMAND'<12><15>
141102 116 117 127
141105 116 040 103
141110 117 115 115
141113 101 116 104
141116 012 015 000
188 141121 120 101 125 BANNER: .ASCIZ 'PAUL NANKERVIS - PAULNANK@HOTMAIL.COM'<12><15><12><15>
141124 114 040 116
141127 101 116 113
141132 105 122 126
141135 111 123 040
141140 055 040 120
141143 101 125 114
141146 116 101 116
141151 113 100 110
141154 117 124 115
141157 101 111 114
141162 056 103 117
141165 115 012 015
141170 012 015 000
189 141173 102 117 117 PROMPT: .ASCIZ 'BOOT> '
141176 124 076 040
141201 000
190 141202 125 116 113 BADBOO: .ASCIZ 'UNKNOWN BOOT DEVICE'<12><15>
141205 116 117 127
141210 116 040 102
141213 117 117 124
141216 040 104 105
141221 126 111 103
141224 105 012 015
141227 000
191 141230 040 040 040 PERMSG: .ASCIZ ' CLOCK TICKS'<12><15>
141233 040 040 040
141236 103 114 117
141241 103 113 040
141244 124 111 103
141247 113 123 012
141252 015 000
192
193 .EVEN
194
195 HELP: ; 141244
196 141254 012700 140712 MOV #HLPMSG,R0
197 141260 004767 140150' JSR PC,PRINT
198 141264 000207 RTS PC
199
200 HALT: ; 141260
201 141266 000000 HALT
202 141270 012700 141034 MOV #EOL,R0
203 141274 004767 140150' JSR PC,PRINT
204 141300 000207 RTS PC
205
206 TEST: ; 141272
207 141302 005067 140122' CLR CLKTIC
208
209 141306 012705 015000 MOV #15000,R5
210 141312 010537 177570 10$: MOV R5,@#177570 ; DISPLAY
211 141316 010504 MOV R5,R4
212 141320 006204 ASR R4
213 141322 005000 15$: CLR R0
214 141324 010501 MOV R5,R1
215 141326 071004 DIV R4,R0
216 141330 010002 MOV R0,R2
217 141332 070204 MUL R4,R2
218 141334 060301 ADD R3,R1
219 141336 020105 CMP R1,R5
220 141340 001401 BEQ 20$
221 141342 000000 HALT
222 141344 077412 20$: SOB R4,15$
223 141346 077517 SOB R5,10$
224
225 141350 012700 141235 MOV #PERMSG+5,R0
226 141354 016703 140122' MOV CLKTIC,R3
227
228 141360 005002 25$: CLR R2 ; 141350
229 141362 071227 000010 DIV #10,R2
230 141366 062703 000060 ADD #'0,R3
231 141372 110340 MOVB R3,-(R0)
232 141374 010203 MOV R2,R3
233 141376 001370 BNE 25$
234
235 141400 004767 140150' JSR PC,PRINT
236 141404 000207 RTS PC
237
238
239 177572 MMR0=177572
240 177574 MMR1=177574
241 177576 MMR2=177576
242 172516 MMR3=172516
243
244 LIGHTS: ; 141376
245 141406 012703 077406 MOV #77406,R3 ; DEFAULT PDR
246 141412 005002 CLR R2
247 141414 005001 CLR R1
248 141416 012700 000010 MOV #8.,R0
249 141422 010361 172300 1$: MOV R3,172300(R1) ; KERNEL I PDR
250 141426 010261 172340 MOV R2,172340(R1) ; KERNEL I PAR
251 141432 010361 172320 MOV R3,172320(R1) ; KERNEL D PDR
252 141436 010261 172360 MOV R2,172360(R1) ; KERNEL D PAR
253 141442 010361 172200 MOV R3,172200(R1) ; SUPER I PDR
254 141446 010261 172240 MOV R2,172240(R1) ; SUPER I PAR
255 141452 010361 172220 MOV R3,172220(R1) ; SUPER D PDR
256 141456 010261 172260 MOV R2,172260(R1) ; SUPER D PAR
257 141462 010361 177600 MOV R3,177600(R1) ; USER I PDR
258 141466 010261 177640 MOV R2,177640(R1) ; USER I PAR
259 141472 010361 177620 MOV R3,177620(R1) ; USER D PDR
260 141476 010361 177660 MOV R3,177660(R1) ; USER D PAR
261 141502 062702 000200 ADD #200,R2
262 141506 062701 000002 ADD #2,R1
263 141512 077035 SOB R0,1$
264 141514 052737 176000 172376 BIS #176000,@#172376 ; KERNEL D POINTS TO I/O SPACE
265 141522 052737 176000 172276 BIS #176000,@#172276 ; SUPER D POINTS TO I/O SPACE
266 141530 052737 176000 177676 BIS #176000,@#177676 ; USER D POINTS TO I/O SPACE
267 141536 012737 000077 172516 MOV #77,@#MMR3 ; 77 FOR 22 BIT
268 141544 012737 000001 177572 MOV #1,@#MMR0
269
270 141552 012737 001700 172244 MOV #1700,@#172244 ; BASE SUPER I (PAR 2) #40000 AT #170000
271 141560 012737 001700 172264 MOV #1700,@#172264 ; BASE SUPER D (PAR 2) #40000 AT #170000
272 141566 012737 010000 177776 MOV #010000,@#177776 ; SET PM TO SUPER
273
274 141574 012703 040200 MOV #40200,R3 ; SUPER CODE ADDRESS
275 141600 012702 141626 MOV #SUPERS,R2 ; ADDRESS SUPER CODE
276 141604 012246 10$: MOV (R2)+,-(SP)
277 141606 006623 MTPI (R3)+
278 141610 020227 142072 CMP R2,#SUPERE
279 141614 103773 BLO 10$
280
281 141616 012767 040200 140120' MOV #40200,LGHTON ; CHANGE IDLE TASK
282 141624 000207 RTS PC
283
284 ;
285 ; TO BE COPIED TO SUPER #40200 AT PHYSICAL #170000
286 ; #40000 TO #40200 FOR WAIT & JMP INSTRUCTIONS
287 ;
288 SUPERS: ; 141616
289 141626 012700 000037 MOV #37,R0 ; LOAD PATTERN
290 141632 012701 174000 MOV #174000,R1
291 141636 032737 000001 177570 BIT #1,@#177570
292 141644 001414 BEQ 10$
293 141646 012700 007417 MOV #7417,R0
294 141652 010001 MOV R0,R1
295 141654 005101 COM R1
296 141656 032737 000002 177570 BIT #2,@#177570
297 141664 001404 BEQ 10$
298 141666 012700 036163 MOV #36163,R0
299 141672 012701 037000 MOV #37000,R1
300 141676 010102 10$: MOV R1,R2
301 141700 162702 000002 SUB #2,R2
302 141704 042702 000001 BIC #1,R2 ; WAIT ADDRESS
303 141710 010203 MOV R2,R3
304 141712 042703 177701 BIC #177701,R3 ; ADDRESS OFFSET
305 141716 012763 000001 040000 MOV #0000001,40000(R3) ; WRITE WAIT
306 141724 062703 000002 ADD #2,R3
307 141730 012763 000113 040000 MOV #0000113,40000(R3) ; WRITE JMP (R3)
308
309 141736 010204 MOV R2,R4
310 141740 072427 177772 ASH #-6,R4
311 141744 042704 177600 BIC #177600,R4
312 141750 012705 001700 MOV #1700,R5
313 141754 160405 SUB R4,R5 ; PAR ADDRESS BASE FOR WAIT
314 141756 010204 MOV R2,R4
315 141760 072427 177764 ASH #-12.,R4
316 141764 042704 177761 BIC #177761,R4 ; PAR SELECT OFFSET
317 141770 010564 172240 MOV R5,172240(R4) ; SUPER I SPACE
318
319 141774 010103 MOV R1,R3
320 141776 072327 177764 ASH #-12.,R3
321 142002 042703 177761 BIC #177761,R3 ; PAR SELECT OFFSET
322 142006 020304 CMP R3,R4 ; SAME PAR
323 142010 001412 BEQ 30$
324 142012 010104 MOV R1,R4
325 142014 072427 177772 ASH #-6,R4
326 142020 042704 177600 BIC #177600,R4
327 142024 012705 001700 MOV #1700,R5
328 142030 160405 SUB R4,R5 ; PAR ADDRESS BASE FOR JMP
329 142032 010563 172240 MOV R5,172240(R3) ; SUPER I SPACE
330 30$:
331 142036 012704 000003 MOV #3,R4
332 142042 063704 177570 ADD @#177570,R4
333 142046 012703 000002 MOV #2,R3
334 142052 060703 ADD PC,R3
335 142054 000112 40$: JMP (R2)
336 142056 077402 SOB R4,40$
337 142060 010002 MOV R0,R2
338 142062 006002 ROR R2 ; ROTATE PATTERN
339 142064 006101 ROL R1
340 142066 006000 ROR R0
341 142070 000702 BR 10$
342 SUPERE:
343
344 BOOT: ; 142062
345 142072 005003 CLR R3 ; UNIT
346 142074 112201 1$: MOVB (R2)+,R1
347 142076 001545 BEQ BOOTRK ; DEFAULT DEVICE IS RK0
348 142100 120127 000040 CMPB R1,#40
349 142104 001773 BEQ 1$
350 142106 120127 000122 CMPB R1,#'R
351 142112 001405 BEQ 5$
352
353 142114 012700 141202 MOV #BADBOO,R0
354 142120 004767 140150' JSR PC,PRINT
355 142124 000207 RTS PC
356
357 142126 112201 5$: MOVB (R2)+,R1 ; HOPEFULLY K, L OR P
358 142130 112200 7$: MOVB (R2)+,R0 ; DIGIT
359 142132 001416 BEQ 9$
360 142134 120027 000040 CMPB R0,#40
361 142140 001413 BEQ 9$
362 142142 120027 000067 CMPB R0,#'7
363 142146 003031 BGT 11$
364 142150 162700 000060 SUB #'0,R0
365 142154 002426 BLT 11$
366 142156 006303 ASL R3
367 142160 006303 ASL R3
368 142162 006303 ASL R3
369 142164 050003 BIS R0,R3 ; PUT DIGIT INTO UNIT
370 142166 000760 BR 7$
371 142170 005002 9$: CLR R2
372 142172 012722 000137 MOV #137,(R2)+
373 142176 012722 140000 MOV #START,(R2)+
374 142202 012722 140000 MOV #START,(R2)+
375 142206 005022 CLR (R2)+
376 142210 120127 000113 CMPB R1,#'K
377 142214 001476 BEQ BOOTRK
378 142216 120127 000114 CMPB R1,#'L
379 142222 001410 BEQ BOOTRL
380 142224 120127 000120 CMPB R1,#'P
381 142230 001517 BEQ BOOTRP
382
383 142232 012700 141077 11$: MOV #UNKMSG,R0
384 142236 004767 140150' JSR PC,PRINT
385 142242 000207 RTS PC
386
387 174400 RLCS=174400
388 BOOTRL: ; 142234
389 142244 000005 RESET
390 142246 000303 SWAB R3 ; UNIT NUMBER
391 142250 012701 174400 MOV #RLCS,R1 ; CSR
392 142254 012761 000013 000004 MOV #13,4(R1) ; CLR ERR
393 142262 052703 000004 BIS #4,R3 ; UNIT+GSTAT
394 142266 010311 MOV R3,(R1) ; ISSUE CMD
395 142270 105711 TSTB (R1) ; WAIT
396 142272 100376 BPL .-2
397 142274 105003 CLRB R3
398 142276 052703 000010 BIS #10,R3 ; UNIT+RDHDR
399 142302 010311 MOV R3,(R1) ; ISSUE CMD
400 142304 105711 TSTB (R1) ; WAIT
401 142306 100376 BPL .-2
402 142310 016102 000006 MOV 6(R1),R2 ; GET HDR
403 142314 042702 000077 BIC #77,R2 ; CLR SECTOR
404 142320 005202 INC R2 ; MAGIC BIT
405 142322 010261 000004 MOV R2,4(R1) ; SEEK TO 0
406 142326 105003 CLRB R3
407 142330 052703 000006 BIS #6,R3 ; UNIT+SEEK
408 142334 010311 MOV R3,(R1) ; ISSUE CMD
409 142336 105711 TSTB (R1) ; WAIT
410 142340 100376 BPL .-2
411 142342 005061 000002 CLR 2(R1) ; CLR BA
412 142346 005061 000004 CLR 4(R1) ; CLR DA
413 142352 012761 177000 000006 MOV #-512.,6(R1) ; SET WC
414 142360 105003 CLRB R3
415 142362 052703 000014 BIS #14,R3 ; UNIT+READ
416 142366 010311 MOV R3,(R1) ; ISSUE CMD
417 142370 105711 TSTB (R1) ; WAIT
418 142372 100376 BPL .-2
419 142374 042711 000377 BIC #377,(R1)
420 142400 005002 CLR R2
421 142402 005003 CLR R3
422 142404 005004 CLR R4
423 142406 005005 CLR R5
424 142410 005007 CLR PC
425
426 177412 RKDA=177412
427 000005 READGO=5
428 BOOTRK:
429 142412 000005 RESET ; 142402
430 142414 000303 SWAB R3 ; UNIT NUMBER
431 142416 006303 ASL R3
432 142420 006303 ASL R3
433 142422 006303 ASL R3
434 142424 006303 ASL R3
435 142426 006303 ASL R3
436 142430 012701 177412 MOV #RKDA,R1 ; CSR
437 142434 010311 MOV R3,(R1) ; LOAD DA
438 142436 005041 CLR -(R1) ; CLEAR BA
439 142440 012741 177000 MOV #-256.*2,-(R1) ; LOAD WC
440 142444 012741 000005 MOV #READGO,-(R1) ; READ & GO
441 142450 005002 CLR R2
442 142452 005003 CLR R3
443 142454 005004 CLR R4
444 142456 005005 CLR R5
445 142460 105711 TSTB (R1)
446 142462 100376 BPL .-2
447 142464 105011 CLRB (R1)
448 142466 005007 CLR PC
449
450 176700 RPCSR=0176700
451 BOOTRP: ; 142460
452 142470 000005 RESET
453 142472 012701 176700 MOV #RPCSR, R1
454 142476 012761 000040 000010 MOV #0000040, 10(R1) ; RESET
455 142504 010361 000010 MOV R3, 10(R1) ; SET UNIT
456 142510 012711 000021 MOV #0000021, (R1) ; PACK ACK
457 142514 012761 010000 000032 MOV #0010000, 32(R1) ; 16B MODE
458 142522 012761 177000 000002 MOV #-512., 2(R1) ; SET WC
459 142530 005061 000004 CLR 4(R1) ; CLR BA
460 142534 005061 000006 CLR 6(R1) ; CLR DA
461 142540 005061 000034 CLR 34(R1) ; CLR CYL
462 142544 012711 000071 MOV #0000071, (R1) ; READ
463 142550 105711 TSTB (R1) ; WAIT
464 142552 100376 BPL .-2
465 142554 105011 CLRB (R1)
466 142556 010300 MOV R3,R0
467 142560 005007 CLR PC
468
469 .END START
469