10 CLEAR:KEY OFF:WIDTH 80:SCREEN 0,0,0:COLOR 3,0,0:LOCATE 1,1,0 110 FOR A=1 TO 9:ON KEY(A) GOSUB 410:KEY(A) ON:NEXT 120 KEY(10) ON:DEF SEG:POKE 106,0:ON KEY(10) GOSUB 3580:XLIN=1:XPOS=1 130 DEFINT A-C:DEFSTR P,Z:DIM A(20),B(40),PV(40),PZ(81),VL(81),TBL(1,50),PL(1),T(1),MATCH(1),KEEP(1,21) 140 PTR="$$##,###.##" 150 GOSUB 1140 160 GOSUB 420 170 COLOR 3,0:GOSUB 630 180 IF FLAG=2 THEN GOSUB 1750:GOTO 1360 190 IF FLAG=1 THEN GOTO 1940 200 GOTO 170 210 FOR A=1 TO 20 220 RANDOMIZE(VAL(RIGHT$(TIME$,2))) 230 A(A)=(RND*80):IF A(A)=0 THEN 230 240 FOR B=1 TO A-1 250 IF A(B)=A(A) THEN B=A:A=A-1 260 NEXT B 270 SC=FIX(RND*89)+10 280 NEXT A 290 B(0)=1 300 FOR A=1 TO 20 310 C=RND*40 320 RANDOMIZE(VAL(RIGHT$(TIME$,2))) 330 IF B(C)=0 THEN B(C)=A(A) ELSE 310 340 C=RND*40 350 IF B(C)=0 THEN B(C)=A(A) ELSE 340 360 NEXT A 370 FOR A=1 TO 40:READ PV(A):NEXT 380 FOR A=1 TO 80 390 READ PZ(A),VL(A) 400 NEXT A 410 RETURN 420 CLS:COLOR 4,0:LOCATE 1,3:PRINT"É" 430 FOR A=4 TO 74 STEP 15 440 LOCATE 1,A:PRINT STRING$(14,"Í")"Ë" 450 NEXT A:LOCATE 1,78:PRINT"»" 460 FOR A=2 TO 15 STEP 2 470 FOR B=3 TO 74 STEP 15 480 LOCATE A,B:PRINT"º"; 490 NEXT B:LOCATE A,78:PRINT"º": LOCATE A+1,3:PRINT"Ì"STRING$(15,"Í") 500 FOR B=18 TO 74 STEP 15 510 LOCATE A+1,B:PRINT"Î"STRING$(15,"Í") 520 NEXT B:LOCATE A+1,78:PRINT"¹" 530 NEXT A 540 FOR B=3 TO 74 STEP 15 550 LOCATE 16,B:PRINT"º"; 560 NEXT B:LOCATE 16,78:PRINT"º": LOCATE A+1,3:PRINT"Ì"STRING$(15,"Í") 570 LOCATE 17,3:PRINT"È" 580 FOR A=4 TO 74 STEP 15 590 LOCATE 17,A:PRINT STRING$(14,"Í")"Ê" 600 NEXT A:LOCATE 17,78:PRINT"¼" 610 LOCATE 25,25:COLOR 0,7:PRINT" Strike To Leave This Game ";:COLOR 3,0 620 RETURN 630 C=0 640 FOR A=2 TO 17 STEP 2 650 FOR B=2 TO 74 STEP 15 660 C=C+1:IF B(C)=0 THEN LOCATE A,B+2:PRINT SPC(14):GOTO 680 670 LOCATE A,B+2:COLOR 0,7:PRINT" "PV(C)" ";:COLOR 3,0 680 NEXT B 690 NEXT A 700 FOR X=20 TO 23:LOCATE X,1:PRINT SPC(79);:NEXT 710 HOLD=0 720 COLOR 15,0:LOCATE 20,23:PRINT PL(T)", What Is Your FIRST Choice? "; 730 GOSUB 920:IF A=0 THEN GOSUB 990:GOSUB 1110 ELSE 720 740 HOLD=GS 750 LOCATE 20,1:PRINT SPC(79) 760 COLOR 15,0:LOCATE 20,23:PRINT PL(T)", What Is Your SECOND Choice? "; 770 GOSUB 920:IF A=0 THEN GOSUB 990 ELSE 760 780 IF VL(B(HOLD))=-3 THEN SWAP HOLD,GS:GOTO 830 790 IF VL(B(GS))=-3 THEN 830 800 IF B(GS)=B(HOLD) THEN 830 810 LOCATE 20,23:PRINT" SORRY "PL(T)", But No Match "; 820 FOR X=1 TO 1500:NEXT:T=T(T):RETURN 830 IF VL(B(HOLD))=-2 THEN 1540 840 IF VL(B(HOLD))=-1 THEN 1420 850 TBL(T,Q(T))=B(HOLD) 860 B(GS)=0:B(HOLD)=0 870 LOCATE 20,22:PRINT" ALLRIGHT, A Match !!";:PRINT SPC(25) 880 FOR A=1 TO 6:SOUND 2000,1:SOUND 1000,1:NEXT A 890 D=0:Q(T)=Q(T)+1 900 FOR A=0 TO Q(T):D=D+VL(TBL(T,A)):NEXT A 910 GOSUB 3320:GOTO 2470 920 GS=0 930 GOSUB 3380 940 FOR A=1 TO 40:IF P1=PV(A) THEN GS=A:A=0 ELSE NEXT:GOTO 970 950 IF GS=HOLD THEN 970 960 IF B(GS)<>0 THEN RETURN 970 LOCATE 20,23:PRINT"Invalid Choice. Please Try Again "PL(T);:PRINT SPC(4) 980 GOSUB 1850:LOCATE 20,10:PRINT SPC(60):RETURN 990 RW=(INT((GS-1)/5)+1)*2 1000 XX=36 1010 IF GS<36 THEN XX=31 1020 IF GS<31 THEN XX=26 1030 IF GS<26 THEN XX=21 1040 IF GS<21 THEN XX=16 1050 IF GS<16 THEN XX=11 1060 IF GS<11 THEN XX=6 1070 IF GS<6 THEN XX=1 1080 COL=(GS-XX)*15 1090 COLOR 11,0:LOCATE RW,COL+4:PRINT USING "&";PZ(B(GS));:COLOR 3,0 1100 RETURN 1110 IF VL(B(GS))<0 THEN 1130 1120 LOCATE 22,25:PRINT" Worth ";:PRINT USING PTR;VL(B(GS)) 1130 RETURN 1140 CLS:COLOR 15,0:LOCATE 2,27:PRINT" M A T C H 1150 LOCATE 6,23:PRINT"Would You Like Instructions? ":COLOR 3,0 1160 GOSUB 1270:IF Z="Y" OR Z="y" THEN GOSUB 2030:GOTO 1180 1170 IF Z<>"n" AND Z<>"N" THEN 1160 1180 LOCATE 10,25:PRINT"And Then Strike Enter Key" 1185 LOCATE 6,20:PRINT"Player #1, Please Enter Your First Name "; 1190 GOSUB 3670:PL(1)=ZA 1200 LOCATE 8,20:PRINT"Player #2, Please Enter Your First Name "; 1210 GOSUB 3670:PL(0)=ZA 1220 T(0)=1:T(1)=0 1230 LOCATE 10,20:PRINT"One Moment While I Generate A Game Board 1240 GOSUB 210 1250 RETURN 1260 LOCATE 25,27:COLOR 14,0:PRINT"Strike Any Key To Continue";:COLOR 3,0 1270 Z=INKEY$:IF Z="" THEN 1270 ELSE RETURN 1280 FOR A=1 TO 39 1290 IF B(A)=0 THEN 1330 1300 FOR B=A+1 TO 40 1310 IF B(A)=B(B) THEN 1350 1320 NEXT B 1330 NEXT A 1340 FLAG=1 1350 RETURN 1360 CLS:LOCATE 1,25:PRINT PL(T)" These Are Your Prizes 1370 GOSUB 1640 1380 LOCATE C+1,43:PRINT STRING$(12,"Í") 1390 LOCATE C+2,20:PRINT"Grand Total Of":LOCATE C+2,44:PRINT USING PTR;D 1400 LOCATE 23,25:PRINT"Strike Any Key To Continue"; 1410 GOSUB 1270:GOTO 1860 1420 B(GS)=0:B(HOLD)=0 1430 IF Q(T(T))=0 THEN LOCATE 23,23:PRINT PL(T(T))" Has No Prizes To Take ": GOTO 900 1440 GOSUB 1850:CLS 1450 T=T(T):GOSUB 1640:T=T(T) 1460 LOCATE 21,23:PRINT" Which Price Would You Like 1470 LOCATE 22,35:PRINT"To Take, "PL(T); 1480 GOSUB 3510:B=VAL(Z) 1490 IF B<0 OR B>Q(T(T))-1 THEN LOCATE 23,30:PRINT"Please Try Again "PL(T)" ":FOR X=1 TO 2000:NEXT:LOCATE 23,10:PRINT SPC(60):GOTO 1480 1500 LOCATE 22,1:PRINT SPC(79);:LOCATE 24,1:PRINT SPC(79); 1510 TBL(T,Q(T))=TBL(T(T),B) 1520 TBL(T(T),B)=0:Q(T)=Q(T)+1 1530 GOTO 1620 1540 B(GS)=0:B(HOLD)=0 1550 IF Q(T)=0 THEN LOCATE 23,32:PRINT PL(T)" Has No Prizes To Lose ":GOTO 900 1560 GOSUB 1850:CLS:GOSUB 1640 1570 LOCATE 21,30:PRINT"Which Prize Would You Like 1580 LOCATE 22,35:PRINT"To Lose, "PL(T); 1590 GOSUB 3510:B=VAL(Z) 1600 IF B<0 OR B>Q(T)-1 THEN LOCATE 22,23:PRINT" Please Try Again "PL(T)":FOR X=1 TO 2000:NEXT:LOCATE 22,10:PRINT SPC(60):GOTO 1520 1610 TBL(T(T),Q(T(T)))=TBL(T,B):TBL(T,B)=0:Q(T(T))=Q(T(T))+1 1620 B(GS)=0:B(HOLD)=0 1630 GOSUB 3320:GOTO 420 1640 LOCATE 2,20:PRINT"Prize Value 1650 LOCATE 3,20:PRINT STRING$(35,"Í"):C=4:D=0 1660 FOR A=0 TO Q(T)-1 1670 C=C+1 1680 A$=SPACE$(18) 1690 LSET A$=PZ(TBL(T,A)) 1700 LOCATE C,23:PRINT A;:PRINT USING "&";A$; 1710 PRINT USING PTR;VL(TBL(T,A)) 1720 D=D+VL(TBL(T,A)) 1730 NEXT A 1740 RETURN 1750 C=0 1760 FOR A=2 TO 17 STEP 2 1770 FOR B=0 TO 72 STEP 15 1780 C=C+1:IF B(C)=0 THEN 1800 1790 LOCATE A,B+4:PRINT USING "&";PZ(B(C)) 1800 NEXT B 1810 NEXT A 1820 LOCATE 23,1:PRINT SPC(79); 1830 LOCATE 23,24:PRINT"Strike Any Key To See Your Prizes" 1840 GOTO 1270 1850 FOR A=1 TO 1500:NEXT A:RETURN 1860 GOSUB 1850:CLS 1870 MATCH(T)=MATCH(T)+1 1880 LOCATE 1,35:PRINT"The Score Is 1890 LOCATE 2,25:PRINT PL(0)" Has Won "MATCH(0) 1900 LOCATE 3,25:PRINT PL(1)" Has Won "MATCH(1) 1910 LOCATE 8,35:COLOR 14,0 1920 IF MATCH(0)=2 THEN PRINT PL(0)" Wins !!!!":GOTO 2240 1930 IF MATCH(1)=2 THEN PRINT PL(1)" Wins !!!!":GOTO 2240 1940 FOR A=1 TO 40:B(A)=0:NEXT 1950 FOR A=0 TO Q(T)-1 1960 KEEP(T,A+1)=TBL(T,A):TBL(T,A)=0 1970 NEXT:KEEP(T,0)=Q(T)-1 1980 Q(T)=0:Q(T(T))=0 1990 TBL(T(T),0)=0 2000 FLAG=0 2010 LOCATE 23,20:PRINT"One Moment While I Generate A New Game Board 2020 RESTORE:GOSUB 210:GOSUB 1850:GOTO 160 2030 CLS 2040 FOR A=1 TO 23 2050 LOCATE A,1:PRINT"³";:LOCATE A,80:PRINT"³"; 2060 NEXT 2070 LOCATE 1,1:PRINT"Õ"STRING$(78,"Í")"¸"; 2080 LOCATE 23,1:PRINT"Ô"STRING$(78,"Í")"¾"; 2090 LOCATE 3,35:COLOR 15,0:PRINT"M A T C H":COLOR 3,0 2100 LOCATE 5,19:PRINT"In this game, you will try to match prizes 2110 LOCATE 6,19:PRINT"on the game board before your opponent does. 2120 LOCATE 8,19:PRINT"When you match a prize, you will be asked to 2130 LOCATE 9,19:PRINT"guess a number between 10 AND 99. 2140 LOCATE 10,19:PRINT"If you guess the secret number then You will 2150 LOCATE 11,19:PRINT"win the match. 2160 LOCATE 12,19:PRINT"I will tell you if you are to HIGH or to LOW. 2170 LOCATE 13,19:PRINT"You must win 2 matches to win the game. 2180 LOCATE 15,19:PRINT"If you do not guess the secret number before 2190 LOCATE 16,19:PRINT"all possible matches have been made then 2200 LOCATE 17,19:PRINT"the match continues with a new game board 2210 LOCATE 18,19:PRINT"and a new secret number. 2220 LOCATE 20,35:PRINT"GOOD LUCK !!! 2230 GOSUB 1260:CLS:RETURN 2240 GOSUB 2470:CLS:COLOR 3,0:GOSUB 2360 2250 FOR A=0 TO KEEP(T,0) 2260 TBL(T,A)=KEEP(T,A+1) 2270 NEXT 2280 Q(T)=KEEP(T,0)+1 2290 GOSUB 2380 2300 LOCATE C+2,48:PRINT STRING$(12,"Í") 2310 LOCATE C+3,25:PRINT"Grand Total Of":LOCATE C+3,48:PRINT USING PTR;D 2320 LOCATE 23,25:PRINT"Would You Like To Play Again? "; 2330 GOSUB 1270:IF Z="Y" OR Z="y" THEN RUN ELSE IF Z<>"N" AND Z<>"n" THEN 2330 2340 CLS:LOCATE 12,25:PRINT"Thank You For Playing Match 2350 RUN"menu 2360 LOCATE 2,25:PRINT"Prize Value 2370 LOCATE 3,25:PRINT STRING$(35,"Í"):C=4:D=0 2380 FOR A=0 TO Q(T)-1 2390 C=C+1 2400 A$=SPACE$(23) 2410 LSET A$=PZ(TBL(T,A)) 2420 LOCATE C,25:PRINT USING "&";A$; 2430 PRINT USING PTR;VL(TBL(T,A)) 2440 D=D+VL(TBL(T,A)) 2450 NEXT A 2460 RETURN 2470 ' 2480 FOR X=1 TO 2000:NEXT:RETURN 2490 DATA A1,B1,C1,D1,E1,A2,B2,C2,D2,E2,A3,B3,C3,D3,E3,A4,B4,C4,D4,E4 2500 DATA A5,B5,C5,D5,E5,A6,B6,C6,D6,E6,A7,B7,C7,D7,E7,A8,B8,C8,D8,E8 2520 DATA " COLOR TV ",650 2530 DATA " WINNABAGO ",13540 2540 DATA " SWISS WATCH ",250 2550 DATA " $5000 CASH ",5000 2560 DATA " $1 CASH ",1 2570 DATA " IBM P.C. ",2300 2580 DATA " IBM SOFTWARE ",49.95 2590 DATA "TRIP TO MEXICO",3000 2600 DATA "TRIP TO JAPAN",6000 2610 DATA " MINK COAT ",2300 2620 DATA "10 SPEED BIKE",135 2630 DATA "BOX OF BANANAS",5 2640 DATA " SPEED BOAT ",14000 2650 DATA " NEW TIRES ",150 2660 DATA " DISNEY TRIP ",3000 2670 DATA " SNOWMOBILE ",3200 2680 DATA "MINOLTA CAMERA",550 2690 DATA " BETAMAX ",1150 2700 DATA "SEWING MACHINE",250 2710 DATA " BRASS BED ",800 2720 DATA " JACUZZI SPA ",4300 2730 DATA " DISHWASHER ",320 2740 DATA " WASHER ",340 2750 DATA " DRYER ",320 2760 DATA " TAKE ONE ",-1 2770 DATA " LOSE ONE ",-2 2780 DATA " WILD CARD ",-3 2790 DATA " B&W T-V ",95 2800 DATA " BUICK CENTURY",5500 2810 DATA " METROCARD ",1.50 2820 DATA " JUG OF MILK ",2.05 2830 DATA " LAWN MOWER ",230 2840 DATA " $500 CASH ",500 2850 DATA " DISK DRIVE ",350 2860 DATA "ENCYCLOPEDIAS ",650 2870 DATA " USED CAR ",20 2880 DATA " TOUPEE ",29 2890 DATA " BLOND WIG ",50 2900 DATA " CD WRITER ",150 2910 DATA " STEREO ",1000 2920 DATA " VIRTUALIZER ",1200 2930 DATA " GOLD RING ",300 2940 DATA " DIAMOND RING ",2300 2950 DATA " CABLE BOX ",125 2960 DATA " PATIO SET ",490 2970 DATA " BEDROOM SET ",900 2980 DATA " SAIL BOAT ",6000 2990 DATA " BRICK HOME ",55000 3000 DATA " MOBILE HOME ",21000 3010 DATA "SHRIMP DINNER",25 3020 DATA " SURF BOARD ",250 3030 DATA " GOLF CLUBS ",550 3040 DATA "SWIMMING POOL",10000 3050 DATA " BRIEF CASE ",65 3060 DATA " NEW WARDROBE ",800 3070 DATA " SILK SHEETS ",125 3080 DATA " WATER BED ",450 3090 DATA " WATER SKIS ",120 3100 DATA "OUNCE OF GOLD",500 3110 DATA " BAR OF SOAP ",.25 3120 DATA " PET SQURRIEL ",75 3130 DATA " OCEAN CRUISE ",5400 3140 DATA " ROLEX CAMERA ",90 3150 DATA "SNORKEL & FINS",65 3160 DATA "LEATHER WALLET",10 3170 DATA "MX-80 PRINTER",550 3180 DATA "BYTE MAGAZINE",3 3190 DATA " MOTOR CYCLE ",3000 3200 DATA " MINI BIKE ",150 3210 DATA " MOPED ",450 3220 DATA " SILVER BOWL ",250 3230 DATA " TV DINNER ",1 3240 DATA " FROZEN PIZZA ",2 3250 DATA " AM-FM RADIO ",25 3260 DATA " CB-RADIO ",140 3270 DATA " TAMPA NUGGET ",.75 3280 DATA " BED LAMP ",15 3290 DATA " 6 PACK/COORS ",3.15 3300 DATA " SWING SET ",230 3310 DATA " SKILL SAW ",55 3320 LOCATE 22,3:PRINT PL(T)", For ";:PRINT USING PTR;D;:PRINT" In Prizes, Guess My Secret Number <10 to 99>"; 3330 GOSUB 3380 3340 IF GS=SC THEN PRINT"Congradulations "PL(T)" You WIN !!!":FLAG=2:FOR X=1 TO 5:SOUND 500,1:SOUND 200,1:SOUND 100,2:NEXT 3350 IF GSSC THEN PRINT" Sorry, Too High. But Still Your Turn.":SOUND 2000,15 3370 GOSUB 1280:GOSUB 1850:RETURN 3380 IF INKEY$<>"" THEN 3380 3390 P1="" 3400 P=INKEY$:IF P=CHR$(13) THEN 3400 3410 IF P=CHR$(8) THEN 3470 3420 IF LEN(P)>1 THEN IF RIGHT$(P,1)=CHR$(75) THEN 3450 ELSE 3400 3430 IF P<"a" OR P>"z" THEN 3450 3440 P=CHR$(ASC(P)-32) 3450 P1=P1+P:PRINT P;:IF LEN(P1)<2 THEN 3400 3460 GS=VAL(P1):GOTO 3490 3470 IF LEN(P1)=0 THEN 3400 3480 PRINT CHR$(29)CHR$(32)CHR$(29);:P1=LEFT$(P1,LEN(P1)-1):GOTO 3400 3490 LOCATE 23,20,0 3500 RETURN 3510 Z1="" 3520 LOCATE 23,30:PRINT"Enter Choice Number "; 3530 IF INKEY$<>"" THEN 3530 3540 Z=INKEY$:IF Z="" THEN 3540 3550 IF Z=CHR$(13) THEN 3540 3560 IF Z=CHR$(8) THEN 3540 3570 PRINT Z;:RETURN 3580 KEY(10) OFF:XLIN=CSRLIN:XPOS=POS(0) 3590 LOCATE 25,22:COLOR 15,0:PRINT"Do You Wish To Leave This Game? ";:COLOR 3,0 3600 Z=INKEY$:IF Z="" THEN 3600 3610 IF Z="Y" OR Z="y" THEN END 3620 IF Z="N" OR Z="n" THEN 3640 3630 GOTO 3600 3640 LOCATE 25,1:PRINT SPC(78); 3650 LOCATE 25,25:COLOR 0,7:PRINT" Strike To Leave This Game ";:COLOR 3,0 3660 LOCATE XLIN,XPOS:KEY(10) ON:RETURN 3670 ZH="" 3680 DEF SEG:POKE 106,0:IF INKEY$<>"" THEN 3680 3690 ZI=INKEY$:IF ZI="" THEN 3690 3700 IF ZI=CHR$(13) THEN ZA=SPACE$(8):LSET ZA=ZH:RETURN 3710 IF ZI=CHR$(8) THEN 3770 3720 IF LEN(ZI)>1 THEN IF RIGHT$(ZI,1)=CHR$(75) THEN 3770 ELSE 3680 3730 IF LEN(ZH)>7 THEN 3690 3740 IF ZI<"a" OR ZI>"z" THEN 3760 3750 ZI=CHR$(ASC(ZI)-32) 3760 ZH=ZH+ZI:PRINT ZI;:GOTO 3690 3770 IF LEN(ZH)<1 THEN 3690 3780 PRINT CHR$(29)" "CHR$(29);:ZH=LEFT$(ZH,LEN(ZH)-1):GOTO 3690