*19 < START 4 +0 5 C 5 G 5 H 5 I 5 J 5 K 5 M 5 P 5 S+1 5 S+2 5 S+3 5 S+4 5 S+5 5 S+6 5 S+7 5 S+8 5 S+9 11 PL 8 PE +10 +141 +10 +141 -1 (20 PRINT TAB[15];"TIC-TAC-TOE") L20 11 PL 8 PE +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +212 +201 +195 +45 +212 +65 +195 +45 +212 +207 +197 +10 +141 -1 (30 PRINT) L30 11 PL 8 PE +10 +141 -1 (40 PRINT "CREATIVE COMPUTING MORRISTOWN, NEW JERSEY") L40 11 PL 8 PE +195 +210 +197 +65 +212 +201 +86 +197 +160 +195 +207 +77 +80 +85 +212 +201 +78 +71 +160 +160 +77 +207 +210 +210 +201 +83 +212 +207 +215 +78 +172 +160 +78 +197 +215 +160 +202 +197 +210 +83 +197 +89 +10 +141 -1 (50 PRINT) L50 11 PL 8 PE +10 +141 -1 (60 PRINT " ADAPTED TO 920 BASIC BY ERIK BAIGAR 2013") L60 11 PL 8 PE +160 +65 +68 +65 +80 +212 +197 +68 +160 +212 +207 +160 +57 +178 +48 +160 +66 +65 +83 +201 +195 +160 +66 +89 +160 +197 +210 +201 +75 +160 +66 +65 +201 +71 +65 +210 +160 +178 +48 +177 +51 +10 +141 -1 (61 PRINT " TRANSLATED TO SIR BY TERRY FROGGATT 2013") L61 11 PL 8 PE +160 +212 +210 +65 +78 +83 +204 +65 +212 +197 +68 +160 +212 +207 +160 +83 +201 +210 +160 +66 +89 +160 +212 +197 +210 +210 +89 +160 +198 +210 +207 +71 +71 +65 +212 +212 +160 +178 +48 +177 +51 +10 +141 -1 (70 PRINT) L70 11 PL 8 PE +10 +141 -1 (80 PRINT TAB[9];"THE BOARD IS NUMBERED:") L80 11 PL 8 PE +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +212 +72 +197 +160 +66 +207 +65 +210 +68 +160 +201 +83 +160 +78 +85 +77 +66 +197 +210 +197 +68 +58 +10 +141 -1 (100 PRINT TAB[13];" 1 2 3") L100 11 PL 8 PE +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +177 +160 +160 +178 +160 +160 +51 +10 +141 -1 (120 PRINT TAB[13];" 4 5 6") L120 11 PL 8 PE +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +180 +160 +160 +53 +160 +160 +54 +10 +141 -1 (140 PRINT TAB[13];" 7 8 9") L140 11 PL 8 PE +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +160 +183 +160 +160 +184 +160 +160 +57 +10 +141 -1 (170 PRINT) L170 11 PL 8 PE +10 +141 -1 (180 PRINT) L180 11 PL 8 PE +10 +141 -1 (200 DIM S[9]) L200 (S >10 below) (500 PRINT "DO YOU WANT X [Enter 1] OR O [Enter 0]";) L500 11 PL 8 PE +68 +207 +160 +89 +207 +85 +160 +215 +65 +78 +212 +160 +216 +160 +40 +197 +238 +116 +101 +114 +160 +177 +169 +160 +207 +210 +160 +207 +160 +40 +197 +238 +116 +101 +114 +160 +48 +169 +160 -1 (510 INPUT C) L510 15 2052 6 +127 1 -48 5 C 11 PL 8 PE +10 +141 -1 (550 IF C=1 THEN 4750) L550 4 C 2 +1 7 L4750 (600 P=0) L600 4 +0 5 P (1000 G=-1) L1000 4 -1 5 G (1001 H=1) L1001 4 +1 5 H (1002 IF S[5]<>0 THEN 1030) L1002 4 S+5 7 ;+2 8 L1030 (1020 S[5]=-1) L1020 4 -1 5 S+5 (1021 GOTO 1950) L1021 8 L1950 (1030 IF S[5]<>1 THEN 1060) L1030 4 S+5 2 +1 7 ;+2 8 L1060 (1040 IF S[1]<>0 THEN 1100) L1040 4 S+1 7 ;+2 8 L1100 (1050 S[1]=-1) L1050 4 -1 5 S+1 (1051 GOTO 1950) L1051 8 L1950 (1060 IF S[2]=1 AND S[1]=0 THEN 1810) L1060 4 S+2 2 +1 7 ;+2 8 E1060 4 S+1 7 L1810 E1060 (1070 IF S[4]=1 AND S[1]=0 THEN 1810) L1070 4 S+4 2 +1 7 ;+2 8 E1070 4 S+1 7 L1810 E1070 (1080 IF S[6]=1 AND S[9]=0 THEN 1890) L1080 4 S+6 2 +1 7 ;+2 8 E1080 4 S+9 7 L1890 E1080 (1090 IF S[8]=1 AND S[9]=0 THEN 1890) L1090 4 S+8 2 +1 7 ;+2 8 E1090 4 S+9 7 L1890 E1090 (1100 IF G=1 THEN 1120) L1100 4 G 2 +1 7 L1120 (1110 GOTO 1180) L1110 8 L1180 (1120 J=3*INT[[M-1]/3]+1) L1120 4 M 1 -1 12 +43691 12 +98304 14 2 1 +1 5 J (1130 IF 3*INT[[M-1]/3]+1<>M THEN 1140) L1130 4 M 1 -1 12 +43691 12 +98304 14 2 1 +1 2 M 7 ;+2 8 L1140 (1131 K=1) L1131 4 +1 5 K (1140 IF 3*INT[[M-1]/3]+2<>M THEN 1150) L1140 4 M 1 -1 12 +43691 12 +98304 14 2 1 +2 2 M 7 ;+2 8 L1150 (1141 K=2) L1141 4 +2 5 K (1150 IF 3*INT[[M-1]/3]+3<>M THEN 1160) L1150 4 M 1 -1 12 +43691 12 +98304 14 2 1 +3 2 M 7 ;+2 8 L1160 (1151 K=3) L1151 4 +3 5 K (1160 GOTO 1200) L1160 8 L1200 (1180 FOR J=1 TO 7 STEP 3) L1180 4 +1 5 J (1190 FOR K=1 TO 3) L1190 4 +1 5 K (1200 IF S[J]<>G THEN 1300) L1200 0 J /4 S 2 G 7 ;+2 8 L1300 (1220 IF S[J+2]<>G THEN 1350) L1220 0 J /4 S+2 2 G 7 ;+2 8 L1350 (1260 IF S[J+1]<>0 THEN 1500) L1260 0 J /4 S+1 7 ;+2 8 L1500 (1280 S[J+1]=-1) L1280 0 J 4 -1 /5 S+1 (1290 GOTO 1950) L1290 8 L1950 (1300 IF S[J]=H THEN 1500) L1300 0 J /4 S 2 H 7 L1500 (1310 IF S[J+2]<>G THEN 1500) L1310 0 J /4 S+2 2 G 7 ;+2 8 L1500 (1320 IF S[J+1]<>G THEN 1500) L1320 0 J /4 S+1 2 G 7 ;+2 8 L1500 (1330 S[J]=-1) L1330 0 J 4 -1 /5 S (1340 GOTO 1950) L1340 8 L1950 (1350 IF S[J+2]<>0 THEN 1500) L1350 0 J /4 S+2 7 ;+2 8 L1500 (1360 IF S[J+1]<>G THEN 1500) L1360 0 J /4 S+1 2 G 7 ;+2 8 L1500 (1380 S[J+2]=-1) L1380 0 J 4 -1 /5 S+2 (1390 GOTO 1950) L1390 8 L1950 (1500 IF S[K]<>G THEN 1600) L1500 0 K /4 S 2 G 7 ;+2 8 L1600 (1520 IF S[K+6]<>G THEN 1650) L1520 0 K /4 S+6 2 G 7 ;+2 8 L1650 (1560 IF S[K+3]<>0 THEN 1700) L1560 0 K /4 S+3 7 ;+2 8 L1700 (1580 S[K+3]=-1) L1580 0 K 4 -1 /5 S+3 (1590 GOTO 1950) L1590 8 L1950 (1600 IF S[K]=H THEN 1700) L1600 0 K /4 S 2 H 7 L1700 (1610 IF S[K+6]<>G THEN 1700) L1610 0 K /4 S+6 2 G 7 ;+2 8 L1700 (1620 IF S[K+3]<>G THEN 1700) L1620 0 K /4 S+3 2 G 7 ;+2 8 L1700 (1630 S[K]=-1) L1630 0 K 4 -1 /5 S (1640 GOTO 1950) L1640 8 L1950 (1650 IF S[K+6]<>0 THEN 1700) L1650 0 K /4 S+6 7 ;+2 8 L1700 (1660 IF S[K+3]<>G THEN 1700) L1660 0 K /4 S+3 2 G 7 ;+2 8 L1700 (1680 S[K+6]=-1) L1680 0 K 4 -1 /5 S+6 (1690 GOTO 1950) L1690 8 L1950 (1700 GOTO 4500) L1700 8 L4500 (1710 IF S[3]=G AND S[7]=0 THEN 1870) L1710 4 S+3 2 G 7 ;+2 8 E1710 4 S+7 7 L1870 E1710 (1720 IF S[9]=G AND S[1]=0 THEN 1810) L1720 4 S+9 2 G 7 ;+2 8 E1720 4 S+1 7 L1810 E1720 (1730 IF S[7]=G AND S[3]=0 THEN 1830) L1730 4 S+7 2 G 7 ;+2 8 E1730 4 S+3 7 L1830 E1730 (1740 IF S[9]=0 AND S[1]=G THEN 1890) L1740 4 S+9 7 ;+2 8 E1740 4 S+1 2 G 7 L1890 E1740 (1750 IF G<>-1 THEN 1760) L1750 4 G 2 -1 7 ;+2 8 L1760 (1751 G=1) L1751 4 +1 5 G (1752 H=-1) L1752 4 -1 5 H (1753 GOTO 1100) L1753 8 L1100 (1760 IF S[9]=1 AND S[3]=0 THEN 1820) L1760 4 S+9 2 +1 7 ;+2 8 E1760 4 S+3 7 L1820 E1760 (1770 FOR I=2 TO 9) L1770 4 +2 5 I (1771 IF S[I]<>0 THEN 1790) L1771 0 I /4 S 7 ;+2 8 L1790 (1780 S[I]=-1) L1780 0 I 4 -1 /5 S (1781 GOTO 1950) L1781 8 L1950 (1790 NEXT I) L1790 4 I 2 +9 7 ;+3 10 I 8 L1770+2 (1810 S[1]=-1) L1810 4 -1 5 S+1 (1811 GOTO 1950) L1811 8 L1950 (1820 IF S[1]=1 THEN 1770) L1820 4 S+1 2 +1 7 L1770 (1830 S[3]=-1) L1830 4 -1 5 S+3 (1840 GOTO 1950) L1840 8 L1950 (1870 S[7]=-1) L1870 4 -1 5 S+7 (1880 GOTO 1950) L1880 8 L1950 (1890 S[9]=-1) L1890 4 -1 5 S+9 (1950 PRINT) L1950 11 PL 8 PE +10 +141 -1 (1960 PRINT"THE COMPUTER MOVES TO...") L1960 11 PL 8 PE +212 +72 +197 +160 +195 +207 +77 +80 +85 +212 +197 +210 +160 +77 +207 +86 +197 +83 +160 +212 +207 +46 +46 +46 +10 +141 -1 (2020 GOSUB 10000) L2020 11 LINK 8 L10000 (2050 GOTO 5000) L2050 8 L5000 (4500 IF G=1 THEN 4650) L4500 4 G 2 +1 7 L4650 (4550 IF J=7 AND K=3 THEN 4650) L4550 4 J 2 +7 7 ;+2 8 E4550 4 K 2 +3 7 L4650 E4550 (4600 NEXT K) L4600 4 K 2 +3 7 ;+3 10 K 8 L1190+2 (4610 NEXT J) L4610 4 J 2 +7 7 ;+4 4 J 1 +3 8 L1180+1 (4650 IF S[5]=G THEN 1710) L4650 4 S+5 2 G 7 L1710 (4670 GOTO 1750) L4670 8 L1750 (4750 P=1) L4750 4 +1 5 P (5000 PRINT) L5000 11 PL 8 PE +10 +141 -1 (5010 PRINT "WHERE DO YOU MOVE";) L5010 11 PL 8 PE +215 +72 +197 +210 +197 +160 +68 +207 +160 +89 +207 +85 +160 +77 +207 +86 +197 +160 -1 (5020 INPUT M) L5020 15 2052 6 +127 1 -48 5 M 11 PL 8 PE +10 +141 -1 (5030 IF M<>0 THEN 5040) L5030 4 M 7 ;+2 8 L5040 (5031 PRINT"THANKS FOR THE GAME.") L5031 11 PL 8 PE +212 +72 +65 +78 +75 +83 +160 +198 +207 +210 +160 +212 +72 +197 +160 +71 +65 +77 +197 +46 +10 +141 -1 (5032 GOTO 20000) L5032 8 L20000 (5040 IF M>9 THEN 5060) L5040 4 M 2 +9 9 L5060 (5050 IF S[M]=0 THEN 5100) L5050 0 M /4 S 7 L5100 (5060 PRINT"THAT SQUARE IS OCCUPIED.") L5060 11 PL 8 PE +212 +72 +65 +212 +160 +83 +209 +85 +65 +210 +197 +160 +201 +83 +160 +207 +195 +195 +85 +80 +201 +197 +68 +46 +10 +141 -1 (5070 PRINT) L5070 11 PL 8 PE +10 +141 -1 (5080 PRINT) L5080 11 PL 8 PE +10 +141 -1 (5090 GOTO 5000) L5090 8 L5000 (5100 G=1) L5100 4 +1 5 G (5110 S[M]=1) L5110 0 M 4 +1 /5 S (5200 GOSUB 10000) L5200 11 LINK 8 L10000 (5300 GOTO 1000) L5300 8 L1000 (10000 PRINT) L10000 11 PL 8 PE +10 +141 -1 (10010 FOR I=1 TO 9) L10010 4 +1 5 I (10030 IF S[I]<>-1 THEN 10140) L10030 0 I /4 S 2 -1 7 ;+2 8 L10140 (10120 IF P=1 THEN 10125) L10120 4 P 2 +1 7 L10125 (10121 PRINT " X ";) L10121 11 PL 8 PE +160 +216 +160 +160 -1 (10122 GOTO 10130) L10122 8 L10130 (10125 PRINT " O ";) L10125 11 PL 8 PE +160 +207 +160 +160 -1 (10130 GOTO 10200) L10130 8 L10200 (10140 IF S[I]<>0 THEN 10180) L10140 0 I /4 S 7 ;+2 8 L10180 (10160 PRINT " ";) L10160 11 PL 8 PE +160 +160 +160 +160 -1 (10170 GOTO 10200) L10170 8 L10200 (10180 IF P=1 THEN 10185) L10180 4 P 2 +1 7 L10185 (10181 PRINT " O ";) L10181 11 PL 8 PE +160 +207 +160 +160 -1 (10182 GOTO 10200) L10182 8 L10200 (10185 PRINT " X ";) L10185 11 PL 8 PE +160 +216 +160 +160 -1 (10200 IF I<>3 AND I<>6 THEN 10500) L10200 4 I 2 +3 7 E10200 4 I 2 +6 7 ;+2 8 L10500 E10200 (10300 PRINT) L10300 11 PL 8 PE +10 +141 -1 (10310 PRINT"----+-----+----") L10310 11 PL 8 PE +45 +45 +45 +45 +43 +45 +45 +45 +45 +45 +43 +45 +45 +45 +45 +10 +141 -1 (10400 GOTO 10800) L10400 8 L10800 (10500 IF I=9 THEN 10800) L10500 4 I 2 +9 7 L10800 (10600 PRINT"^";) L10600 11 PL 8 PE +33 +160 -1 (10800 NEXT I) L10800 4 I 2 +9 7 ;+3 10 I 8 L10010+2 (10810 PRINT) L10810 11 PL 8 PE +10 +141 -1 (10820 PRINT) L10820 11 PL 8 PE +10 +141 -1 (10830 PRINT) L10830 11 PL 8 PE +10 +141 -1 (10950 FOR I=1 TO 7 STEP 3) L10950 4 +1 5 I (11000 IF S[I]<>S[I+1]THEN 11150) L11000 0 I /4 S /2 S+1 7 ;+2 8 L11150 (11050 IF S[I]<>S[I+2]THEN 11150) L11050 0 I /4 S /2 S+2 7 ;+2 8 L11150 (11100 IF S[I]=-1 THEN 13500) L11100 0 I /4 S 2 -1 7 L13500 (11120 IF S[I]=1 THEN 12000) L11120 0 I /4 S 2 +1 7 L12000 (11150 NEXT I) L11150 4 I 2 +7 7 ;+4 4 I 1 +3 8 L10950+1 (11160 FOR I=1 TO 3) L11160 4 +1 5 I (11170 IF S[I]<>S[I+3] THEN 11500) L11170 0 I /4 S /2 S+3 7 ;+2 8 L11500 (11300 IF S[I]<>S[I+6] THEN 11500) L11300 0 I /4 S /2 S+6 7 ;+2 8 L11500 (11350 IF S[I]=-1 THEN 13500) L11350 0 I /4 S 2 -1 7 L13500 (11370 IF S[I]=1 THEN 12000) L11370 0 I /4 S 2 +1 7 L12000 (11500 NEXT I) L11500 4 I 2 +3 7 ;+3 10 I 8 L11160+2 (11510 FOR I=1 TO 9) L11510 4 +1 5 I (11520 IF S[I]=0 THEN 11550) L11520 0 I /4 S 7 L11550 (11530 NEXT I) L11530 4 I 2 +9 7 ;+3 10 I 8 L11510+2 (11540 GOTO 14000) L11540 8 L14000 (11550 IF S[5]<>G THEN 11700) L11550 4 S+5 2 G 7 ;+2 8 L11700 (11600 IF S[1]=G AND S[9]=G THEN 11800) L11600 4 S+1 2 G 7 ;+2 8 E11600 4 S+9 2 G 7 L11800 E11600 (11650 IF S[3]=G AND S[7]=G THEN 11800) L11650 4 S+3 2 G 7 ;+2 8 E11650 4 S+7 2 G 7 L11800 E11650 (11700 RETURN) L11700 0 LINK /8 1 (11800 IF G=-1 THEN 13500) L11800 4 G 2 -1 7 L13500 (12000 PRINT"YOU BEAT ME^^ GOOD GAME.") L12000 11 PL 8 PE +89 +207 +85 +160 +66 +197 +65 +212 +160 +77 +197 +33 +33 +160 +71 +207 +207 +68 +160 +71 +65 +77 +197 +46 +10 +141 -1 (12010 GOTO 20000) L12010 8 L20000 (13500 PRINT"I WIN, TURKEY^^^") L13500 11 PL 8 PE +201 +160 +215 +201 +78 +172 +160 +212 +85 +210 +75 +197 +89 +33 +33 +33 +10 +141 -1 (13510 GOTO 20000) L13510 8 L20000 (14000 PRINT"IT'S A DRAW. THANK YOU.") L14000 11 PL 8 PE +201 +212 +39 +83 +160 +65 +160 +68 +210 +65 +215 +46 +160 +212 +72 +65 +78 +75 +160 +89 +207 +85 +46 +10 +141 -1 (20000 END) L20000 15 2052 8 START LINK >1 C >1 G >1 H >1 I >1 J >1 K >1 M >1 P >1 S >10 PL >1 PE 0 PL /4 1 /9 2 15 6148 10 PL 8 PE %