Compucolor.org – Virtual Media

Listing of file='TITATO.BAS;01' on disk='vmedia/startrek-sector.ccvf'

100 DIM SQ(64)
110 DIM SC(2)
120 DIM V(304):DIM U(65)
130 DIM RW(76)
140 PLOT 6,6,12,14
150 A$= "COMPUCOLOR"
160 PLOT 3,32- (LEN (A$)/ 2),10:PRINT A$
170 B$= "3-D TIC TAC TOE"
180 PLOT 3,32- (LEN (B$)/ 2),20:PRINT B$
190 PLOT  3,64,0
200 FOR I= 1TO 304
210 READ K
220 K= K+ 1
230 U(K)= U(K)+ 1
240 NEXT I
250 FOR I= 2TO 65
260 U(I)= U(I)+ U(I- 1)
270 NEXT I
280 RESTORE
290 FOR I= 0TO 303
300 READ K
310 L= U(K)
320 V(L)= INT (I/ 4)+ 1
330 U(K)= L+ 1
340 NEXT I
350 PLOT 12,15:J= 0
360 FOR I= 1TO 64
370 GOSUB 610
380 NEXT I
390 J= INT (RND (1)+ 1.5)
400 FOR TURN= 1TO 64
410 ON JGOTO 420,500
420 PLOT 3,1,1,6,15:PRINT SPC( 20):PLOT 3,1,1:INPUT "REDS MOVE ";I
430 PLOT 3,1,1
440 IF I< 1OR I> 64THEN 420
450 IF SQ(I)< > 0THEN PRINT "TAKEN ":GOTO 420
460 SQ(I)= J
470 GOSUB 610
480 GOSUB 720
490 J= 2:GOTO 580
500 PLOT  3,1,1,6,20:PRINT SPC( 20):PLOT  3,1,1:INPUT  "GREENS MOVE ";I
510 PLOT 3,1,1
520 IF I< 1OR I> 64THEN 500
530 IF SQ(I)< > 0THEN PRINT "TAKEN ":GOTO 500
540 SQ(I)= J
550 GOSUB 610
560 GOSUB 720
570 J= 1
580 NEXT TURN
590 LOAD "MENU":RUN
600 END
610 REM  PLOT NEXT
620 C= INT (3.5* J* J- 1.5* J+ 7.5)
630 X= (I- 1)AND 3
640 Y= ((I- 1)AND 12)/ 4
650 Z= ((I- 1)AND 48)/ 16
660 CX= 23+ 3* X+ 3* Y
670 CY= 3- X+ Y+ 8* Z
680 PLOT 3,CX,CY,6,C:PRINT LEFT$ (STR$ (I)+ " ",3)
690 PLOT 6,7
700 RETURN
710 PLOT 6,7
720 REM  I=NEW ADDITION
730 FOR M= U(I- 1)TO U(I)- 1
740 RW(V(M))= RW(V(M))+ 4* J- 3
750 IF RW(V(M))= 16* J- 12THEN SC(J)= SC(J)+ 1
760 NEXT M
770 PLOT 3,1,5:PRINT "RED","GREEN"
780 PLOT 3,1,7:PRINT SC(1),SC(2)
790 PLOT 15
800 RETURN
810 DATA 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
820 DATA 17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32
830 DATA 33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48
840 DATA 49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64
850 DATA 1,17,33,49,2,18,34,50,3,19,35,51,4,20,36,52
860 DATA 5,21,37,53,6,22,38,54,7,23,39,55,8,24,40,56
870 DATA 9,25,41,57,10,26,42,58,11,27,43,59,12,28,44,60
880 DATA 13,29,45,61,14,30,46,62,15,31,47,63,16,32,48,64
890 DATA 1,5,9,13,17,21,25,29,33,37,41,45,49,53,57,61
900 DATA 2,6,10,14,18,22,26,30,34,38,42,46,50,54,58,62
910 DATA 3,7,11,15,19,23,27,31,35,39,43,47,51,55,59,63
920 DATA 4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64
930 DATA 1,6,11,16,17,22,27,32,33,38,43,48,49,54,59,64
940 DATA 13,10,7,4,29,26,23,20,45,42,39,36,61,58,55,52
950 DATA 1,21,41,61,2,22,42,62,3,23,43,63,4,24,44,64
960 DATA 49,37,25,13,50,38,26,14,51,39,27,15,52,40,28,16
970 DATA 1,18,35,52,5,22,39,56,9,26,43,60,13,30,47,64
980 DATA 49,34,19,4,53,38,23,8,57,42,27,12,61,46,31,16
990 DATA 1,22,43,64,16,27,38,49,4,23,42,61,13,26,39,52