Listing of file='BINGO.BAS;01' on disk='vmedia/ncc_4_11-sector.ccvf'
1 PLOT 6,39,12,27,24 5 CLEAR 128 10 DIM B(15,5,5):DIM W(15,5,5):DIM N(75) 15 DIM BA(3):DIM BT(3,5):DIM BW(3,5) 20 DIM NB(15,12):DIM A$(3) 21 P1= 2 22 P2= 2.25 23 P3= 3 35 REM 40 PRINT SPC( 28)"B I N G O" 50 PLOT 10,10 60 PRINT SPC( 10)"HELLO MY NAME IS BINGO":PLOT 10:FOR TD= 1TO 1200:NEXT TD 70 PRINT "YOU AND ONE OTHER PERSON CAN PLAY AGAINST ME" 80 PRINT "EACH ONE OF US GETS FIVE (5) CARDS TO PLAY WITH" 90 PRINT "I WILL HAVE THE TOP FIVE (5) CARDS -- THE REST OF" 100 PRINT "THE CARDS BELONG TO YOU" 105 PLOT 10 110 PRINT "THIS GAME IS PLAYED FOR MONEY - EACH CARD COSTS" 120 PRINT "A MINIMUM OF $ 3.00 TO A MAXIMUM OF $ 15.00" 125 PLOT 10 130 PRINT "PAY OFFS ARE "P1,"TO 1 FOR HORIZONTAL" 140 PRINT " "P2,"TO 1 FOR VERTICAL" 150 PRINT " "P3,"TO 1 FOR DIAGONAL" 160 FOR TD= 1TO 5000:NEXT TD 200 PLOT 10,10 210 INPUT "HOW MANY TO PLAY AGAINST ME (1) OR (2)? ";NP 220 NP= INT (NP) 230 IF NP< 1OR NP> 2THEN 200 240 PLOT 10 245 BA(2)= 0:BA(3)= 0 250 FOR A= 2TO NP+ 1 255 PLOT 10 260 PRINT "PLAYER #"A- 1;" YOUR NAME PLEASE "; 270 INPUT A$(A):L= LEN (A$(A)) 280 IF L< 1OR L> 10THEN 260 290 PRINT A$(A)" HOW MUCH IS YOUR BANK ROLL "; 300 INPUT BA(A):BA(A)= INT (BA(A)) 310 IF BA(A)> 14THEN 350 315 PLOT 10 320 PRINT "CHEAPSKATE !!! MINIMUM BANK ROLL IS $ 15.00" 325 GOTO 290 350 NEXT A 360 BA(1)= INT ((BA(2)+ BA(3))/ 2) 400 PLOT 12,10,10,10 410 FOR A= 2TO NP+ 1 415 PLOT 10 420 PRINT "YOU MAY BUY 5 CARDS "A$(A):PLOT 10 430 FOR B= 1TO 5 440 IF BA(A)< 3THEN BT(A,B)= 0:GOTO 530 450 PRINT "BALANCE $"BA(A);" ENTER DONATION FOR CARD #"B;" "; 460 INPUT BT(A,B):BT(A,B)= INT (BT(A,B)) 470 IF BT(A,B)< = BA(A)THEN 500 480 PRINT "YOU DON'T HAVE THAT MUCH TURKEY - TRY AGAIN" 490 GOTO 450 500 IF BT(A,B)> 2AND BT(A,B)< 16THEN 530 510 PRINT "MINIMUM IS $ 3.00 MAXIMUM IS $ 15.00" 520 GOTO 450 530 BA(A)= BA(A)- BT(A,B) 535 BA(1)= BA(1)+ BT(A,B) 540 NEXT B 550 NEXT A 600 PLOT 3,0,30,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11 610 H= 2 620 INPUT "DO YOU WANT TO SEE MY CARDS WHILE WE PLAY ? Y/N ";Y$ 630 IF Y$= "Y"THEN 660 640 IF Y$< > "N"THEN 600 650 H= 1 660 PLOT 10,10 670 PRINT "GUESS WHAT - I AM THE OFFICIAL SCORE KEEPER" 680 FOR TD= 1TO 2000:NEXT TD 700 GOSUB 10000 710 FOR A= 1TO 27 720 GOSUB 11000 730 GOSUB 11300 740 NEXT A 800 GOSUB 11600 810 IF NB(0,0)> 6THEN 900 820 FOR A= 1TO 6 830 GOSUB 11000 840 GOSUB 11300 850 NEXT A 860 GOTO 800 900 PLOT 3,0,29,11 910 PRINT "THERE ARE ";NB(0,0);" BINGOS ON THE BOARD" 920 PRINT "STANDBY WHILE I COMPUTE WINNINGS (AND LOSSES)" 930 FOR CN= 1TO 15 940 A= INT ((CN- 1)/ 5)+ 1 950 B= CN 960 IF B> 5THEN B= B- 5:GOTO 960 970 BW(A,B)= 0 980 FOR J= 1TO 5 990 BW(A,B)= BW(A,B)+ P1* (NB(CN,J)* BT(A,B)) 1000 NEXT J 1010 FOR J= 6TO 10 1020 BW(A,B)= BW(A,B)+ P2* (NB(CN,J)* BT(A,B)) 1030 NEXT J 1040 BW(A,B)= BW(A,B)+ P3* ((NB(CN,11)+ NB(CN,12))* BT(A,B)) 1050 BA(A)= BA(A)+ BW(A,B) 1060 BA(1)= BA(1)- BW(A,B) 1070 BW(A,0)= 0 1080 FOR J= 1TO 5:BW(A,0)= BW(A,0)+ BW(A,J):NEXT J 1090 NEXT CN 1100 PLOT 3,0,29,11,28,11 1110 PRINT "MY BALANCE IS"TAB( 40)BA(1) 1120 PRINT A$(2);" YOUR WINNINGS ARE"TAB( 40)BW(2,0) 1130 PRINT " AND YOUR BALANCE IS"TAB( 40)BA(2);" " 1140 IF NP< 2THEN 1200 1150 FOR TD= 1TO 4000:NEXT TD 1160 PLOT 3,0,30,11,28,11 1170 PRINT A$(3);" YOUR WINNINGS ARE"TAB( 40)BW(3,0) 1180 PRINT " AND YOUR BALANCE IS"TAB( 40)BA(3);" " 1200 FOR TD= 1TO 4000:NEXT TD 1210 PLOT 3,0,30,11,28,11,28,11 1220 INPUT "CARE TO PLAY AGAIN? Y/N ";Y$ 1230 IF Y$= "Y"THEN 1700 1240 IF Y$< > "N"THEN 1210 1250 PLOT 12,27,11 1260 PLOT 10,10,10 1270 INPUT "DID YOU HAVE A GOOD TIME? Y/N ";Y$ 1280 IF Y$= "Y"THEN 1400 1290 IF Y$= "N"THEN 1500 1300 PRINT "HEY DUMMY - CANT YOU ANSWER A SIMPLE QUESTION?" 1310 PLOT 10,10 1320 GOTO 1270 1400 PLOT 10,10 1410 PRINT "NOW THAT JUST TICKLES ME PINK" 1420 PRINT "HOPE TO SEE YOU AGAIN" 1430 GOTO 1600 1500 PLOT 10,10 1510 PRINT "AW SHUCKS - AND I THOUGHT YOU DID" 1520 PRINT "OH WELL - I DID ANYWAY" 1600 FOR TD= 1TO 2500:NEXT TD 1610 PLOT 12 1620 END 1700 FOR A= 0TO 15 1710 FOR B= 0TO 12 1720 NB(A,B)= 0 1730 NEXT B 1740 NEXT A 1750 FOR A= 1TO 3 1760 FOR B= 1TO 5 1770 BT(A,B)= 0 1780 NEXT B 1790 NEXT A 1800 GOTO 400 9000 END 10000 REM 10001 REM HEADER 10002 REM 10010 H$= "B I N G O" 10020 PLOT 27,24,6,39,12 10030 FOR X= 2TO 54STEP 13 10040 FOR Y= 0TO 20STEP 10 10050 PLOT 3,X,Y:PRINT H$ 10060 NEXT Y 10070 NEXT X 10100 REM 10101 REM CARD OUTLINES 10102 REM 10110 FOR X= 0TO 104STEP 26 10120 FOR Y= 122TO 42STEP - 40 10130 PLOT 2,X,Y,242 10140 PLOT X+ 23,Y,X+ 23,Y- 25,X,Y- 25,X,Y 10150 PLOT X+ 1,Y- 1 10160 PLOT X+ 22,Y- 1,X+ 22,Y- 24,X+ 1,Y- 24,X+ 1,Y- 1 10170 PLOT 255 10180 NEXT Y 10190 NEXT X 10300 REM 10301 REM SET CARDS 10302 REM CN = CARD NUMBER R= ROW C= COLUMN 10303 REM H=HIDDEN CARDS 1=YES 2=NO 10304 REM 10310 FOR CN= 1TO 15 10312 FOR N= 1TO 75 10314 N(N)= 0 10316 NEXT N 10320 FOR R= 1TO 5 10330 FOR C= 1TO 5 10340 N= INT ((15* RND (1)+ 1)+ 15* (R- 1)) 10342 IF N(N)< > 0THEN 10340 10344 N(N)= N 10350 B(CN,R,C)= N:W(CN,R,C)= 0 10360 IF R= 3AND C= 3THEN N= 0 10370 IF N= 0THEN B(CN,3,3)= 0:W(CN,3,3)= 1 10380 B$= RIGHT$ (STR$ (N+ 100),2) 10390 IF N= 0THEN B$= "FR" 10400 IF H= 1AND CN< 6THEN 10490 10410 X= 13* (CN- 1)+ 1 10420 IF X> 53THEN X= X- 65:GOTO 10420 10430 X= X+ 2* (R- 1) 10440 Y= 21 10450 IF CN< 11THEN Y= 11 10460 IF CN< 6THEN Y= 1 10470 Y= Y+ C 10472 IF R= 1OR R= 3OR R= 5THEN PLOT 29,19 10474 IF R= 2OR R= 4THEN PLOT 29,18 10480 PLOT 3,X,Y:PRINT B$ 10490 NEXT C 10500 NEXT R 10510 NEXT CN 10520 FOR N= 1TO 75 10530 N(N)= 0 10540 NEXT N 10550 RETURN 11000 REM 11001 REM GET NUMBER 11002 REM 11010 R= INT (5* RND (1)+ 1) 11020 N= INT ((15* RND (1)+ 1)+ 15* (R- 1)) 11030 IF N(N)< > 0THEN 11010 11040 PLOT 3,0,29,11 11050 PRINT "UNDER THE "; 11060 ON RGOTO 11070,11090,11110,11130,11150 11070 PRINT "B ROW ";:GOTO 11170 11090 PRINT "I ROW ";:GOTO 11170 11110 PRINT "N ROW ";:GOTO 11170 11130 PRINT "G ROW ";:GOTO 11170 11150 PRINT "O ROW "; 11170 PRINT "THE NUMBER IS ";N 11180 N(N)= N 11190 RETURN 11300 REM 11301 REM CHECK THE NUMBER 11302 REM 11310 FOR CN= 1TO 15 11320 YS= 0 11330 FOR C= 1TO 5 11340 IF B(CN,R,C)= NTHEN W(CN,R,C)= 1:YS= C 11350 NEXT C 11360 IF YS= 0THEN 11480 11370 X= 13* (CN- 1)+ 1 11380 IF X> 53THEN X= X- 65:GOTO 11380 11390 X= X+ 2* (R- 1) 11400 Y= 21 11410 IF CN< 11THEN Y= 11 11420 IF CN< 6THEN Y= 1 11430 Y= Y+ YS 11440 PLOT 3,X,Y,29,17 11450 B$= RIGHT$ (STR$ (N+ 100),2) 11460 PRINT B$ 11470 PLOT 29,23 11480 NEXT CN 11490 RETURN 11600 REM 11601 REM CHECK FOR BINGO 11602 REM 11610 FOR CN= 1TO 15 11620 FOR R= 1TO 5 11630 W(CN,R,0)= 0 11640 FOR C= 1TO 5 11650 W(CN,R,0)= W(CN,R,0)+ W(CN,R,C) 11660 NEXT C 11670 IF W(CN,R,0)= 5THEN NB(CN,R)= 1 11680 NEXT R 11690 FOR C= 1TO 5 11700 W(CN,0,C)= 0 11710 FOR R= 1TO 5 11720 W(CN,0,C)= W(CN,0,C)+ W(CN,R,C) 11730 NEXT R 11740 IF W(CN,0,C)= 5THEN NB(CN,C+ 5)= 1 11745 NEXT C 11750 NB(CN,11)= 0 11760 FOR R= 1TO 5 11770 NB(CN,11)= NB(CN,11)+ W(CN,R,R) 11780 NEXT R 11790 IF NB(CN,11)< 5THEN NB(CN,11)= 0 11800 IF NB(CN,11)= 5THEN NB(CN,11)= 1 11810 NB(CN,12)= 0 11820 FOR R= 1TO 5 11830 NB(CN,12)= NB(CN,12)+ W(CN,R,6- R) 11840 NEXT R 11850 IF NB(CN,12)< 5THEN NB(CN,12)= 0 11860 IF NB(CN,12)= 5THEN NB(CN,12)= 1 11870 NB(CN,0)= 0 11880 FOR J= 1TO 12 11890 NB(CN,0)= NB(CN,0)+ NB(CN,J) 11900 NEXT J 11910 NEXT CN 11920 NB(0,0)= 0 11930 FOR J= 1TO 15 11940 NB(0,0)= NB(0,0)+ NB(J,0) 11950 NEXT J 11960 RETURN