Listing of file='ARCADE' on disk='vmedia/best_of_BD_fules.wvd.zip'
# Sector 304, program filename = 'ARCADE' 0010 KEYIN D$,10,10 : PRINT HEX(03);"WHICH ARCADE GAME WOULD YOU LIKE" : PRINT "1. TIE FIGHTER" : PRINT "2. PINBALL" : PRINT "3. STOP" : PRINT TAB(32);HEX(0C0C0C0C); : INPUT Y : ON Y GOTO 720,20,580 0020 DIM A$(14)64,E$5,F$(4)64 : E$="o" 0030 PRINT HEX(03);TAB(20);"BASIC INSTRUCTIONS" : PRINT " TO START THE BALL PRESS ANY S.F. KEY. TO GET YOUR PADDLE PRESSAN Y KEY. TO GET A FREE BALL THE BALL HAS TO HIT THE DIAMOND IN"; 0040 PRINT "THE MIDDLE. TO GET A FREE GAME YOUR SCORE MUST BE OVER 7300. BE FORE THE GAME YOU WILL BE ASKED HOW MANY BALLS YOU WANT. ONLY A REPLY OF '3' OR '5' WILL BE ACCEPTED." 0050 KEYIN A$,60,60 : GOTO 50 0060 PRINT : INPUT "HOW MANY BALLS",K0 : IF K0=3THEN 80 : IF K0=5THEN 80 0070 K0=3 0080 L=13 : M=61 : A=8 : PRINT HEX(0306) 0090 INIT(80)A$() : INIT(8B)STR(A$(1),4,59) : FOR I=2TO 13 : STR(A$(I),4,1)=HEX(86) : NEXT I : INIT(80)STR(A$(1),1,3),STR(A$(14),1,3) : FOR I=2TO 13 : STR(A$(I),62,1)=HEX(86) : NEXT I 0100 FOR I=4TO 13 : STR(A$(I),60,3)=HEX(868086) : NEXT I 0110 PRINT HEX(03); : PRINT "WHICH PINBALL GAME" : PRINT "1. SPACE BALL" : PRINT "2. PINWARS" : PRINT "3. WANG's BEST (FOR NON-DISK PERSONEL)";HEX(0109090909090909090909 0909090909090909); : INPUT M6 : J8=0 : ON M6GOTO 120,130,140 0120 LIMITS F "ARCADE",W,Q1,U : FOR I=Q1-5 TO Q1-4 : DATA LOAD BA F(I,M9)F$() : FOR J=1TO 4 : A$((I-(Q1-6))*4+1+J)=F$(J) : NEXT J : NEXT I : GOTO 170 0130 LIMITS F "ARCADE",W,Q1,U : FOR I=Q1-3 TO Q1-2 : DATA LOAD BA F(I,M9)F$() : FOR J=1TO 4 : A$((I-(Q1-4))*4+1+J)=F$(J) : NEXT J : NEXT I : GOTO 170 0140 STR(A$(6),9,5)="OOOOO" : STR(A$(6),49,5)="OOOOO" : STR(A$(8),13,5)="OOOOO" : STR(A$(8),46,5)="OOOOO" : STR(A$(10),11,2)=HEX(832D) : STR(A$(10),51,2)="-\82" : STR(A$(9),25,1),STR(A$(9),32,1),STR(A$(9),39,1)="\81" 0150 STR(A$(12),7,1)=HEX(86) : STR(A$(12),27,1)="#" : STR(A$(12),37,1)="#" : STR(A$(12),57,1)=HEX(86) : STR(A$(13),7,1)=HEX(86) : STR(A$(13),26,1)="#" : STR(A$(13),38,1)="#" : STR(A$(13),57,1)=HEX(86) 0160 STR(A$(11),7,1)=HEX(86) : STR(A$(11),57,1)=HEX(86) 0170 PRINT HEX(03); 0180 L=13 : M=61 : A=8 : PRINT HEX(0106) : STR(A$(L),M,1)=HEX(80) : STR(A$(4),61,1)=HEX(80) 0190 INIT(8B)STR(A$(4),5,55) : FOR I=1TO 6 : H=INT(RND(1)*52)+5 : STR(A$(4),H,4)=HEX(80808080) : NEXT I : INIT(80)A$(14) 0200 GOSUB 440 0210 KEYIN J$,210,220 : GOTO 210 0220 KEYIN J$,230,230 : GOTO 240 0230 IF VAL(J$)=24THEN 550 : IF D5>0THEN 240 : D5=1 0240 IF INT(D5/2+.5)=1THEN 450 0250 ON AGOTO 260,290,300,330,340,350,360,390,400 : END 0260 A=1 : STR(A$(L),M,1)=HEX(80) : IF STR(A$(L+1),M-1,1)<>HEX(80)THEN 270 : L=L+1 : M=M-1 : GOSUB 440 : GOTO 220 0270 IF STR(A$(L+1),M-1,1)="\81"THEN 280 : J8=J8+INT(RND(1)*3)+50 : IF STR(A$(L+1),M+1,1)<>HEX(80)THEN 360 : GOTO 300 0280 L=L+1 : M=M-1 : GOTO 520 0290 STOP "2" 0300 A=3 : STR(A$(L),M,1)=HEX(80) : IF STR(A$(L+1),M+1,1)<>HEX(80)THEN 310 : L=L+1 : M=M+1 : GOSUB 440 : GOTO 220 0310 IF STR(A$(L+1),M+1,1)="\81"THEN 320 : J8=J8+INT(RND(1)*3)+9 : IF STR(A$(L+1),M-1,1)<>HEX(80)THEN 400 : GOTO 260 0320 L=L+1 : M=M+1 : GOTO 520 0330 STOP "4" 0340 STOP "5" 0350 STOP "6" 0360 A=7 : STR(A$(L),M,1)=HEX(80) : IF STR(A$(L-1),M-1,1)<>HEX(80)THEN 370 : L=L-1 : M=M-1 : GOSUB 440 : GOTO 220 0370 IF STR(A$(L-1),M-1,1)="\81"THEN 380 : J8=J8+INT(RND(1)*3)+50 : IF STR(A$(L+1),M-1,1)<>HEX(80)THEN 400 : GOTO 260 0380 L=L-1 : M=M-1 : GOTO 520 0390 A=8 : STR(A$(L),M,1)=HEX(80) : IF STR(A$(L-1),M,1)<>HEX(80)THEN 300 : L=L-1 : GOSUB 440 : GOTO 220 0400 A=9 : STR(A$(L),M,1)=HEX(80) : IF STR(A$(L-1),M+1,1)<>HEX(80)THEN 410 : L=L-1 : M=M+1 : GOSUB 440 : GOTO 220 0410 IF STR(A$(L-1),M+1,1)="\81"THEN 420 : J8=J8+INT(RND(1)*3)+50 : IF STR(A$(L-1),M-1,1)<>HEX(80)THEN 300 : GOTO 360 0420 L=L-1 : M=M+1 : GOTO 520 0430 STR(A$(4),61,1)="-" : RETURN 0440 STR(A$(L),M,1)=E$ : PRINT HEX(01);"S" : PRINT HEX(01);"SCORE=";J8,"BALLS LEFT =";K0-1;HEX(01); : MAT PRINT A$; : PRINT HEX(01); : IF L<4THEN 430 : IF D5=1THEN 460 : RETURN 0450 D5=D5+1 : IF D5>2THEN 460 : INIT(8B)STR(A$(14),8,22) : INIT(8B)STR(A$(14),35,22) : GOTO 250 0460 D5=0 : INIT(80)A$(14) : GOTO 250 0470 ON ERRORA$,B$GOTO 470 : IF A$="64"THEN 570 : IF A$="29"THEN 560 : IF K0-1<1THEN 480 : PRINT HEX(010A0A0A0A0A0A20202086);" YOU LOST A BALL" : K0=K0-1 : J8=J8+250 : FOR I=1TO 200 : NEXT I : GOTO 180 0480 PRINT HEX(030A0A0A0A0A0A0A0A); : J8=J8+250 0490 KEYIN D$,500,500 : IF J8>7300THEN 510 : PRINT HEX(0C);" GAME OVER ! SCORE = ";J8 : FOR I=1TO 80 : NEXT I : PRINT HEX(0C);TAB(62);" "; : FOR I=1TO 40 : NEXT I : GOTO 490 0500 PRINT HEX(0C); : INPUT " ANOTHER GAME, ANOTHER QUARTER",H1$ : J,U8=0 : IF STR(H1$,1,1)="Y"THEN 60 : GOTO 10 0510 PRINT HEX(0C);" YOU GOT OVER 7300" : PRINT " YOU GET A FREE GAME!" : J=0 : FOR I=1TO 400 : NEXT I : GOTO 70 0520 E$="=" : A=8 : GOSUB 440 : FOR I=1TO 200 : NEXT I : L=L-1 : U8=U8+1 : IF U8>2THEN 530 : E$="o" : GOTO 250 0530 K0=K0+1 : E$="o" : U8=0 : GOTO 250 0540 REM 131,132 0550 ON AGOTO 300,290,260,330,340,350,400,390,360 : END 0560 PRINT HEX(030A0A0A0A0A0A);TAB(20);"ONLY NUMBERS IDIOT!" : PRINT TAB(24);"TRY AGAIN!" : FOR I=1TO 300 : NEXT I : GOTO 110 0570 PRINT HEX(030A0A0A0A0A0A);TAB(18);"YOU IDIOT! YOU GOT NO DISK!" : PRINT TAB(20);"USE #3. I'LL START YOU." : FOR I=1TO 350 : NEXT I : GOTO 140 0580 DIM S1$(11)16 0590 S1$(1)=HEX(3A2D2D2D2D2D2D2D2D2D2D2D3A202020) 0600 S1$(2)=HEX(21205041535420484F50452021202020) 0610 S1$(3)=HEX(21205041535420435552452021202020) 0620 S1$(4)=HEX(2120504153542048454C502021202020) 0630 S1$(5)=HEX(2120202066726F6D2D20202021202020) 0640 S1$(6)=HEX(A1A0F2EFEDA0A6A0EAF5ECA0A1202020) 0650 S1$(7)=HEX(205C204220414E442044202F20202020) 0660 S1$(8)=HEX(20205C2046554C4553202F2020202020) 0670 S1$(8)=HEX(20205C2046554C4553202F2020202020) 0680 S1$(9)=HEX(2020205C20494E43202F202020202020) 0690 S1$(10)=HEX(202020205C202E202F20202020202020) 0700 S1$(11)=HEX(20202020205CA02F2020202020202020) 0710 SELECT P4 : PRINT HEX(030A);TAB(16);"THIS GAME WAS BROUGHT TO YOU BY:" : FOR I=1TO 11 : PRINT TAB(25);S1$(I) : NEXT I : FOR I=1TO 600 : NEXT I : GOTO 1310 0720 PRINT HEX(03); 0730 PRINT TAB(20);"BASIC INSTRUCTIONS"; : PRINT " SPEED IS HOW FAST THE TIE-FIGHTER MOVES. YOU OBVIOUSLY TRY TO DE STROY THE FIGHTER BEFORE IT DESTROYS YOU. YOU MOVE YOUR TARGETBY USING TH E NUMERIC KEYPAD."; 0740 PRINT " AN AVERAGE SPEED IS ABOUT 1.5. A VERY FAST SPEED WOULD BE ZERO AN D AN INCREDIBLY EASSSSY SPEED IS 3."; : T2=1 0750 PRINT " WHEN THE TIE-FIGHTER HITS THE HOOD IT EXTENSIVELY DAMMAGES YOURSH IT (SHIP THAT IS). IF HE HITS 5 TIMES YOU WILL BE DESTROYED."; 0760 PRINT " TO FIRE PRESS ANY S. F. KEY."; 0770 PRINT " SOME HELP WILL BE OFFERED BY THE COMMANDS IN THE UPPER LEFT- HA ND CORNER." : PRINT " DURING THE GAME THE FIGHTER MAY USE A CLOAKING DEVICE. WHEN"; 0780 PRINT "HE DOES IT WILL BE NECESSARY TO USE THE COMMANDS IN THE CORNER OF THE SCREEN." : PRINT 0790 PRINT HEX(06) : DIM A$(14)64 : INPUT "SPEED",K 0800 E$="<-\81->" 0810 J=INT(RND(1)*10)+1 : X=INT(RND(2)*59)+3 : K0,D4=0 : GOTO 850 0820 F=INT(RND(1)*10)+1 : IF F=1THEN 1190 0830 F=INT(RND(1)*7)+1 : IF F=1THEN 1280 0840 F=INT(RND(1)*13)+1 : IF F=1THEN 1300 0850 T3=T2 : IF INT(RND(1)*3)<>1THEN 860 : T2=INT(RND(1)*3)+1 : T3=T2 0860 ON T3GOTO 990,1000,1020,1010 : END 0870 INIT(20)A$() 0880 STR(A$(14),17,31)=HEX(8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8 B8B8B8B8B8B8B8B8B8B) : STR(A$(13),19,27)=HEX(8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8 B8B) 0890 STR(A$(12),21,23)=HEX(8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B8B) 0900 STR(A$(7),28,1)="-" : STR(A$(7),32,1)="+" : STR(A$(7),36,1)="-" 0910 STR(A$(5),32,1)=HEX(86) 0920 STR(A$(9),32,1)=HEX(86) 0930 GOTO 950 0940 O=1000 : GOTO 960 0950 IF J<1THEN 940 : IF J>11THEN 940 : IF X<3THEN 940 : IF X>62THEN 940 : O=0 : STR(A$(J),X-2,5)=E$ 0960 PRINT HEX(03); : MAT PRINT A$; : GOSUB 1120 : FOR I=1TO K*25 : NEXT I : A$="5" : A1=5 0970 KEYIN A$,980,1030 : GOTO 820 0980 IF A$<"2"THEN 820 : IF A$>"8"THEN 820 : CONVERT A$TO A1 : IF A1=5THEN 960 : ON A1/2GOTO 990,1000,1020,1010 : GOTO 820 0990 J=J-1 : GOTO 870 1000 X=X+2 : GOTO 870 1010 J=J+1 : GOTO 870 1020 X=X-2 : GOTO 870 1030 GOSUB 1170 : PRINT HEX(03); : MAT PRINT A$; : PRINT HEX(010D0A0A0A0A0A0A0A0A0A0A0A);TAB(35); : FOR A=1TO 5 : PRINT HEX(5C08080C); : NEXT A 1040 PRINT HEX(010D0A0A0A0A0A0A0A0A0A0A0A);TAB(27); : FOR A=1TO 4 : PRINT "/";HEX(0C); : NEXT A : PRINT "X"; : FOR I=1TO 40 : NEXT I : IF J=7THEN 1050 : GOTO 820 1050 IF X<30THEN 820 : IF X>34THEN 820 1060 STR(A$(J),X-2,5)=" " : PRINT HEX(03); : MAT PRINT A$; : PRINT HEX(010A0A0A0A0A0A0A) 1070 FOR I=X+1TO X+10STEP 2 : STR(A$(J),I,1)="-" : STR(A$(J),X+(I-X)*2,1)=">" : STR(A$(J),X+(I-X)*2-4,1)=" " : STR(A$(J),I-2,1)=" " 1080 STR(A$(J),X-I+X,2)="<-" : STR(A$(J),X-I+X+2,2)=" " : STR(A$(J-(I-X)/2),I,1)="\81" : STR(A$(J-(I-X)/2+1),I-2,1)=" " 1090 PRINT HEX(03); : MAT PRINT A$; : NEXT I : STR(A$(7),30,4)="BOOM" : PRINT HEX(03); : MAT PRINT A$; 1100 KEYIN A$,1100,1100 : PRINT HEX(01); : INPUT "ANOTHER TIE FIGHTER IS IN YOUR SECTOR. WILL YOU ATTACK",G$ : IF STR(G$,1,1)="Y"THEN 790 1110 GOTO 10 1120 IF J>7THEN 1130 : IF J<7THEN 1140 : IF X>34THEN 1150 : IF X<30THEN 1160 : PRINT HEX(01);"FIRE LASER CANNON!!"; : RETURN 1130 PRINT HEX(01);"DOWN LASER CANNON"; : RETURN 1140 PRINT HEX(01);"UP LASER CANNON"; : RETURN 1150 PRINT HEX(01);"RIGHT LASER CANNON"; : RETURN 1160 PRINT HEX(01);"LEFT LASER CANNON"; : RETURN 1170 K0=K0+1 : IF K0<10THEN 1180 : FOR I=1TO 100 : NEXT I : PRINT HEX(030A0A0A0A0A0A0A) : PRINT TAB(08);"LOW ON FIRE ARMS. TIME TO HEAD FOR BASE SHIP." : RETURN CLEAR : FOR I=1TO 400 : NEXT I : GOTO 10 1180 RETURN 1190 IF O=1000THEN 950 : PRINT HEX(03); : MAT PRINT A$; : IF X>32THEN 1240 : PRINT HEX(01); : FOR I=1TO J+1 : PRINT HEX(0A); : NEXT I : FOR I=J+1TO 11 : PRINT TAB(X+I-J-1);"." : NEXT I : IF (X+I-J-1)<21THEN 850 : IF (X+I-J-1)>44THEN 850 : D4=D4+1 : IF D4<5THEN 850 1200 FOR I=1TO 300 : NEXT I : PRINT HEX(030A0A0A0A0A0A0A);TAB(11);"THE TIE FIGHTER DESTROYED YOUR SHIP! " : KEYIN A$,1210,1210 1210 FOR I=1TO 450 : NEXT I : PRINT HEX(030A0A0A0A0A0A0A);TAB(3);"BUT LUCKILY YOU WERE HURLED, UNHARMED , INTO OUTER SPACE." : FOR I=1TO 450 : NEXT I 1220 PRINT HEX(030A0A0A0A0A0A0A);TAB(5);"YOU WERE THEN FOUND BY A BASE SHIP, B UT THEY NEED ..." : FOR I=1TO 450 : NEXT I : PRINT HEX(030A0A0A0A0A0A0A);TAB(5);"...VOLUNTEER WARRIORS. WILL YOU VOLUN TEER"; : INPUT G$ 1230 IF STR(G$,1,1)="Y"THEN 790 : FOR I=1TO 2 : FOR O=1TO 40 : NEXT O : PRINT HEX(030A0A0A0A0A0A0A);TAB(28);"BANG!!" : FOR K=1TO 20 : NEXT K : PRINT HEX(03); : NEXT I : FOR I=1TO 200 : NEXT I : PRINT HEX(030A0A0A0A0A0A0A);TAB(15);"THEY HAVE JUST ASSASINATED YOU." : FOR I=1TO 400 : NEXT I : GOTO 10 1240 PRINT HEX(01); : FOR I=1TO J+1 : PRINT HEX(0A); : NEXT I : FOR I=J+1TO 11 : PRINT TAB(X-I+J-1);"." : NEXT I : IF (X-I+J-1)<20THEN 850 : IF (X-I+J-1)>43THEN 850 : D4=D4+1 : IF D4>4THEN 1200 : GOTO 850 1250 FOR I=16TO 255 : BIN(A$)=I : KEYIN A$,1260,1260 : PRINT A$;" "; : HEXPRINT STR(A$,1,1); : PRINT " "; : NEXT I 1260 STOP 1270 FOR I=X+1TO X+10 : STR(A$(J),I,2)="->" : STR(A$(J),X-I+X,2)="<-" : PRINT HEX(03); : MAT PRINT A$; : NEXT I 1280 IF E$=" "THEN 850 : E$=" " : PRINT HEX(03); : MAT PRINT A$; : PRINT HEX(01);"THE TIE FIGHTER IS USING HIS CLOAKING DEVICE. USE THE ON-B OARD COMPUTER'S COMMANDS APEARING IN THE UPPER LEFT OF THE SCREEN." 1290 FOR I=1TO 400 : NEXT I : GOTO 950 1300 E$="<-\81->" : GOTO 850 1310 SELECT P