Listing of file='WHIST' on disk='vmedia/games_vol_3.wvd.zip'
# Sector 281, program filename = 'WHIST' 0010 PRINT HEX(030A0A0A0A0A) 0020 GOTO 50 0030 DEFFN'13 : COM CLEAR : LOAD RUN "GAMES" 0050 PRINT TAB(24);"COMPUTER WHIST" : F,Y1,Z1=0 : DIM C(16),B$(4)8,E$3 0055 PRINT AT(22,22);"SF KEY 10 OR 13 TO END" 0060 PRINT : INPUT "DO YOU WANT THE RULES (1=YES,0=NO) ",O : IF O=0THEN 100 0070 PRINT "THIS IS A CARD GAME FOR 2 PLAYERS -- YOU AND THE COMPUTER" : PRINT "A 32 CARD PACK IS USED (7 TO ACE IN EACH SUIT)." : PRINT "7 CARDS ARE DEALT TO EACH PLAYER AND THE REMAINDER OF THE" 0080 PRINT "PACK IS DISCARDED, EXCEPT FOR DETERMINING TRUMPS." : PRINT "NON-DEALER LEADS ---- WE TRY TO WIN TRICKS ACCORDING TO THE " : PRINT "USUAL RULES." 0090 PRINT "WINNER OF MAJORITY OF 7 TRICKS WINS DEAL AND SCORES 1 POINT," : PRINT "OR 2 POINTS IF HE WINS ALL 7." : PRINT "WINNER OF GAME IS PLAYER WITH HIGHER SCORE." : PRINT 0095 PRINT "(enter any key)" : KEYIN B$ 0100 DIM A$(32)3 0110 B$="CDHS" : C$="7 8 9 10J Q K A " 0120 FOR I=1TO 4 : FOR J=1TO 8 : K=8*(I-1)+J 0130 STR(A$(K),,2)=STR(C$,2*J-1,2) 0140 STR(A$(K),3,1)=STR(B$,I,1) 0150 NEXT J : NEXT I 0160 B$(1)="CLUBS" : B$(2)="DIAMONDS" : B$(3)="HEARTS" : B$(4)="SPADES" 0170 PRINT : F=F+1 : IF F/2=INT(F/2)THEN 180 : PRINT TAB(25);"I AM DEALER" : L=0 : GOTO 190 0180 PRINT TAB(23);"YOU ARE DEALER" : L=1 0190 FOR Q=1TO 15 0200 C(Q)=1+INT(31.99999*RND(F+2.9)) 0210 IF Q=1THEN 290 0220 FOR R=1TO Q-1 0230 IF C(Q)=C(Q-R)THEN 260 0240 NEXT R 0250 GOTO 290 0260 R=Q 0270 NEXT R 0280 GOTO 200 0290 NEXT Q : FOR Q=1TO 6 0300 IF C(Q)>C(Q+1)THEN 310 : D=C(Q) : C(Q)=C(Q+1) : C(Q+1)=D : IF Q=1THEN 310 : Q=Q-1 : GOTO 300 0310 NEXT Q : PRINT HEX(03);"YOUR HAND IS" : R=1 : FOR Q=1TO 7 : D=C(Q) : IF D>32-8*RTHEN 320 : PRINT : R=R+1 0320 PRINT A$(D);HEX(2020); : NEXT Q : PRINT : D=C(15) : PRINT "TOP CARD OF PACK IS ";A$(D), : T=1 0330 IF D<=8THEN 340 : D=D-8 : T=T+1 : GOTO 330 0340 Y,Z=0 : FOR X=1TO 7 : PRINT B$(T);" ARE TRUMPS" : PRINT : G=0 : IF L=0THEN 370 0350 FOR S=1TO 4 : D=8*S-G : FOR R=8TO 14 : IF C(R)=DTHEN 360 : NEXT R : NEXT S : G=G+1 : IF G<8THEN 350 0360 PRINT " MY LEAD........I PLAY ";A$(D) : GOTO 380 0370 PRINT "YOUR LEAD......" 0380 INPUT " YOU PLAY ",E$ : FOR E=1TO 32 : IF E$=A$(E)THEN 390 : NEXT E : PRINT ,HEX(3F3F3F3F3F3F),"ENTER THAT CARD AGAIN, PLEASE." : GOTO 380 0390 U=1 : FOR Q=1TO 7 : IF C(Q)=ETHEN 400 : NEXT Q : PRINT "ENTER A CARD FROM YOUR HAND." : GOTO 380 0400 IF C(Q)<9THEN 410 : U=U+1 : C(Q)=C(Q)-8 : GOTO 400 0410 V=1 : IF L=1THEN 470 : FOR S=1TO 8-C(Q) : FOR R=8TO 14 : IF C(R)-E<>STHEN 430 : D=C(R) 0420 PRINT "I PLAY ";A$(D),"I WIN TRICK" : Z=Z+1 : L=1 : GOTO 530 0430 NEXT R : NEXT S : FOR S=1-C(Q)TO -1 : FOR R=8TO 14 : IF C(R)-E<>STHEN 450 : D=C(R) 0440 PRINT "I PLAY ";A$(D),"YOU WIN TRICK" : Y=Y+1 : L=0 : GOTO 530 0450 NEXT R : NEXT S : G=-7 : IF U=TTHEN 460 : FOR D=8*T-7TO 8*T : FOR R=8TO 14 : IF C(R)=DTHEN 420 : NEXT R : NEXT D 0460 FOR S=1TO 4 : D=8*S+G : FOR R=8TO 14 : IF C(R)=DTHEN 440 : NEXT R : NEXT S : G=G+1 : IF G<1THEN 460 : PRINT "ERR" : GOTO 530 0470 IF C(R)<9THEN 480 : V=V+1 : C(R)=C(R)-8 : GOTO 470 0480 IF V=TTHEN 500 : IF U=TTHEN 520 : IF V=UTHEN 510 0490 PRINT ,"I WIN TRICK" : Z=Z+1 : L=1 : GOTO 530 0500 IF U<>TTHEN 490 0510 IF C(Q)<C(R)THEN 490 0520 PRINT ,"YOU WIN TRICK" : Y=Y+1 : L=0 0530 PRINT ,,"YOU: ";Y;"TRICKS ME: ";Z;"TRICKS" : IF X=7THEN 550 : C(Q),C(R)=0 : PRINT HEX(0A);"YOUR HAND" : FOR Q=1TO 7 : D=C(Q) : IF D=0THEN 540 : PRINT A$(D);HEX(2020); 0540 NEXT Q : PRINT : NEXT X 0550 IF Y=7THEN 560 : IF Z=7THEN 570 : IF Y>ZTHEN 580 : Z1=Z1+1 : GOTO 590 0560 Y1=Y1+2 : GOTO 590 0570 Z1=Z1+2 : GOTO 590 0580 Y1=Y1+1 0590 PRINT HEX(0A0A);TAB(46);"SCORE" : PRINT ,,"YOU: ";Y1;"POINTS ME: ";Z1;"POINTS" : INPUT "DO YOU WANT ANOTHER DEAL (1=YES,0=NO) ",O : ON OGOTO 170,7000 7000 DEFFN'10 : COM CLEAR : LOAD RUN "GAMES"