0014: 00020 RTCLOC EQ $14 0200: 00030 VDSLST EQ $200 022F: 00040 SDMCTL BQ $22F 0230: 00050 SDLSTL EQ $230 02C0: 00060 PCOLRO EQ $2CO 02C1: 00070 PCOLR1 EQ $2C1 02C6: 00080 COLOR2 EQ $2C6 D000: 00090 HPOSPO EQ $DOOO D001: 00100 HPOSP1 EQ $DO01 D018: 00110 COLPF2 EQ $DO18 D01D: 00120 GRACTL EQ $DO1D D20A: 00130 RANDOM EQ $D20A D407: 00140 PMBASE EQ $D407 D40A: 00150 WSYNC EQ $D40A D40E: 00160 NMIEN EQ $D40E E45C: 00170 SETVBV EQ $E45C E462: 00180 XITVBV EQ $E462 00F0: 00190 PAGEO EQ $FO 5000: 00200 PDATA EQ $5000 5400: 00210 PLAYERO EQ PDATA+$400 5500: 00220 PLAYER1 BQ PDATA+$500 00230 ; 00240 OR $4000 00250 START 4000: A9 03 00260 LDA #$03 SET UP PLAYER/MISSILE GRAPHICS 4002: 8D 1D D0 00270 STA GRACTL 4005: A9 50 00280 LDA /PDATA 4007: 8D 07 D4 00290 STA PMBASE 400A: A9 3E 00300 LDA #$3E 400C: 8D 2F 02 00310 STA SDMCTL 400F: A9 00 00320 LDA #$00 CLEAR PLAYER RAM 4011: AA 00330 TAX 00340 .1 4012: 9D 00 54 00350 STA PLAYEROJ 4015: 9D 00 55 00360 STA PLAYERI,X 4018: CA 00370 DEX 4019: D0 F7 00380 BNE .1 401B: A2 07 00390 LDX #$07 00400 .2 401D: BD C2 40 00410 LDA LHALF,X ;PUT LEFT HALF OF BOAT ON SCREEN 4020: 9D 3C 54 00420 STA PLAYERO+$3C,X 4023: BD CA 40 00430 LDA RHALF,X ; PUT RIGHT HLAF OF BOAT ON SCREEN 4026: 9D 3C 55 00440 STA PLAYER1+$3C,X 4029: CA 00450 DEX 402A: 10 F1 00460 BPL .2 402C: A9 94 00470 LDA #$94 BLUE 402E: 8D C6 02 00480 STA COLOR2 TEXT BACKGROUND 4031: A9 0E 00490 LDA #$OE WHITE 4033: 8D C0 02 00500 STA PCOLRO MAKE BOAT WHITE 4036: 8D C1 02 00510 STA PCOLRI 4039: A9 00 00520 LDA #$00 SET HORIZONTAL POS. TO 0 403B: 8D D4 40 00530 STA POH 403E: A9 08 00540 LDA #$08 RIGHT HALF OF BOAT HORIZ. POS. IS 8 GREATER - 4040: 8D D5 40 00550 STA PIR -THAN LEFT HALF 4043: AD 30 02 00560 LDA SDLSTL MAKE A PAGE 0 POINTER TO CURRENT DISPLAY LIST 4046: 85 F0 00570 STA PAGEO 4048: AD 31 02 00580 LDA SDLSTL+l 404B: 85 F1 00590 STA PAGEO+l 404D: A0 08 00600 LDY #$08 FIND THE 4TH TEXT LINE 404F: B1 F0 00610 LDA (PAGEO),Y 4051: 09 80 00620 ORA #%10000000 TURN ON HIGH BIT FOR INTERRUPT 4053: 91 F0 00630 STA (PAGEO),Y STORE IT BACK 4055: A9 00 00640 LDA #$00 4057: 8D D2 40 00650 STA WAVE 405A: A9 73 00660 LDA #DLI STORE ADDRESS OF DLI IN PAGE 2 VECTOR 405C: 8D 00 02 00670 STA VDSLST 405F: A9 40 00680 LDA /DLI 4061: 8D 01 02 00690 STA VDSLST+l 4064: A9 C0 00700 LDA #%11000000 TELL ANTIC TO OK DLI 4066: 8D 0E D4 00710 STA NMIEN 4069: A9 07 00720 LDA #$07 SET UP DEFFERRED VBLANK 406B: A0 9B 00730 LDY #VBI 406D: A2 40 00740 LDX /VBI 406F: 20 5C E4 00750 JSR SETVBV 4072: 60 00760 RTS THIS SHOULD RTS BACK TO YOUR ASSEMBLER DEBUGGER 00770 DLI 4073: 48 00780 PHA 4074: 8A 00790 TXA 4075: 48 00800 PHA 4076: 98 00810 TYA 4077: 48 00820 PHA 4078: A9 A2 00830 LDA #$A2 DARK BLUE 407A: A0 A6 00840 LDY #$A6 LIGHT BLUE 407C: A2 08 00850 LDX #$08 WE ARE GOING TO PLAY WITH THE NEXT 8 SCAN LINES 00860 .1 407E: 4E D3 40 00870 LSR TWAVE CHECK NEXT BIT OF OUR RANDOM NUMBER 4081: 8D 0A D4 00880 STA WSYNC WAIT TILL BEAM OFFSCREEN 4084: 8D 18 D0 00890 STA COLPF2 ASSUME DARK BLUE 4087: 90 03 00900 BCC .2 IF RANDOM # BIT WAS OFF 4089: 8C 18 D0 00910 STY COLPF2 IF ON TURN LIGHT BLUE 00920 .2 408C: CA 00930 DEX 408D: D0 EF 00940 BNE .1 TILL ALL 8 LINES DONE 408F: 8D 0A D4 00950 STA WSYNC WAIT TILL OFF SCREEN 4092: 8D 18 D0 00960 STA COLPF2 TURN SCREEN DARK BLUE FOR REMAINDER OF SCREEN 4095: 68 00970 PLA RESTORE REGISTERS & LEAVE 4096: A8 00980 TAY 4097: 68 00990 PLA 4098: AA 01000 TAX 4099: 68 01010 PLA 409A: 40 01020 RTI 01030 VBI 409B: A5 14 01040 LDA RTCLOC 409D: 29 07 01050 AND #$07 ; A NEW WAVE PATTERN IS PICKED EVERY 8TH VBLANK 409F: D0 06 01060 BNE .1 ;- OTHERWISE IT WOULD CHANGE TOO FAST 40A1: AD 0A D2 01070 LDA RANDOM GET A NEW WAVE VALUE 40A4: 8D D2 40 01080 STA WAVE 01090 .1 40A7: AD D2 40 01100 LDA WAVE GET CURRENT WAVE VALUE 40AA: 8D D3 40 01110 STA TWAVE PASS TO DLI VARIABLE 40AD: EE D4 40 01120 INC POH MOVE BOAT ACCROSS SCREEN 40B0: EE D5 40 01130 INC PlH 40B3: AD D4 40 01140 LDA POH 40B6: 8D 00 D0 01150 STA HPOSPO TELL ANTIC NEW POS. 40B9: AD D5 40 01160 LDA PlH 40BC: 8D 01 D0 01170 STA HPOSP1 40BF: 4C 62 E4 01180 JMP XITVBV 01190 ; 01200 LHALF 40C2: 00 00 60 40C5: EF EF 5F 40C8: 40 C0 01210 HS 00006OEFEF5F4OCO 01220 RHALF 40CA: 80 40 20 40CD: FF FC F0 40D0: 00 00 01230 HS 80402OFFFCFOOOOO 01240 ; 40D2: 00 01250 WAVE BS 1 40D3: 00 01260 TWAVE BS 1 40D4: 00 01270 POH BS 1 40D5: 00 01280 PIH BS 1