10 DEFINTB-S:OPEN"GRP:"AS#1:X2=10:Y2=-10:T=.8:G=15:C=0:B$=CHR$(&B00010000):C$=CHR$(&B01111100):S2$=C$+C$+C$+C$+C$:SCREEN2,3,0:SPRITE$(1)=B$:SPRITE$(2)=S2$+S2$+S2$:SPRITE$(3)=S2$+S2$+S2$:SPRITE$(4)=S2$+S2$:SPRITE$(5)=S2$+S2$:SPRITE$(6)=S2$+S2$:IFQ=1THEN30
20 PLAY"t90s9o4g":DIMI(10),J(10),K(10),M(10):FORL=0TO9:READI(L),J(L),K(L),M(L):NEXT:DATA72,140,167,140,92,120,147,120,120,140,120,90,78,140,158,80,120,120,120,70,78,80,158,140,190,70,147,120,62,140,62,90,162,140,162,90,177,140,177,90
30 VX=X2:VY=Y2:B=0:PX=10:PY=170:AX=0:AY=1:COLOR15,1,1:CLS:LINE(251,70)-(260,175),,BF:LINE(0,70)-(4,175),,BF:LINE(0,176)-(260,178),,BF:PUTSPRITE1,(PX,PY),15,1:PUTSPRITE2,(I(C),J(C)),4,2:SOUND7,254:D$="O4cego5c":PUTSPRITE3,(K(C),M(C)),11,3
40 PUTSPRITE4,(123,180),1,4:PUTSPRITE5,(6,180),1,5:PUTSPRITE6,(235,180),1,6:SPRITE$(7)=B$:PSET(69,1),1:PRINT#1,"LEVEL","AMMO":PSET(105,1),1:PRINT#1,C+1:PSET(168,1),1:PRINT#1,G:IFC=10THENPLAYD$:SCREEN0:KEYOFF:PRINTTAB(250)"YOU WON!":PRINTTAB(250):END
50 D=STICK(0):IFVX>=15THENVX=14ELSEIFVX<=-1THENVX=0ELSEIFABS(VY)>=15THENVY=-14ELSEIFVY=1THENVY=-1ELSEIFD=1THENVY=VY-1ELSEIFD=5THENVY=VY+1ELSEIFD=3THENVX=VX+1ELSEIFD=7THENVX=VX-1ELSEIFSTRIG(0)THEN70
60 LINE(PX+8,PY)-((PX+8+VX),(PY-(-VY-1))),9:LINE(PX+8,PY)-((PX+8+VX),(PY-(-VY-1))),1:LINE(PX+7,PY)-((PX+7+VX),(PY-(-VY-1))),9:LINE(PX+7,PY)-((PX+7+VX),(PY-(-VY-1))),1:PUTSPRITE(7),(PX+VX,(PY-(-VY))),11,7:GOTO50
70 X2=VX:Y2=VY:PUTSPRITE(7),(0,0),0,7:FORI=0TO1000:PX=PX+VX*T:PY=PY+VY*T:VY=VY+AY*T:VX=VX+AX*T:SPRITEON:PUTSPRITE1,(PX,PY),15,1:ONSPRITEGOSUB100:IFPX>240THENVX=-VX:LINE(251,70)-(260,175),2,BF:B=B+1:PLAY"t90s2m6000o4c"
80 IFPY>=169THENVY=-VY:VY=VY+3:ELSEIFPX<=3THENVX=-VX:LINE(0,70)-(4,175),2,BF:B=B+1:PLAY"T90s2m6000O5C":IFB=2THENC=C+1:GOTO30
90 NEXT
100 COLOR15,1,8:SPRITEOFF:SOUND8,16:SOUND0,9:SOUND1,0:SOUND7,0:SOUND6,0:SOUND12,30:SOUND13,1:FORF=0TO900:NEXT:IFG<>0ORC=10THENG=G-1:GOTO30:ELSEIFG=0THENG=0:Q=1:CLOSE#1:KEYOFF:INPUT"GAME OVER->Try again?(Y) or (N)";A$:IFA$="y"ORA$="Y"THENGOTO10ELSEG=0:END