Listing of file='XO.BAS;01' on disk='vmedia/board_games-sector.ccvf'
1 REM COPYRIGHT (C) 1981 BY D.PEEL(VERSION 4:81) 2 REM 21 DERSINGHAM CRES.,THORNHILL,ONT.,CANADA,L3T4P5 3 PLOT 6,39,12,14:PLOT 3,19,10:PRINT "COMPUCOLOR PRESENTS" 4 GOTO 15 5 XX= 15:YY= 25:HH= 5:WW= 49:CC= 1:GOSUB 10:DIM LE(59,4),BR(4,4) 6 GOSUB 100:N1$= "COMPUCOLOR":PLOT 27,24:GOTO 1000 7 Z9= CALL (0) 8 PLOT 3,XX,YY+ HH- 1:PRINT SPC( WW)"" 9 PLOT 3,XX,YY+ HH- 1:RETURN 10 GOSUB 31 11 Z= 28672+ 128* YY+ XX+ XX:AD= TM+ 2:GOSUB 30 12 Z= 128- WW- WW:AD= TM+ 25:GOSUB 30 13 POKE TM+ 5,HH- 1:POKE TM+ 7,WW* (CC+ 1):POKE TM+ 19,35* (1- CC) 14 RETURN 15 GOSUB 31:RESTORE 16 16 DATA 33,-1,-1,6,-1,14,-1,17,128,0,25,126 17 DATA 17,128,255,25,119,35,-1,13,194,-1,-1 18 DATA 17,-1,-1,25,5,194,-1,-1,201 19 IF TM> 65503THEN TM= TM- 32:GOTO 23 20 FOR I= 1TO 32:READ A 21 IF A> = 0AND A< > PEEK (TM+ 1)THEN I= 32:TM= TM- 32 22 NEXT I 23 RESTORE 16 24 FOR I= 1TO 32:READ A:POKE TM+ I,A- (A< 0):NEXT I 25 Z= TM+ 1:AD= 33283:GOSUB 30 26 Z= TM:AD= ER:GOSUB 30 27 Z= TM+ 6:AD= TM+ 30:GOSUB 30 28 Z= TM+ 8:AD= TM+ 22:GOSUB 30 29 CLEAR 75:GOTO 5 30 ZZ= INT (Z/ 256):POKE AD,Z- 256* ZZ:POKE AD+ 1,ZZ:RETURN 31 ER= 32940:TM= 256* PEEK (ER+ 1)+ PEEK (ER):RETURN 100 RESTORE 65000 120 SP$(1)= CHR$ (10)+ CHR$ (26) 130 SP$(3)= CHR$ (28)+ CHR$ (26) 135 SP$(4)= CHR$ (32) 140 FOR X= 1TO 59:FOR Y= 1TO 4 150 READ LE(X,Y) 160 NEXT Y,X:RETURN 510 PLOT 3,A,B:GOSUB 710 515 IF LEN (A$)= 0THEN 500 520 FOR Y= 1TO LEN (A$) 530 J= ASC (MID$ (A$,Y,1)) 540 IF J> 90THEN 600 550 IF J< 32THEN PLOT 29,J:GOTO 630 560 M= PEEK (33227) 570 X= J- 31 580 IF M> 60THEN GOSUB 710:PRINT :PRINT 590 FOR Z= 1TO 4 600 IF LE(X,Z)= > 32THEN PLOT 29:PRINT CHR$ (LE(X,Z)); 610 IF LE(X,Z)< 32THEN PLOT 30:PRINT CHR$ (LE(X,Z)+ 96); 620 PRINT SP$(Z);:NEXT Z 630 NEXT Y:RETURN 710 PLOT 10,10,10,10 720 PLOT 28,28,28,28:RETURN 1000 PLOT 6,2:PLOT 14,12::A$= "TIC":A= 2:B= 2:GOSUB 510:A$= "TAC":A= 25:B= 13:GOSUB 510:A$= "TOE":A= 50:B= 23:GOSUB 510 1010 FOR X= 1TO 500:NEXT X 1020 PLOT 12,15:PLOT 6,4:PLOT 2,21,127,242,106,127,106,33,21,33,21,127,255 1030 PLOT 6,3:PLOT 2,49,120,242,49,40,255:PLOT 2,77,120,242,77,40,255 1040 PLOT 2,26,65,242,102,65,255:PLOT 2,26,96,242,102,96,255:GOSUB 64000 1045 GOSUB 20000:GOTO 1060 1050 PLOT 14:A= 18:B= 18:GOSUB 510:RETURN 1051 PLOT 14:A= 31:B= 18:GOSUB 510:RETURN 1052 PLOT 14:A= 44:B= 18:GOSUB 510:RETURN 1053 PLOT 14:A= 18:B= 10:GOSUB 510:RETURN 1054 PLOT 14:A= 31:B= 10:GOSUB 510:RETURN 1055 PLOT 14:A= 44:B= 10:GOSUB 510:RETURN 1056 PLOT 14:A= 18:B= 3:GOSUB 510:RETURN 1057 PLOT 14:A= 31:B= 3:GOSUB 510:RETURN 1058 PLOT 14:A= 44:B= 3:GOSUB 510:RETURN 1060 PLOT 6,3:PLOT 15:GOSUB 7:PRINT :GOSUB 7:INPUT "NUMBER OF PLAYERS ? ";NP 1061 IF NP< > 1AND NP< > 2THEN GOSUB 7:PRINT :GOSUB 7:PRINT "MUST BE EITHER 1 OR 2 PLAYERS !!":GOTO 1060 1062 IF NP= 2THEN 10000 1066 PLOT 6,3:PLOT 15:GOSUB 7:PRINT :GOSUB 7:INPUT "LEVEL OF PLAY (1) OR (2) ? ";RT 1067 IF RT< > 1AND RT< > 2THEN GOSUB 7:PRINT :GOSUB 7:PRINT "MUST BE EITHER LEVEL 1 OR 2 !!":GOTO 1066 1068 IF NM= 1THEN 1080 1069 GOSUB 7:PRINT :GOSUB 7:INPUT "WHAT IS YOUR FIRST NAME ? ";NA$ 1070 IF LEN (NA$)< 2THEN GOSUB 7:PRINT :GOSUB 7:PRINT "BE SERIOUS !!":GOTO 1069 1080 GOSUB 7:PRINT :GOSUB 7:PRINT "DO YOU WISH TO GO FIRST ";NA$;:INPUT " ? ";A9$ 1081 IF ASC (A9$)< > 89AND ASC (A9$)< > 78THEN GOSUB 7:PRINT :GOSUB 7:PRINT "ANSWER Y OR N !!!":GOTO 1080 1090 NM= 0 2010 IF A9$= "Y"THEN N2$= NA$:A1$= N2$:PLOT 6,1:PLOT 3,0,0:PRINT N1$:PLOT 6,6:PLOT 3,55,0:PRINT N2$:BN= 6:GOTO 10090 2020 A1$= N1$:N2$= NA$:PLOT 6,1:PLOT 3,0,0:PRINT N1$:PLOT 6,6:PLOT 3,55,0:PRINT N2$ 2025 RH= 1:GOSUB 60000:POKE 33209,0 2030 T= PEEK (33209)* 10:FOR F= 1TO T:BX= INT ((5- 1)* RND (1)+ 1):NEXT F 2031 GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:FX= BX:BN= 2:GOSUB 62100:GOTO 10110 3010 BN= 3:GH= KL:M1= 8:GOSUB 9000:M1= 2:GOSUB 9000:IF GH< > KLTHEN SX= BX:GOSUB 62100:GOTO 10110 3020 IF BR(2,2)= 1THEN BX= SX+ 2:GOSUB 40000:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3025 IF RH= 1AND RT= 2THEN GOSUB 30000 3030 IF BX= 2AND K1= 8THEN K= 3:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3035 IF BX= 2AND K1= 6THEN K= 7:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3040 IF BX= 1AND K1= 8THEN K= 1:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3045 IF BX= 1AND K1= 4THEN K= 9:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3050 IF BX= 4AND K1= 4THEN K= 3:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3055 IF BX= 4AND K1= 2THEN K= 7:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3060 IF BX= 3AND K1= 6THEN K= 1:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3065 IF BX= 3AND K1= 2THEN K= 9:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 3070 GOSUB 8900:GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 3080 BN= 4 3081 IF DF= 1THEN DF= 0:GOSUB 32000 3090 GH= KL:M1= 8:GOSUB 9000:M1= 2:GOSUB 9000:IF GH< > KLTHEN SX= BX:GOSUB 62100:GOTO 10110 4000 IF FX= 2AND BR(3,1)= 1THEN BX= BX+ 2:GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 4010 IF FX= 1AND BR(3,3)= 1THEN BX= BX+ 2:GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 4020 IF FX= 4AND BR(1,3)= 1THEN BX= BX+ 2:GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 4030 IF FX= 3AND BR(1,1)= 1THEN BX= BX+ 2:GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 4040 BX= BX+ 2:GOSUB 40000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 4050 BN= 5 4060 GH= KL:M1= 8:GOSUB 9000:M1= 2:GOSUB 9000:IF GH< > KLTHEN SX= BX:GOSUB 62100:GOTO 10110 4061 BX= 7:GOSUB 41000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 4070 BN= 6:GH= KL:M1= 8:GOSUB 9000:M1= 2:GOSUB 9000:IF GH< > KLTHEN SX= BX:GOSUB 62100:GOTO 10110 4071 BX= 7:GOSUB 41000:GOSUB 10400:KL= KL+ 1:SX= BX:GOSUB 62100:GOTO 10110 5000 IF BR(2,2)= 1THEN BN= 1:GOTO 2030 5010 BN= 7:K= 5:GOSUB 10400:KL= KL+ 1:GOSUB 62100:SX= BX:GOTO 10110 5020 GH= KL:M1= 8:GOSUB 9000:M1= 2:GOSUB 9000:IF GH< > KLTHEN SX= BX:BN= 3:GOSUB 62100:GOTO 10110 5021 IF RT= 1THEN 5026 5025 IF BR(1,2)= 1AND BR(2,1)= 1THEN K= 7:GOSUB 10400:KL= KL+ 1:SX= BX:BN= 3:GOSUB 62100:GOTO 10110 5026 IF BR(2,1)+ BR(2,2)+ BR(2,3)+ BR(1,2)+ BR(2,2)+ BR(3,2)= 10THEN K= 3:GOSUB 10400:KL= KL+ 1:SX= BX:BN= 3:GOSUB 62100:GOTO 10110 5027 IF BR(2,1)+ BR(2,2)+ BR(2,3)= 5THEN K= 2:GOSUB 10400:KL= KL+ 1:SX= BX:BN= 3:GOSUB 62100:GOTO 10110 5028 IF BR(1,2)+ BR(2,2)+ BR(3,2)= 5THEN K= 8:GOSUB 10400:KL= KL+ 1:SX= BX:BN= 3:GOSUB 62100:GOTO 10110 5029 BX= INT ((11- 7)* RND (1)+ 7) 5030 GOSUB 41000:GOSUB 10400:KL= KL+ 1:SX= BX:BN= 3:GOSUB 62100:GOTO 10110 8900 PA= INT ((3- 1)* RND (1)+ 1) 8901 IF PA= 1THEN BX= SX+ 1:RETURN 8902 IF PA= 2THEN BX= SX- 1:RETURN 8950 IF PA= 1THEN PA= 2:GOTO 8902 8951 IF PA= 2THEN PA= 1:GOTO 8901 8952 IF PA= 0THEN 8900 9000 IF BR(1,1)+ BR(1,2)+ BR(1,3)= M1THEN 9900 9010 IF BR(2,1)+ BR(2,2)+ BR(2,3)= M1THEN 9910 9020 IF BR(3,1)+ BR(3,2)+ BR(3,3)= M1THEN 9920 9030 IF BR(1,1)+ BR(2,1)+ BR(3,1)= M1THEN 9930 9040 IF BR(1,2)+ BR(2,2)+ BR(3,2)= M1THEN 9940 9050 IF BR(1,3)+ BR(2,3)+ BR(3,3)= M1THEN 9950 9060 IF BR(1,1)+ BR(2,2)+ BR(3,3)= M1THEN 9960 9070 IF BR(1,3)+ BR(2,2)+ BR(3,1)= M1THEN 9970 9080 RETURN 9900 IF BR(1,1)= 0THEN K= 7:KL= KL+ 1:GOSUB 10400:RETURN 9901 IF BR(1,2)= 0THEN K= 8:KL= KL+ 1:GOSUB 10400:RETURN 9902 IF BR(1,3)= 0THEN K= 9:KL= KL+ 1:GOSUB 10400:RETURN 9910 IF BR(2,1)= 0THEN K= 4:KL= KL+ 1:GOSUB 10400:RETURN 9911 IF BR(2,2)= 0THEN K= 5:KL= KL+ 1:GOSUB 10400:RETURN 9912 IF BR(2,3)= 0THEN K= 6:KL= KL+ 1:GOSUB 10400:RETURN 9920 IF BR(3,1)= 0THEN K= 1:KL= KL+ 1:GOSUB 10400:RETURN 9921 IF BR(3,2)= 0THEN K= 2:KL= KL+ 1:GOSUB 10400:RETURN 9922 IF BR(3,3)= 0THEN K= 3:KL= KL+ 1:GOSUB 10400:RETURN 9930 IF BR(1,1)= 0THEN K= 7:KL= KL+ 1:GOSUB 10400:RETURN 9931 IF BR(2,1)= 0THEN K= 4:KL= KL+ 1:GOSUB 10400:RETURN 9932 IF BR(3,1)= 0THEN K= 1:KL= KL+ 1:GOSUB 10400:RETURN 9940 IF BR(1,2)= 0THEN K= 8:KL= KL+ 1:GOSUB 10400:RETURN 9941 IF BR(2,2)= 0THEN K= 5:KL= KL+ 1:GOSUB 10400:RETURN 9942 IF BR(3,2)= 0THEN K= 2:KL= KL+ 1:GOSUB 10400:RETURN 9950 IF BR(1,3)= 0THEN K= 9:KL= KL+ 1:GOSUB 10400:RETURN 9951 IF BR(2,3)= 0THEN K= 6:KL= KL+ 1:GOSUB 10400:RETURN 9952 IF BR(3,3)= 0THEN K= 3:KL= KL+ 1:GOSUB 10400:RETURN 9960 IF BR(1,1)= 0THEN K= 7:KL= KL+ 1:GOSUB 10400:RETURN 9961 IF BR(2,2)= 0THEN K= 5:KL= KL+ 1:GOSUB 10400:RETURN 9962 IF BR(3,3)= 0THEN K= 3:KL= KL+ 1:GOSUB 10400:RETURN 9970 IF BR(1,3)= 0THEN K= 9:KL= KL+ 1:GOSUB 10400:RETURN 9971 IF BR(2,2)= 0THEN K= 5:KL= KL+ 1:GOSUB 10400:RETURN 9972 IF BR(3,1)= 0THEN K= 1:KL= KL+ 1:GOSUB 10400:RETURN 9973 RETURN 10000 IF NM= 1THEN 10060 10006 GOSUB 7:PRINT :GOSUB 7:INPUT "ENTER FIRST NAME OF PLAYER #1 ? ";N1$ 10008 IF LEN (N1$)> 9THEN GOSUB 7:PRINT :GOSUB 7:PRINT "LESS THEN 10 LETTERS - PLEASE !!":GOTO 10006 10010 IF LEN (N1$)= 1THEN GOSUB 7:PRINT :GOSUB 7:PRINT "BE SERIOUS !!":GOTO 10000 10030 GOSUB 7:PRINT :GOSUB 7:INPUT "ENTER FIRST NAME OF PLAYER #2 ? ";N2$ 10031 IF LEN (N2$)> 9THEN GOSUB 7:PRINT :GOSUB 7:PRINT "LESS THEN 10 LETTERS - PLEASE !!":GOTO 10030 10040 IF LEN (N2$)= 1THEN GOSUB 7:PRINT :GOSUB 7:PRINT "BE SERIOUS !!":GOTO 10030 10050 PLOT 6,1:PLOT 3,0,0:PRINT N1$:PLOT 6,6:PLOT 3,55,0:PRINT N2$ 10060 GOSUB 7:PRINT :GOSUB 7:INPUT "WHO WILL GO FIRST ? ";A1$ 10070 IF A1$< > N1$AND A1$< > N2$THEN GOSUB 7:PRINT :GOSUB 7:PRINT "MUST BE EITHER ";N1$;" OR ";N2$;" !!":GOTO 10060 10080 NM= 0 10090 GOSUB 60000 10110 POKE 33278,48:PLOT 6,0:PLOT 3,64,1:OUT 8,255 10111 K= PEEK (33278)- 48:PLOT 3,64,32 10120 IF K> 0AND K< 10THEN KL= KL+ 1:OUT 8,247:GOSUB 10400:GOTO 10125 10121 GOTO 10111 10125 POKE 33209,0:GOSUB 62100 10129 IF NP= 1THEN ON BNGOTO 2030,3010,3080,4050,4070,5000,5020,5050 10131 GOTO 10110 10400 IF K= 1THEN C= 3:D= 1 10410 IF K= 2THEN C= 3:D= 2 10420 IF K= 3THEN C= 3:D= 3 10430 IF K= 4THEN C= 2:D= 1 10440 IF K= 5THEN C= 2:D= 2 10450 IF K= 6THEN C= 2:D= 3 10460 IF K= 7THEN C= 1:D= 1 10470 IF K= 8THEN C= 1:D= 2 10480 IF K= 9THEN C= 1:D= 3 10485 IF TW= 1THEN RETURN 10486 IF A1$= N2$THEN K1= K 10495 IF BR(C,D)< > 0THEN KL= KL- 1:GOTO 62000 10496 ON KGOSUB 1050,1051,1052,1053,1054,1055,1056,1057,1058:PLOT 3,64,1 10500 IF A1$= N1$THEN BR(C,D)= 4 10501 IF A1$= N2$THEN BR(C,D)= 1 11000 REM 11001 Q= 1:GOSUB 11010:Q= 2:GOSUB 11010:Q= 3:GOSUB 11010:W= 1:GOSUB 11060:W= 2:GOSUB 11060:W= 3:GOSUB 11060 11002 IF BR(1,1)+ BR(2,2)+ BR(3,3)= 12THEN PLOT 31:GOSUB 1056:GOSUB 1054:GOSUB 1052:PLOT 15:GOTO 63000 11003 IF BR(1,1)+ BR(2,2)+ BR(3,3)= 3THEN PLOT 31:GOSUB 1056:GOSUB 1054:GOSUB 1052:PLOT 15:GOTO 63500 11004 IF BR(1,3)+ BR(2,2)+ BR(3,1)= 12THEN PLOT 31:GOSUB 1058:GOSUB 1054:GOSUB 1050:PLOT 15:GOTO 63000 11005 IF BR(1,3)+ BR(2,2)+ BR(3,1)= 3THEN PLOT 31:GOSUB 1058:GOSUB 1054:GOSUB 1050:PLOT 15:GOTO 63500 11006 IF KL= 9THEN KL= 0:GOTO 12000 11010 FOR W= 1TO 3:TT= TT+ BR(Q,W) 11020 IF TT= 12THEN ON QGOTO 11160,11170,11180 11030 IF TT= 3THEN ON QGOTO 11190,11191,11192 11050 NEXT W:TT= 0:RETURN 11060 FOR Q= 1TO 3:TT= TT+ BR(Q,W) 11070 IF TT= 12THEN ON WGOTO 11100,11110,11120 11080 IF TT= 3THEN ON WGOTO 11130,11140,11150 11090 NEXT Q:TT= 0:RETURN 11100 PLOT 31:GOSUB 1056:GOSUB 1053:GOSUB 1050:PLOT 15:GOTO 63000 11110 PLOT 31:GOSUB 1057:GOSUB 1054:GOSUB 1051:PLOT 15:GOTO 63000 11120 PLOT 31:GOSUB 1058:GOSUB 1055:GOSUB 1052:PLOT 15:GOTO 63000 11130 PLOT 31:GOSUB 1056:GOSUB 1053:GOSUB 1050:PLOT 15:GOTO 63500 11140 PLOT 31:GOSUB 1057:GOSUB 1054:GOSUB 1051:PLOT 15:GOTO 63500 11150 PLOT 31:GOSUB 1058:GOSUB 1055:GOSUB 1052:PLOT 15:GOTO 63500 11160 PLOT 31:GOSUB 1056:GOSUB 1057:GOSUB 1058:PLOT 15:GOTO 63000 11170 PLOT 31:GOSUB 1053:GOSUB 1054:GOSUB 1055:PLOT 15:GOTO 63000 11180 PLOT 31:GOSUB 1050:GOSUB 1051:GOSUB 1052:PLOT 15:GOTO 63000 11190 PLOT 31:GOSUB 1056:GOSUB 1057:GOSUB 1058:PLOT 15:GOTO 63500 11191 PLOT 31:GOSUB 1053:GOSUB 1054:GOSUB 1055:PLOT 15:GOTO 63500 11192 PLOT 31:GOSUB 1050:GOSUB 1051:GOSUB 1052:PLOT 15:GOTO 63500 12000 IF NP= 1AND A1$= N1$THEN BN= 6:RH= 0 12010 IF NP= 1AND A1$= N2$THEN BN= 1:RH= 1 12015 TL= TL+ 1 12020 PLOT 15:GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT SPC( 10)"!!! DRAW !!!" 12025 FOR T= 1TO 500:NEXT T 12027 PLOT 6,1,14:S5= S5+ 1:PLOT 3,1,20:PRINT S5:S6= S6+ 1:PLOT 6,6:PLOT 3,58,20:PRINT S6:GOTO 63800 15000 GOSUB 31000 15010 IF S1> S2THEN PRINT N1$;" WINS THE MATCH !!!" 15020 IF S2> S1THEN PRINT N2$;" WINS THE MATCH !!!" 15030 IF S2= S1THEN PRINT " THE MATCH IS A DRAW !!!" 15040 OUT 8,255:GOSUB 7:PRINT :GOSUB 7:INPUT "DO YOU WISH ANOTHER MATCH ? ";J$ 15041 IF ASC (J$)< > 89AND ASC (J$)< > 78THEN GOSUB 7:PRINT :GOSUB 7:PRINT "ANSWER Y OR N !!!":GOTO 15040 15050 IF J$= "N"THEN LOAD "MENU":RUN 15060 RUN 1 20000 PLOT 3,0,4:PRINT "GAMES":PLOT 3,1,6:PRINT "WINS":PLOT 3,0,12:PRINT "LOSSES":PLOT 3,0,18:PRINT "DRAWS" 20010 PLOT 3,57,4:PRINT "GAMES":PLOT 3,58,6:PRINT "WINS":PLOT 3,57,12:PRINT "LOSSES":PLOT 3,57,18:PRINT "DRAWS" 20025 PLOT 6,1,14:PLOT 3,1,8:PRINT S1:PLOT 3,1,14:PRINT S3:PLOT 3,1,20:PRINT S5 20030 PLOT 6,6:PLOT 3,58,8:PRINT S2:PLOT 3,58,14:PRINT S4:PLOT 3,58,20:PRINT S6:PLOT 15:RETURN 30000 GOSUB 50000 30002 ON IOGOTO 30005,30010,30020,30030,30040 30005 GOSUB 31000:GOSUB 7:PRINT :GOSUB 7:PLOT 6,7:PRINT "YOU BLEW IT ON YOUR LAST MOVE ";N2$;" !!":GOTO 35000 30010 GOSUB 31000:GOSUB 7:PRINT :GOSUB 7:PLOT 6,3:PRINT "YOU'RE MAKING MISTAKES ";N2$;" !!":GOTO 35000 30020 GOSUB 31000:GOSUB 7:PRINT :GOSUB 7:PLOT 6,5:PRINT SPC( 10)"GOTCHA NOW ";N2$;" !!":GOTO 35000 30030 GOSUB 31000:GOSUB 7:PRINT :GOSUB 7:PLOT 6,3:PRINT "PAY ATTENTION - YOU JUST LOST ";N2$;" !!":GOTO 35000 30035 GOSUB 31000:GOSUB 7:PRINT :GOSUB 7:PLOT 6,1:PRINT "THANKS FOR GIVING ME THE WIN ";N2$;" !!":GOTO 35000 30040 GOSUB 31000:GOSUB 7:PRINT :GOSUB 7:PLOT 6,2:PRINT "LOOKS LIKE A VICTORY FOR US GOOD GUYS !!":GOTO 35000 31000 PLOT 15:GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:RETURN 32000 GOSUB 50000 32005 ON IOGOTO 32010,32020,32030,32040,32050,32010 32010 GOSUB 31000:PRINT "WATCH - I'M GIVING FREE LESSONS !!!":GOTO 35000 32020 GOSUB 31000:PRINT "I'M NOT EVEN TRYING HARD YET !!!":GOTO 35000 32030 GOSUB 31000:PLOT 6,1:PRINT "I HOPE YOU'RE TAKING NOTES ";N2$;" !!":GOTO 35000 32040 GOSUB 31000:PLOT 6,2:PRINT SPC( 5)"I'M SO GOOD IT SCARES ME !!":GOTO 35000 32050 GOSUB 31000:PLOT 6,7:PRINT "DON'T GIVE UP YOUR DAY JOB ";N2$;" !!":GOTO 35000 35000 FOR T= 1TO 500:NEXT T:POKE 33209,0:DF= 1:RETURN 40000 IF BX= 0THEN BX= 4:GOTO 40012 40002 IF BX= 1THEN K= 7:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 40004 IF BX= 1THEN GOSUB 8950 40006 IF BX= 2THEN K= 9:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 40007 IF BX= 2THEN GOSUB 8950 40008 IF BX= 3THEN K= 3:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 40009 IF PEEK (33209)> 7THEN BX= 7:GOTO 41000 40010 IF BX= 3THEN GOSUB 8950 40012 IF BX= 4THEN K= 1:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 40013 IF BX= 4THEN GOSUB 8950 40015 IF BX= 5THEN BX= 1:GOTO 40002 40017 IF BX= 6THEN BX= 2:GOTO 40006 40020 GOTO 40000 41000 IF BX= 7THEN K= 8:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 41005 IF BX= 7THEN BX= BX+ 1 41010 IF BX= 8THEN K= 6:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 41015 IF BX= 8THEN BX= BX+ 1 41017 IF PEEK (33209)> 7THEN BX= 1:GOTO 40000 41020 IF BX= 9THEN K= 2:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 41025 IF BX= 9THEN BX= BX+ 1 41030 IF BX= 10THEN K= 4:TW= 1:GOSUB 10400:TW= 0:IF BR(C,D)= 0THEN RETURN 41035 IF BX= 10THEN BX= BX+ 1 41040 IF BX= 11THEN BX= 7 41045 GOTO 41000 50000 T= PEEK (33209)* 3:FOR F= 1TO T:IO= INT ((6- 1)* RND (1)+ 1):NEXT F:RETURN 60000 IF A1$= N2$THEN A$= "O":PLOT 6,6:GOSUB 64100:RETURN 60010 IF A1$= N1$THEN A$= "X":PLOT 6,1:GOSUB 64100:RETURN 62000 PLOT 15:GOSUB 7:PRINT :GOSUB 7:PRINT SPC( 10)"SQUARE TAKEN !!":FOR T= 1TO 500:NEXT T 62001 IF NP= 2AND A1$= N1$THEN A1$= N2$:RETURN 62003 IF NP= 2AND A1$= N2$THEN A1$= N1$:RETURN 62004 IF A1$= N2$THEN GOTO 10090 62100 IF A1$= N1$THEN A1$= N2$:A$= "O":PLOT 6,6:GOSUB 64100:GOTO 62120 62110 IF A1$= N2$THEN A1$= N1$:A$= "X":PLOT 6,1:GOSUB 64100 62120 RETURN 63000 PLOT 15:GOSUB 7:PRINT :GOSUB 7:PRINT SPC( 10)N1$;" IS THE WINNER !!" 63001 PLOT 6,1,14:S1= S1+ 1:S4= S4+ 1:TL= TL+ 1:PLOT 3,1,8:PRINT S1:PLOT 6,6:PLOT 3,58,14:PRINT S4:PLOT 3,64,1 63002 IF RT= 2THEN FOR T= 1TO 250:NEXT T 63003 IF RT= 2THEN GOSUB 50000:GOSUB 32005:GOSUB 63800:TT= 0:KL= 0:GOTO 63016 63010 FOR T= 1TO 1000:NEXT T:GOSUB 63800:TT= 0:KL= 0 63016 IF NP= 1THEN BN= 6:RH= 0:DF= 0 63018 IF TL= 10THEN 15000 63020 RETURN 63500 PLOT 15:GOSUB 7:PRINT :GOSUB 7:PRINT SPC( 10)N2$;" IS THE WINNER !!" 63501 PLOT 6,6,14:S2= S2+ 1:S3= S3+ 1:TL= TL+ 1:PLOT 3,58,8:PRINT S2:PLOT 6,1:PLOT 3,1,14:PRINT S3:PLOT 3,64,1 63502 FOR T= 1TO 1000:NEXT T:GOSUB 63800:TT= 0:KL= 0 63516 IF NP= 1THEN BN= 1:RH= 1 63518 IF TL= 10THEN 15000 63520 RETURN 63800 HJ= 1:A$= " ":FOR Q= 1TO 3:FOR W= 1TO 3 63810 BR(Q,W)= 0 63820 ON HJGOSUB 1050,1051,1052,1053,1054,1055,1056,1057,1058 63830 HJ= HJ+ 1 63840 NEXT W,Q:PLOT 15 64000 PLOT 6,2:PLOT 3,18,19:PRINT "1":PLOT 3,31,19:PRINT "2":PLOT 3,44,19:PRINT "3":PLOT 3,18,11:PRINT "4" 64001 PLOT 3,31,11:PRINT "5":PLOT 3,44,11:PRINT "6":PLOT 3,18,4:PRINT "7":PLOT 3,31,4:PRINT "8":PLOT 3,44,4:PRINT "9" 64002 IF TL= 10THEN 15000 64003 RETURN 64100 PLOT 15:GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7 64110 PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT :GOSUB 7:PRINT SPC( 10)A1$;"'S MOVE !!":PLOT 3,64,1:RETURN 65000 DATA 32,32,32,32,32,32,33,110,2,32,32,2,43,43,43,43,3,13,4,14 65010 DATA 79,30,79,30,3,3,24,4,32,32,32,30,20,22,32,32,32,32,23,21 65020 DATA 19,26,16,25,2,15,5,32,32,30,32,32,32,5,5,32,32,42,32,32 65030 DATA 32,30,32,30,0,22,24,21,8,32,1,1,8,25,31,4,5,7,4,26 65040 DATA 30,5,14,1,27,7,4,5,20,123,4,6,5,30,32,26,3,3,4,4 65050 DATA 3,7,23,125,42,42,32,32,42,30,32,32,6,9,8,7,105,102,102,105 65060 DATA 9,6,7,8,8,32,1,4,20,22,9,4,30,14,15,28,27,12,4,4 65070 DATA 20,22,9,6,14,12,23,21,27,12,31,5,27,1,32,5,20,22,29,6 65080 DATA 1,14,15,2,5,31,12,14,32,7,23,2,98,1,28,8,1,12,31,32 65090 DATA 16,1,2,17,16,1,19,2,20,22,23,21,27,1,32,4,20,22,24,21 65100 DATA 27,1,28,4,3,7,4,6,5,32,1,14,1,22,23,2,1,28,30,2 65110 DATA 1,18,19,2,28,30,28,30,28,2,32,30,5,25,31,26