00000000: D8 1F 04 20 0A 00 2E 42 41 20 34 39 31 35 32 20 |... ...BA 49152 |
00000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B | ;|
00000020: 53 54 41 52 54 20 3D 20 34 39 31 35 32 00 33 20 |START = 49152.3 |
00000030: 14 00 2E 47 4C 20 56 49 43 20 20 20 20 3D 20 24 |...GL VIC = $|
00000040: 44 30 30 30 20 20 20 20 20 20 20 3B 56 49 43 2D |D000 ;VIC-|
00000050: 42 41 53 49 53 41 44 52 45 53 53 45 00 5C 20 1E |BASISADRESSE.\ .|
00000060: 00 2E 47 4C 20 49 52 51 56 45 43 20 3D 20 24 30 |..GL IRQVEC = $0|
00000070: 33 31 34 20 20 20 20 20 20 20 3B 49 52 51 2D 56 |314 ;IRQ-V|
00000080: 45 4B 54 4F 52 00 8B 20 28 00 2E 47 4C 20 49 52 |EKTOR.. (..GL IR|
00000090: 51 41 4C 54 20 3D 20 24 45 41 33 31 20 20 20 20 |QALT = $EA31 |
000000A0: 20 20 20 3B 41 4C 54 45 20 49 52 51 2D 52 4F 55 | ;ALTE IRQ-ROU|
000000B0: 54 49 4E 45 00 B5 20 32 00 2E 47 4C 20 49 52 51 |TINE.. 2..GL IRQ|
000000C0: 45 4E 44 20 3D 20 24 46 45 42 43 20 20 20 20 20 |END = $FEBC |
000000D0: 20 20 3B 49 52 51 20 42 45 45 4E 44 45 4E 00 E9 | ;IRQ BEENDEN..|
000000E0: 20 3C 00 2E 47 4C 20 52 41 53 54 45 52 20 3D 20 | <..GL RASTER = |
000000F0: 56 49 43 2B 31 38 20 20 20 20 20 20 3B 52 41 53 |VIC+18 ;RAS|
00000100: 54 45 52 5A 45 49 4C 45 4E 2D 52 45 47 49 53 54 |TERZEILEN-REGIST|
00000110: 45 52 00 1A 21 46 00 2E 47 4C 20 49 52 51 4D 41 |ER..!F..GL IRQMA|
00000120: 53 4B 3D 20 56 49 43 2B 32 36 20 20 20 20 20 20 |SK= VIC+26 |
00000130: 3B 49 52 51 2D 4D 41 53 4B 45 4E 52 45 47 49 53 |;IRQ-MASKENREGIS|
00000140: 54 45 52 00 4C 21 50 00 2E 47 4C 20 49 52 51 46 |TER.L!P..GL IRQF|
00000150: 4C 41 47 3D 20 56 49 43 2B 32 35 20 20 20 20 20 |LAG= VIC+25 |
00000160: 20 3B 49 52 51 2D 52 45 51 55 45 53 54 52 45 47 | ;IRQ-REQUESTREG|
00000170: 49 53 54 45 52 00 84 21 5A 00 2E 47 4C 20 48 49 |ISTER..!Z..GL HI|
00000180: 42 49 54 20 20 3D 20 56 49 43 2B 31 37 20 20 20 |BIT = VIC+17 |
00000190: 20 20 20 3B 48 49 2D 42 49 54 20 56 4F 4D 20 52 | ;HI-BIT VOM R|
000001A0: 41 53 54 45 52 52 45 47 49 53 54 45 52 00 B6 21 |ASTERREGISTER..!|
000001B0: 64 00 2E 47 4C 20 53 50 52 4B 4F 4C 20 3D 20 56 |d..GL SPRKOL = V|
000001C0: 49 43 2B 33 30 20 20 20 20 20 20 3B 53 50 52 49 |IC+30 ;SPRI|
000001D0: 54 45 2D 53 50 52 49 54 45 2D 4B 4F 4C 4C 2E 00 |TE-SPRITE-KOLL..|
000001E0: ED 21 6E 00 2E 47 4C 20 53 43 52 4B 4F 4C 20 3D |.!n..GL SCRKOL =|
000001F0: 20 56 49 43 2B 33 31 20 20 20 20 20 20 3B 53 50 | VIC+31 ;SP|
00000200: 52 49 54 45 2D 48 49 4E 54 45 52 47 52 55 4E 44 |RITE-HINTERGRUND|
00000210: 2D 4B 4F 4C 4C 2E 00 F3 21 E7 03 3B 00 19 22 E8 |-KOLL...!..;..".|
00000220: 03 49 4E 49 54 20 4A 53 52 4D 41 4B 45 53 50 52 |.INIT JSRMAKESPR|
00000230: 3B 53 50 52 49 54 45 2D 47 45 4E 45 52 49 45 52 |;SPRITE-GENERIER|
00000240: 45 4E 00 2E 22 F2 03 20 53 45 49 3B 49 52 51 20 |EN..".. SEI;IRQ |
00000250: 53 50 45 52 52 45 4E 00 54 22 FC 03 20 4C 44 41 |SPERREN.T".. LDA|
00000260: 23 31 33 30 3B 53 50 52 49 54 45 2D 48 49 4E 54 |#130;SPRITE-HINT|
00000270: 45 52 47 52 55 4E 44 2D 4B 4F 4C 4C 2E 00 6E 22 |ERGRUND-KOLL..n"|
00000280: 06 04 20 53 54 41 49 52 51 4D 41 53 4B 3B 4D 41 |.. STAIRQMASK;MA|
00000290: 53 4B 49 45 52 45 4E 00 8C 22 10 04 20 4C 44 41 |SKIEREN..".. LDA|
000002A0: 23 3C 28 49 52 51 4E 45 55 29 3B 49 52 51 2D 56 |#<(IRQNEU);IRQ-V|
000002B0: 45 4B 54 4F 52 00 A9 22 1A 04 20 4C 44 58 23 3E |EKTOR..".. LDX#>|
000002C0: 28 49 52 51 4E 45 55 29 3B 56 45 52 42 49 45 47 |(IRQNEU);VERBIEG|
000002D0: 45 4E 00 B8 22 24 04 20 53 54 41 49 52 51 56 45 |EN.."$. STAIRQVE|
000002E0: 43 00 C9 22 2E 04 20 53 54 58 49 52 51 56 45 43 |C..".. STXIRQVEC|
000002F0: 2B 31 00 F0 22 38 04 20 4C 44 41 53 43 52 4B 4F |+1.."8. LDASCRKO|
00000300: 4C 3B 4B 4F 4C 4C 2E 2D 52 45 47 49 53 54 45 52 |L;KOLL.-REGISTER|
00000310: 20 4C 4F 45 53 43 48 45 4E 00 14 23 42 04 20 4C | LOESCHEN..#B. L|
00000320: 44 41 49 52 51 46 4C 41 47 3B 49 52 51 2D 52 45 |DAIRQFLAG;IRQ-RE|
00000330: 51 55 45 53 54 52 45 47 49 53 54 45 52 00 2D 23 |QUESTREGISTER.-#|
00000340: 4C 04 20 53 54 41 49 52 51 46 4C 41 47 3B 4C 4F |L. STAIRQFLAG;LO|
00000350: 45 53 43 48 45 4E 00 43 23 56 04 20 43 4C 49 3B |ESCHEN.C#V. CLI;|
00000360: 49 52 51 20 5A 55 4C 41 53 53 45 4E 00 5B 23 60 |IRQ ZULASSEN.[#`|
00000370: 04 20 52 54 53 3B 55 4E 44 20 5A 55 52 55 45 43 |. RTS;UND ZURUEC|
00000380: 4B 2E 2E 2E 00 61 23 6A 04 3B 00 8D 23 74 04 4D |K....a#j.;..#t.M|
00000390: 41 4B 45 53 50 52 20 4C 44 58 23 36 32 3B 42 4C |AKESPR LDX#62;BL|
000003A0: 4F 43 4B 20 33 32 20 4D 49 54 20 32 35 35 20 42 |OCK 32 MIT 255 B|
000003B0: 45 4C 45 47 45 4E 00 9A 23 7E 04 20 4C 44 41 23 |ELEGEN..#~. LDA#|
000003C0: 32 35 35 00 AD 23 88 04 4C 4F 4F 50 20 53 54 41 |255..#..LOOP STA|
000003D0: 32 30 34 38 2C 58 00 B6 23 92 04 20 44 45 58 00 |2048,X..#.. DEX.|
000003E0: C3 23 9C 04 20 42 50 4C 4C 4F 4F 50 00 E6 23 A6 |.#.. BPLLOOP..#.|
000003F0: 04 20 4C 44 41 23 33 32 3B 42 4C 4F 43 4B 20 33 |. LDA#32;BLOCK 3|
00000400: 32 20 46 55 45 52 20 53 50 52 49 54 45 20 30 00 |2 FUER SPRITE 0.|
00000410: FD 23 B0 04 20 53 54 41 32 30 34 30 3B 46 45 53 |.#.. STA2040;FES|
00000420: 54 4C 45 47 45 4E 00 19 24 BA 04 20 4C 44 41 23 |TLEGEN..$.. LDA#|
00000430: 31 3B 53 50 52 49 54 45 20 30 20 3D 20 57 45 49 |1;SPRITE 0 = WEI|
00000440: 53 53 00 28 24 C4 04 20 53 54 41 56 49 43 2B 33 |SS.($.. STAVIC+3|
00000450: 39 00 48 24 CE 04 20 4C 44 41 23 31 36 30 3B 58 |9.H$.. LDA#160;X|
00000460: 2D 4B 4F 4F 52 44 49 4E 41 54 45 20 3D 20 31 36 |-KOORDINATE = 16|
00000470: 30 00 54 24 D8 04 20 53 54 41 56 49 43 00 74 24 |0.T$.. STAVIC.t$|
00000480: E2 04 20 4C 44 41 23 31 33 30 3B 59 2D 4B 4F 4F |.. LDA#130;Y-KOO|
00000490: 52 44 49 4E 41 54 45 20 3D 20 31 33 30 00 82 24 |RDINATE = 130..$|
000004A0: EC 04 20 53 54 41 56 49 43 2B 31 00 A0 24 F6 04 |.. STAVIC+1..$..|
000004B0: 20 4C 44 41 23 30 3B 48 49 4C 46 53 42 49 54 53 | LDA#0;HILFSBITS|
000004C0: 20 4C 4F 45 53 43 48 45 4E 00 AF 24 00 05 20 53 | LOESCHEN..$.. S|
000004D0: 54 41 56 49 43 2B 31 36 00 CF 24 0A 05 20 4C 44 |TAVIC+16..$.. LD|
000004E0: 41 23 31 3B 53 50 52 49 54 45 20 30 20 45 49 4E |A#1;SPRITE 0 EIN|
000004F0: 53 43 48 41 4C 54 45 4E 00 DE 24 14 05 20 53 54 |SCHALTEN..$.. ST|
00000500: 41 56 49 43 2B 32 31 00 F6 24 1E 05 20 52 54 53 |AVIC+21..$.. RTS|
00000510: 3B 55 4E 44 20 5A 55 52 55 45 43 4B 2E 2E 2E 00 |;UND ZURUECK....|
00000520: FC 24 28 05 3B 00 26 25 32 05 49 52 51 4E 45 55 |.$(.;.&%2.IRQNEU|
00000530: 20 4C 44 41 49 52 51 46 4C 41 47 3B 49 52 51 2D | LDAIRQFLAG;IRQ-|
00000540: 52 45 51 55 45 53 54 52 45 47 49 53 54 45 52 00 |REQUESTREGISTER.|
00000550: 3F 25 3C 05 20 53 54 41 49 52 51 46 4C 41 47 3B |?%<. STAIRQFLAG;|
00000560: 4C 4F 45 53 43 48 45 4E 00 69 25 46 05 20 42 4D |LOESCHEN.i%F. BM|
00000570: 49 56 49 43 49 52 51 3B 42 49 54 20 37 20 47 45 |IVICIRQ;BIT 7 GE|
00000580: 53 45 54 5A 54 2C 20 44 41 4E 4E 20 56 49 43 49 |SETZT, DANN VICI|
00000590: 52 51 00 8F 25 50 05 20 4A 4D 50 49 52 51 41 4C |RQ..%P. JMPIRQAL|
000005A0: 54 3B 53 4F 4E 53 54 20 41 4C 54 45 20 49 52 51 |T;SONST ALTE IRQ|
000005B0: 2D 52 4F 55 54 49 4E 45 00 BC 25 5A 05 56 49 43 |-ROUTINE..%Z.VIC|
000005C0: 49 52 51 20 4C 44 41 53 43 52 4B 4F 4C 3B 4B 4F |IRQ LDASCRKOL;KO|
000005D0: 4C 4C 2E 2D 52 45 47 49 53 54 45 52 20 4C 4F 45 |LL.-REGISTER LOE|
000005E0: 53 43 48 45 4E 00 DD 25 64 05 20 49 4E 43 31 30 |SCHEN..%d. INC10|
000005F0: 32 34 3B 31 30 32 34 20 49 4E 4B 52 45 4D 45 4E |24;1024 INKREMEN|
00000600: 54 49 45 52 45 4E 00 F8 25 6E 05 20 4A 4D 50 49 |TIEREN..%n. JMPI|
00000610: 52 51 45 4E 44 3B 49 52 51 20 42 45 45 4E 44 45 |RQEND;IRQ BEENDE|
00000620: 4E 00 00 00 |N... |
X.. ...BA 49152 ;START =
49152.3 ...GL VIC = $D000 ;VIC-
BASISADRESSE.\ ...GL IRQVEC = $0314
;IRQ-VEKTOR.. (..GL IRQALT = $EA31
;ALTE IRQ-ROUTINE.. 2..GL IRQEND = $F
EBC ;IRQ BEENDEN.. <..GL RASTER =
VIC+18 ;RASTERZEILEN-REGISTER..!F..
GL IRQMASK= VIC+26 ;IRQ-MASKENREGIS
TER.L!P..GL IRQFLAG= VIC+25 ;IRQ-RE
QUESTREGISTER..!Z..GL HIBIT = VIC+17
;HI-BIT VOM RASTERREGISTER..!D..GL SP
RKOL = VIC+30 ;SPRITE-SPRITE-KOLL..
.!N..GL SCRKOL = VIC+31 ;SPRITE-HIN
TERGRUND-KOLL...!..;.."..INIT JSRMAKESPR
;SPRITE-GENERIEREN..".. SEI;IRQ SPERREN.
T".. LDA#130;SPRITE-HINTERGRUND-KOLL..N"
.. STAIRQMASK;MASKIEREN..".. LDA#<(IRQNE
U);IRQ-VEKTOR..".. LDX#>(IRQNEU);VERBIEG
EN.."$. STAIRQVEC.I".. STXIRQVEC+1.."8.
LDASCRKOL;KOLL.-REGISTER LOESCHEN..#B. L
DAIRQFLAG;IRQ-REQUESTREGISTER.-#L. STAIR
QFLAG;LOESCHEN.C#V. CLI;IRQ ZULASSEN.[#`
. RTS;UND ZURUECK....A#J.;..#T.MAKESPR L
DX#62;BLOCK 32 MIT 255 BELEGEN..#~. LDA#
255..#..LOOP STA2048,X..#.. DEX.C#.. BPL
LOOP..#.. LDA#32;BLOCK 32 FUER SPRITE 0.
.#.. STA2040;FESTLEGEN..$.. LDA#1;SPRITE
0 = WEISS.($D. STAVIC+39.H$N. LDA#160;X
-KOORDINATE = 160.T$X. STAVIC.T$.. LDA#1
30;Y-KOORDINATE = 130..$.. STAVIC+1. $..
LDA#0;HILFSBITS LOESCHEN..$.. STAVIC+16
.O$.. LDA#1;SPRITE 0 EINSCHALTEN..$.. ST
AVIC+21..$.. RTS;UND ZURUECK.....$(.;.&%
2.IRQNEU LDAIRQFLAG;IRQ-REQUESTREGISTER.
?%<. STAIRQFLAG;LOESCHEN.I%F. BMIVICIRQ;
BIT 7 GESETZT, DANN VICIRQ..%P. JMPIRQAL
T;SONST ALTE IRQ-ROUTINE..%Z.VICIRQ LDAS
CRKOL;KOLL.-REGISTER LOESCHEN..%D. INC10
24;1024 INKREMENTIEREN..%N. JMPIRQEND;IR
Q BEENDEN...
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL