8-Bit Software Online Conversion

:2.$.SLATTER - Listing

10TIME=0:CLEAR:PROCinit 20X2=0:Y2=0:X=100:Y=t:yas=1:PROCgcol: PROCscore:PROCdraw(q,X,Y) 30PROCtime:PROCgame:GOTO30:END 40DEFPROCinit:t=575:X=100:Y=t:yas=1:s c=0:m=((t-300)/25)+3:DIM gr(11,m):ENDPRO C 50DEFPROCdraw(s,x11,y11):VDU5:GCOL0,s :MOVE x11,y11:VDU81:ENDPROC 60DEFPROCgame:GT$=INKEY$(1):OSCLI"FX2 1,0":IF GT$="" PROCcheck:PROCdown 70IF GT$<>"" PROCdraw(0,X,Y) ELSE GCO L0,q:PROCcheck 80IF GT$="Z" OR GT$="z" X=X-50 ELSE I F GT$="X" OR GT$="x" X=X+50 ELSE IF GT$= "P" OR GT$="p" PROCpause ELSE IF GT$="S" OR GT$="S" PROCs 90IF X<=100 X=100 ELSE IF X>=600 X=60 0 100PROCdraw(q,X,Y):ENDPROC 110DEFPROCgcol:q=RND(7):GCOL0,q:ENDPRO C 120DEFPROCdown:PROCdraw(0,X,Y):IF Y=30 0 PROCstore:PROCcheck:GOTO20 ELSE yas=ya s+1:Y=Y-25:ENDPROC 130DEFPROCstore:PROCscore:PROCdraw(q,X ,Y):X2=(X/50)-1:Y2=yas:X9=X2:Y9=Y2:gr(X9 ,Y9)=q:PROCsat:ENDPROC 140DEFPROCcheck:X2=(X/50)-1:Y2=yas:IFg r(X2,Y2)<>0 AND yas=1 CHAIN"SLAT2" 150X2=(X/50)-1:Y2=yas:IF gr(X2,Y2+1)=0 ENDPROC ELSE PROCstore:GOTO20:ENDPROC 160DEFPROCscore:VDU4:COLOUR1:PRINTTAB( 13,4)"SCORE":COLOUR6:PRINTTAB(13,6);sc:E NDPROC 170DEFPROCsat:IF X9>=9 X9=9 180PROCx(gr(X9,Y9),gr(X9+1,Y9),gr(X9+2 ,Y9),X9):IF X9<=3 X9=3 190PROCx(gr(X9-2,Y9),gr(X9-1,Y9),gr(X9 ,Y9),X9-2):PROCx(gr(X9-1,Y9),gr(X9,Y9),g r(X9+1,Y9),X9-1):ENDPROC 200DEFPROCdel(X4,Y4):sc=sc+(100*a):X5= (X4+1)*50:PROCdraw(0,X5,Y):PROCdraw(0,X5 +50,Y):PROCdraw(0,X5+100,Y):gr(X4,Y4)=0: gr(X4+1,Y4)=0:gr(X4+2,Y4)=0:VDU7:PROCsco re:ENDPROC 210DEFPROCpause:ET=TIME:VDU4:COLOUR1:P RINTTAB(1,30)"PAUSE":PROCnoise 220HY$=INKEY$(1):IF HY$="P" OR HY$="p" PRINTTAB(1,30)" ":TIME=ET:ENDPROC E LSE GOTO 220 230DEFPROCs:IF X=600 X=100:ENDPROC ELS E IF X=100 X=600:ENDPROC 240DEFPROCnoise:FORI%=1TO3:SOUNDI%,7,I %*48,1:NEXT:ENDPROC 250DEFPROCx(a,b,c,X10):IF a=0 AND b=0 AND c=0 ENDPROC ELSE IF a=b AND b=c PROC del(X10,Y9):ENDPROC ELSE ENDPROC 260DEFPROCtime:VDU4:SEC=(TIME DIV 100) MOD 60:MIN=(TIME DIV 6000)MOD 60:PRINTTA B(1,26)"TIME:":PRINTTAB(1,27)"";MIN;" MI NS" 270IFSEC<10 PRINTTAB(1,28)" ";SEC;" SE CS":GOTO290 280PRINTTAB(1,28)"";SEC;" SECS" 290IF MIN=4 CHAIN"SLAT2":ENDPROC ELSE VDU5:ENDPROC