set kernel_options no_blank_lines set romsize 16kSC dim level=b dim byte1=score dim byte2=score+1 dim byte3=score+2 rem e, m, q, r, x & y are open i_like_bacon level=1 : c=80 : d=40 : e=40 : f=0 : p=1 : w{7}=0 : e=0 : v{3}=0 r{0}=0 : r{1}=0 : r{2}=0 : r{3}=0 w{6}=0 : o=0 : p=1 : a=1 : v{1}=1 : byte1=$1B : byte2=$00 : byte3=$00 goto title_pf bank4 title_screen player0: %0101010 %0101010 %0101010 %0101010 %0111110 %1110111 %1101011 %0111110 end COLUP0=80 : COLUPF=0 : player0x=68 : player0y=71 : COLUBK=128 if switchleftb then y{0}=0 else y{0}=1 if joy0right then goto the_end_setup bank3 : rem REMOVE FROM FINAL BUILD if y{0} then player0x=0 : player0y=0 if !y{0} then player0x=30 : player0y=70 scorecolor=0 missile0x=0 : missile0y=0 : ballx=0 : bally=0 drawscreen if switchselect then e=e+1 if e>20 then e=0 : byte1=byte1+$10 if byte1=$3B then byte1=$1B if switchreset && byte1=$2B then goto minigame bank2 if switchreset && byte1=$1B then goto begin_game if !w{6} && joy0up then w{6}=1 if w{6} && joy0down then w{7}=1 goto title_screen begin_game player1: %0111110 %1111111 %1101011 %0111110 %0001000 %0001100 end byte2=$00 : byte3=$00 : scorecolor=0 : level=1 begin_level player1: %0111110 %1111111 %1101011 %0111110 %0001000 %0001100 end byte1=$3B : AUDV0=0 : AUDV1=0 : o=0 : p=1 : d=0 : v{5}=1 r=0 if level=2 && d=0 then d=1 if level=3 && d=0 then d=1 if level=8 && d=0 then d=1 if level=10 && d=0 then d=1 if level=11 && d=0 then d=1 if level=12 && d=0 then d=1 if level=13 && d=0 then d=1 if d=0 then d=4 if level=1 then COLUPF=206 : goto level_1 bank4 if level=2 then COLUPF=206 : goto level_2 bank4 if level=3 then COLUPF=206 : goto level_3 bank4 if level=4 then COLUPF=204 : goto level_4 bank4 if level=5 then COLUPF=204 : goto level_5 bank4 if level=6 then COLUPF=204 : goto level_6 bank4 if level=7 then COLUPF=202 : goto level_7 bank4 if level=8 then COLUPF=202 : goto level_8 bank4 if level=9 then COLUPF=202 : goto level_9 bank4 if level=10 then COLUPF=200 : goto level_10 bank4 if level=11 then COLUPF=200 : goto level_11 bank4 if level=12 then COLUPF=200 : goto level_12 bank4 if level=13 then COLUPF=198 : goto level_13 bank4 begin_level_2 if byte1=$0B then goto game_over bank3 a=0 : j=80 : v{7}=0 : v{6}=0 : y{1}=0 player1x=22 : player1y=80 : missile1x=player1x+4 : missile1y=player1y-3 m=2 : z{3}=0 : z{7}=0 if level>14 then goto the_end_setup bank3 if y{0} then goto main player0_intro if !v{5} then goto get_x x=155 : goto get_y get_x x=rand if x<28 then goto get_x if x>135 then goto get_x get_y e=rand if e<16 then goto get_y if e>80 then goto get_y fish_intro if !v{5} then goto get_fish_x s=10 : goto get_fish_y get_fish_x s=rand if s<28 then goto get_fish_x if s>135 then goto get_fish_x get_fish_y t=rand if t<16 then goto get_fish_y if t>80 then goto get_fish_y main k=k+1 : l=l+1 if byte2>$99 && byte3>$90 then byte2=$AA : byte3=$AA if n=2 then goto fishie_left else goto fishie_right fishie_left player0: %01110001 %10011011 %11011111 %11111111 %11011011 %01110001 end goto fishie fishie_right player0: %10001110 %11011001 %11111011 %11111111 %11011011 %10001110 end fishie if u>30 then u=0 : n=0 if n=1 && l=4 then l=0 : s=s+1 if n=2 && l=4 then l=0 : s=s-1 if n=3 && l=4 then l=0 : t=t+1 if n=4 && l=4 then l=0 : t=t-1 if n>0 && !z{4} then u=u+1 if n=0 then n=rand else goto fishie_2 if n<64 then n=1 if n>=64 && n<128 then n=2 if n>=128 && n<196 then n=3 if n>=196 then n=4 fishie_2 COLUP0=30 player0x=s : player0y=t if s<20 then n=1 if s>135 then s=135 : n=0 if t<8 then t=8 : n=0 if t>88 then t=88 : n=0 if y{0} then s=0 : t=0 drawscreen if y{3} then goto hit_wall bank3 COLUP0=80 if collision(player1,player0) then v{3}=1 if v{3} then r=r+1 : m=6 if v{3} && collision(missile1,player0) then r=r+1 : m=3 if !collision(player1,player0) then v{3}=0 : r=0 if !v{3} then m=1 if collision(missile1,player0) then byte3=byte3+$10 : v{7}=0 : v{5}=1 : y{1}=1 : r=0 : goto fish_intro if y{1} && !v{7} then q=q+1 if y{1} && q<10 then AUDV0=6 : AUDC0=8 : AUDF0=3 if y{1} && q>10 then AUDV0=0 : q=0 : y{1}=0 25 if y{0} then x=0 : e=0 if byte3=$A0 then byte2=byte2+$01 : byte3=$00 if byte3=$A0 && byte2>$99 then byte2=$00 : byte3=$00 30 if h=1 then goto octopus_right if h=2 then goto octopus_left if h=3 then goto octopus_straight if h=4 then goto octopus_straight if h=5 then goto octopus_right if h=6 then goto octopus_right if h=7 then goto octopus_left if h=8 then goto octopus_left octopus_left player0: %00010101 %00101010 %00101010 %01010100 %01111100 %11101110 %11010110 %01111100 end goto 50 octopus_straight player0: %0101010 %0101010 %0101010 %0101010 %0111110 %1110111 %1101011 %0111110 end goto 50 octopus_right player0: %10101000 %01010100 %01010100 %00101010 %00111110 %01110111 %01101011 %00111110 end 50 if h>0 && !z{4} then i=i+1 if h=0 then goto 62 goto 100 62 if h=0 then h=rand if h<=32 then h=1 if h>32 && h<=64 then h=2 if h>64 && h<=96 then h=3 if h>96 && h<=128 then h=4 if h>128 && h<=156 then h=5 if h>156 && h<=196 then h=6 if h>196 && h<=222 then h=7 if h>222 then h=8 100 if h=1 && k=4 then k=0 : x=x+1 if h=2 && k=4 then k=0 : x=x-1 if h=3 && k=4 then k=0 : e=e-1 if h=4 && k=4 then k=0 : e=e+1 if h=5 && k=4 then k=0 : x=x+1 : e=e+1 if h=6 && k=4 then k=0 : x=x+1 : e=e-1 if h=7 && k=4 then k=0 : x=x-1 : e=e+1 if h=8 && k=4 then k=0 : x=x-1 : e=e-1 if i=30 then i=0 : h=0 if x>=135 then h=2 if x<20 then x=20 : k=0 if e>88 then e=88 : k=0 if e<8 then e=8 : k=0 if switchselect then goto i_like_bacon if !v{7} then missile1x=player1x+4 : missile1y=player1y-3 110 player0x=x : player0y=e drawscreen 125 if a=1 && !v{7} then d=1 if a=2 && !v{7} then d=2 if a=3 && !v{7} then d=3 if a=4 && !v{7} then d=4 if a=5 && !v{7} then d=5 if a=6 && !v{7} then d=6 if a=7 && !v{7} then d=7 if a=8 && !v{7} then d=8 if joy0up then a=1 if joy0down then a=2 if joy0left then a=3 if joy0right then a=4 if joy0up && joy0left then a=5 if joy0up && joy0right then a=6 if joy0down && joy0left then a=7 if joy0down && joy0right then a=8 if joy0fire && !v{3} && !y{0} then v{7}=1 if v{0} then REFP1=8 else REFP1=0 if v{3} && r=60 then r=0 : y{3}=1 if collision(player1,playfield) then y{3}=1 if collision(player1,player0) then v{3}=1 if v{3} then r=r+1 : m=6 if v{3} && collision(missile1,player0) then r=r+1 : m=3 if !collision(player1,player0) then v{3}=0 : r=0 if !v{3} then m=1 if a>0 then f=f+1 if a=1 && f>m then f=0 : player1y=player1y-1 if a=2 && f>m then f=0 : player1y=player1y+1 if a=3 && f>m then f=0 : player1x=player1x-1 : v{0}=1 if a=4 && f>m then f=0 : player1x=player1x+1 : v{0}=0 if a=5 && f>m then f=0 : player1y=player1y-1 : player1x=player1x-1 : v{0}=1 if a=6 && f>m then f=0 : player1y=player1y-1 : player1x=player1x+1 : v{0}=0 if a=7 && f>m then f=0 : player1y=player1y+1 : player1x=player1x-1 : v{0}=1 if a=8 && f>m then f=0 : player1y=player1y+1 : player1x=player1x+1 : v{0}=0 if player1x>140 then goto got_treasure bank3 if player1x<15 then goto got_treasure bank3 if player1y<7 then goto got_treasure bank3 if player1y>88 then player1y=88 COLUBK=136 if v{7} then r=r+1 if v{7} && r<10 then AUDV0=6 : AUDC0=14 : AUDF0=31 if v{7} && r>10 then AUDV0=0 if v{7} then goto missile_fired_main bank3 goto 150 bank3 bank 2 minigame AUDV0=0 : AUDV1=0 player1: %0111110 %1111111 %1111111 %0111110 %0001000 %0001100 end player0: %0111110 %1111111 %1111111 %0111110 %0001000 %0001100 end goto minigame_pf bank4 minigame_setup player0x=75 : player0y=60 player1x=75 : player1y=30 a=0 : b=0 : c=0 : d=0 : e=0 : f=0 : g=0 h=0 : i=0 : v{0}=0 : v{1}=0 : v{2}=0 : v{3}=0 : v{4}=0 : v{5}=0 byte1=$00 : byte2=$BB : byte3=$00 minigame_main if !switchrightb then v{6}=1 else v{6}=0 if j{0} then REFP0=8 else REFP0=0 if j{1} then REFP1=8 else REFP1=0 if a>0 then f=f+1 if b>0 then g=g+1 if !v{0} then ballx=player0x+5 : bally=player0y-3 if !v{1} then missile1x=player1x+5 : missile1y=player1y-3 COLUP1=200 : COLUPF=0 if switchselect then goto i_like_bacon bank1 if switchreset then goto minigame drawscreen if collision(player1,playfield) && v{4} then goto get_p1x if !collision(player1,playfield) && v{4} then v{4}=0 if collision(player0,playfield) && v{5} then goto get_p0x if !collision(player0,playfield) && v{5} then v{5}=0 if collision(player1,playfield) then player1x=player1x-w : player1y=player1y-z if collision(player0,playfield) then player0x=player0x-x : player0y=player0y-y if collision(player0,player1) then player0x=player0x-x : player0y=player0y-y : player1x=player1x-w : player1y=player1y-z if collision(player1,playfield) && v{6} then player1x=player1x-w : player1y=player1y-z if collision(player0,playfield) && v{6} then player0x=player0x-x : player0y=player0y-y if collision(player1,playfield) && !v{6} then player1x=player1x-w : player1y=player1y-z : b=b+4 : if b>8 then b=b-8 if collision(player0,playfield) && !v{6} then player0x=player0x-x : player0y=player0y-y : a=a+4 : if a>8 then a=a-8 if v{2} then e=e+1 if v{2} && e<2 then byte3=byte3+$01 if byte3=$0A then byte3=$10 if byte3=$1A then byte3=$20 if byte3=$2A then byte3=$30 if byte3=$3A then byte3=$40 if byte3=$4A then byte3=$50 if byte3=$5A then byte3=$60 if byte3=$6A then byte3=$70 if byte3=$7A then byte3=$80 if byte3=$8A then byte3=$90 if byte3=$9A then byte3=$00 if v{2} && e<60 then AUDV1=6 : AUDC1=8 : AUDF1=2 if v{2} && e>=60 then e=0 : AUDV1=0 : v{2}=0 : v{4}=1 if v{3} then i=i+1 if v{3} && i<2 then byte1=byte1+$01 if byte1=$0A then byte1=$10 if byte1=$1A then byte1=$20 if byte1=$2A then byte1=$30 if byte1=$3A then byte1=$40 if byte1=$4A then byte1=$50 if byte1=$5A then byte1=$60 if byte1=$6A then byte1=$70 if byte1=$7A then byte1=$80 if byte1=$8A then byte1=$90 if byte1=$9A then byte1=$00 if v{3} && i<60 then AUDV0=6 : AUDC0=8 : AUDF0=2 if v{0} && collision(ball,player1) then v{0}=0 : v{2}=1 if v{3} && i>=60 then i=0 : AUDV0=0 : v{3}=0 : v{5}=1 if joy0up then a=5 if joy0right then a=3 if joy0down then a=1 if joy0left then a=7 if joy0up && joy0right then a=4 if joy0down && joy0right then a=2 if joy0down && joy0left then a=8 if joy0up && joy0left then a=6 if joy0fire && !v{0} && a>0 then v{0}=1 if joy0fire && !v{0} && a=0 then v{0}=0 x=0 : y=0 if a=1 && f>3 then f=0 : y=1 if a=2 && f>3 then f=0 : y=1 : x=1 : j{0}=0 if a=3 && f>3 then f=0 : x=1 : j{0}=0 if a=4 && f>3 then f=0 : y=255 : x=1 : j{0}=0 if a=5 && f>3 then f=0 : y=255 if a=6 && f>3 then f=0 : y=255 : x=255 : j{0}=1 if a=7 && f>3 then f=0 : x=255 : j{0}=1 if a=8 && f>3 then f=0 : y=1 : x=255 : j{0}=1 if a=1 && !v{0} then c=1 if a=2 && !v{0} then c=2 if a=3 && !v{0} then c=3 if a=4 && !v{0} then c=4 if a=5 && !v{0} then c=5 if a=6 && !v{0} then c=6 if a=7 && !v{0} then c=7 if a=8 && !v{0} then c=8 player0x=player0x+x : player0y=player0y+y if joy1up then b=5 if joy1right then b=3 if joy1down then b=1 if joy1left then b=7 if joy1up && joy1right then b=4 if joy1down && joy1right then b=2 if joy1down && joy1left then b=8 if joy1up && joy1left then b=6 if joy1fire && !v{1} && b>0 then v{1}=1 if joy1fire && !v{1} && b=0 then v{1}=0 w=0 : z=0 if b=1 && g>3 then g=0 : z=1 if b=2 && g>3 then g=0 : z=1 : w=1 : j{1}=0 if b=3 && g>3 then g=0 : w=1 : j{1}=0 if b=4 && g>3 then g=0 : z=255 : w=1 : j{1}=0 if b=5 && g>3 then g=0 : z=255 if b=6 && g>3 then g=0 : z=255 : w=255 : j{1}=1 if b=7 && g>3 then g=0 : w=255 : j{1}=1 if b=8 && g>3 then g=0 : z=1 : w=255 : j{1}=1 if b=1 && !v{1} then h=1 if b=2 && !v{1} then h=2 if b=3 && !v{1} then h=3 if b=4 && !v{1} then h=4 if b=5 && !v{1} then h=5 if b=6 && !v{1} then h=6 if b=7 && !v{1} then h=7 if b=8 && !v{1} then h=8 player1x=player1x+w : player1y=player1y+z if v{1} && v{0} then goto missile0fired if v{2} && v{3} then goto player1_hit_seq if v{2} && v{4} then goto player1_hit_seq if v{4} && v{5} then goto get_p1x if v{1} then goto missile1fired if v{3} && !v{4} && !v{2} then goto player0_hit_seq if v{5} then goto get_p0x if v{0} then goto missile0fired if v{2} && !v{3} && !v{5} then goto player1_hit_seq if v{4} then goto get_p1x goto minigame_main missile0fired if v{0} && c=5 then bally=bally-1 if v{0} && c=8 then ballx=ballx-1 : bally=bally+1 if v{0} && c=3 then ballx=ballx+1 if v{0} && c=2 then ballx=ballx+1 : bally=bally+1 if v{0} && c=1 then bally=bally+1 if v{0} && c=4 then ballx=ballx+1 : bally=bally-1 if v{0} && c=7 then ballx=ballx-1 if v{0} && c=6 then ballx=ballx-1 : bally=bally-1 if v{0} && collision(ball,player1) then v{0}=0 : v{2}=1 if v{0} && collision(ball,playfield) then v{0}=0 if v{1} then goto missile1fired if v{3} then goto player0_hit_seq if v{5} then goto get_p0x goto minigame_main player1_hit_seq b=0 player1: %10101010 %01010100 %10111010 %01111100 %10101010 %01010100 end if v{3} then goto player0_hit_seq goto minigame_main get_p1x player1: %0111110 %1111111 %1111111 %0111110 %0001000 %0001100 end player1x=rand if player1x<20 then goto get_p1x if player1x>130 then goto get_p1x get_p1y player1y=rand if player1y<16 then goto get_p1y if player1y>88 then goto get_p1y goto minigame_main missile1fired if v{1} && h=5 then missile1y=missile1y-1 if v{1} && h=8 then missile1x=missile1x-1 : missile1y=missile1y+1 if v{1} && h=3 then missile1x=missile1x+1 if v{1} && h=2 then missile1x=missile1x+1 : missile1y=missile1y+1 if v{1} && h=1 then missile1y=missile1y+1 if v{1} && h=4 then missile1x=missile1x+1 : missile1y=missile1y-1 if v{1} && h=7 then missile1x=missile1x-1 if v{1} && h=6 then missile1x=missile1x-1 : missile1y=missile1y-1 if v{1} && collision(missile1,player0) then v{1}=0 : v{3}=1 if v{1} && collision(missile1,playfield) then v{1}=0 goto minigame_main player0_hit_seq a=0 player0: %10101010 %01010100 %10111010 %01111100 %10101010 %01010100 end goto minigame_main get_p0x player0: %0111110 %1111111 %1111111 %0111110 %0001000 %0001100 end player0x=rand if player0x<20 then goto get_p0x if player0x>130 then goto get_p0x get_p0y player0y=rand if player0y<16 then goto get_p0y if player0y>88 then goto get_p0y goto minigame_main bank 3 missile_fired_main if v{7} && d=1 then missile1y=missile1y-1 if v{7} && d=2 then missile1y=missile1y+1 if v{7} && d=3 then missile1x=missile1x-1 if v{7} && d=4 then missile1x=missile1x+1 if v{7} && d=5 then missile1x=missile1x-1 : missile1y=missile1y-1 if v{7} && d=6 then missile1x=missile1x+1 : missile1y=missile1y-1 if v{7} && d=7 then missile1x=missile1x-1 : missile1y=missile1y+1 if v{7} && d=8 then missile1x=missile1x+1 : missile1y=missile1y+1 if collision(missile1,playfield) then v{7}=0 : r=0 : AUDV0=0 if missile1x<17 then v{7}=0 : r=0 : AUDV0=0 if missile1y<5 then v{7}=0 : r=0 : AUDV0=0 if missile1x>140 then v{7}=0 : r=0 : AUDV0=0 if collision(missile1,player0) then byte3=byte3+$10 : v{7}=0 : v{5}=1 : y{1}=1 : r=0 : goto player0_intro bank1 goto 150 150 goto main bank1 got_treasure g=g+1 : drawscreen if g>0 then AUDV0=6 : AUDC0=12 : AUDF0=17 if g>20 then AUDF0=13 if g>40 then AUDF0=11 if g>60 then AUDF0=8 if g>99 then AUDV0=0 : a=0 : g=0 : b=b+1 : goto begin_level bank1 goto got_treasure game_over t=0 : goto g_o bank4 game_over_2 player0x=65 : player0y=67 : player1x=87 : player1y=64 missile0x=0 : missile0y=0 : scorecolor=204 NUSIZ0=$05 : NUSIZ1=$05 : COLUP0=64 : COLUBK=0 : AUDC0=12 : AUDV0=t drawscreen o=o+1 if p=1 && o>20 then AUDF0=13 : t=6 if p=1 && o>40 then AUDF0=14 if p=1 && o>60 then AUDF0=15 if p=1 && o>80 then AUDF0=16 if p=1 && o>99 then p=2 : o=0 if p=2 && o>0 then AUDF0=17 if p=2 && o>20 then AUDF0=18 if p=2 && o>30 then AUDF0=19 if p=2 && o>70 then t=0 : o=71 if switchreset then goto begin_game bank1 if switchselect then o=0 : p=1 : goto i_like_bacon bank1 goto game_over_2 hit_wall x=x+1 : AUDV0=6 : AUDC0=8 : AUDF0=15 : AUDV1=0 if x>60 then x=0 : AUDV0=0 : y{3}=0 : byte1=byte1-$10 : goto begin_level_2 bank1 player1: %10101010 %01010100 %10111010 %01111100 %10101010 %01010100 end goto main bank1 the_end_setup missile0x=0 : missile0y=0 player0x=90 : player0y=86 : r{0}=1 : AUDV0=0 : AUDV1=0 REFP0=0 player0: %0111110 %1111111 %1101011 %0111110 %0001000 %0001100 end the_end if y{0} then player0x=0 : player0y=0 COLUP0=30 : COLUPF=200 : COLUBK=128 if switchselect then goto i_like_bacon bank1 if r{0} then player1x=player1x+1 if player1x>130 then r{0}=0 : r{1}=1 : REFP0=0 if r{1} then player1y=player1y-1 if player1y<14 then r{1}=0 : r{2}=1 : REFP0=0 if r{2} then player1x=player1x-1 if player1x<21 then r{2}=0 : r{3}=1 : REFP0=8 if r{3} then player1y=player1y+1 if player1y>86 then r{3}=0 : r{0}=1 : REFP0=8 drawscreen goto the_end_pf bank4 bank 4 level_1 playfield: XXXXXXXXXXXXXXXXXXXXXX....XXXXXX X.......X.......X.X............X X.......X.......X.X............X X...X...X...X...XXX...XXXXXX...X X...X...X...X...X.....X..X.....X X...X...X...X...X.....X..X.....X X...X.......X...X.....X..X.....X X...X.......X...X.....X..X.....X X...XXXXXXXXX...X...XXXXXX...XXX X...........X...X............X.X X...........X...X............X.X XXXXXXXXX...X...XXXXXX....XXXX.X X...........X.............X....X X...........X.............X....X X...XXXXXXXXXXXXXXXXXXXXXXXXXXXX end goto begin_level_2 bank1 level_2 playfield: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X........X.............X.......X X........X.............X.......X X...X....X....XXXXXX...X...X...X X...X.........X........X...X...X X...X.........X........X...X...X X...XXXXXXXXXXX...XXXXXX...X...X X.............X...X........X...X X.............X...X........X...X XXXXXXXXXX....X...X....XXXXX...X X........X....X...X....X...X...X X........X....X...X....X...X...X X...X.........X........X...X.... X...X.........X........X...X.... X...XXXXXXXXXXXXXXXXXXXXXXXXXXXX end goto begin_level_2 bank1 level_3 playfield: XXXXXXXXXXXXXXXX X............... X............... X............... X....XXXXXXXXXXX X....X.........X X..............X X..............X X........X.....X XXXXXXXXXX.....X X..............X X..............X X..............X X....XXXXXXXXXXX X..............X X..............X end goto main bank1 level_4 playfield: XXXXXXXXXXXXXXXX X..............X X..............X X..............X X....XXXXXX....X X.........X....X X.........X....X X.........X....X XXXXX.....X....X X.........X..... X.........X..... X.........X..... X.....XXXXXXXXXX X.....X........X X..............X X..............X X.........X....X XXXXXXXXXXX....X ...............X ...............X ...............X XXXXXXXXXXXXXXXX end goto main bank1 level_5 playfield: XXXXXXXXXXXXXXXX X..............X X..............X X..............X X....XXXXXXX.... X..........X.... X...........X... X...........X... XXXXXXXXX...X... XXXX........XXXX X...........X... X...........X... X........XXXX... X...XXXXXXXXXXXX X..............X X..............X X..............X XXXXXXXXXXX....X ...............X ...............X ...............X XXXXXXXXXXXXXXXX end goto main bank1 level_6 playfield: XXXXXXXXXXXXXXXX X..............X X..............X X............... X.....X......... X.....XXXXXXXXXX X..............X X..............X X..............X XXXXXXXXXXXX...X X..........X...X X..........X...X X..........X...X X...XXXX...X...X X......X...X...X X......X...X...X X......X...X...X XXXX...X.......X .......X.......X .......X.......X .......X.......X XXXXXXXXXXXXXXXX end goto main bank1 level_7 playfield: XXXXXXXXXXXXXXXX X..............X X..............X X..............X X.....XXXXX....X X.....X........X X.....X........X X.....X........X XXX...X....XXXXX X.....X....XXXXX X.....XX...X.... X.....X....X.... X.....X....X.... X.....X....X...X X.....X....X...X X...XXX...XX...X X...X.X....X...X X...X.X....X...X X...X.X........X X...X.X........X X...X.X........X X...XXXXXXXXXXXX end goto main bank1 level_8 playfield: XXXXXXXXXXXXXXXX X.......X....... X............... X............... X...X.......XXXX X...XXXXXXXXXXXX X......X.......X X......X.......X X......X.......X XXXX...X.......X X......X...X...X X......X...X...X X......X...X...X X...XXXX...X...X X..........X...X X..........X...X X..........X...X XXXXXXXXXXXX...X X..............X X..............X X..............X X...XXXXXXXXXXXX end goto main bank1 level_9 playfield: XXXXXXXXXXXXXXXX X..X...........X X..X...........X X..X...........X XXXX....XXXX...X X..........X...X X..........X...X X....XX....X...X X....XX....X...X X..........X...X X..........X...X XXXX.....XX....X XXX.....X......X XX.....X.......X X.....X.......XX X.....X......XXX X.....X....XXXXX X.....X......... X.....X......... X.....X......... X.....X......... X.....XXXXXXXXXX end goto main bank1 level_10 playfield: XXXXXXXXXXXXXXXX X.......X....... X............... X...X..........X X...X........XXX X....XXXXXXXXXXX X..............X X..............X X..............X XXXXXXXXXXXX...X X..........X...X X..........X...X X..........X...X X...XXXX...X...X X...X......X...X X...X......X...X X...X......X...X X...X...XXXX...X X...X..........X X...X..........X X...X..........X X...XXXXXXXXXXXX end goto main bank1 level_11 playfield: XXXXXXXXXXXXXXXX X.......X....... X.......X....... X.......X....... X...X...X...XXXX X...X...X...X... X...X...X...X... X...X...X...X... X...X.......X... X...X.......X... X...X......X.... X...X......X.... X....XXXXXXXXXXX X..............X X..............X XXXXXXXXXXXX...X X......X.......X X..............X ...............X .....XXXXXXXXXXX .....X.......... XXXXXXXXXXXXXXXX end goto main bank1 level_12 playfield: XXXXXXXXXXXXXXXX X..............X X..............X X...XXXXXXXX...X X...X..........X X...X..........X X...X....XXXXXXX X...X..........X X...X..........X X...X..........X X...XXXXXXXX...X X..........X...X X..........X...X X..........X...X XXXXXXXX...X...X X......X...X...X X......X...X...X X..........X...X X..........X.... X...X......X.... X...X......X.... X...XXXXXXXXXXXX end goto main bank1 level_13 playfield: XXXXXXXXXXXXXXXX XX.............. X............... X..............X X...XXXXXXXXXXXX X...X..........X X...X..........X X...X..........X X...X...XXXX...X X...X...X......X X...X...X......X X...X...X...XXXX X.......X......X X.......X......X X.......X......X XXXXXXXXXXXX...X X..X.......X...X X..X.......X...X XXXX...X.......X .......X.......X .......X.......X XXXXXXXXXXXXXXXX end goto main bank1 title_pf playfield: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X..............................X X....XXX..XX...XXX.X..X.XXX....X X...X....X..X.X....X..X.X..X...X X...X.XX.X..X..XX..X..X.XXX....X X...X..X.X..X....X.X..X.X..X...X X....XX...XX..XXX...XX..XXX....X X..............................X X..............XX..............X X.............X..X.............X X...............X..............X X..............X...............X X.............XXXX.............X X..............................X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX end const pfres=16 goto title_screen bank1 g_o playfield: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X..............................X X.....XXX...XXX...X.X..XXXX....X X....X.....X...X.X.X.X.X.......X X....X.XXX.XXXXX.X.X.X.XXX.....X X....X...X.X...X.X...X.X.......X X.....XXX..X...X.X...X.XXXX....X X..............................X X.....XXX..X...X.XXXX.XXXX.....X X....X...X.X...X.X....X...X....X X....X...X.X...X.XXX..XXXX.....X X....X...X..X.X..X....X...X....X X.....XXX....X...XXXX.X...X....X X..............................X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX end goto game_over_2 bank3 minigame_pf playfield: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X..............XX..............X X..............XX..............X X....XXXXX.....XX.....XXXXX....X X........X............X........X X........X............X........X X........X............X........X X....X........XXXX........X....X X....X....................X....X X....X....................X....X X....XXXXX............XXXXX....X X..............XX..............X X..............XX..............X X..............XX..............X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX end goto minigame_setup bank2 the_end_pf playfield: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X..............................X X.......XXXXX.X...X.XXXXX......X X.........X...X...X.X..........X X.........X...XXXXX.XXX........X X.........X...X...X.X..........X X.........X...X...X.XXXXX......X X..............................X X.......XXXXX.XXXX..XXXX.......X X.......X.....X...X.X...X......X X.......XXX...X...X.X...X......X X.......X.....X...X.X...X......X X.......XXXXX.X...X.XXXX.......X X..............................X XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX end goto the_end bank3