1000 ;
1010 ;NORMALSCROLL 1
1020 ;21.6.80 STI
1030 ;
1040 Y EQU 60 ;POSITION
1050 IY EQU 255 ;WANN IRQ
1060 C EQU 4 ;SPRITEFARBE
1070 ;
1080 ;
1090 EY EQU 255 ;EXPAND Y
1100 ;
1110 ZEROFREE EQU 247
1120 ;
1130 ROW EQU ZEROFREE
1140 CNTR EQU ZEROFREE+1
1150 TEXT EQU ZEROFREE+2
1160 PTR1 EQU ZEROFREE+4
1170 ;
1180 BOUNCEKIND EQU ZEROFREE+6
1190 BOUNCECOUNTEREQU ZEROFREE+7
1200 BOUNCEDATA EQU $3000
1210 ;
1220 SPRITEPTR EQU 2040
1230 SPRITENR EQU 128
1240 SPRITES EQU 8192
1250 LASTSPRITE EQU SPRITES+448+12
1260 REG EQU 53270
1270 ;
1280 ORG 20000
1290 ;
1300 ;
1310 BOUNINIT LDA #0
1320 STA BOUNCEKIND
1330 STA BOUNCECOUNTER
1340 ;
1350 INT SEI
1360 LDA #<ISR
1370 STA 788
1380 LDA #>ISR
1390 STA 789
1400 LDA #127
1410 STA 56333
1420 ;
1430 LDX #46
1440 INIT1 LDA VICTAB,X
1450 STA 53248,X
1460 DEX
1470 BPL INIT1
1480 ;
1490 LDX #8
1500 STX CNTR
1510 LDA #SPRITENR+7
1520 INIT2 STA SPRITEPTR-1,X
1530 SEC
1540 SBC #1
1550 DEX
1560 BNE INIT2
1570 ;
1580 TXA
1590 INIT3 STA SPRITES,X
1600 STA SPRITES+256,X
1610 STA SPRITES+512,X
1620 INX
1630 BNE INIT3
1640 ;
1650 LDA #<TEXTTAB
1660 STA TEXT
1670 LDA #>TEXTTAB
1680 STA TEXT+1
1690 ;
1700 CLI
1710 RTS
1720 ;
1730 ;
1740 ;
1750 ISR LDA #1
1760 STA 53273
1770 ;
1780 JSR BOUNCE
1790 JSR SCLOLL
1800 ;
1810 JMP 59953
1820 ;
1830 BOUNCE DEC BOUNCECOUNTER
1840 BEQ NEWBOUNCE
1850 ;
1860 LDY BOUNCECOUNTER
1870 MAKE1 LDA BOUNCEDATA,Y
1880 LDX BOUNCEKIND
1890 BPL POSIBOUNCE
1900 NEGABOUNCE EOR #255
1910 CLC
1920 ADC #18
1930 ;
1940 POSIBOUNCE LDX #0
1950 BOUNCELOOP1 STA 53249,X
1960 INX
1970 INX
1980 CPX #16
1990 BNE BOUNCELOOP1
2000 RTS
2010 ;
2020 NEWBOUNCE LDA #202
2030 STA BOUNCECOUNTER
2040 LDA BOUNCEKIND
2050 EOR #255
2060 STA BOUNCEKIND
2070 JMP BOUNCE
2080 ;
2090 ;
2100 SCLOLL LDA #27
2110 SCLOLL1 STA ROW
2120 CLC
2130 ADC #<LASTSPRITE
2140 STA MODIF+1
2150 LDA #>LASTSPRITE
2160 STA MODIF+2
2170 ;
2180 LDY #8
2190 SCLOLL2 LDX #2
2200 MODIF ROL 65530,X
2210 DEX
2220 BPL MODIF
2230 ;
2240 PHP
2250 LDA MODIF+1
2260 SEC
2270 SBC #64
2280 STA MODIF+1
2290 BCS SCLOLL3
2300 DEC MODIF+2
2310 SCLOLL3 PLP
2320 DEY
2330 BNE SCLOLL2
2340 ;
2350 LDA ROW
2360 SEC
2370 SBC #3
2380 BPL SCLOLL1
2390 ;
2400 DEC CNTR
2410 LDA CNTR
2420 BNE SCLOLLAUS
2430 LDA #8
2440 STA CNTR
2450 LDA #27 ;$D8/8
2460 STA PTR1+1
2470 ;
2480 LDY #0
2490 SCLOLL4 LDA (TEXT),Y
2500 BNE SCLOLL5
2510 ;
2520 LDA #<TEXTTAB
2530 STA TEXT
2540 LDA #>TEXTTAB
2550 STA TEXT+1
2560 BNE SCLOLL4
2570 ;
2580 SCLOLL5 INC TEXT
2590 BNE SCLOLL6
2600 INC TEXT+1
2610 ;
2620 SCLOLL6 ASL
2630 ROL PTR1+1
2640 ASL
2650 ROL PTR1+1
2660 ASL
2670 ROL PTR1+1
2680 STA PTR1
2690 LDA #51
2700 STA 1
2710 LDX #0
2720 LDY #0
2730 SCLOLL7 LDA (PTR1),Y
2740 STA LASTSPRITE+2,X
2750 INX
2760 INX
2770 INX
2780 INY
2790 CPY #8
2800 BCC SCLOLL7
2810 LDA #55
2820 STA 1
2830 ;
2840 ;
2850 SCLOLLAUS RTS
2860 ;
2870 ;
2880 ;
2890 VICTAB DFB 0,Y,48,Y,96,Y,144,Y,192,Y,240,Y,32,Y,80,Y,%11000000
2900 DFB 27,IY,0,0,255,8,EY,21,1,129,0,0,255,0,0
2910 DFB 0,0,0,0,0,0,0,C,C,C,C,C,C,C,C
2920 ;
2930 TEXTTAB DFB ""
2940 DFB ""
2950 DFB ""
2960 DFB "",0
READY.