home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
sh4x
/
sh42.d64
/
floppy.quell
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-03-30
|
8KB
|
615 lines
10 OPEN1,8,2,"FOBJ,P,W":SYS32768:.OPT O1:*= $0300
11 ;
12 .BYTE $A0,$EA
13 .BYTE <PUFFER,>PUFFER
14 .BYTE <KOPF,>KOPF
15 .BYTE <FORMAT,>FORMAT
16 .BYTE <READ,>READ
17 .BYTE <WRITE,>WRITE
18 ;
19 SEI
21 LDA $1C0C
22 ORA #$0E
23 STA $1C0C
24 LDA #$21
25 STA $2C
26 LDA #01
27 STA $2D
28 LDA $1C00
29 ORA #04
30 STA $1C00
31 START LDX #$20
32 TXS
33 LDA #15
34 STA $1800
35 JSR EINEIN
36 ASL A
37 STA L1+1
42 L1 JMP ($0300)
43 ;
50 PUFFER LDA #$21
51 STA $2C
52 LDA #01
53 STA $2D
54 JMP START
55 ;
120 SYNC LDA #$D0
121 STA $1805
122 SEC
123 S2 BIT $1805
124 BPL S1
125 BIT $1C00
126 BMI S2
127 LDA $1C01
128 CLV
129 CLC
130 S1 RTS
131 ;
150 EIN LDY #00
151 LDA #02
152 STA EE+2
153 JSR IN
154 LDA #07:STA EE+2
155 LDY #$BC
156 JMP IN
157 ;
160 EINEIN LDY #$FF
161 LDA #01
162 STA EE+2
163 JSR IN
164 LDA $01FF
165 RTS
166 ;
170 IN STX $55
171 LDX #16
172 I1 LDA $1800
173 BPL I1
174 STX $1800
175 NOP
176 NOP
177 LDX #00
178 STX $1800
179 NOP
180 NOP
181 I2 LDA $1800
182 BPL I2
183 NOP
184 NOP
185 LDX $1800
186 LDA TAB45,X
187 NOP
188 LDX $1800
189 ORA TAB67,X
190 NOP
191 NOP
192 NOP
193 LDX $1800
194 ORA TAB01,X
195 NOP
196 LDX $1800
197 ORA TAB23,X
198 EE STA $0200,Y
199 INY
200 BNE I2
201 LDX #15
202 STX $1800
203 LDX $55
204 RTS
205 ;
206 TAB45 .BYTE $00,$20
207 TAB67 .BYTE $00,$80,$10,$30,$40,$C0
208 TAB01 .BYTE $00,$02
209 TAB23 .BYTE $00,$08,$01,$03,$04,$0C
210 ;
250 AUS LDY #00
251 LDA #02
252 STA AA+2
253 JSR OUT
254 LDY #$BC
255 LDA #07:STA AA+2
256 JMP OUT
257 ;
260 EINAUS STA $01FF
261 LDY #$FF
262 LDA #01
263 STA AA+2
264 ;
270 OUT STX $55
271 LDX #16
272 O1 LDA $1800
273 BPL O1
274 STX $1800
275 AA LDA $0200,Y
276 STA $54
277 LSR A
278 LSR A
279 LSR A
280 LSR A
281 O2 LDX $1800
282 BPL O2
283 STA $1800
284 ASL A
285 AND #15
286 STA $1800
287 LDA !$0054
288 AND #15
289 STA $1800
290 ASL A
291 AND #15
292 STA $1800
293 INY
294 BNE AA
295 LDX #15
296 STX $1800
297 LDX $55
298 RTS
300 ;
320 FORMAT JSR EINEIN
321 STA $23
322 JSR KOPF1
323 JSR SYNC
324 BCS FORMAT1
325 F1 BVC F1
326 CLV
327 LDA $1C01
328 CMP #$52
329 BEQ F2
330 CMP #$55
331 BEQ F2
332 BNE FORMAT1
333 F2 JMP START
334 ;
335 FORMAT1 LDA #00
336 STA $30
337 STA $34
338 STA $19
339 LDA #02
340 STA $31
341 F3 LDA $19
342 STA $54
343 LDA #08
344 STA $52
345 LDA $23
346 STA $55
347 LDA $12
348 EOR $13
349 EOR $23
350 EOR $19
351 STA $53
352 JSR $F6D0
353 LDA $12
354 STA $53
355 LDA $13
356 STA $52
357 LDA #00
358 STA $54
359 STA $55
360 JSR $F6D0
361 DEC $34
362 DEC $34
363 INC $19
364 LDA $19
365 CMP $43
366 BNE F3
367 LDA #00
368 STA $AC
369 LDA $43
370 STA $AD
371 LDA #$CE
372 STA $1C0C
373 LDA #$FF
374 STA $1C03
375 LDA #$55
376 STA $1C01
377 LDX #01
378 JSR $FE24
379 FA LDA #$FF
380 STA $1C01
381 LDX #05
382 F4 BVC F4
383 CLV
384 DEX
385 BNE F4
386 LDX #08
387 LDY $AC
388 F6 LDA $0200,Y
389 STA $1C01
390 F5 BVC F5
391 CLV
392 INY
393 DEX
394 BNE F6
395 STY $AC
396 LDX #$0B
397 LDA #$55
398 STA $1C01
399 F7 BVC F7
400 CLV
401 DEX
402 BNE F7
403 LDA #$FF
404 STA $1C01
405 LDX #05
406 F8 BVC F8
407 CLV
408 DEX
409 BNE F8
410 LDX #03
411 F99 LDA GCR1,X
412 STA $1C01
413 F9 BVC F9
414 CLV
415 DEX
416 BPL F99
417 LDY #$40
418 FB LDX #04
419 FCC LDA GCR2,X
420 STA $1C01
421 FC BVC FC
422 CLV
423 DEX
424 BPL FCC
425 DEY
426 BNE FB
427 LDX #08
428 LDA #$55
429 STA $1C01
430 FD BVC FD
431 CLV
432 DEX
433 BNE FD
434 DEC $AD
435 BNE FA
436 JSR $FE00
437 JMP START
438 ;
450 READ LDA #00
451 STA $97
452 STA $52
453 LDA #05
454 LDX $43
455 STX $AD
456 R1 STA $B1,X
457 DEX
458 BNE R1
459 STX $B0
460 R9 LDA #07
461 STA $53
462 LDX #$2A
463 R4 JSR SYNC
464 BCC R2
465 LDA #$F1
466 R5 JSR EINAUS
467 JMP START
468 R2 BVC R2
469 CLV
470 LDA $1C01
471 CMP #$52
472 BEQ R3
473 DEX
474 BNE R4
475 LDA #$F2
476 BNE R5
477 ;
478 R3 JSR HEADER1
494 R7 CMP $43
495 BCC R8
496 R10 LDA $B0
497 INC $B0
498 CMP $43
499 BNE R9
500 JMP RFERTIG
501 ;
502 R8 TAX
503 LDA $B2,X
504 BEQ R10
505 BMI R10
506 STX $96
507 LDY #00
508 STY $A8
509 STY $A9
510 STY $AA
511 STY $AB
512 STY $B1
513 STY $B0
514 LDY #$BC
515 JSR SYNC
516 LDX #$40
517 R11 BVC R11
518 CLV
519 LDA $1C01
520 STA ($52),Y
521 EOR $A8
522 STA $A8
523 INY
524 R12 BVC R12
525 CLV
526 LDA $1C01
527 STA ($52),Y
528 EOR $A9
529 STA $A9
530 INY
531 R13 BVC R13
532 CLV
533 LDA $1C01
534 STA ($52),Y
535 EOR $AA
536 STA $AA
537 INY
538 BNE R14
539 LDA #02:STA $53
540 R14 BVC R14
541 CLV
542 LDA $1C01
543 STA ($52),Y
544 EOR $AB
545 STA $AB
546 INY
547 R15 BVC R15
548 CLV
549 LDA $1C01
550 STA ($52),Y
551 EOR $B1
552 STA $B1
553 INY
554 DEX
555 BNE R11
556 R16 BVC R16
557 CLV
558 LDA $1C01
559 STA ($52),Y
560 EOR $A8
561 STA $A8
562 INY
563 R17 BVC R17
564 CLV
565 LDA $1C01
566 STA ($52),Y
567 EOR $A9
568 STA $A9
569 INY
570 R18 BVC R18
571 CLV
572 LDA $1C01
573 STA ($52),Y
574 AND #$40
575 EOR $AA
576 STA $AA
577 INY
578 R19 BVC R19
579 CLV
580 LDA $1C01
581 STA ($52),Y
582 LDX $96
583 LDA $B1
584 LSR A
585 LSR A
586 EOR $A8
587 LSR A
588 PHP
589 LSR A
590 EOR $A9
591 LSR A
592 LSR A
593 EOR $AA
594 AND #02
595 BNE R30
596 PLP
597 ROR A
598 LSR A
599 EOR $AA
600 LSR A
601 LSR A
602 EOR $AB
603 AND #$10
604 BEQ R30
605 INC $97
606 LDA $B2,X
607 ORA #$80
608 STA $B2,X
609 TXA
610 JSR EINAUS
611 JSR AUS
612 R40 DEC $AD
613 BEQ RFERTIG
614 JMP R9
615 ;
616 RFERTIG LDA $97
617 BEQ R20
618 LDA #$FD
619 BNE R21
620 R20 LDA #$FC
621 R21 JSR EINAUS
622 LDX #00
623 R22 TXA
624 TAY
625 INY
626 LDA $B2,X
627 STA ($2C),Y
628 BMI R44
629 TXA
630 JSR EINAUS
631 R44 INX
632 CPX $43
633 BNE R22
634 LDA #$F3
635 JSR EINAUS
636 LDY #00
637 LDA $97
638 STA ($2C),Y
639 LDA $97:BEQ R222:LDA $2C
640 CLC
641 ADC #22
642 STA $2C
643 R222 JMP START
644 ;
650 R30 DEC $B2,X
651 BEQ R40
652 JMP R9
653 ;
680 WRITE LDX #00
681 W11 TXA
682 TAY
683 INY
684 LDA ($2C),Y
685 STA $B2,X
686 INX
687 CPX $43
688 BNE W11
689 LDY #00
690 LDA ($2C),Y
691 STA $97
692 HLOOP JSR HEADER
693 CLC
694 ADC #03
695 CMP $43
696 BCC W2
697 SEC
698 SBC $43
699 W2 TAX
700 LDA $B2,X
701 BPL HLOOP
702 TXA
703 STA $53
704 JSR EINAUS
705 JSR EIN
706 W3 JSR HEADER
707 CMP $53
708 BNE W3
709 LDX #13
710 W4 BVC W4
711 CLV
712 DEX
713 BNE W4
714 LDA #$CE
715 STA $1C0C
716 LDA #$FF
717 STA $1C03
718 LDX #05
719 STA $1C01
720 W5 BVC W5
721 CLV
722 DEX
723 BNE W5
724 LDX #$BC
725 W66 LDA $0700,X
726 STA $1C01
727 W6 BVC W6
728 CLV
729 INX
730 BNE W66
731 W77 LDA $0200,X
732 STA $1C01
733 W7 BVC W7
734 CLV
735 INX
736 BNE W77
737 LDX #04
738 LDA #$55
739 STA $1C01
740 W8 BVC W8
741 CLV
742 DEX
743 BNE W8
744 JSR $FE00
745 LDX $53
746 LDA #00
747 STA $B2,X
748 DEC $97
749 BNE HLOOP
750 LDA $2C
751 CLC
752 ADC #22
753 STA $2C
754 LDA #$F1
755 JSR EINAUS
756 JMP START
757 ;
800 KOPF JSR EINEIN
801 STA $23
802 JSR KOPF1
803 JMP START
804 ;
805 KOPF1 PHA
806 LDX #$CA:STX K12
807 LDX #00
808 SEC
809 SBC $22
810 BCS K9
811 LDX #$E8:STX K12
812 LDX #01
813 K9 STX K10+1
815 ASL A
816 TAX
817 K10 LDA #00
818 EOR $1C00
819 SEC
820 ROL A
821 AND #03
822 EOR $1C00
823 STA $1C00
824 LDA #150
825 STA $1805
826 K11 LDA $1805
827 BMI K11
828 K12 DEX
829 BNE K10
830 PLA
831 STA $22
832 K1 LDX #05
833 LDA $22
834 K3 DEX
835 CMP TABT,X
836 BCS K3
837 LDA TABS,X
838 STA $43
839 CPX #00
840 BEQ K4
841 DEX
842 K4 TXA
843 ASL A
844 ASL A
845 ASL A
846 ASL A
847 ASL A
848 STA $44
849 LDA $1C00
850 AND #$9F
851 ORA $44
852 STA $1C00
853 LDA $1C0C
854 ORA #$0E
855 STA $1C0C
856 RTS
857 ;
858 TABT .BYTE $FF,$24,$1F,$19,$12
859 TABS .BYTE $11,$11,$12,$13,$15
888 ;
900 HEADER JSR SYNC
901 H1 BVC H1
902 CLV
903 LDA $1C01
904 CMP #$52
905 BNE HEADER
906 HEADER1 LDX #03
907 H2 BVC H2
908 CLV
909 LDA $1C01
910 DEX
911 BNE H2
912 TAX
913 PHP
914 LSR A
915 LSR A
916 AND #$1F
917 TAX
918 LDA $F8C0,X
919 PLP
920 BPL H3
921 ORA #$10
922 H3 RTS
930 ;
950 GCR1 .BYTE $29,$A5,$D4,$55
951 GCR2 .BYTE $29,$A5,$94,$52,$4A
960 ;