8-Bit Software Online Conversion

:2.$.SAT - Listing

10MODE2 20ch=0:K=100:sc=0:dm=0 30tm=10:lv=1:lt=1000 40VDU23;8202;0;0;0; 50PROCenv 60y=1 70VDU5:d1=10:d2=1000 80GCOL0,y 90 MOVE d1,d2:PRINT"LEVEL ";lv 100 MOVE d1,d2-150:PRINT"MAX TIME :";t m;" SECS" 110 MOVE d1,d2-300:PRINT"SCORE : ";sc 120IF ch=0 ch=1:y=3:d1=d1+8:d2=d2-6:GO TO 80 130FORe=1TO10:SOUND 7,1,90,1:FORy=1TO2 00:NEXTy:NEXT:G$=INKEY$(1000):CLS 140ch=0:y=1:VDU4 150PROCgrid 160PROCstars 170PROCbuild 180PROCman 190END 200DEFPROCgrid 210COLOUR1:PRINTTAB(0,0)"SCORE :";sc 220COLOUR2:PRINTTAB(0,30)"DAMAGE : ";d m 230 IF sc>=lt CLS:dm=dm-10:lt=lt+1000: lv=lv+1:tm=tm-1:GOTO70:ENDPROC 240X=0:Y=0:GCOL0,4 250C1=0:C2=100 260MOVE X,Y+100:DRAW X+1300,Y+100 270DRAW X+700,Y+300 280DRAW X,Y+100 290GCOL0,7:MOVE X,Y+75:DRAW X+1300,Y+7 5:MOVE 0,900:DRAW 1300,900 300 PROCdraw 310ENDPROC 320DEFPROCman:X2=0:X3=100 330TIME=0 340SEC=(TIME DIV 100)MOD 60:PRINTTAB(0 ,2)"TIME :";SEC;" SECS" 350COLOUR 2:PRINTTAB(0,30)"DAMAGE : "; dm 360IF dm>=250 PROCdie 370 IF SEC>=tm dm=dm+1 380GCOL0,6 390MOVEX2,Y+100:DRAW X+700,Y+300 400DRAW X3,Y+100:DRAW X2,Y+100 410 GT$=INKEY$(1) 420IF GT$="" GOTO460 430GCOL0,4:MOVEX2,Y+100:DRAW X+700,Y+3 00:DRAW X3,Y+100:DRAW X2,Y+100 440SOUND &11,2,6,1:SOUND &12,2,6,1:SOU ND &13,2,6,1 450*FX15,1 460 IF GT$="X" OR GT$="x" PROCright 470 IF GT$="Z" OR GT$="z" PROCleft 480 IF GT$=CHR$(13) PROCfire 490p=RND(20-lv) 500IF p=1 MOVE x1+50,y1+15:DRAW x1+50, 200:dm=dm+1:PROCblow 510 GOTO 340 520ENDPROC 530DEFPROCright:X2=X2+100 540 IF X2>=1200 X2=1200:X3=1300:GOTO57 0 550 X3=X3+100 560 C1=C1+K:C2=C2+K 570ENDPROC 580DEFPROCleft:X2=X2-100 590 IF X2<=0 X2=0:X3=100:GOTO 620 600 X3=X3-100 610 C1=C1-K:C2=C2-K 620ENDPROC 630DEFPROCfire:GCOL0,1 640*FX15,1 650SOUND &10,1,100,10 660MOVEX2,Y+100:DRAW X+700,Y+300:DRAW X3,Y+100:DRAW X2,Y+100 670PLOT85,X+700,Y+300 680FORT=1TO100:NEXT 690GCOL0,0:MOVEX2,Y+100:DRAW X+700,Y+3 00:DRAW X3,Y+100:DRAW X2,Y+100:PLOT85,X+ 700,Y+300:GCOL0,4:MOVEX2,Y+100:DRAW X+70 0,Y+300:DRAW X3,Y+100:DRAW X2,Y+100 700GCOL0,1 710IF C1>600 X7=(1000-C1-C1)+C2 720IF C1<=600 X7=(1300-C1-C1)+C2 730MOVE700,300:DRAW X7,y1:DRAW X7+100, y1:DRAW 700,300 740PLOT85,X7,y1:GCOL0,0:MOVE700,300:DR AW X7,y1:DRAW X7+100,y1:DRAW 700,300:PLO T85,X7,y1 750PLOT85,X7,y1:GCOL0,0:MOVE700,300:DR AW X7,y1:DRAW X7+100,y1:DRAW 700,300:PLO T85,X7,y1 760PRINTTAB(0,0)"SCORE :";sc 770GCOL0,0:FORY7=300 TO 775 STEP 100:M OVE X7,Y7:DRAW X7+125,Y7:DRAW X7+125,Y7+ 100:DRAW X7,Y7+100:DRAW X7,Y7:PLOT85,X7+ 125,Y7+100:PLOT85,X7+125,Y7:NEXT 780IF POINT(x1,y1)=0 AND POINT(x1+100, y1)=0 AND POINT(x1,y1+50)=0 AND POINT(x1 +100,y1+50)=0 AND POINT(x1+50,y1)=0 AND POINT(x1+50,y1+50)=0 sc=sc+(l*10):FORT=1 TO10:j=RND(8):GCOL0,j:PLOT69,X7+RND(125) ,300+RND(475):NEXT 790IF POINT(x1,y1)=0 AND POINT(x1+100, y1)=0 AND POINT(x1,y1+50)=0 AND POINT(x1 +100,y1+50)=0 AND POINT(x1+50,y1)=0 AND POINT(x1+50,y1+50)=0 x10=x1-50:FORy=1TO2 0:GCOL0,RND(7):PLOT69,x10+RND(100),RND(5 0)+y1:NEXT:PROCexplode 800IF POINT(x1,y1)=0 AND POINT(x1+100, y1)=0 AND POINT(x1,y1+50)=0 AND POINT(x1 +100,y1+50)=0 AND POINT(x1+50,y1)=0 AND POINT(x1+50,y1+50)=0 GCOL0,0:FORy=1TO50: NEXT:MOVE x10,y1:DRAW x10+100,y1:DRAWx10 +100,y1+50:DRAW x10,y1+50:DRAW x10,y1 810IF POINT(x1,y1)=0 AND POINT(x1+100, y1)=0 AND POINT(x1,y1+50)=0 AND POINT(x1 +100,y1+50)=0 AND POINT(x1+50,y1)=0 AND POINT(x1+50,y1+50)=0 PLOT85,x10+100,y1+5 0:PLOT85,x10+100,y1:PROCbuild 820ENDPROC 830DEFPROCbuild:TIME=0 840FORh=1TO5:SOUND 8,1,4,1:NEXT 850COLOUR1:PRINTTAB(0,0)"SCORE :";sc 860COLOUR2:PRINTTAB(0,30)"DAMAGE : ";d m 870 IF dm>=250 PROCdie 880IF sc>=lt CLS:dm=dm-10:lt=lt+1000:l v=lv+1:tm=tm-1:GOTO70:ENDPROC 890y1=RND(225)+500:x2=RND(10):IF x2>=4 AND x2<=6 GOTO 890 ELSE IF x2=10 GOTO 8 90 ELSE x1=(x2*100)+100 900l=RND(6)+8 910GCOL0,7 920 MOVE x1+40,y1:DRAW x1+60,y1:DRAW x 1+60,y1+50:DRAW x1+40,y1+50:DRAW x1+40,y 1:PLOT85,x1+60,y1+50:PLOT85,x1+60,y1 930GCOL0,l 940 MOVE x1,y1+15:DRAW x1+40,y1+15:DRA W x1+40,y1+35:DRAW x1,y1+35:DRAW x1,y1+1 5 950PLOT85,x1+40,y1+35:PLOT85,x1+40,y1+ 15 960 MOVE x1+60,y1+15:DRAW x1+100,y1+15 :DRAW x1+100,y1+35:DRAW x1+60,y1+35:DRAW x1+60,y1+15 970PLOT85,x1+100,y1+35:PLOT85,x1+100,y 1+15 980ENDPROC 990DEFPROCenv:ENVELOPE 3,1,0,0,0,0,0,0 ,-126,-2,0,-1,126,80:ENVELOPE 1,1,0,0,0, 0,0,0,-126,-2,0,-1,126,80:ENVELOPE2,1,0, 0,0,0,0,0,-126,-2,0,-1,126,80:ENVELOPE4, 1,0,0,0,0,0,0,-126,-2,0,-1,126,80 1000ENVELOPE 8,0,-128,127,19,35,68,200, 2,3,-10,24,110,120:ENVELOPE 12,8,1,-1,1, 1,1,1,121,-10,5,-2,120,120:ENVELOPE 7,0, 0,1,1,1,1,1,121,-10,0,-2,120,120:ENDPROC 1010DEFPROCstars 1020FORT=1TO100:g=RND(7) 1030GCOL0,g:PLOT69,RND(1300),RND(400)+5 00:NEXT:ENDPROC 1040DEFPROCexplode:SOUND &10,1,100,20:E NDPROC 1050DEFPROCblow:x10=0:FORh=1TO50:NEXT:G COL0,0:MOVE x1+50,y1+15:DRAW x1+50,200:x 10=x1 1060GT$=INKEY$(1): IF GT$="X" OR GT$="x " PROCright ELSE IF GT$="Z" OR GT$="z" P ROCleft ELSE IF GT$=CHR$(13) PROCfire 1070x10=x10-50:FORy=1TO20:GCOL0,RND(7): PLOT69,x10+RND(100),RND(50)+200:NEXT 1080 PROCexplode:GCOL0,0:FORy=1TO100:NE XT 1090 MOVE x10,200:DRAW x10+100,200:DRAW x10+100,250:DRAW x10,250:DRAW x10,200:PL OT85,x10+100,250:PLOT85,x10+100,200 1100PROCdraw 1110ENDPROC 1120DEFPROCdraw:GCOL0,4:FORT=0 TO 1300 STEP 100:MOVE T,Y+100:DRAW X+700,Y+300:N EXT:X1=1300:X=0:FORT=100 TO 300 STEP 25: MOVE X,T:DRAW X1,T:X=X+85:X1=X1-75:NEXT: X=0:ENDPROC 1130DEF PROCdie 1140CLS 1150CLG 1160PRINT"DAMAGE ABOVE 250" 1170PRINT 1180PRINT"YOU ARE SPACE DEBRIS" 1190PRINT 1200PRINT"RETURN TO RESTART" 1210PRINT 1220*FX15 1230A=GET 1240CLEAR:RUN 1250ENDPROC