0 'TICTAC.BA - author unknown 1 'Club 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE 2 ' 3 ' TICTAC 4 ' 5 DIM V(13),X$(278):DATA 2,10,80,8,12,78,82,68,70,88,90,92,72:FORI=1 TO 13:READ V(I):NEXTI 6 FOR I=0 TO 278 STEP 2:X$(I)=" ":NEXT I:' 7 ' Draw Grids 8 ' 9 CLS:FOR K=9 TO 189 STEP 60:FORI=K TO K+24 STEP 12:LINE (I,0)-(I,56):NEXTI:NEXTK:FOR I=12 TO 44 STEP 16:FOR J=0 TO 180 STEP 60:LINE (J,I)-(J+42,I):NEXTJ:NEXTI:' 10 ' Move Cursor, Enter x's and o's 11 ' 12 P=0:PRINT@0,CHR$(239) 13 A$=INKEY$:IF A$="" THEN 13 14 IF A$="x" OR A$="o" OR A$=" " THEN 17 15 P1=P+(2 AND A$=CHR$(28))-(2 AND A$=CHR$(29))+(80 AND A$=CHR$(31))-(80 AND A$=CHR$(30)):IF P1>278 OR P1<0 THEN P1=P 16 PRINT@P1,CHR$(239):PRINT@P,X$(P):P=P1:GOTO 13 17 PRINT@P,A$:X$(P)=A$:IF A$=" " THEN 13 18 ' 19 ' Check for Winner by Comparing Print Intervals 20 ' 21 FORI=1 TO 13:W=V(I):FORJ=1 TO 3:Y=P+W*J:IF Y>278 THEN 24 22 IF X$(Y)<>A$ THEN 24 23 NEXT J:GOTO 30 24 FOR K=1 TO 4-J:Y=P-W*K:IF Y<0 THEN 27 25 IF X$(Y)<>A$ THEN 27 26 NEXT K:GOTO 30 27 NEXT I:GOTO 13:' 28 ' Indicate Winner 29 ' 30 SOUND 4697,5:SOUND 3516,5:SOUND 2793,5:SOUND 2348,10:SOUND 2793,5:SOUND 2348,15:IF J=4 THEN Y=P 31 FOR S=0 TO 3:PRINT@133,," ":PRINT@(Y+S*W),A$:NEXT S:FOR S=0 TO 3:PRINT@133,"** ";A$;" WINS **":PRINT@(Y+S*W)," ":NEXT S:I$=INKEY$:IF I$="" THEN 31 32 GOTO 6