Listing of file='ALIEN' on disk='vmedia/best_of_BD_fules.wvd.zip'
# Sector 470, program filename = 'ALIEN' 0010 DIM C$(9)64,B$(9)64,E6$64,A$(14)64,A$4,O$64 : G1,L=2 : G=0 : P=1 : Q=29 : K0=8 : H5=8 : Z1=INT(RND(1)*38)+1+L : STR(A$(14),Q,5),E5$="-<2>-" : INIT(20)A$(),B$(),C$(),E6$ 0020 IF S0>0THEN 30 : PRINT HEX(030A0A0A0A0A0A);TAB(15);"THE FOLLOWING IS FROM THE LIBRARY OF" : B$=" B&D FULES INC." : ADD(B$,80) : PRINT TAB(25);B$ 0030 FOR I=1TO 10 : STR(B$(1),I*4-2,4)=HEX(1E1E) : NEXT I 0040 FOR I=1TO 10 : STR(B$(4),I*4-2,4)=HEX(6F6F) : NEXT I 0050 FOR I=1TO 10 : STR(B$(7),I*4-2,4)=HEX(3C3E) : NEXT I 0060 FOR K=2TO 8STEP 3 : FOR I=1TO 10 : STR(B$(K),I*4-2,4)=HEX(2F5C) : NEXT I : NEXT K 0070 FOR I=1TO 10 : STR(C$(1),I*4-2,4)=HEX(1818) : NEXT I 0080 FOR I=1TO 10 : STR(C$(4),I*4-2,4)=HEX(1313) : NEXT I 0090 FOR I=1TO 10 : STR(C$(7),I*4-2,4)=HEX(5B5D) : NEXT I 0100 PRINT HEX(03); : FOR K=2TO 8STEP 3 : FOR I=1TO 10 : STR(C$(K),I*4-2,4)=HEX(5C2F2020) : NEXT I : NEXT K : IF S0>0THEN 340 : PRINT HEX(03060A0A);" KEYIN TO BEGIN." : KEYIN U$,110,340 0110 Z=Z+1 : FOR I=1 TO 20 : NEXT I : IF Z>20 THEN 130 : PRINT HEX(01); : IF Z/2=INT(Z/2) THEN 120 : FOR I=1 TO 8 : PRINT TAB(Z);B$(I) : NEXT I : GOTO 110 0120 FOR I=1 TO 8 : PRINT TAB(Z);C$(I) : NEXT I : PRINT TAB(40);"PREVIOUS SCORE =";D0 : KEYIN A$,170,330 : GOTO 110 0130 FOR I=1 TO 100 : NEXT I : PRINT HEX(030A0A);TAB(22);"KEYIN TO BEGIN." : PRINT TAB(25);HEX(18182020181820201818) : PRINT TAB(25);HEX(2F5C20202F5C20202F5C) : PRINT : PRINT : PRINT : PRINT TAB(40);"PREVIOUS SCORE =";D0 0140 FOR Y=1TO 3 : PRINT HEX(010A0A0A0A0A0A0A0A0A0A0A0A0A0A);TAB(23+Y*4-2);"-<^>-";HEX(0C0C) : FOR U=1TO 10 : KEYIN A$,160,160 : PRINT TAB(23+Y*4-1);" " : PRINT HEX(0C0C);TAB(23+Y*4-1);"^";HEX(0C) : FOR P=1 TO 20 : NEXT P : NEXT U : PRINT HEX(010A0A0A);TAB(25+Y*3);" " : NEXT Y : FOR I=1 TO 300 : NEXT I 0150 Z=0 : GOTO 100 0160 U=10 : NEXT U : Y=3 : NEXT Y 0170 KEYIN A$,170,170 : B$=" ALIEN INVADERS" : ADD(B$,80) : PRINT HEX(03);TAB(22);B$ : PRINT TAB(21);"ABSIC INSTRUCTIONS" : PRINT : PRINT "OBJECT: DESTROY ALIENS BEFORE THEY TOUCH EARTH OR KILL YOU" : PRINT 0180 PRINT " ALL YA GOTTA DO IS MOVE YOUR MISSILE LAUNCHER AWAY FROM THE" 0190 PRINT HEX(0C);"ENEMIES BOMBS AND MOVE INTO A POSITION WHERE YOU CAN DESTR OY THEM. TO LAUNCH A MISSILE PRESS '2', TO MOVE PRESS '1' FOR LEFT AND '3' FOR RIGHT.";HEX(0C) 0200 PRINT " WHEN THE ALIENS TOUCH GROUND THE GAME IS OVER. YOU CAN SAVEYO URSELF BY DESTROYING THE BOTTOM ROW FIRST. THE GAME IS SCOREDBY PERCENTA GE, TO GET A HIGHER SCORE KILL MORE INVADERS." 0210 PRINT : PRINT TAB(45);"GOOD LUCK," : PRINT TAB(50);"B&D FULES INC." : I=0 : T=0 0220 FOR U=1TO 400 : NEXT U 0230 A$=HEX(1818) : B$=HEX(2F5C) : C$=HEX(5C2F) : IF T>3*19-1THEN 300 : IF T>2*19-1 THEN 280 : IF T>19-1 THEN 260 0240 I=I+1 : IF I>19THEN 250 : PRINT HEX(010A);TAB(I);A$ : PRINT TAB(I);B$ : T=T+1 : IF T/2<>INT(T/2)THEN 230 : B$=C$ : GOTO 240 0250 I=I-1 0260 I=I-1 : IF I<1THEN 270 : PRINT HEX(010A);TAB(I);A$;"AB " : PRINT TAB(I);B$;" " : T=T+1 : IF T/2<>INT(T/2)THEN 230 : B$=C$ : GOTO 260 0270 PRINT HEX(010A);" " : PRINT " " : FOR U=1TO 200 : NEXT U 0280 I=I+1 : IF I>19THEN 290 : PRINT HEX(010A);TAB(I);A$;"BA" : PRINT TAB(I);B$ : T=T+1 : IF T/2<>INT(T/2)THEN 230 : B$=C$ : GOTO 280 0290 I=I-1 0300 I=I-1 : IF I<1THEN 310 : PRINT HEX(010A);TAB(I);A$;" " : PRINT TAB(I);B$;" " : T=T+1 : IF T/2<>INT(T/2)THEN 230 : B$=C$ : GOTO 300 0310 PRINT HEX(010A);" " : PRINT " " 0320 KEYIN A$,330,330 : GOTO 320 0330 PRINT HEX(03); 0340 MAT COPY C$()<1,(K0)*64>TO A$()<(G)*64+L,(K0)*64-L> : GOTO 360 0350 MAT COPY B$()<1,(K0+1)*64>TO A$()<(G)*64+L,(K0+1)*64-L> 0360 KEYIN A$,460,370 0370 IF P0>0 THEN 490 0380 GOSUB 720 : STR(A$(1),1,5)=E5$ : STR(A$(14),Q,5)="-<^>-" : PRINT HEX(01);" SCORE =";S0;HEX(01); : MAT PRINT A$ : PRINT HEX(01);" SCORE =";S0;" " 0390 GOSUB 400 : T=T+1 : INIT(20)A$() : IF T/2=INT(T/2)THEN 340 : GOTO 350 0400 IF L<2 THEN 420 : IF P=1 THEN 410 : L=L-1 : P=2 : V=4 : RETURN 0410 IF L>24 THEN 440 : L=L+1 : P=1 : V=2 : RETURN 0420 G=G+1 : IF G+K0>13THEN 830 0430 P=1 : L=2 : INIT(20)A$() : RETURN 0440 G=G+1 : IF G+K0>13THEN 850 0450 P=2 : L=24 : INIT(20)A$() : RETURN 0460 ON VAL(A$)-48 GOTO 470,480,560 : GOTO 370 0470 IF Q<5 THEN 370 : STR(A$(14),Q,5)=" " : Q=Q-5 : GOTO 370 0480 P0=14 : D7=Q+2 0490 P0=P0-1 : IF P0<1 THEN 380 : IF STR(A$(P0),D7,1)=HEX(20)THEN 500 : GOTO 510 0500 STR(A$(P0+1),D7,1)=" " : IF P0<1THEN 380 : STR(A$(P0),D7,1)="^" : GOTO 380 0510 P0=P0-G : P0=(INT(P0/3+1))+(INT(P0/3))+(INT(P0*.09+.5))+(INT(P0*.17+.5)) : ON P0GOTO 520,520,830,530,530,830,540,540,830 : GOTO 830 0520 S0=S0+40 : GOTO 550 0530 S0=S0+35 : GOTO 550 0540 S0=S0+25 : GOTO 550 0550 FOR I=0TO 1 : STR(B$(P0+I),INT((D7-L)/4)*4+1,4),STR(C$(P0+I),INT((D7-L)/4)*4+1,4)=" " : NEXT I : P0=0 : GOTO 770 0560 IF Q>54THEN 370 : STR(A$(14),Q,5)=" " : Q=Q+5 : STR(A$(14),Q,5)="-<^>-" : GOTO 370 0570 IF G1>0THEN 790 0580 STR(A$(14),Q,5)="-<^>-" : IF C1=5THEN 590 : STR(A$(H5),Z1,1)=HEX(21) 0590 KEYIN A$,590,590 : PRINT HEX(03); : IF E6$<>" "THEN 600 : E6$=" THE INVADERS TOOK OVER THE EARTH." 0600 PRINT HEX(03); : MAT PRINT A$ : PRINT HEX(01);" SCORE =";S0;" " : FOR I=1TO 400 : NEXT I : STR(A$(7),15,37)="THIS HAS BEEN A B&D FULES PRODUCTION." : ADD(STR(A$(7),14+17,9),80) : MAT COPY A$()TO -A$() 0610 STR(A$(8),48,2)="HI" : A$(1)=E6$ : PRINT HEX(03); : MAT PRINT A$; : PRINT HEX(01);" SCORE =";S0;" " : D0=S0 0620 I,T=0 : FOR U=1TO 500 : NEXT U 0630 INIT(80)E6$ : STR(E6$,23,19)="G A M E O V E R !" 0640 A$=HEX(1818) : B$=HEX(2F5C) : C$=HEX(5C2F) 0650 I=I+1 : IF I>60THEN 660 : PRINT HEX(010A0A0A0A0A);STR(E6$,1,I);" ";A$;" " : PRINT TAB(I);" ";B$;" " : T=T+1 : IF T/2<>INT(T/2)THEN 640 : B$=C$ : GOTO 650 0660 PRINT HEX(0C0C);E6$;HEX(08080820202020); : I=0 0670 A$=HEX(1818) : B$=HEX(2F5C) : C$=HEX(5C2F) : KEYIN A$,680,700 0680 I=I+1 : IF I>61THEN 690 : PRINT HEX(010A0A0A0A0A0A0A0A);TAB(I);A$;" " : PRINT TAB(I);B$;" " : T=T+1 : IF T/2<>INT(T/2)THEN 670 : B$=C$ : GOTO 680 0690 FOR I=1TO 1000 : NEXT I 0700 P0,S0=0 : GOTO 10 0710 STR(A$(P0+1),Q+2,1)=" " : STR(A$(P0),Q+2,1)="^" : GOTO 380 0720 IF H5>12THEN 730 : H5=H5+1 : STR(A$(H5-1),Z1,1)=" " : STR(A$(H5),Z1,1)=HEX(21) : RETURN 0730 IF K0+G>11THEN 760 : IF C1=5THEN 740 : STR(A$(14),Z1,1)=HEX(21) : IF Z1<QTHEN 740 : IF Z1>Q+4THEN 740 : RETURN CLEAR : E6$=" YOU GOT BLOWN TO HELL!!" : GOTO 570 0740 STR(A$(H5+1),Z1,1)=" " : IF G+K0>11THEN 760 : C1=0 : H5=G+3*INT(RND(1)*K0/3)+1 0750 Z1=4*(INT(RND(1)*10)+1)+L-2 : IF STR(B$(H5-G),Z1-L,1)=" "THEN 750 : RETURN 0760 C1=5 : RETURN 0770 IF B$(K0)=" "THEN 780 : GOTO 390 0780 K0=K0-1 : IF K0<2THEN 10 : GOTO 770 0790 G1=G1-1 : CONVERT G1 TO STR(E5$,3,1),(#) : IF G1>0 THEN 800 : E5$="EMPTY" 0800 E6$=" " : GOSUB 740 : PRINT HEX(0A0A0A0A0A0A0A0A0A0A0A0A0A) 0810 FOR I=1TO 4 : PRINT TAB(Q-I);"-< "; : FOR C=1TO I*2 : PRINT " "; : NEXT C : PRINT ">-";HEX(0D) : NEXT I : PRINT HEX(01); : FOR I=1TO 14 : PRINT HEX(01); : MAT PRINT A$ : PRINT HEX(0C);TAB(Q-4);"-< BOOM! >-" : PRINT HEX(01); : FOR K=1TO I-1 : PRINT : NEXT K : PRINT TAB(2);"Y " : PRINT "-<^>- " : FOR O=1TO 5 : NEXT O : NEXT I 0820 PRINT HEX(0C0C);TAB(3);" " : PRINT : FOR I=1TO QSTEP 2 : PRINT HEX(0C);TAB(I-2);"Y -<^>-" : FOR O=1TO 15 : NEXT O : NEXT I : GOTO 380 0830 IF B$(K0)=" "THEN 840 : GOTO 580 0840 K0=K0-1 : GOTO 430 0850 IF B$(K0)=" "THEN 860 : GOTO 580 0860 K0=K0-1 : GOTO 450