10 KEY OFF:CLS
20 SCREEN 0
30 WIDTH 40
40 PRINT"???????????????????????????????????????"
50 PRINT"??????????????????????????????????????"
60 PRINT"??                                   ??"
70 PRINT"??            2077-A.BAS             ??"
80 PRINT"??              TANK                 ??"
90 PRINT"??                                   ??"
100 PRINT"??                                   ??"
110 PRINT"?? BROUGHT TO YOU BY THE MEMBERS OF  ??"
120 PRINT"??      ????? ????? ????? ?????      ??"
130 PRINT"??        ?   ?   ? ?     ?   ?      ??"
140 PRINT"??        ?   ????? ?     ?   ?      ??"
150 PRINT"??        ?   ?     ?     ?   ?      ??"
160 PRINT"??      ????? ?     ????? ?????      ??"
170 PRINT"??                                   ??"
180 PRINT"??      International PC Owners      ??"
190 PRINT"??                                   ??"
200 PRINT"??P.O. Box 10426, Pittsburgh PA 15234??"
210 PRINT"??                                   ??"
220 PRINT"??????????????????????????????????????"
230 PRINT"???????????????????????????????????????"
240 PRINT
250 PRINT "       PRESS ANY KEY TO CONTINUE
260 A$=INKEY$: IF A$="" THEN 260
270 WIDTH 80
280 CLS
1000 '<====={ TANK }=====>
1010 'Danny Y. Toronot User Group + JULIAN M.
1020 CLEAR:SOU=0:KEY OFF:RB$=CHR$(248):LB$=CHR$(42)
1030 GOSUB 2000:GOSUB 2150:GOSUB 1450:SP$=CHR$(32):RP$=CHR$(232):LP$=CHR$(233)
1040 A=20:B=77:E=3:F=3:D=0:G=0:H=0:I=0:K=0:Q=0:R=0:S=5:T=0:W=5:U=0:GOSUB 1990
1050 LOCATE 22,26:COLOR 0,7:PRINT"TO END GAME PRESS THE ESC BUTTON":COLOR 7,0
1060 LOCATE 1,38:COLOR 0,7:PRINT"TANK!":COLOR 7,0:EX$=CHR$(8)
1070 IF SOU=0 THEN LOCATE 1,65:COLOR 0,7:PRINT"SOUND ON "
1080 IF SOU=2 THEN LOCATE 1,65:COLOR 0,7:PRINT"SOUND OFF"
1090 COLOR 7,0
1100 C$=INKEY$
1110 IF C$="I"OR C$="i"THEN GOSUB 2280:GOTO 1070
1120 IF C$="O"OR C$="o"THEN SOU=2:GOTO 1070
1130 IF C$="P"OR C$="p"THEN SOU=0:GOTO 1070
1140 IF C$=CHR$(27)THEN 2030
1150 IF C$="M"OR C$="K"OR C$="L"THEN 1100
1160 IF RIGHT$(C$,1)="H"OR C$="8"THEN X$="I":GOSUB 1280
1170 IF C$="W"OR C$="w"THEN X$="W":GOSUB 1360
1180 IF RIGHT$(C$,1)="P"OR C$="2"THEN X$="M":GOSUB 1320
1190 IF C$="X"OR C$="x"THEN X$="X":GOSUB 1400
1200 IF RIGHT$(C$,1)="M"OR C$="6"THEN X$="L":GOSUB 1340
1210 IF C$="D"OR C$="d"THEN X$="D":GOSUB 1420
1220 IF RIGHT$(C$,1)="K"OR C$="4"THEN X$="J":GOSUB 1300
1230 IF C$="A"OR C$="a"THEN X$="A":GOSUB 1380
1240 IF RIGHT$(C$,1)="R"OR C$="0"OR C$="5"THEN GOSUB 1470
1250 IF C$="S"OR C$="s"THEN GOSUB 1600
1260 LOCATE A,B:PRINT RP$
1270 LOCATE E,F:PRINT LP$:GOTO 1100
1280 IF A-1<2 THEN  RETURN
1290 LOCATE A,B:PRINT SP$:A=A-1:RETURN
1300 IF B-1<2 THEN RETURN
1310 LOCATE A,B:PRINT SP$:B=B-1:RETURN
1320 IF A+1>21 THEN RETURN
1330 LOCATE A,B:PRINT SP$:A=A+1:RETURN
1340 IF B+1>79 THEN RETURN
1350 LOCATE A,B:PRINT SP$:B=B+1:RETURN
1360 IF E-1<2 THEN RETURN
1370 LOCATE E,F:PRINT SP$:E=E-1:RETURN
1380 IF F-1<2 THEN RETURN
1390 LOCATE E,F:PRINT SP$:F=F-1:RETURN
1400 IF E+1>21 THEN RETURN
1410 LOCATE E,F:PRINT SP$:E=E+1:RETURN
1420 IF F+1>79 THEN RETURN
1430 LOCATE E,F:PRINT SP$:F=F+1:RETURN
1440 RETURN
1450 GOSUB 2000:LOCATE 22,10
1460 COLOR 0,7:PRINT"TANKS":LOCATE 22,68:PRINT"TANKS":COLOR 7,0:RETURN
1470 G=A:U=B:IF X$="I"THEN 1520
1480 IF X$="M"THEN 1540
1490 IF X$="L"THEN 1560
1500 IF X$="J"THEN 1580
1510 LOCATE G,B:PRINT SP$:LOCATE A,U:PRINT SP$:GOSUB 2240:RETURN
1520 LOCATE A,B:PRINT RP$:LOCATE G,B:PRINT SP$:G=G-1:LOCATE G,B:COLOR 15,0:PRINT RB$:COLOR 7,0:GOSUB 1730:IF G<3 THEN 1510
1530 GOTO 1520
1540 LOCATE A,B:PRINT RP$:LOCATE G,B:PRINT SP$: G=G+1:LOCATE G,B:COLOR 15,0:PRINT RB$:COLOR 7,0:GOSUB 1730:IF G>20 THEN 1510
1550 GOTO 1540
1560 LOCATE A,B:PRINT RP$:LOCATE A,U:PRINT SP$:U=U+1:LOCATE A,U:COLOR 15,0:PRINT RB$:COLOR 7,0:GOSUB 1730:IF U>78 THEN 1510
1570 GOTO 1560
1580 LOCATE A,B:PRINT RP$:LOCATE A,U:COLOR 15,0:PRINT SP$:U=U-1:LOCATE A,U:COLOR 15,0:PRINT RB$:COLOR 7,0:GOSUB 1730:IF U<3 THEN 1510
1590 GOTO 1580
1600 G=E:U=F:IF X$="W"THEN 1650
1610 IF X$="X"THEN 1670
1620 IF X$="D"THEN 1690
1630 IF X$="A"THEN 1710
1640 LOCATE G,F:PRINT SP$:LOCATE E,U:PRINT SP$:GOSUB 2240:RETURN
1650 LOCATE E,F:PRINT LP$:LOCATE G,F:PRINT SP$:G=G-1:LOCATE G,F:COLOR 15,0:PRINT LB$:COLOR 7,0:GOSUB 1860:IF G<3 THEN 1640
1660 GOTO 1650
1670 LOCATE E,F:PRINT LP$:LOCATE G,F:PRINT SP$:G=G+1:LOCATE G,F:COLOR 15,0:PRINT LB$:COLOR 7,0:GOSUB 1860:IF G>20 THEN 1640
1680 GOTO 1670
1690 LOCATE E,F:PRINT LP$:LOCATE E,U:PRINT SP$:U=U+1:LOCATE E,U:COLOR 15,0:PRINT LB$:COLOR 7,0:GOSUB 1860:IF U>78 THEN 1640
1700 GOTO 1690
1710 LOCATE E,F:PRINT LP$:LOCATE E,U:PRINT SP$:U=U-1:LOCATE E,U:COLOR 15,0:PRINT LB$:COLOR 7,0:GOSUB 1860:IF U<3  THEN 1640
1720 GOTO 1710:'REM ROUTINE TO SCORE AND SOUND
1730 IF G=E THEN 1750
1740 GOTO 1760
1750 IF U=F THEN 1770
1760 RETURN
1770 FOR J=1 TO 25:LOCATE E,F:PRINT EX$:LOCATE E,F:COLOR 0,7:PRINT EX$:COLOR 7,0
1780 IF SOU=2 THEN 1820
1790 COLOR 7,0:SOUND 440,.4
1800 SOUND 230.81,.4
1810 SOUND 780 ,.4
1820 NEXT J
1830 W=W-1
1840 IF W<1 THEN WI=2:GOTO 2030
1850 GOSUB 1990:GOTO 1100
1860 IF G=A THEN 1880
1870 GOTO 1890
1880 IF U=B THEN 1900
1890 RETURN
1900 FOR J=1 TO 25:LOCATE A,B:PRINT EX$:LOCATE A,B:COLOR 0,7:PRINT EX$:COLOR 7,0
1910 IF SOU=2 THEN 1950
1920 SOUND 440,.4
1930 SOUND 230.81,.4
1940 SOUND 780 ,.4
1950 NEXT J
1960 S=S-1
1970 IF S<1 THEN WI=1:GOTO 2030
1980 GOSUB 1990:GOTO 1100
1990 LOCATE 23,11:PRINT LP$;W:LOCATE 23,69:PRINT RP$;S:RETURN
2000 CLS:LL$=CHR$(0):LM$=CHR$(0):LL$=CHR$(219):FOR CA=1 TO 79'BOARDER
2010 LM$=LM$+LL$:NEXT:LOCATE 1,1:PRINT LM$:LOCATE 22,1:PRINT LM$:FOR CA=1 TO 22
2020 LOCATE CA,1:PRINT LL$:LOCATE CA,80:PRINT LL$:NEXT:CA=0:RETURN
2030 GOSUB 2000:'TO END GAME
2040 LOCATE 9,37:COLOR 1,0:PRINT" TANK !":COLOR 7,0
2050 COLOR 7,0:LOCATE 14,32:IF WI=1 THEN CH=233:GOTO 2080
2060 IF WI=2 THEN CH=232:GOTO 2080
2070 GOTO 2090
2080 COLOR 19,0:PRINT CHR$(CH)" IS THE WINNER!!!!":COLOR 7,0
2090 LOCATE 18,26:PRINT"DO YOU WISH TO PLAY AGAIN (Y/N) ";
2100 C$=INPUT$(1)
2110 IF C$="Y" OR C$="y" THEN  1020
2120 IF C$="N" OR C$="n" THEN 2140
2130 BEEP:GOTO 2090
2140 CLS:LOCATE 11,35:COLOR 17,0:PRINT"SEE YA'":COLOR 7,0:LOCATE 22,1:END
2150 LOCATE 6,36:COLOR 1,0:PRINT" TANK !":COLOR 7,0
2160 LOCATE 10,13:PRINT"PRESS "CHR$(34)"I"CHR$(34)" TO LEARN THE RULES OF THE GAME DURING GAME PLAY"
2170 LOCATE 12,15:PRINT"PRESS "CHR$(34)"O"CHR$(34)" TO TURN SOUND OFF ANYTIME DURING GAME PLAY"
2180 LOCATE 14,15:PRINT"PRESS "CHR$(34)"P"CHR$(34)" TO TURN SOUND ON ANYTIME DURING GAME PLAY"
2190 LOCATE 16,24:PRINT"NUMBER OF TANKS PER PLAYER IS FIVE(5)"
2200 LOCATE 20,28:PRINT"PRESS ANY KEY TO CONTINUE":LOCATE 18,24:PRINT"TO END GAME PRESS THE ESC BUTTON"
2210 A$=INKEY$
2220 IF A$="" THEN 2210
2230 RETURN:'REM NOISE FOR MISSES
2240 IF SOU=2 THEN RETURN
2250 SOUND  250,.7
2260 SOUND  450,.9
2270 SOUND  350,.9:RETURN
2280 GOSUB 2000:LOCATE 8,36:COLOR 1,0:PRINT" TANK !"
2290 COLOR 7,0:LOCATE 12,27:PRINT" THIS IS THE GAME OF TANK.":LOCATE 13,17
2300 PRINT" THE GAME LETS TWO TANK COMMANDERS FIGHT EACH OTHER.":LOCATE 14,8
2310 PRINT"THE PLAYER ON THE LEFT USES THE W,A,X,D AND S AS THE FIRING BUTTON."
2320 LOCATE 15,7:PRINT"THE PLAYER ON THE RIGHT USES THE 8,4,2,6 AND 0 AS THE FIRING BUTTON."
2330 LOCATE 16,26:PRINT"TO TURN OFF SOUND PRESS "CHR$(34)"O"CHR$(34)"."
2340 LOCATE 17,27:PRINT"TO TURN ON SOUND PRESS "CHR$(34)"P"CHR$(34)"."
2350 LOCATE 18,29:PRINT"INSTRUCTIONS PRESS "CHR$(34)"I"CHR$(34)"."
2360 LOCATE 20,24:PRINT"PRESS ANY KEY TO RESUME THE GAME"
2370 IF INKEY$="" THEN 2370
2380 GOSUB 2000:GOSUB 1990
2390 LOCATE 22,26:COLOR 0,7:PRINT"TO END GAME PRESS THE ESC BUTTON":COLOR 7,0
2400 LOCATE 1,38:COLOR 0,7:PRINT"TANK!":COLOR 7,0:RETURN
E 22,26:COLOR 0,7:PRINT"TO END GAME PRESS THE ESC BUTTON":COLOR 7,0
2400 LOCATE 1,38