Compucolor.org – Virtual Media

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

100 GOTO 1030
110 DIM A(135)
120 OUT 8,255:OUT 8,247
130 K= PEEK (33209):FOR I= 0TO K:L= RND (1):NEXT I
140 HL= 9
150 PLOT 6,2,12,27,24,15
160 GOSUB 290
170 RESTORE 7680
180 FOR I= 1TO 135:READ A(I):NEXT I
190 GOSUB 270
200 IF P1= 1THEN P1= 0:GOTO 220
210 GOSUB 2500
220 V2= 1
230 IF P2= 1THEN P2= 0:GOTO 250
240 GOSUB 2790
250 V2= 0
260 GOTO 200
270 REM
280 GOTO 380
290 PLOT 14,6,6
300 PLOT 3,26,1
310 PRINT "TANK WARFARE"
320 PLOT 15,3,19,0:PRINT "   ff"
330 PLOT 3,19,1:PRINT "t   u"
340 PLOT 3,40,0:PRINT "ff   "
350 PLOT 3,40,1:PRINT "t   u"
360 PLOT 6,5,3,15,2:PRINT "COPYRIGHT 1980 BY DONALD R MILLER"
370 RETURN
380 PLOT 3,20,25
390 PLOT 6,7
400 GOSUB 290
410 GOSUB 2010
420 GOTO 910
430 B1= 0
440 K= INT (135* RND (1)+ 1)
450 IF B1= 1THEN 480
460 IF A(K)= 0THEN A(K)= 4:YL= K:B1= 1:GOTO 440
470 GOTO 440
480 IF A(K)= 0THEN A(K)= 3:TL= K:GOTO 500
490 GOTO 440
500 B1= 0:XL= YL:GOSUB 1290
510 YO= 0:CO= 4:IF A4> 32THEN YO= 4
520 YX= A4:YY= A2
530 YR= A3:YC= A5
540 GOTO 620
550 TP= YO+ 1:N= 1:GOSUB 4680
560 XL= TL:GOSUB 1290
570 IF A4< 33THEN CO= 0
580 CX= A4:CY= A2
590 CR= A3:CC= A5
600 TP= CO+ 1:N= 2:GOSUB 4680
610 RETURN
620 A$(1)= "    "
630 A$(2)= "    "
640 B$(1)= "  gg"
650 B$(2)= "  gg"
660 C$(1)= "   ~"
670 C$(2)= "   ~"
680 D$(1)= "  ~ "
690 D$(2)= "  ~ "
700 E$(1)= " n  "
710 E$(2)= " n  "
720 F$(1)= "    "
730 F$(2)= "    "
740 G$(1)= "|   "
750 G$(2)= "|   "
760 H$(1)= " |  "
770 H$(2)= " |  "
780 I$(1)= "    "
790 I$(2)= "    "
800 J$(1)= "gg  "
810 J$(2)= "gg  "
820 K$(1)= " ~  "
830 K$(2)= " ~  "
840 L$(1)= "  | "
850 L$(2)= "  | "
860 M$(1)= "   |"
870 M$(2)= "   |"
880 N$(1)= "~   "
890 N$(2)= "~   "
900 GOTO 550
910 REM
920 RETURN
930 REM
940 V4= 0:V5= 0
950 IF CB+ 16= YLOR CB- 16= YLOR CB+ 14= YLOR CB- 14= YLTHEN V4= 1
960 IF CB+ 16= TLOR CB- 16= TLOR CB+ 14= TLOR CB- 14= TLTHEN V5= 1
970 IF V4= 0AND V5= 0THEN RETURN
980 IF V4= 1AND V5= 1THEN V3= 2:RETURN
990 IF V4= 1THEN V3= 1:RETURN
1000 IF V5= 1THEN V3= 3
1010 RETURN
1020 RETURN
1030 REM
1040 DATA 245,229,197,1,206,40,205,36,0,202,-1,-1,11
1050 DATA 121,176,194,-1,-1,29,194,-1,-1,17,255,255,195
1060 DATA -1,-1,95,175,87,175,50,255,129,193,225,241,201
1070 TM= 256* PEEK (32941)+ PEEK (32940)
1080 IF TM> 65503THEN 1140
1090 RESTORE 1040
1100 FOR I= 1TO 39:READ A
1110 IF A> = 0AND A< > PEEK (TM+ I)THEN I= 39:A= 999
1120 NEXT I
1130 IF A< 256THEN 1250
1140 TM= TM- 39:RESTORE 1040
1150 FOR I= 1TO 39:READ A:POKE TM+ I,A- (A< 0):NEXT I
1160 Z= TM+ 29:AD= TM+ 11:GOSUB 1220
1170 Z= TM+ 7:AD= TM+ 17:GOSUB 1220
1180 Z= TM+ 4:AD= TM+ 21:GOSUB 1220
1190 Z= TM+ 32:AD= TM+ 27:GOSUB 1220
1200 GOTO 1230
1210 REM
1220 ZZ= INT (Z/ 256):POKE AD,Z- 256* ZZ:POKE AD+ 1,ZZ:RETURN
1230 Z= TM:AD= 32940:GOSUB 1220
1240 REM
1250 Z= TM+ 1:AD= 33283:GOSUB 1220
1260 POKE 33282,195
1270 CLEAR 50
1280 GOTO 110
1290 REM
1300 A1= INT ((XL- 1)/ 15)
1310 A2= 4+ A1* 3
1320 A3= A1+ 1
1330 A4= 58- (A3* 15- XL)* 4
1340 A5= 1+ (A4- 2)/ 4
1350 RETURN
1360 REM
1370 PLOT 6,2
1380 PLOT 3,A4,A2
1390 PRINT A$(N)
1400 PLOT 3,A4,A2+ 1
1410 PRINT B$(N)
1420 PLOT 3,A4,A2+ 2
1430 PRINT A$(N)
1440 RETURN
1450 PLOT 6,2
1460 PLOT 3,A4,A2
1470 PRINT C$(N)
1480 PLOT 3,A4,A2+ 1
1490 PRINT D$(N)
1500 PLOT 3,A4,A2+ 2
1510 PRINT A$(N)
1520 RETURN
1530 PLOT 6,2
1540 PLOT 3,A4,A2
1550 PRINT E$(N)
1560 PLOT 3,A4,A2+ 1
1570 PRINT A$(N)
1580 PLOT 3,A4,A2+ 2
1590 PRINT F$(N)
1600 RETURN
1610 PLOT 6,2
1620 PLOT 3,A4,A2
1630 PRINT G$(N)
1640 PLOT 3,A4,A2+ 1
1650 PRINT H$(N)
1660 PLOT 3,A4,A2+ 2
1670 PRINT I$(N)
1680 RETURN
1690 PLOT 6,2
1700 PLOT 3,A4,A2
1710 PRINT I$(N)
1720 PLOT 3,A4,A2+ 1
1730 PRINT J$(N)
1740 PLOT 3,A4,A2+ 2
1750 PRINT I$(N)
1760 RETURN
1770 PLOT 6,2
1780 PLOT 3,A4,A2
1790 PRINT I$(N)
1800 PLOT 3,A4,A2+ 1
1810 PRINT K$(N)
1820 PLOT 3,A4,A2+ 2
1830 PRINT N$(N)
1840 RETURN
1850 PLOT 6,2
1860 PLOT 3,A4,A2
1870 PRINT F$(N)
1880 PLOT 3,A4,A2+ 1
1890 PRINT A$(N)
1900 PLOT 3,A4,A2+ 2
1910 PRINT E$(N)
1920 RETURN
1930 PLOT 6,2
1940 PLOT 3,A4,A2
1950 PRINT A$(N)
1960 PLOT 3,A4,A2+ 1
1970 PRINT L$(N)
1980 PLOT 3,A4,A2+ 2
1990 PRINT M$(N)
2000 RETURN
2010 REM
2020 PLOT 6,4,15
2030 PLOT 3,2,3
2040 PRINT ""
2050 PLOT 3,2,31
2060 PRINT "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"
2070 PLOT 27,10
2080 PLOT 3,1,4
2090 PRINT "bbbbbbbbbbbbbbbbbbbbbbbbbbb"
2100 PLOT 3,62,4
2110 PRINT "aaaaaaaaaaaaaaaaaaaaaaaaaaa"
2120 PLOT 27,24
2130 BK$= "    "
2140 LL$= "|  ~"
2150 LM$= " cd "
2160 LN$= "~  |"
2170 FOR I= 1TO 135
2180 IF A(I)= 0THEN 2240
2190 IF A(I)= 10THEN PLOT 6,27:GOTO 2270
2200 IF A(I)= 11THEN PLOT 6,36:GOTO 2270
2210 IF A(I)= 12THEN PLOT 6,45:GOTO 2270
2220 IF A(I)= 13THEN PLOT 6,54:GOTO 2270
2230 IF A(I)= 2THEN PLOT 6,4:GOTO 2280
2240 IF TQ= 1THEN TQ= 0:RETURN
2250 NEXT I
2260 RETURN
2270 XL= I:GOSUB 1290:GOSUB 2340:GOTO 2240
2280 XL= I:GOSUB 1290
2290 PLOT 3,A4,A2:PRINT LL$
2300 PLOT 3,A4,A2+ 1
2310 PRINT LM$
2320 PLOT 3,A4,A2+ 2:PRINT LN$
2330 GOTO 2240
2340 PLOT 3,A4,A2:PRINT BK$
2350 PLOT 3,A4,A2+ 1:PRINT BK$
2360 PLOT 3,A4,A2+ 2:PRINT BK$
2370 RETURN
2380 REM
2390 V7= 1:RETURN
2400 IF V2= 0THEN 2450
2410 A(CB)= A(CB)- 1
2420 IF A(CB)< 10THEN A(CB)= 2
2430 V2= 0
2440 GOTO 2470
2450 A(CB)= A(CB)+ 1
2460 IF A(CB)> 13THEN A(CB)= 2
2470 I= CB
2480 TQ= 1
2490 GOTO 2190
2500 REM
2510 IF V1= 1THEN 2650
2520 V1= 1
2530 OUT 8,255
2540 PLOT 15,6,3,3,0,2
2550 PRINT "      SKILL LEVEL (0=EXPERT, 1=FAIR, 2=ROOKIE) ? "
2560 PLOT 6,0:POKE 33278,0
2570 K= RND (1)
2580 IF PEEK (33278)= 0THEN 2570
2590 PLOT 3,0,2,11:Q= PEEK (33278):IF Q= 13THEN Q= 48
2600 OUT 8,247
2610 Q$= CHR$ (Q)
2620 Q= VAL (Q$)
2630 IF Q< 0OR Q> 2THEN 2530
2640 GOSUB 430
2650 PLOT 6,1,3,28,2
2660 PRINT "ACTION ?"
2670 OUT 8,255
2680 AA= CALL (1+ 4* Q)
2690 OUT 8,247
2700 IF AA= - 1THEN PLOT 3,0,2,11:GOTO 2780
2710 PLOT 3,0,2,11
2720 IF AA= 13THEN 3580
2730 IF AA= 8THEN 4050
2740 IF AA= 28THEN 4100
2750 IF AA= 26THEN 4540
2760 IF AA= 25THEN 4610
2770 IF AA= 81THEN 3400
2780 RETURN
2790 REM
2800 IF CX= YXTHEN 2830
2810 IF CY= YYTHEN 3110
2820 GOTO 6980
2830 IF CY> YYTHEN 2940
2840 FOR L= 1TO YR- CR
2850 CB= TL+ L* 15
2860 IF A(CB)> 9THEN 3090
2870 IF A(CB)= 2AND CO= 6THEN 6900
2880 IF A(CB)= 2AND L= 1THEN 3100
2890 IF A(CB)= 4THEN 2910
2900 NEXT L
2910 IF CO= 6THEN 6030
2920 S1= 1
2930 TP= 15:GOTO 6480
2940 FOR L= 1TO CR- YR
2950 CB= TL- L* 15
2960 IF A(CB)> 9THEN 3040
2970 IF A(CB)= 2AND CO= 2THEN 6900
2980 IF A(CB)= 2AND L= 1THEN 3050
2990 IF A(CB)= 4THEN 3010
3000 NEXT L
3010 IF CO= 2THEN 6030
3020 S1= 1
3030 TP= - 15:GOTO 6480
3040 IF L> 1THEN TP= - 15:GOTO 6480
3050 IF CX< = 2THEN TP= 1:GOTO 6480
3060 IF CX= > 58THEN TP= - 1:GOTO 6480
3070 IF CO= 3OR CO= 4OR CO= 5THEN TP= - 1:GOTO 6480
3080 TP= 1:GOTO 6480
3090 IF L> 1THEN TP= 15:GOTO 6480
3100 GOTO 3050
3110 IF CX> YXTHEN 3270
3120 FOR L= 1TO YC- CC
3130 CB= TL+ L
3140 IF A(CB)> 9THEN 3220
3150 IF A(CB)= 2AND CO= 0THEN 6900
3160 IF A(CB)= 2AND L= 1THEN 3230
3170 IF A(CB)= 4THEN 3190
3180 NEXT L
3190 IF CO= 0THEN 6030
3200 S1= 1
3210 TP= 1:GOTO 6480
3220 IF L> 1THEN TP= 1:GOTO 6480
3230 IF CY< = 4THEN TP= 15:GOTO 6480
3240 IF CY= > 28THEN TP= - 15:GOTO 6480
3250 IF CO= 5OR CO= 6OR CO= 7THEN TP= 15:GOTO 6480
3260 TP= - 15:GOTO 6480
3270 FOR L= 1TO CC- YC
3280 CB= TL- L
3290 IF A(CB)> 9THEN 3370
3300 IF A(CB)= 2AND CO= 4THEN 6900
3310 IF A(CB)= 2AND L= 1THEN 3380
3320 IF A(CB)= 4THEN 3340
3330 NEXT L
3340 IF CO= 4THEN 6030
3350 S1= 1
3360 TP= - 1:GOTO 6480
3370 IF L> 1THEN TP= - 1:GOTO 6480
3380 GOTO 3230
3390 RETURN
3400 REM  EOJ
3410 FOR I= 0TO 500:NEXT I
3420 PLOT 14,6,1,3,25,1
3430 IF V3= 2THEN PRINT "EVERYONE LOSES"
3440 IF V3= 1THEN PRINT "   CC2 WINS   "
3450 IF V3= 3THEN PRINT "   YOU WIN !  "
3460 PLOT 14,6,6,3,23,3
3470 OUT 8,255
3480 INPUT "PLAY AGAIN (Y/N) ?";Q$
3490 OUT 8,247
3500 IF LEFT$ (Q$,1)< > "Y"THEN 3540
3510 YH= 0:CH= 0
3520 V1= 0:V2= 0:V3= 0
3530 GOTO 150
3540 PLOT 6,2,27,11,15
3550 OUT 8,255
3560 LOAD "MENU":RUN
3570 END
3580 REM
3590 GF= YO+ 1
3600 ON GFGOTO 4700,4790,4900,4990,5100,5190,5300,5390
3610 GOTO 2780
3620 IF V7= 1THEN V7= 0:GOSUB 2400:GOTO 3840
3630 GOTO 3840
3640 REM
3650 IF YO= 0THEN FX= 4:TX= - 4:FY= 1:TY= 0
3660 IF YO= 1THEN FX= 4:TX= - 4:FY= - 1:TY= 3
3670 IF YO= 2THEN FX= 1:TX= 0:FY= - 1:TY= 3
3680 IF YO= 3THEN FX= - 1:TX= 4:FY= - 1:TY= 3
3690 IF YO= 4THEN FX= - 1:TX= 4:FY= 1:TY= 0
3700 IF YO= 5THEN FX= - 1:TX= 4:FY= 3:TY= - 3
3710 IF YO= 6THEN FX= 1:TX= 0:FY= 3:TY= - 3
3720 IF YO= 7THEN FX= 4:TX= - 4:FY= 3:TY= - 3
3730 XL= YL:GOSUB 1290:S2= A2:S4= A4
3740 IF S5= 1THEN XL= TL:GOSUB 1290:GOTO 3780
3750 XL= CB:GOSUB 1290
3760 IF YL+ 1= CBOR YL- 1= CBOR YL+ 15= CBOR YL- 15= CBTHEN 3620
3770 IF YL+ 16= CBOR YL- 16= CBOR YL+ 14= CBOR YL- 14= CBTHEN 3620
3780 PLOT 6,7:GOSUB 6420
3790 IF S6= 1THEN 3830
3800 IF S5= 3THEN 5640
3810 IF V7= 1THEN V7= 0:GOSUB 2400
3820 FOR L= 0TO 200:NEXT L
3830 PLOT 6,0:GOSUB 6420
3840 IF S6= 1THEN S6= 0:GOTO 5810
3850 IF S5= 2THEN S5= 0:GOTO 5500
3860 IF S5= 0THEN 2780
3870 IF S5= 3THEN S5= 0:GOTO 2780
3880 S5= 0
3890 A4= CX:A2= CY:TP= CO+ 1
3900 P1= 1
3910 FOR L1= 0TO 6
3920 PLOT 6,2:GOSUB 2340
3930 PLOT 6,2:N= 2:GOSUB 4680
3940 NEXT L1
3950 GOSUB 6120
3960 TP= CO+ 1
3970 GOSUB 4680
3980 A4= YX:A2= YY:N= 1:TP= YO+ 1:GOSUB 4680
3990 CH= CH+ 1
4000 PLOT 14,6,7,3,56,1
4010 PRINT "YOU"CH
4020 PLOT 15,6,2
4030 IF CH> HLTHEN V3= 3:GOTO 3400
4040 GOTO 2780
4050 REM
4060 IF YO= 0OR YO= 1OR YO= 7THEN TP= - 1:GOTO 4190
4070 IF YO= 3OR YO= 5OR YO= 4THEN TP= 1:GOTO 4150
4080 IF YO= 2THEN TP= 15:GOTO 4250
4090 TP= - 15:GOTO 4220
4100 REM
4110 IF YO= 0OR YO= 1OR YO= 7THEN TP= 1:GOTO 4150
4120 IF YO= 3OR YO= 4OR YO= 5THEN TP= - 1:GOTO 4190
4130 IF YO= 2THEN TP= - 15:GOTO 4220
4140 TP= 15:GOTO 4250
4150 IF YL+ 1> 135THEN 4430
4160 IF INT (YL/ 15)= YL/ 15THEN 4430
4170 IF A(YL+ TP)= 0THEN 4320
4180 GOTO 4430
4190 IF YL- 1< 1THEN 4430
4200 IF INT ((YL- 1)/ 15)= (YL- 1)/ 15THEN 4430
4210 GOTO 4170
4220 IF YL- 15< 1THEN 4430
4230 IF YL< 16THEN 4430
4240 GOTO 4170
4250 IF YL+ 15> 135THEN 4430
4260 IF YL> 120THEN 4430
4270 GOTO 4170
4280 FOR L1= 0TO 6
4290 PLOT 6,8,12,6,24,12,6,32,12,6,48,12,6,2,12
4300 NEXT L1
4310 GOTO 3400
4320 REM
4330 A(YL)= 0
4340 YL= YL+ TP
4350 A(YL)= 4
4360 PLOT 6,2:A2= YY:A4= YX:GOSUB 2340
4370 XL= YL:GOSUB 1290:YX= A4:YY= A2
4380 YR= A3:YC= A5
4390 TP= YO+ 1
4400 N= 1
4410 GOSUB 4680
4420 GOTO 2780
4430 IF YL+ TP> 135OR YL+ TP< 1THEN 4460
4440 IF A(YL+ TP)= 2THEN V3= 1:GOTO 4280
4450 IF A(YL+ TP)> 9THEN CB= YL+ TP:GOSUB 2380
4460 TP= YO+ 1
4470 A4= YX:A2= YY
4480 FOR L1= 0TO 6
4490 PLOT 6,2:GOSUB 2340
4500 N= 1
4510 GOSUB 4680
4520 NEXT L1
4530 GOTO 2780
4540 REM
4550 YO= YO+ 1:IF YO> 7THEN YO= 0
4560 TP= YO+ 1
4570 A4= YX:A2= YY
4580 N= 1
4590 GOSUB 4680
4600 GOTO 2780
4610 REM
4620 YO= YO- 1:IF YO< 0THEN YO= 7
4630 TP= YO+ 1
4640 A4= YX:A2= YY
4650 N= 1
4660 GOSUB 4680
4670 GOTO 2780
4680 ON TPGOSUB 1360,1450,1530,1610,1690,1770,1850,1930
4690 RETURN
4700 REM
4710 IF INT (YL/ 15)= YL/ 15THEN 2780
4720 FOR L= 1TO 15- YC
4730 CB= YL+ L
4740 IF A(CB)= 3THEN S5= 1:GOTO 3640
4750 IF A(CB)> 9THEN GOSUB 2380:GOTO 3640
4760 IF A(CB)= 2THEN S5= 2:GOTO 3640
4770 NEXT L
4780 GOTO 3640
4790 REM
4800 IF YL< 16THEN 2780
4810 IF INT (YL/ 15)= YL/ 15THEN 2780
4820 K= YR- 1:IF YC> YRAND YR- 1> 15- YCTHEN K= 15- YC
4830 FOR L= 1TO K
4840 CB= YL- 14* L
4850 IF A(CB)= 3THEN S5= 1:GOTO 3640
4860 IF A(CB)> 9THEN GOSUB 2380:S5= 3:GOTO 3640
4870 IF A(CB)= 2THEN S5= 2:GOTO 3640
4880 NEXT L
4890 GOTO 3640
4900 REM
4910 IF YL< 16THEN 2780
4920 FOR L= 1TO YR- 1
4930 CB= YL- 15* L
4940 IF A(CB)= 3THEN S5= 1:GOTO 3640
4950 IF A(CB)> 9THEN GOSUB 2380:GOTO 3640
4960 IF A(CB)= 2THEN S5= 2:GOTO 3640
4970 NEXT L
4980 GOTO 3640
4990 REM
5000 IF YL< 16THEN 2780
5010 IF INT ((YL- 1)/ 15)= (YL- 1)/ 15THEN 2780
5020 K= YC- 1:IF YC> YRTHEN K= YR- 1
5030 FOR L= 1TO K
5040 CB= YL- 16* L
5050 IF A(CB)= 3THEN S5= 1:GOTO 3640
5060 IF A(CB)> 9THEN GOSUB 2380:S5= 3:GOTO 3640
5070 IF A(CB)= 2THEN S5= 2:GOTO 3640
5080 NEXT L
5090 GOTO 3640
5100 REM
5110 IF INT ((YL- 1)/ 15)= (YL- 1)/ 15THEN 2780
5120 FOR L= 1TO YC- 1
5130 CB= YL- L
5140 IF A(CB)= 3THEN S5= 1:GOTO 3640
5150 IF A(CB)> 9THEN GOSUB 2380:GOTO 3640
5160 IF A(CB)= 2THEN S5= 2:GOTO 3640
5170 NEXT L
5180 GOTO 3640
5190 REM
5200 IF INT ((YL- 1)/ 15)= (YL- 1)/ 15THEN 2780
5210 IF YL> 120THEN 2780
5220 K= YC- 1:IF YC- 1> 9- YRTHEN K= 9- YR
5230 FOR L= 1TO K
5240 CB= YL+ 14* L
5250 IF A(CB)= 3THEN S5= 1:GOTO 3640
5260 IF A(CB)> 9THEN GOSUB 2380:S5= 3:GOTO 3640
5270 IF A(CB)= 2THEN S5= 2:GOTO 3640
5280 NEXT L
5290 GOTO 3640
5300 REM
5310 IF YL> 120THEN 2780
5320 FOR L= 1TO 9- YR
5330 CB= YL+ 15* L
5340 IF A(CB)= 3THEN S5= 1:GOTO 3640
5350 IF A(CB)> 9THEN 3640
5360 IF A(CB)= 2THEN S5= 2:GOTO 3640
5370 NEXT L
5380 GOTO 3640
5390 REM
5400 IF INT (YL/ 15)= YL/ 15THEN 2780
5410 IF YL> 120THEN 2780
5420 K= 9- YR:IF YC> YRAND 9- YR> 15- YCTHEN K= 15- YC
5430 FOR L= 1TO K
5440 CB= YL+ 16* L
5450 IF A(CB)= 3THEN S5= 1:GOTO 3640
5460 IF A(CB)> 9THEN GOSUB 2380:S5= 3:GOTO 3640
5470 IF A(CB)= 2THEN S5= 2:GOTO 3640
5480 NEXT L
5490 GOTO 3640
5500 GOSUB 5510:GOTO 2780
5510 GOSUB 930
5520 IF V3< > 0THEN 4280
5530 A(CB)= 0
5540 XL= CB
5550 GOSUB 1290
5560 FOR V8= 8TO 48STEP 8
5570 PLOT 6,V8
5580 GOSUB 2340
5590 FOR L2= 0TO 5:NEXT L2
5600 NEXT V8
5610 PLOT 6,2
5620 GOSUB 2340
5630 RETURN
5640 REM
5650 IF V7= 1THEN V7= 0:GOSUB 2400
5660 S6= 1
5670 U1= S4:U2= FX:U3= S2:U4= FY:U5= TX:U6= TY
5680 U7= YL:U8= YO
5690 U9= YC:U0= YR
5700 UA= YX:UB= YY
5710 UC= A4:UD= A2
5720 IF YO= 1THEN 5870
5730 IF YO= 3THEN 5910
5740 IF YO= 5THEN 5950
5750 IF YO= 7THEN 5990
5760 END
5770 YL= CB
5780 XL= YL:GOSUB 1290:YC= A5:YR= A3
5790 YX= A4:YY= A2
5800 GOTO 3580
5810 S4= U1:FX= U2:S2= U3:FY= U4:TX= U5:TY= U6
5820 YL= U7:YO= U8
5830 YC= U9:YR= U0
5840 A4= UC:A2= UD
5850 YX= UA:YY= UB
5860 GOTO 3830
5870 YO= 7
5880 IF CB< 16THEN 5900
5890 IF A(CB- 15)> 9OR A(CB+ 15)> 9THEN YO= 3
5900 GOTO 5770
5910 YO= 5
5920 IF CB< 16THEN 5940
5930 IF A(CB- 15)> 9OR A(CB+ 15)> 9THEN YO= 1
5940 GOTO 5770
5950 YO= 3
5960 IF CB> 120THEN 5980
5970 IF A(CB- 15)> 9OR A(CB+ 15)> 9THEN YO= 7
5980 GOTO 5770
5990 YO= 1
6000 IF CB> 120THEN 6020
6010 IF A(CB- 15)> 9OR A(CB+ 15)> 9THEN YO= 5
6020 GOTO 5770
6030 GOTO 6290
6040 A4= YX:A2= YY:TP= YO+ 1
6050 P2= 1
6060 FOR L1= 0TO 6
6070 PLOT 6,2:GOSUB 2340
6080 PLOT 6,2:N= 1:GOSUB 4680
6090 NEXT L1
6100 GOSUB 6120
6110 GOTO 6200
6120 K= INT (2* RND (1)+ 1)
6130 IF K= 1THEN YO= YO+ 1:CO= CO+ 1:GOTO 6150
6140 YO= YO- 1:CO= CO- 1
6150 IF YO> 7THEN YO= 0
6160 IF CO> 7THEN CO= 0
6170 IF YO< 0THEN YO= 7
6180 IF CO< 0THEN CO= 7
6190 RETURN
6200 TP= YO+ 1
6210 N= 1:GOSUB 4680
6220 A4= CX:A2= CY:N= 2:TP= CO+ 1:GOSUB 4680
6230 YH= YH+ 1
6240 PLOT 14,6,1,8
6250 PRINT "CC2"YH
6260 PLOT 15,6,2
6270 IF YH> HLTHEN V3= 1:GOTO 3400
6280 GOTO 3390
6290 IF CO= 0THEN FX= 4:FY= 1:GOTO 6370
6300 IF CO= 1THEN FX= 4:FY= - 1:GOTO 6370
6310 IF CO= 2THEN FX= 1:FY= - 1:GOTO 6370
6320 IF CO= 3THEN FX= - 1:FY= - 1:GOTO 6370
6330 IF CO= 4THEN FX= - 1:FY= 1:GOTO 6370
6340 IF CO= 5THEN FX= - 1:FY= 3:GOTO 6370
6350 IF CO= 6THEN FX= 1:FY= 3:GOTO 6370
6360 FX= 4:FY= 3
6370 XL= TL:GOSUB 1290:S2= A2:S4= A4
6380 TX= 0:TY= 0
6390 IF SW= 0THEN XL= YL:GOSUB 1290:GOTO 6410
6400 XL= CB:GOSUB 1290
6410 PLOT 6,1:GOSUB 6420:GOTO 6440
6420 PLOT 2,2* (S4+ FX),126- 4* (S2+ FY),242,2* (A4+ 1+ TX),126- 4* (A2+ 1+ TY),255
6430 RETURN
6440 FOR L= 0TO 200:NEXT L
6450 PLOT 6,0:GOSUB 6420
6460 IF SW= 0THEN 6040
6470 SW= 0:GOTO 6970
6480 REM
6490 IF TP= 1THEN 6560
6500 IF TP= - 1THEN 6710
6510 IF TP= 15THEN 6770
6520 IF CO= 2THEN 6620
6530 IF CO= 6THEN 6620
6540 IF CO= 1OR CO= 5OR CO= 0THEN 6810
6550 GOTO 6870
6560 IF CO= 2THEN 6870
6570 IF CO= 6THEN 6810
6580 IF S1= 0THEN 6620
6590 S1= 0
6600 IF CO= 1THEN 6870
6610 GOTO 6810
6620 IF A(TL+ TP)= 2THEN 3390
6630 IF A(TL+ TP)< > 0THEN 6810
6640 A(TL)= 0
6650 TL= TL+ TP
6660 A(TL)= 3
6670 PLOT 6,2:A2= CY:A4= CX:GOSUB 2340
6680 XL= TL:GOSUB 1290:CX= A4:CY= A2
6690 CR= A3:CC= A5
6700 GOTO 6830
6710 IF CO= 2THEN 6810
6720 IF CO= 6THEN 6870
6730 IF S1= 0THEN 6620
6740 S1= 0
6750 IF CO= 3THEN 6810
6760 GOTO 6870
6770 IF CO= 6THEN 6620
6780 IF CO= 2THEN 6620
6790 IF CO= 5OR CO= 1OR CO= 4THEN 6810
6800 GOTO 6870
6810 CO= CO+ 1:IF CO> 7THEN CO= 0
6820 A2= CY:A4= CX
6830 TP= CO+ 1
6840 N= 2
6850 GOSUB 4680
6860 GOTO 6890
6870 CO= CO- 1:IF CO< 0THEN CO= 7
6880 GOTO 6820
6890 GOTO 3390
6900 REM
6910 IF CO= 1OR CO= 3OR CO= 5OR CO= 7THEN 6930
6920 GOTO 6960
6930 IF L< > 1THEN 6960
6940 TP= 1:IF CO= 3OR CO= 5THEN TP= - 1
6950 GOTO 6480
6960 SW= 1:GOTO 6290
6970 GOSUB 5510:GOTO 3390
6980 REM
6990 IF ABS (CC- YC)> ABS (CR- YR)THEN 7160
7000 IF ABS (CC- YC)< ABS (CR- YR)THEN 7220
7010 IF CX> YXTHEN 7280
7020 IF CY> YYTHEN 7550
7030 FOR L= 1TO YC- CC
7040 CB= TL+ L* 16
7050 IF A(CB)> 9THEN GOSUB 2380:GOTO 7100
7060 IF A(CB)= 2AND CO= 7THEN 6900
7070 IF A(CB)= 4THEN 7090
7080 NEXT L
7090 IF CO= 7THEN 6030
7100 IF CO= 6OR CO= 2THEN 7120
7110 GOTO 7140
7120 IF A(TL+ 15)= 0THEN TP= 15:GOTO 6480
7130 TP= 1:GOTO 6480
7140 IF A(TL+ 1)= 0THEN 7130
7150 TP= 15:GOTO 6480
7160 IF CX> YXTHEN 7200
7170 IF A(TL+ 1)= 0THEN TP= 1:GOTO 6480
7180 IF CY< YYTHEN TP= 15:GOTO 6480
7190 TP= - 15:GOTO 6480
7200 IF A(TL- 1)= 0THEN TP= - 1:GOTO 6480
7210 GOTO 7180
7220 IF CY> YYTHEN 7260
7230 IF A(TL+ 15)= 0THEN TP= 15:GOTO 6480
7240 IF CX< YXTHEN TP= 1:GOTO 6480
7250 TP= - 1:GOTO 6480
7260 IF A(TL- 15)= 0THEN TP= - 15:GOTO 6480
7270 GOTO 7240
7280 IF CY> YYTHEN 7420
7290 FOR L= 1TO CC- YC
7300 CB= TL+ L* 14
7310 IF A(CB)> 9THEN GOSUB 2380:GOTO 7360
7320 IF A(CB)= 2AND CO= 5THEN 6900
7330 IF A(CB)= 4THEN 7350
7340 NEXT L
7350 IF CO= 5THEN 6030
7360 IF CO= 2OR CO= 6THEN 7380
7370 GOTO 7400
7380 IF A(TL+ 15)= 0THEN TP= 15:GOTO 6480
7390 TP= - 1:GOTO 6480
7400 IF A(TL- 1)= 0THEN 7390
7410 TP= 15:GOTO 6480
7420 FOR L= 1TO CC- YC
7430 CB= TL- L* 16
7440 IF A(CB)> 9THEN GOSUB 2380:GOTO 7490
7450 IF A(CB)= 2AND CO= 3THEN 6900
7460 IF A(CB)= 4THEN 7480
7470 NEXT L
7480 IF CO= 3THEN 6030
7490 IF CO= 2OR CO= 6THEN 7510
7500 GOTO 7530
7510 IF A(TL- 15)= 0THEN TP= - 15:GOTO 6480
7520 TP= - 1:GOTO 6480
7530 IF A(TL- 1)= 0THEN 7520
7540 TP= - 15:GOTO 6480
7550 FOR L= 1TO YC- CC
7560 CB= TL- L* 14
7570 IF A(CB)> 9THEN GOSUB 2380:GOTO 7620
7580 IF A(CB)= 2AND CO= 1THEN 6900
7590 IF A(CB)= 4THEN 7610
7600 NEXT L
7610 IF CO= 1THEN 6030
7620 IF CO= 2OR CO= 6THEN 7640
7630 GOTO 7660
7640 IF A(TL- 15)= 0THEN TP= - 15:GOTO 6480
7650 TP= 1:GOTO 6480
7660 IF A(TL+ 1)= 0THEN 7650
7670 TP= - 15:GOTO 6480
7680 DATA 0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,11,11,0
7690 DATA 0,0,0,2,0,0,12,12,12,0,0,2,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,13,0
7700 DATA 0,13,0,0,10,0,0,2,0,0,10,0,0,13,0,0,13,0,0,0,0,0,0,0,0,0,0,0,13,0
7710 DATA 0,0,0,2,0,0,12,12,12,0,0,2,0,0,0,0,11,11,0,0,0,0,0,0,0,0,0,11,11,0
7720 DATA 0,0,0,0,0,0,0,10,0,0,0,0,0,0,0
7730 END