RANDOMIZE TIMER FONT 64 'FIREBALLS BY WAS8BIT' 'STRIKEOUT FONTSET BY WAS8BIT ' ' <><><> MUSIC BY AWSA <><><> ' DIM GLOBAL X(63),Y(63),DX(63),DY(63),S(63) GLOBAL TOPSCORE, NOWSCORE,GAMEDIFF TOPSCORE=PEEKL($E000) NOWSCORE=0 GAMEPAD 1 NEWGAME: IF NOWSCORE>TOPSCORE THEN TOPSCORE=NOWSCORE POKEL $E000,TOPSCORE END IF GAMEDIFF=0 SPRITE OFF FOR I=1 TO 63 S(I)=0 NEXT I CALL TITLE IROUND=1 MAXROUND=3 IUPMAX=9 NOWSCORE=0 IUP=0 NEWROUND: CSTART=4+IROUND*16 PPAL=RND(6)+1 SPRITE OFF FOR I=1 TO 63 S(I)=0 NEXT I IUP=0 CLS PAL PPAL IF GAMEDIFF=0 THEN TEXT 5,3,"EASY PLAY" IF GAMEDIFF=1 THEN TEXT 5,3,"HARD PLAY" TEXT 5,5,"ROUND "+STR$(IROUND)+"/"+STR$(MAXROUND) PLAY 0,35,10 SOUND 7 PLAY 1,60,10 SOUND 8 WAIT 180 CLS X(0)=80 Y(0)=118 S(0)=1 SPRITE 0,,,CSTART+IUP SPRITE 0 PAL PPAL SOUND SOURCE ROM(15) MUSIC DO IF IUP>IUPMAX THEN WAIT 90 STOP SPRITE 0,,,CSTART+IUP WAIT 120 GOSUB BONUSROUND INC IROUND IF IROUND>MAXROUND THEN GOTO NEWGAME ELSE GOTO BONUSROUND ELSE IF IUP<-3 THEN SPRITE 0,,,CSTART+IUP WAIT 120 CALL ENDGAME GOTO NEWGAME END IF IF GAMEDIFF=0 THEN RR=100 ELSE RR=50 RR=RR-10*IROUND IF RND(RR)=0 THEN CALL ADDSPR IF RIGHT(0) THEN DX(0)=1 ELSE IF LEFT(0) THEN DX(0)=-1 ELSE DX(0)=0 FOR I=0 TO 63 IF S(I)>0 THEN X(I)=X(I)+DX(I) Y(I)=Y(I)+DY(I) C=SPRITE.C(I) IF (I>0 AND RND*DY(I)>0.2) THEN ADD C,1,4 TO 13 SPRITE I,X(I),Y(I),C IF Y(I)>128 THEN S(I)=0 INC NOWSCORE END IF IF I>0 THEN IF SPRITE HIT(0,I) THEN SPRITE OFF I S(I)=0 IPAL=(SPRITE.A(I) - 16) MOD 8 + 8 TRACE PPAL,IPAL IF IPAL=PPAL THEN INC IUP SPRITE 0,,,CSTART+IUP IF GAMEDIFF=1 THEN PPAL=RND(6)+1 SPRITE 0 PAL PPAL END IF PLAY 0,60,1 SOUND 7 ADD NOWSCORE,100 ELSE DEC IUP SPRITE 0,,,CSTART+IUP PLAY 0,40,90 SOUND 8 END IF END IF END IF END IF NEXT I PAL PPAL NUMBER 7,0,NOWSCORE,6 GOSUB POWERUPS WAIT VBL LOOP BONUSROUND: CSTART=4+IROUND*16 PPAL=0 SPRITE OFF FOR I=1 TO 63 S(I)=0 NEXT I IUP=0 CLS PAL PPAL TEXT 7,5,"BONUS" PLAY 0,45,10 SOUND 7 PLAY 1,70,10 SOUND 8 WAIT 180 CLS X(0)=80 Y(0)=118 S(0)=1 SPRITE 0,,,CSTART+IUP SPRITE 0 PAL PPAL SOUND SOURCE ROM(14) MUSIC IQUIT=100 IADD=100 DO IF IQUIT=0 THEN WAIT 90 STOP SPRITE 0,,,CSTART+IUP WAIT 120 INC IROUND IF IROUND>MAXROUND THEN GOTO NEWGAME ELSE GOTO NEWROUND END IF IF GAMEDIFF=0 THEN RR=100 ELSE RR=50 RR=RR-10*IROUND IF RND(RR)<2 AND IADD>0 THEN DEC IADD CALL ADDSPR_B END IF IF RIGHT(0) THEN DX(0)=1 ELSE IF LEFT(0) THEN DX(0)=-1 ELSE DX(0)=0 FOR I=0 TO 63 IF S(I)>0 THEN X(I)=X(I)+DX(I) Y(I)=Y(I)+DY(I) C=SPRITE.C(I) IF (I>2 AND RND*DY(I)>0.2) THEN ADD C,16,15 TO 63 SPRITE I,X(I),Y(I),C IF Y(I)>16*8 THEN DX(I)=0 DEC IQUIT END IF IF Y(I)>128 THEN S(I)=0 INC NOWSCORE END IF IF I>2 THEN IF SPRITE HIT(0,I) THEN SPRITE OFF I S(I)=0 PLAY 0,75,1 SOUND 7 ADD NOWSCORE,234 DEC IQUIT END IF END IF END IF NEXT I PAL PPAL NUMBER 6,0,NOWSCORE,6 WAIT VBL LOOP POWERUPS: RETURN TEXT 0,0,"A: " TEXT 15,0,"B: " RETURN SUB ADDSPR FOR I=3 TO 63 IF S(I)=0 THEN SPRITE I,,,4+5*RND(1) SPRITE I PAL RND(6)+1 S(I)=1 X(I)=RND(152) Y(I)=0 DX(I)=0 DY(I)=RND/4+0.1+0.1*GAMEDIFF EXIT SUB END IF NEXT I END SUB SUB ADDSPR_B FOR I=3 TO 63 IF S(I)=0 THEN SPRITE I,,,15+16*RND(3) SPRITE I PAL 0 S(I)=1 X(I)=RND(152) Y(I)=0 DX(I)=0 DY(I)=RND/4+0.1+0.1*GAMEDIFF EXIT SUB END IF NEXT I END SUB SUB TITLE STOP CLS PLAY 0,35,1 SOUND 0 PLAY 1,60,1 SOUND 0 PAL 0 BG FILL 0,0 TO 19,15 CHAR 14 BG FILL 1,1 TO 18,14 CHAR 0 NUMBER 6,5,TOPSCORE,6 NUMBER 6,8,NOWSCORE,6 TEXT 5,2,"FIREBALLS" TEXT 8,4,"TOP" TEXT 7,7,"SCORE" TEXT 3,10,"EASY PLAY (A)" TEXT 3,12,"HARD PLAY (B)" WAIT 15 DO IF BUTTON TAP(0,0) THEN GAMEDIFF=0 EXIT ELSE IF BUTTON TAP(0,1) THEN GAMEDIFF=1 EXIT END IF WAIT VBL LOOP CLS WAIT 15 END SUB SUB ENDGAME SPRITE OFF STOP CLS PAL 0 BG FILL 0,0 TO 19,15 CHAR 14 BG FILL 1,1 TO 18,14 CHAR 0 NUMBER 6,5,TOPSCORE,6 NUMBER 6,8,NOWSCORE,6 TEXT 5,2,"FIREBALLS" TEXT 7,7,"SCORE" TEXT 3,5,"--GAME OVER--" TEXT 3,11,"--THANK YOU--" PLAY 0,25,1 SOUND 0 PLAY 1,50,1 SOUND 0 WAIT 15 FOR I=1 TO 240 WAIT VBL NEXT I CLS WAIT 15 END SUB #1:MAIN PALETTES 003F152A003B1126003C142800381024 000B020700351020002E040800231013 #2:MAIN CHARACTERS 00000000000000000000000000000000 00000018668100000000000000000000 00180010000000000000000000000000 00180008000000000000000000000000 000000183C3C18000000183C66663C18 000010383C3C18000010382C66663C18 001038383C3C18001038283C66663C18 001000183C3C18001038183C66663C18 000000183C3C18001000183C66663C18 000000183C3C18000000183C66663C18 0000081C3C3C180000081C3466663C18 00081C1C3C3C1800081C143C66663C18 000800183C3C1800081C183C66663C18 000000183C3C18000800183C66663C18 18420099990042180000000000000000 000010387C3810000010386CC66C3810 818199FFFFFF7E3C818199EBF7EBFFFF 818199FFFFFF7E3C818199C7FB27FBC7 818199FFFFFF7E3C818199C7FB27DFC3 818199FFFFFF7E3C818199E7F737F7E3 818199FFFFFF7E3C818199E7DBDBDBE7 818199FFFFFF7E3C818199E7F7F7F7E3 818199FFFFFF7E3C818199C7FBE7DFC3 818199FFFFFF7E3C818199C7FBE7FBC7 818199FFFFFF7E3C818199DBDBC3FBFB 818199FFFFFF7E3C818199C3DFC7FBC7 818199FFFFFF7E3C818199E7DFC7DBE7 818199FFFFFF7E3C818199C3FBFBFBFB 818199FFFFFF7E3C818199E7DBE7DBE7 818199FFFFFF7E3C818199E7DBE3FBE7 818199FFFFFF7E3C818199F7E3C1F7FF 0000001038100000000010386C381000 819999FFFFFF7E3C819999EBF7EBFFFF 819999FFFFFF7E3C819999C7FB27FBC7 819999FFFFFF7E3C819999C7FB27DFC3 819999FFFFFF7E3C819999E7F737F7E3 819999FFFFFF7E3C819999E7DBDBDBE7 819999FFFFFF7E3C819999E7F7F7F7E3 819999FFFFFF7E3C819999C7FBE7DFC3 819999FFFFFF7E3C819999C7FBE7FBC7 819999FFFFFF7E3C819999DBDBC3FBFB 819999FFFFFF7E3C819999C3DFC7FBC7 819999FFFFFF7E3C819999E7DFC7DBE7 819999FFFFFF7E3C819999C3FBFBFBFB 819999FFFFFF7E3C819999E7DBE7DBE7 819999FFFFFF7E3C819999E7DBE3FBE7 819999FFFFFF7E3C819999F7E3C1EBFF 00000000100000000000001038100000 005A5A7E7E7E7E3C005A5A6A766A7E7E 005A5A7E7EFE7E3C005A5A467A267A46 005A5A7E7EFE7E3C005A5A467A265E42 005A5A7E7EFE7E3C005A5A6676367662 005A5A7E7E7E7E3C005A5A665A5A5A66 005A5A7E7E7E7E3C005A5A6676767662 005A5A7E7E7E7E3C005A5A467A665E42 005A5A7E7E7E7E3C005A5A467A667A46 005A5A7E7E7E7E3C005A5A5A5A427A7A 005A5A7E7E7E7E3C005A5A425E467A46 005A5A7E7E7E7E3C005A5A665E465A66 005A5A7E7E7E7E3C005A5A427A7A7A7A 005A5A7E7E7E7E3C005A5A665A665A66 005A5A7E7E7E7E3C005A5A665A627A66 005A5A7E7E7E7E3C005A5A766240547E 0000001038100000000010386C381000 0000000081000000000000FF81FF0000 0008080889000800000000F781FF0000 0048242481000000000000DB81FF0000 00247E24A57E2400000000DB81810000 00081C188D1C0800000000E781E30000 0022040891204200000000F781DF0000 00182438CF241A00000000C781DB0000 0008081081000000000000EF81FF0000 0008101091101008000000EF81EF0000 0010080889080810000000F781F70000 00002418FF182400000000E781E70000 00000808BF080800000000F781F70000 0000000099183000000000FF81E70000 00000000FF000000000000FF81FF0000 0000000081181800000000FF81E70000 0002040891204080000000F781DF0000 00182424A5242418000000DB81DB0000 001808088908081C000000F781F70000 001824048910203C000000FB81EF0000 0018240499042418000000FB81FB0000 00242424BD040404000000DB81FB0000 003C2020B9040438000000DF81FB0000 00182020B9242418000000DF81DB0000 003C040485040404000000FB81FB0000 0018242499242418000000DB81DB0000 001824249D040418000000DB81FB0000 0000000881080000000000F781F70000 0000000881081000000000F781F70000 00000810A1100800000000EF81EF0000 0000007E817E00000000008181810000 0000100885081000000000F781F70000 001C220489000800000000FB81FF0000 0018244AC5201C00000000B581DF0000 00182424BD242424000000DB81DB0000 00382424B9242438000000DB81DB0000 00182420A1202418000000DF81DF0000 00382424A5242438000000DB81DB0000 003C2020B920203C000000DF81DF0000 003C2020B9202020000000DF81DF0000 00182420AD242418000000DF81DB0000 00242424BD242424000000DB81DB0000 001C08088908081C000000F781F70000 001C080889282810000000F781D70000 00242830B1282424000000CF81D70000 00202020A120203C000000DF81DF0000 0022362AA3222222000000D581DD0000 0022322A2A2A2622000000D500D50000 00182424A5242418000000DB81DB0000 00382424B9202020000000DB81DF0000 001C2222A32A241A000000DD81D50000 00382424B9242424000000DB81DB0000 0018242099042418000000DF81FB0000 003E080889080808000000F781F70000 00222222A322221C000000DD81DD0000 0022222222141408000000DD00EB0000 00222222A32A3622000000DD81D50000 0022221489142222000000EB81EB0000 0022221489080808000000EB81F70000 003E02048910203E000000FB81EF0000 001C10109110101C000000EF81EF0000 0040201089040201000000EF81FB0000 0038080889080838000000F781F70000 0008142281000000000000DD81FF0000 0000000081007E00000000FF81FF0000 #14:MAIN SOUND 2800303A000000001800846C003A0000 08006060000000002800303019FE0000 38002020000000003800505000000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0002030104060705080A0B090C0D400E 0D8F4010404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 190F00FF0000000000000000FF5F0000 000000000000000035FF000000000000 00000000000000000000000000000000 30FF0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 FF5F00FF5F001D5F00FF0000FF5F00FF 5F001D5F00FF0000FF0000FF00001D5F 00FF0000FF0000FF00001D5F00FF0000 FF0000FF00001D5F00FF0000FF0000FF 00001D5F00FF0000FF0000FF00001D5F 00FF0000FF0000FF00001D5F00FF0000 00000000000000000000000000000000 000000000000000031FF000000000000 00000000000000000000000000000000 33FF0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000025 0F00270F002A0F00FF00002A0F00290F 00FF0000270F00FF0000000000000000 190F00FF000000000000000000000000 000000000000000035FF000000000000 00000000000000000000000000000000 33FF0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 FF0000FF00001D5F00FF0000FF0000FF 00001D5F00FF0000FF0000FF00001D5F 00FF0000FF0000FF00001D5F00FF0000 FF0000FF00001D5F00FF0000FF0000FF 00001D5F00FF0000FF0000FF00001D5F 00FF0000FF0000FF00001D5F00FF0000 00000000000000000000000000000000 000000000000000031FF000000000000 00000000000000000000000000000000 30FF0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000025 0F00270F002A0F00FF00002A0F00290F 00FF0000270F00FF0000000000000000 190F00FF000000000000000000000000 000000000000000038FF000000000000 00000000000000000000000000000000 33FF0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 FF0000FF00001D5F00FF0000FF0000FF 00001D5F00FF0000FF0000FF00001D5F 00FF0000FF0000FF00001D5F00FF5F00 FF0000FF00001D5F00FF0000FF0000FF 00001D5F00FF0000FF0000FF00001D5F 00FF0000FF0000FF00001D5F00FF0000 00000000000000000000000000000000 000000000000000035FF000000000000 00000000000000000000000000000000 36FF0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000029 0F002A0F002C0F00FF00002C0F002A0F 00FF0000290F00FF0000000000000000 360F00FF0000350F00000000FF000031 0F00000000FF0000360F00FF0000350F 00000000FF0000310F00000000FF0000 360F00FF0000350F00000000FF000031 0F00000000FF0000360F00FF0000350F 00000000000000FF0F00350F00000000 000000FF0000350F00000000FF000031 0F00000000FF0000360F00FF0000350F 00000000FF0000310F00000000FF0000 360F00FF0000350F00000000FF000031 0F00000000FF0000360F00FF00002E0F 002F0F00300F00310F00FF0000000000 0F3F000000000F3F000000000000000F 3F000000000000000F3F000000000F3F 000000000000000F3F00000000000000 0F3F000000000F3F000000000000000F 3F000000000000000F3F000000000F3F 000000000F3F000000000F3F00000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000000000000000220F 00230F00240F00250F00FF0000000000 0000000000000F3F000000000000000F 3F000000000000000F3F000000000F3F 000000000000000F3F00000000000000 0F3F000000000F3F000000000000000F 3F000000000000000F3F000000000000 000000000000000000000000000F3F00 #15:MAIN SOUND 2800303A000000001800846C003A0000 08006060000000002800303019FE0000 38002020000000003800505000000000 0800000F000000000800307710F70000 0800307714F700000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 0800000F000000000800000F00000000 00011440020315400405164006074040 08090A400B0D0C400E100F4011131240 40931340404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 40404040404040404040404040404040 311F0000000000000000000000000000 0000000000FF00000000000000000000 00000000000000000000000000000000 000000331F00000000000000000000FF 0000311F000000000000000000000000 00FF0000361F00000000000000000000 00000000000000000000000000000000 00000000000000002E2F00FF0000312F 00FF0000362F00FF2F003A2F00FF0000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000341F00331F0000000000000000 0000000000000000FF00000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000000000331F000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000002F2F000000 00332F00000000362F000000003B2F00 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000000000000000FF000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000351F00000000000000331F0000 0000000000000000000000000000351F 000000000000000000000000002E1F00 00000000000000000000000000000000 00002F2F00000000332F00000000362F 000000003B2F00000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000FF00000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000002E2F 00000000312F00000000362F00000000 3A2F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 311F0000000000000000000000000000 0000000000000000000000FF00000000 00000000000000000000000000000000 00000000000000000000000000000033 1F000000000000000000000000000000 00311F00000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000002E2F00000000312F00000000 362F000000003A2F0000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 2A1F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000000000FF0000361F0000000000 00000000000000000000000000000000 00341F00331F00000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000002F1F00000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000000000002F2F0000 0000332F00000000362F000000003B2F 00000000000000000000000000000000 000000000000FF000000000000000000 0000331F000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000000000FF000000000000000000 00002F1F000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000002F2F00000000332F0000 0000362F000000003B2F000000000000 00000000000000000000000000000000 000000000000000000000000351F0000 00000000000000000000000000000000 00331F00000000000000000000000000 000000000000351F0000000000000000 0000000000000000361F000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000002E1F000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000FF0000 2E1F0000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000002F1F0000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 0000000000000000FF00002F1F000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 00000000000000000000000000000000 000000000000000000000000002A1F00