1000 ;SAVE""
1010 ORG 16384
1020 JOY EQU 56320
1030 B EQU 1548
1040 BCOL EQU B+55296-1024
1050 NORMAL EQU 75
1060 ;
1070 ANF JSR INIT
1080 LDA #0
1090 LDX #0
1100 LDY #0
1110 JSR SOUNDI
1120 ;
1130 LOOP JSR WAITTIMER
1140 LDA #0
1150 LDX #0
1160 LDY #0
1170 JSR SOUNDP
1180 LDA DONE
1190 BNE LOOP
1200 ;
1210 SEI
1220 LDA #0
1230 STA 53274
1240 LDA 53274
1250 STA 54296
1260 LDA #129
1270 STA 56333
1280 ;
1290 DEC 1
1300 LDX #2
1310 RESTZ LDA 53248,X
1320 STA 0,X
1330 INX
1340 BNE RESTZ
1350 ;
1360 LDA #55
1370 STA 1
1380 LDA #NORMAL
1390 STA 56325
1400 LDA SPEED
1410 CLI
1420 RTS
1430 ;
1440 ;
1450 ISR PHA
1460 TXA
1470 PHA
1480 TYA
1490 PHA
1500 ;
1510 LDA 53273
1520 STA 53273
1530 ;
1540 LDX JOY
1550 TXA
1560 AND #2 ; RUNTER
1570 BNE ISR1
1580 LDA SPEED
1590 CMP #255
1600 BEQ ISR1
1610 INC SPEED
1620 JSR SHOWSPEED
1630 JMP ISROUT
1640 ISR1 TXA
1650 AND #1 ; RAUF
1660 BNE ISR2
1670 LDA SPEED
1680 BEQ ISR2
1690 DEC SPEED
1700 JSR SHOWSPEED
1710 JMP ISROUT
1720 ISR2 TXA
1730 AND #16 ; KNOPF
1740 BNE ISROUT
1750 ;
1760 FERTG LDA #0
1770 STA DONE
1780 ;
1790 ISROUT PLA
1800 TAY
1810 PLA
1820 TAX
1830 PLA
1840 RTI
1850 ;
1860 INIT SEI
1870 LDA #53
1880 STA 1
1890 LDA #%00000001
1900 STA 56333
1910 LDA 56333
1920 LDX #0
1930 TXA
1940 INIT1 STA 54296,X
1950 INX
1960 BPL INIT1
1970 LDA #<ISR
1980 STA 65534
1990 LDA #>ISR
2000 STA 65535
2010 LDA #27
2020 STA 53265
2030 STA 53266
2040 STA DONE
2050 LDA #%10000001
2060 STA 53274
2070 LDA #15
2080 STA 54296
2090 LDA #NORMAL
2100 STA SPEED
2110 ;
2120 DEC 1
2130 LDX #2
2140 INIT2 LDA 0,X
2150 STA 53248,X
2160 LDA #0
2170 STA 0,X
2180 INX
2190 BNE INIT2
2200 INC 1
2210 ;
2220 CLI
2230 JMP SHOWINIT
2240 ;
2250 WAITTIMER LDA SPEED
2260 STA 56325
2270 WAITTIMER1 LDA 56333
2280 AND #1
2290 BEQ WAITTIMER1
2300 RTS
2310 ;
2320 SHOWINIT LDY #31
2330 LDA #8 ; ORANGE
2340 SHOWINIT0 STA BCOL,Y
2350 CPY #25
2360 BNE SHOWINIT1
2370 LDA #7 ; YELLOW
2380 SHOWINIT1 CPY #18
2390 BNE SHOWINIT2
2400 LDA #9 ; BROWN
2410 SHOWINIT2 DEY
2420 BPL SHOWINIT0
2430 ;
2440 SHOWSPEED LDA SPEED
2450 EOR #255
2460 PHA
2470 LSR
2480 LSR
2490 LSR
2500 LDY #0
2510 TAX
2520 BEQ SHOWSPEED2
2530 LDA #160
2540 SHOWSPEED1 STA B,Y
2550 INY
2560 DEX
2570 BNE SHOWSPEED1
2580 SHOWSPEED2 PLA
2590 AND #7
2600 TAX
2610 LDA SHOWTAB,X
2620 STA B,Y
2630 RTS
2640 ;
2650 SPEED DFB 70
2660 DONE DFB 1
2670 SHOWTAB DFB 32,101,116,117,97,246,234,231
2680 SOUNDI RTS
2690 SOUNDP RTS
READY.