. 11 REM ------------------------ 12 REM ! ! TUESDAY NIGHT ! ! 13 REM ! ! FOOTBALL ! ! 14 REM ! - - - - - - - - - - - - - - - - - ! 16 REM ! COPYRIGHT (C) 1980 ! 17 REM ! BY CHARLES ANDERSON ! 18 REM ! SHOESTRING SOFTWARE ! 19 REM ! 1235 CANDLELIGHT ! 20 REM ! HOUSTON TX 77018 ! 22 REM ! ALL RIGHTS RESERVED ! 23 REM - - - - - - - - - - - - - - - - - - - - - - - - 24 REM 6/4/80 30 GOTO 10000 40 POKE 816,1: POKE 768,P1: POKE 769,D1: CALL 770: RETURN 50 P1 = 70:D1 = 50: GOSUB 40: RETURN 60 P1 = 50:D1 = 30: GOSUB 40: RETURN 70 P1 = 30:D1 = 40: GOSUB 40: RETURN 80 P1 = 20:D1 = 40: GOSUB 40: RETURN 90 FOR Z1 = 1 TO 10:P1 = 15:D1 = 20: GOSUB 40: NEXT : RETURN 95 FOR II = 1 TO 3: GOSUB 60: GOSUB 80: GOSUB 70: NEXT : RETURN 99 FOR ZZ = 0 TO 100: GOSUB 130: NEXT : RETURN 100 R3 = 0: IF ((Q = 1 OR Q = 3) AND P) OR ((Q = 2 OR Q = 4) AND NOT P) THEN R3 = 1 110 RETURN 130 II = PEEK (SP): RETURN 140 II = PEEK (SP) + PEEK (SP): RETURN 150 II = PEEK (SP) + PEEK (SP) - PEEK (SP) + PEEK (SP) - PEEK (SP) + PEEK (SP) - PEEK (SP) + PEEK (SP) - PEEK (SP): RETURN 160 S%(P,11) = S%(P,11) + ZZ: IF OT THEN 16000 170 RETURN 190 S%(P,8) = S%(P,8) + TP:TP = 0:P = NOT P:YL% = 100 - YL%: RETURN 210 GOSUB 250: IF ABS (50 - YL%) > 9 OR YL% = 50 THEN ZZ$ = " AT THE " + STR$ (CL): RETURN 220 IF (P AND YL% < 50) OR ( NOT P AND YL% > 50) THEN ZZ$ = " AT THE " + T$(2) + " " + STR$ (CL): RETURN 230 ZZ$ = " AT THE " + T$(3) + " " + STR$ (CL): RETURN 250 IF YL% > 50 THEN CL = 100 - YL%: RETURN 260 CL = YL%: RETURN 280 FOR II = 1 TO 20: NEXT : RETURN 290 FOR II = 1 TO 50: NEXT : RETURN 300 FOR II = 1 TO 100: NEXT : RETURN 310 FOR II = 1 TO 500: NEXT : RETURN 320 FOR II = 1 TO 1000: NEXT : RETURN 330 FOR II = 1 TO 2000: NEXT : RETURN 340 FOR II = 1 TO 5000: NEXT : RETURN 350 X = PEEK (37): SPEED= 255: TEXT : GOSUB 8400: GOSUB 130: GOSUB 9030: SPEED= 170: VTAB X: PRINT : RETURN 1000 GOSUB 150: FOR Y = 44 TO 41 STEP - 1 1010 Z = R3:R3 = R2:R2 = R1:R1 = SCRN( X,Y - 1) 1020 COLOR= 8: PLOT X,Y - 1: COLOR= Z: PLOT X,Y + 2: GOSUB 280 1030 NEXT Y 1040 COLOR= R3: PLOT X,42 1050 VX = V * COS (A):VY = V * SIN (A):KF = 0:T = 0:OF = X:Z1 = X 1060 FOR Y = 40 TO 36 STEP - 1:Z = R2:R2 = R1:R1 = SCRN( X,Y - 1): COLOR= 8: PLOT X,Y - 1: COLOR= Z: PLOT X,Y + 1: IF Y > 36 THEN GOSUB 290 1110 NEXT Y 1120 COLOR= R2: PLOT X,36 1140 Z2 = 35:YS = 0 1160 YY = (VY * T - 16 * T * T) * 1.4:ZZ = SK * T:XX = VX * T 1180 Y = 35 - YY:X = INT (OF + ZZ): COLOR= R1: PLOT Z1,Z2 1200 IF X < 0 OR X > 39 THEN RETURN 1210 IF Y > 47 THEN Y = 47 1215 IF Y > GL AND YS THEN Y = GL 1220 R1 = SCRN( X,Y) 1230 IF R1 = 13 AND YS THEN 1250 1240 COLOR= 8: PLOT X,Y 1250 Z1 = X:Z2 = Y 1260 IF ABS (XX - KL%) < 2 AND Y < = 29 THEN PRINT " ";:YS = 1: IF ABS (X - 20) < = GPW THEN KF = 1 1270 IF XX - KL% > 20 OR (Y > = GL AND T > 1) THEN RETURN 1280 T = T + .08: GOTO 1160 1500 IF N < 1 THEN N = 1 1510 GPW = N:GL = 41 - 2 * (6 - N): IF N = 4 THEN GL = 34 1520 ON N GOSUB 1700,1670,1640,1610,1570,1550: RETURN 1550 YS = 0:YL = 44:YO = 38: GOSUB 1740 1560 COLOR= 13: HLIN 14,26 AT 29: VLIN 11,29 AT 14: VLIN 11,29 AT 26: VLIN 29,42 AT 20: RETURN 1570 YO = 39:YL = 41:YS = 4: GOSUB 1740 1580 COLOR= 13: HLIN 15,25 AT 29: VLIN 16,29 AT 15: VLIN 16,29 AT 25: VLIN 29,39 AT 20: COLOR= 15: HLIN 4,34 AT 41: RETURN 1610 YO = 40:YL = 37:YS = 8: GOSUB 1740 1620 COLOR= 13: HLIN 16,24 AT 29: VLIN 18,29 AT 16: VLIN 18,29 AT 24: VLIN 29,35 AT 20 1630 COLOR= 15: HLIN 7,31 AT 38: HLIN 3,35 AT 42: RETURN 1640 YO = 41:YL = 37:YS = 11: GOSUB 1740 1650 COLOR= 13: HLIN 17,23 AT 29: VLIN 21,29 AT 17: VLIN 21,29 AT 23: VLIN 29,35 AT 20 1660 COLOR= 15: HLIN 8,30 AT 37: HLIN 6,32 AT 39: HLIN 3,35 AT 42: RETURN 1670 YO = 42:YS = 14:YL = 35: GOSUB 1740 1680 COLOR= 13: HLIN 18,22 AT 29: VLIN 24,29 AT 18: VLIN 24,29 AT 22: VLIN 29,33 AT 20 1690 COLOR= 15: HLIN 10,28 AT 35: HLIN 8,30 AT 37: HLIN 6,32 AT 39: HLIN 3,35 AT 42: RETURN 1700 YO = 43:YS = 17:YL = 33: GOSUB 1740 1710 COLOR= 13: HLIN 19,21 AT 29: VLIN 26,29 AT 19: VLIN 26,29 AT 21: VLIN 29,31 AT 20 1720 COLOR= 15: HLIN 13,25 AT 32: HLIN 12,26 AT 33: HLIN 10,28 AT 35: HLIN 8,30 AT 37: HLIN 6,32 AT 39: HLIN 3,35 AT 42: RETURN 1740 TEXT : HOME : GR : POKE - 16302,0 1750 COLOR= 7: FOR Y = 47 TO 0 STEP - 1: HLIN 0,39 AT Y: GOSUB 140: GOSUB 290: NEXT 1760 Y = 46:S = 13000: FOR X = 0 TO 19: GOSUB 140 1780 COLOR= 12: VLIN Y,46 AT X: VLIN Y,46 AT 39 - X 1790 COLOR= 15: PLOT X,Y - 1: PLOT 39 - X,Y - 1: PLOT X,YO: PLOT 39 - X,YO: PLOT X,YS: PLOT 39 - X,YS 1800 FOR G = YO - 1 TO YS + 1 STEP - 1: COLOR= PEEK (S) / 35: PLOT X,G: COLOR= PEEK (S + 1) / 35: PLOT 39 - X,G:S = S + 2: NEXT 1830 IF Y > = YL THEN Y = Y - 1:YO = YO - 1 1840 NEXT : RETURN 1860 COLOR= 0: FOR Z = 0 TO 47: GOSUB 140: HLIN 0,39 AT Z: GOSUB 280: NEXT : TEXT : HOME : RETURN 2000 Q$ = PL$(P,0): GOSUB 9030: SPEED= 120: HOME 2010 FOR Z = 0 TO 11:T%(Z) = S%(P,Z): NEXT :XX = DN:YY = YL%:PP = P:MS = MO:TR = 0:TD = 0:PN = 0:OPT = 0:YG = 0:YP = 0:OF = 0:CP = 0:SC = 0 2050 IF OS THEN 2130 2060 OPT = 1 2070 IF DS = 3 OR DS > 4 THEN Z = 4: GOTO 2110 2080 IF DS = 4 OR DS = 1 THEN Z = 2: GOTO 2110 2090 IF FN A(4) THEN OS = 6: GOTO 2130 2100 OS = 9: GOTO 2130 2110 IF FN A(Z) THEN OS = 9: GOTO 2130 2120 OS = 6 2130 PRINT T$(P)T$( FN A(2) + 70): GOSUB 310 2140 PRINT Q$T$( FN A(2) + 72)" THE SIGNALS...": GOSUB 310 2150 PRINT "...AND HERE'S THE "T$( FN A(2) + 74)":": PRINT : GOSUB 330: GOSUB 100 2170 IF R3 THEN X = 8:Y = L + 1: GOTO 2190 2180 X = 7:Y = L 2190 GOSUB 5640: IF R3 THEN Y = Y + 1: GOTO 2210 2200 Y = Y - 1 2210 GOSUB 5640: NORMAL : VTAB 19: PRINT 2280 IF OPT THEN PRINT Q$" ROLLS ";: GOSUB 5590: PRINT 2290 IF OS = 15 THEN 2800 2300 IF OS > 6 THEN 3000: REM PASS 2310 GOTO 2500: REM RUN 2320 GOSUB 5000: REM FMBL 2330 GOSUB 5490: REM PNLTY 2340 GOSUB 4500: REM INJ. 2350 GOSUB 5220: REM ADJ,MO 2365 GOSUB 5940: REM T.OUT? 2370 GOSUB 5670: REM TIMER 2380 RETURN : REM TO MAIN PGRM 2390 : 2500 GOSUB 5360 2510 GOSUB 5630 2520 GOSUB 5330 2530 S = .001 * S * M * S%(P,13) 2540 IF R1 = 1 THEN YG = FN A(S * R2) - R3: GOTO 2560 2550 YG = FN B(R2 * S) - R3 2560 IF NOT FN A(30) THEN YG = FN A(100) 2570 GOSUB 2950 2590 IF OS = 15 THEN OS = 3: GOTO 2630 2600 P$ = PL$(P, FN A(2) + 1) 2610 IF OS = 1 THEN P$ = Q$ 2620 ON OS GOSUB 2660,2670,2680,2690,2700,2710 2630 GOSUB 4000:CP = 1: GOTO 2320 2660 PRINT Q$" KEEPS IT": RETURN 2670 PRINT Q$" GIVES TO "P$: PRINT " UP THE MIDDLE": RETURN 2680 PRINT Q$" QUICK PITCH TO ": PRINT P$" SWEEPING ";: GOSUB 5590: PRINT : RETURN 2690 PRINT Q$" GIVES TO "P$: PRINT " OFF ";: GOSUB 5590: PRINT "TACKLE": RETURN 2700 PRINT Q$" DROPS BACK...": PRINT "DELAYED HANDOFF TO "P$: RETURN 2710 IF OPT = 1 THEN P$ = Q$: PRINT "HE'S GOING TO RUN WITH IT...": RETURN 2720 PRINT Q$" OFF TO "P$" SWEEP ";: GOSUB 5590: PRINT : RETURN 2800 Z = FN A(3) + 2: SPEED= 140: FOR ZZ = 1 TO Z 2820 P$ = PL$(P, FN A(5)): IF P$ = Q$ THEN 2820 2830 PRINT Q$T$( FN A(3) + 76)" TO "P$:Q$ = P$: GOSUB 310: NEXT 2860 IF FN A(2) THEN 2900 2870 PRINT Q$" TRYING TO THROW LONG...":S%(P,6) = S%(P,6) + 1:OS = 11: GOTO 3040 2900 PRINT P$"'S GOING TO RUN...": GOTO 2500 2950 IF YL% - YG < = 0 THEN YG = YL% 2960 S%(P,2) = S%(P,2) + YG: RETURN 2970 : 3000 S%(P,6) = S%(P,6) + 1 3010 Z$ = Q$ + " " + T$( FN A(2) + 97) + " BACK ": IF FN A(3) THEN Z$ = Z$ + "TO PASS" 3020 IF NOT OPT THEN PRINT Z$ 3025 GOSUB 310 3030 IF DS = 6 OR DS = 3 OR NOT FN A(6) THEN PRINT "HE'S "T$( FN A(2) + 99)"... 3040 GOSUB 5360 3050 GOSUB 5400 3060 GOSUB 5330 3070 S = .001 * S * M * S%(P,13) 3080 IF YL% < 31 THEN S = S - .1 * ((30 - YL%) / 10) 3090 IF YL% - YP < - 10 THEN S = 0:OF = 1 3100 IF S > RND (8) THEN R2 = 1: GOSUB 5720: GOTO 3490 3110 IF .08 * D < RND (8) THEN R2 = 3: GOSUB 5720: GOTO 3280 3130 IF DS = 6 THEN Z = 4: GOTO 3160 3140 IF DS = 3 THEN Z = 3: GOTO 3160 3150 Z = 2 3160 IF NOT FN A(Z) THEN R2 = 2: IF NOT OF THEN GOSUB 5720: GOTO 3370 3170 IF R2 = 2 THEN R2 = 3: GOSUB 5720: GOTO 3280 3180 IF NOT FN A(4) THEN PRINT "HE'S GOING TO SCRAMBLE...":OS = 3:P$ = Q$:YG = FN B(10): GOSUB 2950:S%(P,6) = S%(P,6) - 1: GOTO 2630 3190 X = PEEK (37): GOSUB 310: GOSUB 100: VTAB S%: HTAB M%: PRINT " ";: IF R3 THEN M% = M% + 1: GOTO 3210 3200 M% = M% - 1 3210 FLASH : HTAB M%: PRINT O$;: NORMAL : GOSUB 99 3220 YG = - 5 - FN A(10):YL% = YL% - YG: GOSUB 210: SPEED= 150: VTAB X: PRINT : PRINT Q$" SACKED!!" 3230 S%(P,3) = S%(P,3) + YG 3240 IF YL% > 99 THEN GOSUB 95: PRINT "IN HIS OWN ENDZONE--";: INVERSE : PRINT "SAFETY!!":P = NOT P:ZZ = 2: GOSUB 160: GOSUB 340:ZZ = .1: GOSUB 5270:TD = 2:P = NOT P: NORMAL :OS = 3: GOTO 2320 3250 PRINT ZZ$ 3260 OS = 5: GOSUB 340: GOTO 2320 3280 PRINT "PASS INCOMPLETE" 3290 IF OF THEN PRINT "OUT OF THE ENDZONE...": GOTO 3350 3300 Z = YL%:YL% = YL% - YP: GOSUB 210:YL% = Z 3305 IF NOT FN A(10) THEN PRINT "DROPPED!!--BY "P$;:HT = 1: GOTO 3320 3310 PRINT "INTENDED FOR "P$; 3320 IF YL% - YP < 1 THEN PRINT " IN THE ENDZONE": GOTO 3340 3325 IF LEN (ZZ$) > 12 THEN PRINT 3330 PRINT ZZ$ 3335 IF HT THEN HT = 0: GOTO 3350 3340 PRINT : GOSUB 330: PRINT "BROKEN UP BY "D$ 3350 SC = 1: GOTO 2330 3370 GOSUB 190:TR = 1 3380 S%( NOT P,7) = S%( NOT P,7) + 1:S%( NOT P,4) = S%( NOT P,4) + 1 3390 YL% = YL% + YP: SPEED= 180: PRINT "INTERCEPTED!!!": PRINT "BY "D$; 3420 IF YL% > 99 THEN PRINT " IN THE ENDZONE...TOUCHBACK!": GOSUB 95:TD = 3: GOSUB 330: GOTO 2330 3430 GOSUB 210: PRINT ZZ$:YG = FN B(10): IF ((OS = 9 OR OS = 10) AND FN A(2)) OR NOT FN A(15) THEN YG = FN A(100) 3435 P$ = D$:FD = 0: GOSUB 4000: IF TD THEN 2330 3470 GOTO 2320 3490 S%(P,5) = S%(P,5) + 1:CP = 1: SPEED= 170 3510 IF NOT FN A(30) THEN YG = FN A(100) 3515 IF DS = 6 OR DS = 4 THEN YG = YG + FN A(12) 3520 IF YL% - YP - YG < = 0 THEN S%(P,3) = S%(P,3) + YL%: GOTO 3540 3530 S%(P,3) = S%(P,3) + YP + YG 3540 YL% = YL% - YP 3550 IF YL% < = 0 THEN TD = 1 3560 PRINT "COMPLETE TO ";P$; 3570 IF TD THEN GOSUB 19190: HOME : SPEED= 150: VTAB 20: PRINT "IN THE ENDZONE...": PRINT : PRINT "TOUCHDOWN "T$(P)"!!!":ZZ = 6: GOSUB 160: GOSUB 340: GOTO 2330 3580 GOSUB 210: IF LEN (ZZ$) > 11 THEN PRINT 3590 PRINT ZZ$ 3600 GOSUB 4000: GOTO 2320 4000 SPEED= 185:TD = 0 4010 YO = YL% - YG 4020 IF YO > 99 THEN GOSUB 150:TD = 2: GOSUB 95: PRINT P$" TACKLED IN THE ENDZONE": INVERSE : PRINT "SAFETY!!!": NORMAL :P = NOT P:ZZ = 2: GOSUB 160: GOSUB 340:ZZ = .1: GOSUB 5270:P = NOT P: RETURN 4030 IF YO > = YL% THEN YL% = YO: GOTO 4100 4040 IF YL% / 5 = INT (YL% / 5) AND YG > 0 THEN YL% = YL% - 1 4050 IF YL% / 5 = INT (YL% / 5) THEN GOSUB 4260 4060 YL% = YL% - 1 4070 GOSUB 350 4080 IF YL% > YO THEN 4050 4090 IF YL% = 0 THEN 4050 4100 GOSUB 210: GOSUB 150 4110 IF TR THEN Z$ = PL$( NOT P, FN A(11)): GOTO 4130 4120 Z$ = PL$( NOT P, FN A(11) + 11) 4130 Z = 0 4140 IF OS = 6 OR OS = 3 THEN Z = 2 4150 IF OS = 9 OR OS = 10 THEN Z = 4 4160 IF FN A(Z) THEN 4240 4170 IF YG < 5 THEN 4210 4180 IF YG < 15 THEN Z = 7: GOTO 4200 4190 Z = 4 4200 IF NOT FN A(Z) THEN 4240 4210 PRINT T$( FN A(8) + 4)ZZ$: POKE KS,0: GOSUB 320: PRINT 4220 PRINT T$( FN A(2) + 14)" "Z$: PRINT : RETURN 4240 SC = 1: PRINT T$( FN A(2) + 12);: IF LEN (ZZ$) < 12 THEN PRINT ZZ$: RETURN 4250 PRINT : PRINT ZZ$: RETURN 4260 IF YL% = 0 THEN 4360 4270 GOSUB 210 4280 IF FN A(2) THEN Z$ = P$ + " ": GOTO 4310 4290 Z$ = "" 4300 IF LEN (ZZ$) > 12 THEN PRINT 4310 IF NOT FN A(3) THEN RETURN 4320 IF FN A(4) THEN PRINT Z$ZZ$: RETURN 4330 II = FN A(4) 4340 PRINT Z$T$(II + 16);: IF LEN (Z$ + T$(II + 16) + ZZ$) < 40 THEN PRINT ZZ$: RETURN 4350 PRINT : PRINT ZZ$: RETURN 4360 GOSUB 19190: HOME : VTAB 20: PRINT "TOUCHDOWN "T$(P)"!!!!": GOSUB 340 4370 TD = 1:ZZ = 6: GOSUB 160: POP : RETURN 4500 IF .02 * I < RND (8) OR INJ > 13 THEN GOSUB 4730: RETURN 4510 IF FN A(2) THEN 4540 4520 ZZ = FN A(22): IF ZZ > 10 THEN P$ = PL$( NOT PP,ZZ): GOTO 4550 4530 P$ = PL$(PP,ZZ) 4540 IF OS > 6 THEN IF NOT FN A(3) THEN P$ = Q$ 4550 Z = FN A(5) + 1 4560 FOR X = 0 TO 1: FOR Y = 0 TO 21: IF P$ = PL$(X,Y) THEN 4580 4570 NEXT : NEXT 4580 IF NOT Y AND S%(X,14) THEN 4510 4590 IF NOT Y THEN S%(X,14) = 1 4600 GOSUB 330: PRINT : PRINT "MAN DOWN ON THE PLAY..." 4610 GOSUB 340: PRINT "...IT'S "P$: PRINT : GOSUB 330 4620 PRINT "INJURY: ";: INVERSE : GOSUB 340: PRINT T$(25 + Z): GOSUB 330: NORMAL 4630 PRINT SUB$(INJ)" INTO THE GAME FOR "P$ 4640 PL$(X,Y) = SUB$(INJ):SUB$(INJ) = P$:INJ%(INJ) = 1000 * Z + 100 * X + Y:INJ = INJ + 1 4680 IF NOT Y THEN ZZ = 15: GOTO 4710 4690 IF Y < 6 THEN ZZ = 7: GOTO 4710 4700 ZZ = 4 4710 S%(X,13) = S%(X,13) - ZZ 4720 GOSUB 330: RETURN 4730 FOR Z = 0 TO INJ - 1 4740 IF INJ%(Z) > 0 THEN GOSUB 5610: GOSUB 4760 4750 NEXT : RETURN 4760 ZZ = 2.6 ^ S: IF FN A(ZZ) THEN RETURN 4770 PL$(D,I) = SUB$(Z):INJ%(Z) = 0: GOSUB 330: PRINT 4780 PRINT SUB$(Z)" READY TO RETURN": GOSUB 330 4790 IF NOT I THEN ZZ = 12 + FN A(3):S%(D,14) = 0: GOTO 4820 4800 IF I < 6 THEN ZZ = 5 + FN A(3): GOTO 4820 4810 ZZ = 2 + FN A(3) 4820 S%(D,13) = S%(D,13) + ZZ: RETURN 5000 Z = .03: IF OS < 7 THEN Z = Z + .013 * D 5020 IF Z < RND (8) OR TD THEN GOSUB 330: RETURN 5030 IF P THEN ZZ = FN A(600): GOTO 5050 5040 ZZ = 600 + FN A(600) 5050 GOSUB 5150 5060 IF NOT Z THEN 5110 5070 PRINT T$(0)" RECOVER!!!": GOSUB 320: SPEED= 160: IF P THEN GOSUB 5145 5100 RETURN 5110 PRINT T$(1)" RECOVER!!!": GOSUB 320: SPEED= 160: IF NOT P THEN GOSUB 5145 5140 RETURN 5145 S%(P,4) = S%(P,4) + 1: GOSUB 190:TR = 1: PRINT "BALL GOES OVER!!!!": GOSUB 95: RETURN 5150 SPEED= 255: HOME : POKE KS,0: PRINT " ";: VTAB 20: HTAB 5: FLASH : PRINT " F U M B L E!!!": NORMAL 5160 FOR II = 0 TO ZZ: NEXT 5170 IF PEEK (KB) = 210 THEN Z = 1: GOTO 5200 5180 Z = 0 5200 POKE KS,0: HOME : VTAB 20: RETURN 5220 ZZ = 0: IF TD = 1 THEN ZZ = .1 5230 IF TR THEN ZZ = ZZ + .1: GOTO 5270 5240 IF NOT CP THEN 5260 5250 ZZ = ZZ + (YG + YP) * .003 5260 IF YG < 0 THEN ZZ = YG * .008 5270 IF P THEN MO = MO - ZZ: GOTO 5290 5280 MO = MO + ZZ 5290 IF MO > .4 THEN MO = .4 5300 IF MO < - .4 THEN MO = - .4 5310 MO = .85 * MO: IF (T% < 120) AND (Q = 4 OR OT) THEN MO = .8 * MO 5320 RETURN 5330 IF P THEN M = - MO + 1: RETURN 5340 M = MO + 1: RETURN 5360 Z = P%(DS,OS):Z$ = STR$ (Z): GOSUB 5370: RETURN 5370 S = VAL ( LEFT$ (Z$,1)):D = VAL ( MID$ (Z$,2,1)):I = VAL ( RIGHT$ (Z$,1)): RETURN 5400 Z = Y%(OS):Z$ = STR$ (Z) 5410 Z = VAL ( LEFT$ (Z$,1)):YP = VAL ( MID$ (Z$,2,2)):YG = VAL ( RIGHT$ (Z$,2)) 5420 IF Z = 2 THEN P$ = PL$(P, FN A(3) + 3) 5430 D$ = PL$( NOT P, FN A(5) + 12) 5440 IF Z = 1 THEN P$ = PL$(P, FN A(5) + 1) 5450 YP = INT ((.4 * ( RND (8) - .5) * YP) + YP):YG = FN B(YG): RETURN 5490 IF FN A(13) THEN RETURN 5500 IF OS > 6 THEN 5540 5510 PN = FN A(8) + 1: IF (PN = 2) OR (PN = 6) THEN 5510 5520 RETURN 5540 IF FN A(2) THEN PN = 1: RETURN 5550 IF FN A(2) THEN PN = 6: RETURN 5560 PN = FN A(8) + 1: RETURN 5590 IF FN A(2) THEN PRINT "LEFT";: RETURN 5600 PRINT "RIGHT";: RETURN 5610 Z$ = STR$ (INJ%(Z)):S = VAL ( LEFT$ (Z$,1)):D = VAL ( MID$ (Z$,2,1)):I = VAL ( RIGHT$ (Z$,2)): RETURN 5630 Z = Y%(OS):Z$ = STR$ (Z):R1 = VAL ( LEFT$ (Z$,1)):R2 = VAL ( MID$ (Z$,2,2)):R3 = VAL ( RIGHT$ (Z$,2)): RETURN 5640 FOR ZZ = 1 TO 3: GOSUB 5650: NEXT :M% = PEEK (36):S% = X: NORMAL : HTAB PEEK (36): PRINT O$;: RETURN 5650 INVERSE : VTAB X: HTAB Y: PRINT O$;: GOSUB 140 5660 HTAB PEEK (36): PRINT " ";: RETURN 5670 IF SC OR TD THEN Z = FN A(6) + 6: GOTO 5690 5680 Z = FN A(10) + 30 5690 IF T% - Z < 0 THEN Z = T% 5700 T% = T% - Z:TP = TP + Z:SC = 0: RETURN 5720 X = PEEK (37): SPEED= 180: GOSUB 100: VTAB 14: ON R3 + 1 GOSUB 5860,5790: FLASH : PRINT T$(66 + R2);: NORMAL : IF R2 < 3 THEN PRINT " ";: GOTO 5780 5770 GOSUB 50 5780 VTAB X: PRINT : SPEED= 140: RETURN 5790 FOR ZZ = YL% + 5 TO YL% - YP STEP - 1: IF ZZ < - 5 THEN 5850 5810 HTAB FN C(ZZ): PRINT " ";: HTAB FN C(ZZ): GOSUB 130: PRINT "<";: NEXT 5850 HTAB FN C(ZZ): RETURN 5860 FOR ZZ = YL% + 5 TO YL% - YP STEP - 1: IF ZZ < - 9 THEN 5930 5890 HTAB FN C(100 - ZZ): PRINT " ";: HTAB FN C(100 - ZZ): GOSUB 130: PRINT ">";: NEXT 5930 HTAB FN C(100 - ZZ): RETURN 5940 IF PEEK (KB) = 212 AND S%(0,12) > 0 THEN POKE KS,0:II = 0: GOSUB 9500: GOSUB 9030: PRINT : RETURN 5950 Y = S%(0,11) - S%(1,11): IF (S%(1,12) = 0) OR (Q = 1 OR Q = 3) THEN RETURN 5955 IF (Q = 2 AND NOT P) OR TD THEN RETURN 5960 IF T% > 90 OR SC THEN RETURN 5965 IF (Y < 0 OR Y > 14) AND Q = 4 THEN RETURN 5967 IF NOT P AND YL% < 65 THEN RETURN 5970 II = 1: GOSUB 9500: GOSUB 9030: PRINT : RETURN 5980 : 6000 T = 0:Y = S%(0,11) - S%(1,11):T2 = 0:X = YL% - FD: REM COMP.PICKS 6010 IF (Q = 2 OR Q = 4 OR OT) AND (T% < 150) THEN T = 1 6030 IF (T% < 39 AND S%(1,12) = 0) OR T% < 12 THEN T2 = 1 6040 ON P + 1 GOSUB 6100,6200: IF P AND OS = 15 AND YL% < 35 THEN 6040 6045 IF P AND OS = 5 AND (YL% > 94 OR YL% < 6) THEN 6040 6046 IF (OS = 8 OR OS = 10 OR OS = 14) AND YL% < 15 AND P THEN OS = OS - 1 6050 GOTO 7170: REM DISP.SEL. 6100 IF X < 5 AND DN > 2 THEN GOSUB 6130 6102 IF YL% < 15 THEN GOSUB 6142 6105 IF (Y > 0 AND (T) AND Q = 4) OR Y > 21 THEN GOSUB 6145 6110 IF (Y < 0 AND T) OR (Y < - 14) THEN GOSUB 6160 6115 IF (X > 9 AND DN > 1) OR (X > 15) THEN GOSUB 6170 6120 IF FN A(3) THEN DS = 1: RETURN 6122 IF NOT FN A(3) THEN DS = 6: RETURN 6125 DS = FN A(5) + 1: RETURN 6130 Z = (5 * (5 - X) + 15 * (DN - 2)) * .02 6135 IF Z > RND (8) THEN DS = 5: POP 6140 RETURN 6142 Z = (30 - YL%) * .035: GOTO 6135 6145 IF NOT FN A(3) THEN DS = 4: POP : RETURN 6150 IF FN A(2) THEN DS = 6: POP 6155 RETURN 6160 IF FN A(3) THEN DS = 2: POP 6165 RETURN 6170 IF FN A(2) THEN DS = 2: POP : RETURN 6175 IF FN A(2) THEN DS = 6: POP : RETURN 6178 IF FN A(2) THEN DS = 3: POP 6180 RETURN 6200 IF T THEN 6570 6210 IF DN < 4 AND YL% < 4 THEN 6740 6220 IF DN < 4 THEN IF MO > RND (8) THEN OS = FN A(5) + 2: RETURN 6230 ON DN GOTO 6400,6440,6490,6250 6250 IF YL% > FN A(4) AND YL% < 25 + FN A(10) THEN 6850 6255 IF YL% < 30 + FN A(10) AND X > 6 THEN 6850 6260 IF YL% < 35 + FN A(10) THEN 6280 6265 IF Q = 4 AND T% < 240 AND Y > 7 THEN 6280 6270 KF = 2: POP : RETURN 6280 GOSUB 6300: IF OS > 6 THEN GOSUB 5400: IF YL% - YP < - 9 THEN 6280 6290 RETURN 6300 IF X < 3 AND FN A(4) THEN OS = FN A(2) + 1: RETURN 6305 IF X < 5 AND FN A(2) THEN OS = FN A(5) + 2: RETURN 6310 IF X < 8 AND FN A(3) THEN 6900 6315 IF X < 13 AND FN A(3) THEN 6950 6320 IF X < 20 THEN OS = FN A(7) + 7: IF OS = 12 OR OS = 11 THEN 6320 6325 IF FN A(3) THEN RETURN 6340 IF FN A(8) THEN ON FN A(4) + 1 GOTO 6360,6370,6380,6390 6350 OS = FN A(16): RETURN 6360 OS = 10: RETURN 6370 OS = 11: RETURN 6380 OS = 14: RETURN 6390 OS = 15: RETURN 6400 IF YL% > 85 AND FN A(2) THEN OS = FN A(5) + 2: RETURN 6410 IF - 2 * MO > RND (8) THEN 6520 6415 IF RND (8) > .61 THEN OS = FN A(5) + 2: RETURN 6420 OS = FN A(16): IF OS > 6 THEN GOSUB 5400: IF YL% - YP < - 9 THEN 6420 6425 IF OS = 1 THEN OS = 0 6430 RETURN 6440 IF YL% > 85 AND FN A(2) THEN OS = FN A(5) + 2: RETURN 6450 IF - 2 * MO > RND (8) THEN 6520 6460 IF FN A(2) THEN 6280 6465 IF NOT FN A(3) THEN OS = FN A(5) + 2: RETURN 6470 GOTO 6420 6490 IF FN A(5) THEN 6280 6500 GOTO 6420 6520 ON FN A(5) + 1 GOTO 6530,6540,6550,6560,6565 6530 OS = 7: RETURN 6540 OS = 9: RETURN 6550 OS = 12: RETURN 6560 OS = 13: RETURN 6565 OS = 0: RETURN 6570 IF OT THEN 6810 6580 IF Q = 2 AND T2 AND YL% < 30 + FN A(10) THEN 6850 6590 IF Q = 2 OR Y > 14 THEN 6210 6600 IF Y < 0 THEN 6740 6610 IF T2 AND YL% < 30 + FN A(10) AND Y < 4 THEN 6850 6620 IF T2 THEN 6780 6640 IF Y > 7 THEN 6780 6650 IF YL% < 10 THEN 6420 6660 ON FN A(8) + 1 GOSUB 6690,6695,6700,6710,6720,6730,6735,6738: IF OS = 3 OR OS = 6 OR OS = 5 THEN RETURN 6670 GOSUB 5400: IF YL% - YP < - 9 THEN 6660 6680 RETURN 6690 OS = 9: RETURN 6695 OS = 5: RETURN 6700 OS = 10: RETURN 6710 OS = 13: RETURN 6720 OS = 14: RETURN 6730 OS = 11: RETURN 6735 OS = 3: RETURN 6738 OS = 6: RETURN 6740 IF DN = 4 THEN 6250 6760 OS = FN A(3) + 1: IF OS = 3 THEN OS = 4 6770 RETURN 6780 IF YL% > 60 THEN OS = 11: RETURN 6790 OS = FN A(7) + 8: GOSUB 5400: IF YL% - YP < - 9 OR YL% - YP - YG > 0 THEN 6790 6800 RETURN 6810 IF YL% < 25 THEN 6850 6820 IF T2 AND YL% < 30 + FN A(10) THEN 6850 6830 IF T2 THEN 6780 6840 GOTO 6650 6850 KF = 1: POP : RETURN 6900 IF FN A(2) THEN OS = FN A(5) + 2: RETURN 6910 GOTO 6520 6950 IF FN A(3) THEN 6520 6960 ON FN A(3) + 1 GOTO 6970,6975,6980 6970 OS = 3: RETURN 6975 OS = 5: RETURN 6980 OS = 6: RETURN 6990 : 7000 KF = 0: GOSUB 9030: HOME : VTAB 20: PRINT " << "T$(60 + DN)" AND "YL% - FD" >>" 7020 VTAB 15: PRINT TAB( 40)" ";: GOSUB 320: POKE KS,0 7030 GOSUB 9000: HOME : ON P + 1 GOSUB 9040,9050 7040 GOSUB 80 7050 CL% = 30 7060 CH = 186: GOSUB 7300 7070 IF Z > 6 THEN II = 0: ON Z - 6 GOTO 8700,8500,9495 7080 GOSUB 70 7090 IF P THEN DS = Z: GOTO 6000 7110 IF Z = 1 THEN GOSUB 9000: HOME :CH = 183: GOSUB 9260: GOSUB 7300:OS = Z: GOSUB 60: GOTO 6000 7120 IF Z = 2 THEN GOSUB 9000: HOME :CH = 185: GOSUB 9270: GOSUB 7300:OS = Z + 6: GOSUB 60: GOTO 6000 7130 IF Z = 3 THEN OS = 0: GOTO 6000 7140 IF Z = 4 THEN OS = 15: GOTO 6000 7150 IF Z = 5 THEN KF = 1: RETURN 7160 KF = 2: RETURN 7170 GOSUB 9000: HOME : VTAB 17 7180 PRINT T$(53)"*";:Z$ = T$(OS + 37): GOSUB 7210: HTAB 15: PRINT "*"; 7190 PRINT "* VS **";:Z$ = T$(DS + 30): GOSUB 7210: HTAB 15: PRINT "*";T$(53); 7200 GOTO 7230 7210 IF LEN (Z$) < 12 THEN Z$ = " " + Z$ + " ": GOTO 7210 7220 PRINT Z$;: RETURN 7230 FOR Z = 1 TO 9: PRINT : GOSUB 300: GOSUB 140: NEXT : TEXT : VTAB 15: HTAB 1: FOR Z = 0 TO 39: PRINT "-";: GOSUB 290: GOSUB 140: NEXT 7260 RETURN 7300 GOSUB 9020:Z = CL%: GOSUB 9190: VTAB 8: HTAB 7: PRINT Z$; 7310 FOR II = 1 TO 62 7320 Z = PEEK (KB): IF Z > 176 AND Z < CH THEN POKE KS,0:Z = VAL ( CHR$ (Z - 128)):DG = 0: RETURN 7330 NEXT II 7340 IF NOT SC AND NOT DG THEN CL% = CL% - 1 7350 IF CL% > 0 THEN 7300 7360 Z = 0: GOSUB 9190: VTAB 8: HTAB 7: PRINT Z$; 7370 GOSUB 9010: HOME : VTAB 20: GOSUB 90: PRINT "<< DELAY OF GAME >>": GOSUB 340 7390 X = 5: POP :DG = 1 7400 IF P THEN 7440 7410 IF YL% > 90 THEN X = (100 - YL%) / 2 7420 YL% = YL% + X: GOSUB 7430: GOTO 10060 7430 S%(0,9) = S%(0,9) + 1:S%(0,10) = S%(0,10) + X: RETURN 7440 IF YL% < 10 THEN X = YL% / 2: IF X < 1 THEN X = 0 7450 GOSUB 7430 7460 YL% = YL% - X: IF YL% < = FD THEN S%(1,0) = S%(1,0) + 1: GOTO 10040 7470 GOTO 10060 7500 SPEED= 255: GOSUB 9020: IF NOT YL THEN GOSUB 7600: RETURN 7510 YL = 0: HOME : INVERSE : VTAB 2:Z$ = LEFT$ (T$(2),4):ZZ$ = LEFT$ (T$(3),4) 7514 IF LEN (Z$) < 4 THEN Z$ = Z$ + " ": GOTO 7514 7516 IF LEN (ZZ$) < 4 THEN ZZ$ = ZZ$ + " ": GOTO 7516 7520 PRINT Z$ TAB( 12)ZZ$; 7530 PRINT TAB( 15)" ";: PRINT " DN" TAB( 6)"TO GO YL ";: PRINT TAB( 15)" ";: PRINT TAB( 5)"QUARTER ";: PRINT "TO" TAB( 14)"TO";: PRINT TAB( 15)" ";: NORMAL 7600 VTAB 2: HTAB 6:S = T%: GOSUB 9140: PRINT TI$; 7610 VTAB 3: INVERSE : IF NOT P THEN HTAB 5: PRINT "<";: HTAB 11: PRINT " ";: GOTO 7630 7620 HTAB 5: PRINT " ";: HTAB 11: PRINT ">"; 7630 NORMAL : HTAB 2:Z = S%(0,11): GOSUB 9190: PRINT Z$; 7640 HTAB 13:Z = S%(1,11): GOSUB 9190: PRINT Z$; 7650 VTAB 5: HTAB 2: PRINT DN;: HTAB 7:Z = YL% - FD: GOSUB 9190: PRINT Z$;: GOSUB 250:Z = CL: GOSUB 9190: HTAB 13: PRINT Z$; 7660 VTAB 7: HTAB 3: PRINT S%(0,12);: HTAB 8: PRINT Q;: HTAB 13: PRINT S%(1,12); 7670 VTAB 9: HTAB 1: PRINT TAB( 15)" ";: VTAB 9: HTAB 8 + ( - MO * 20 + .5): PRINT "'" 7680 RETURN 8000 TEXT : SPEED= 255: GOSUB 8010: GOSUB 8400: RETURN 8010 GOSUB 8330 8020 IF P THEN O$ = "O":D$ = "X": GOTO 8040 8030 O$ = "X":D$ = "O" 8040 GOSUB 100: IF R3 THEN 8190 8060 L = FN C(100 - YL%) 8070 IF L < 4 THEN L = 4 8080 IF L > 21 THEN L = 21 8090 VTAB 3: HTAB L: PRINT O$D$ 8100 HTAB L + 3: PRINT D$ 8110 HTAB L - 3: PRINT O$;: HTAB L: PRINT O$D$ 8120 HTAB L: PRINT O$D$;: HTAB L + 4: PRINT D$ 8130 HTAB L - 3: PRINT O$;: HTAB L - 1: PRINT O$O$;: HTAB L + 2: PRINT D$ 8140 HTAB L: PRINT O$D$ 8150 HTAB L: PRINT O$D$;: HTAB L + 4: PRINT D$ 8160 HTAB L: PRINT O$;: HTAB L + 2: PRINT D$ 8170 VTAB 12: HTAB L - 1: PRINT O$;: HTAB L + 2: PRINT D$: RETURN 8190 L = FN C(YL%) - 1 8200 IF L < 4 THEN L = 4 8210 IF L > 21 THEN L = 21 8220 VTAB 3: HTAB L - 1: PRINT D$;: HTAB L + 2: PRINT O$ 8230 VTAB 5: HTAB L - 1: PRINT D$;: HTAB L + 1: PRINT O$ 8240 HTAB L - 3: PRINT D$;: HTAB L: PRINT D$O$ 8250 HTAB L: PRINT D$O$;: HTAB L + 4: PRINT O$ 8260 HTAB L - 1: PRINT D$;: HTAB L + 1: PRINT O$O$ 8270 HTAB L - 3: PRINT D$;: HTAB L: PRINT D$O$ 8280 HTAB L: PRINT D$O$;: HTAB L + 4: PRINT O$ 8290 HTAB L - 2: PRINT D$ 8300 HTAB L: PRINT D$O$: RETURN 8330 TEXT : VTAB 1: HTAB 1: FOR Z = 1 TO 25: PRINT "-";: NEXT Z 8350 FOR Z = 2 TO 12: HTAB 1: VTAB Z: PRINT "!";: FOR ZZ = 1 TO 12: PRINT " !";: NEXT : NEXT 8360 VTAB 13: HTAB 1: FOR Z = 1 TO 25: PRINT "-";: NEXT : VTAB 7: HTAB 12: PRINT "( )";: 8370 INVERSE : FOR Z = 2 TO 12: VTAB Z: HTAB 2: PRINT " ";: HTAB 24: PRINT " ";: NEXT : NORMAL : RETURN 8400 TEXT : VTAB 14: PRINT " G 1 2 3 4 5 4 3 2 1 G ";: INVERSE 8410 GOSUB 100: IF NOT R3 THEN Z = FN C(100 - YL%):ZZ = FN C(100 - FD): GOTO 8430 8420 Z = FN C(YL%):ZZ = FN C(FD) 8430 HTAB ZZ: PRINT "F";: HTAB Z: PRINT "^";: NORMAL : RETURN 8500 FOR Z = 0 TO 1:S%(Z,1) = S%(Z,2) + S%(Z,3): NEXT 8510 GOSUB 9010: HOME : VTAB 24 8530 PRINT TAB( 14) LEFT$ (T$(2),4) TAB( 21) LEFT$ (T$(3),4) 8540 FOR ZZ = 0 TO 4 8550 PRINT T$(ZZ + 54);:Z = S%(0,ZZ): GOSUB 9060: PRINT TAB( 15)Z$; 8560 Z = S%(1,ZZ): GOSUB 9060: PRINT TAB( 22)Z$: NEXT 8580 PRINT "PASSING";:Z1 = S%(0,5):Z2 = S%(0,6):Z3 = S%(0,7): GOSUB 9110: PRINT TAB( 11)Z$; 8590 Z1 = S%(1,5):Z2 = S%(1,6):Z3 = S%(1,7): GOSUB 9110: PRINT TAB( 18)Z$ 8600 S%(P,8) = S%(P,8) + TP:TP = 0 8610 PRINT "TIME OF PO.";:S = S%(0,8): GOSUB 9140: PRINT TAB( 13)TI$;:S = S%(1,8): GOSUB 9140: PRINT TAB( 20)TI$ 8620 PRINT "PENALTIES";:Z1 = S%(0,9):Z2 = S%(0,10): GOSUB 9210: PRINT TAB( 12)Z$; 8630 Z1 = S%(1,9):Z2 = S%(1,10): GOSUB 9210: PRINT TAB( 19)Z$ 8640 IF HT THEN HT = 0: RETURN 8650 GOTO 7060 8700 GOSUB 9010: HOME : SPEED= 70: PRINT 8710 PRINT : FOR Z = 0 TO INJ 8720 IF INJ%(Z) < > 0 THEN Z$ = STR$ (INJ%(Z)): GOSUB 5370: PRINT SUB$(Z)"...": PRINT T$(25 + S): PRINT 8730 NEXT 8740 PRINT " INJURY RATING": PRINT 8750 FOR II = 0 TO 1: PRINT T$(2 + II);: HTAB 15:Z = S%(II,13): GOSUB 9060: PRINT Z$;"%": NEXT : SPEED= 255: GOTO 7060 9000 POKE 33,15: POKE 32,25: POKE 34,9: RETURN 9010 POKE 32,0: POKE 33,25: POKE 34,14: RETURN 9020 POKE 32,25: POKE 33,15: POKE 34,0: RETURN 9030 POKE 32,0: POKE 33,40: POKE 34,15: RETURN 9040 PRINT "OFFENSIVE MENU": PRINT : FOR Z = 1 TO 9: PRINT Z"."T$(78 + Z): NEXT : RETURN 9050 PRINT "DEFENSIVE MENU": PRINT : FOR Z = 1 TO 9: PRINT Z"."T$(87 + Z): NEXT : RETURN 9060 Z$ = STR$ (Z) 9070 IF LEN (Z$) < 3 THEN Z$ = " " + Z$: GOTO 9070 9080 RETURN 9090 IF LEN (Z$) = 6 THEN Z$ = " " + Z$ 9100 RETURN 9110 Z$ = STR$ (Z1) + "-" + STR$ (Z2) + "-" + STR$ (Z3) 9120 IF LEN (Z$) < 7 THEN Z$ = " " + Z$: GOTO 9120 9130 RETURN 9140 M% = S / 60:Z = S / 60 - M%:S% = Z * 60:Z$ = STR$ (M%):ZZ$ = STR$ (S%) 9160 IF M% < 10 THEN Z$ = "0" + Z$ 9170 IF S% < 10 THEN ZZ$ = "0" + ZZ$ 9180 TI$ = Z$ + ":" + ZZ$: RETURN 9190 Z$ = STR$ (Z): IF LEN (Z$) = 1 THEN Z$ = " " + Z$ 9200 RETURN 9210 Z$ = STR$ (Z1) + "-" + STR$ (Z2) 9220 IF LEN (Z$) < 6 THEN Z$ = " " + Z$: GOTO 9220 9230 RETURN 9260 FOR Z = 1 TO 6: PRINT Z"."T$(37 + Z): NEXT : RETURN 9270 FOR Z = 1 TO 8: PRINT Z"."T$(Z + 43): NEXT : RETURN 9495 IF S%(0,12) = 0 THEN 7060 9496 II = 0: GOSUB 9500: GOTO 7060 9500 TEXT : GOSUB 90: PRINT "TIME OUT->"T$(II);:S%(II,12) = S%(II,12) - 1: GOSUB 340:SC = 1: RETURN 9600 S%(P,0) = S%(P,0) + 1: RETURN 9990 : 9991 REM *** MAIN PROGRAM *** 9992 : 10000 GOSUB 19000: REM ONE SHOTS 10010 GOSUB 18000: REM COIN TOSS 10020 GOTO 14000: REM KICKOFF 10040 DN = 1:FD = YL% - 10 10050 IF FD < 0 THEN FD = 0 10060 GOSUB 15000: GOSUB 7500: REM CHK CLOCK,DRAW SCBD 10080 GOSUB 320: GOSUB 8000: GOSUB 320: REM DRAW FIELD 10100 GOSUB 7000: REM GET PLAY,DEF 10110 IF KF THEN ON KF GOTO 13000,11000: REM FG,PUNT 10120 GOSUB 2000: REM RUN PLAY 10130 IF PN THEN 12000: REM PNLTY 10140 IF TD = 1 THEN 13110: REM PAT 10150 IF TD = 2 THEN PRINT :YL% = 65: PRINT T$(P)" FREE KICK FROM THE 20": GOSUB 340:HT = 1: GOTO 11000 10160 IF TD THEN YL% = 80: GOTO 10040 10170 IF TR THEN 10040 10180 DN = DN + 1 10190 IF YL% < = FD THEN GOSUB 330: PRINT : PRINT "** FIRST DOWN "T$(P)" **": GOSUB 330: GOSUB 9600:ZZ = .05: GOSUB 5270: GOTO 10040 10200 IF DN > 4 THEN GOSUB 190: PRINT : PRINT "FOURTH DOWN--BALL GOES OVER": GOSUB 95: GOSUB 340:ZZ = .1: GOSUB 5270: GOTO 10040 10210 GOTO 10060 10300 : 10310 : 11000 N = 6 - INT (YL% / 8):KL% = YL% + 25 11010 GOSUB 1500 11020 X = 20:T = 0 11030 R1 = SCRN( X,35):R2 = SCRN( X,36):R3 = SCRN( X,37) 11040 COLOR= 8: VLIN 35,37 AT X 11050 IF P THEN 11130 11060 WAIT KB,128: POKE KS,0 11070 FOR ZZ = 37 TO 41: GOSUB 11270: IF PEEK (KB) > 127 THEN 11160 11080 GOSUB 290: NEXT ZZ 11090 FOR T = 0 TO 50: IF PEEK (KB) > 127 THEN 11160 11095 NEXT 11100 FOR ZZ = 42 TO 46: GOSUB 11270: GOSUB 300: NEXT ZZ 11110 COLOR= R1: PLOT X,45: COLOR= R2: PLOT X,46: COLOR= 8: HLIN 20,21 AT 47: GOSUB 99 11120 GOSUB 340: GOSUB 1860: GOSUB 190: GOTO 10040 11130 GOSUB 340 11140 FOR ZZ = 37 TO 41: GOSUB 11270: GOSUB 290: NEXT ZZ 11150 V = 38 + 8 * RND (8): GOTO 11170 11160 POKE KS,0:V = 48 - 6 * (42 - ZZ) - T - 3 * RND (8) 11170 A = .88:SK = (48 - V) * .3: IF FN A(2) THEN SK = - SK 11180 FOR ZZ = 47 TO 43 STEP - 1:Z = SCRN( X,ZZ): COLOR= 0 11190 PLOT X,ZZ: COLOR= Z: PLOT X,ZZ: NEXT 11200 GOSUB 150: GOSUB 1040: GOSUB 190 11230 P$ = PL$(P, FN A(2) + 4) 11240 YL% = YL% + XX - 10: IF YL% < 1 THEN YL% = 1 11250 YG = FN B(6): IF NOT FN A(15) THEN YG = FN A(100) 11255 IF HT THEN HT = 0:YG = FN B(10) + 10: GOTO 14500 11260 P3 = 1: GOTO 14500 11270 Z = R1:R1 = R2:R2 = R3:R3 = SCRN( X,ZZ + 1): COLOR= 8: PLOT X,ZZ + 1: COLOR= Z: PLOT X,ZZ - 2: RETURN 12000 Z = 0:Z1 = 0:R2 = P:P = PP: INVERSE : GOSUB 330: PRINT : PRINT "FLAG ON THE PLAY": GOSUB 330: PRINT : NORMAL 12010 SPEED= 110: IF PN > 4 THEN Z = 1:PN = PN - 4 12030 PRINT "PENALTY..."T$(19 + PN)"--"T$(24 + Z): PRINT : GOSUB 340: GOSUB 12260 12070 IF (P AND Z) OR ( NOT P AND NOT Z) THEN R1 = 0: PRINT T$(1)" RECEIVE THE OPTION": GOSUB 340: GOTO 12400 12090 R1 = 1 12100 PRINT "CAPTAIN "PL$(0,22)", YOU MAY EITHER": PRINT "DECLINE THE PENALTY--LETTING THE PLAY": PRINT "STAND AS RUN--OR YOU MAY ACCEPT IT,": PRINT "SETTING UP THE FOLLOWING CONDITIONS:": PRINT : GOSUB 330 12150 I = YL%:YL% = YY: GOSUB 210:YL% = I 12160 PRINT T$(P)"'S BALL, "T$(60 + XX)" DOWN": PRINT ZZ$ 12170 PRINT "ACCEPT OR DECLINE (A/D)? ";: GET Z$: GOSUB 70 12180 IF Z$ = "D" THEN P = R2: GOTO 10140 12200 FOR ZZ = 0 TO 11:S%(P,ZZ) = T%(ZZ): NEXT 12210 S%(R1,9) = S%(R1,9) + 1:S%(R1,10) = S%(R1,10) + Y 12220 DN = XX:YL% = YY:MO = MS 12230 IF Z1 THEN GOSUB 9600: GOTO 10040 12240 GOTO 10060 12260 ON Z + 1 GOTO 12280,12320 12280 Y = Y%(15 + PN) 12290 IF Y > (100 - YY) / 2 THEN Y = (100 - YY) / 2 12300 YY = YY + Y: IF YY > 99 THEN YY = 99 12310 RETURN 12320 Y = Y%(19 + PN): IF PN = 2 THEN 12370 12330 IF Y > YY / 2 THEN Y = YY / 2 12340 YY = YY - Y: IF YY < 1 THEN YY = 1 12350 IF YY < = FD OR PN = 1 THEN XX = 1:Z1 = 1 12360 RETURN 12370 YY = YY - YP: IF YY < 1 THEN YY = 1 12380 Y = YL% - YY:XX = 1:Z1 = 1: RETURN 12400 ON Z + 1 GOSUB 12450,12490 12410 IF Z$ = "D" THEN PRINT "THEY DECLINE THE PENALTY": GOTO 12440 12420 PRINT "THEY ACCEPT THE PENALTY" 12440 GOSUB 340: GOTO 12180 12450 IF R2 THEN Z$ = "D": RETURN 12460 IF YL% > FD AND DN = 4 THEN 12500 12470 IF YL% > = YY THEN 12500 12480 Z$ = "A": RETURN 12490 IF NOT R2 OR YY < YL% THEN 12480 12495 IF YL% > FD AND DN = 3 AND XX THEN 12480 12500 Z$ = "D": RETURN 13000 N = 6 - INT (YL% / 8):KL% = YL% + 17 13010 GOSUB 1500: IF P THEN X = 20: GOTO 13030 13020 X = FN A(13) + 14 13030 GOSUB 14170 13040 GOSUB 13170 13050 GOSUB 1860:Z = 10 + FN A(10): GOSUB 5690 13060 IF KF THEN ZZ = 3: GOSUB 160:ZZ = .004 * KL%: GOSUB 5270: GOSUB 190: GOTO 10020 13070 GOSUB 190: IF YL% > 80 THEN YL% = 80 13080 IF KL% < 40 THEN ZZ = (40 - KL%) * .004: GOSUB 5270 13090 GOTO 10040: REM FD 13110 N = 6: GOSUB 1500:X = 20: GOSUB 14170:KL% = 20: GOSUB 13170: IF KF THEN ZZ = 1: GOSUB 160 13150 GOSUB 1860: GOSUB 190: GOTO 10020 13170 A = .79:V = 41 + 8.5 * RND (8): IF P THEN GOSUB 340:SK = FN A(9) - 4: IF NOT FN A(7) THEN SK = FN A(21) - 10 13175 IF P THEN GOSUB 1000: GOTO 13220 13180 Y = 47: POKE KS,0: WAIT KB,128: POKE KS,0: GOSUB 310 13190 FOR Z = 1 TO 39: COLOR= 0: PLOT Z,Y: COLOR= 15: PLOT Z - 1,Y 13200 IF PEEK (KB) > 128 THEN POKE KS,0:SK = X - Z: GOSUB 1000: GOTO 13220 13210 NEXT Z:KF = 0 13220 GOSUB 330: IF KF THEN GOSUB 19190: GOTO 13230 13225 GOSUB 99 13230 POKE - 16301,0: HOME : VTAB 23: HTAB 13: PRINT T$(65 + KF): GOSUB 340: RETURN 14000 SPEED= 255: GOSUB 15000: GOSUB 14100: GOSUB 320 14030 YL% = 35 + XX:P$ = PL$(P, FN A(2) + 4):YG = FN B(12) + 10 14040 GOTO 14500 14100 N = 1: GOSUB 1500 14110 X = 20: GOSUB 14170 14120 V = 42 + 7 * RND (8):A = .82 14130 GOSUB 330:KL% = 75: GOSUB 90 14140 IF NOT P THEN GOSUB 340: GOTO 14160 14150 POKE KS,0: WAIT KB,128: POKE KS,0 14160 SK = FN A(5) - 2: GOSUB 1000: RETURN 14170 COLOR= 15: HLIN 0,39 AT 47:R1 = SCRN( X,44):R2 = SCRN( X,45):R3 = SCRN( X,46) 14180 COLOR= 8: VLIN 44,46 AT X: RETURN 14500 GOSUB 1860:SC = 1: GOSUB 5670:K$ = PL$( NOT P,22): SPEED= 255: GOSUB 8330: GOSUB 9030: HOME : SPEED= 120:FD = 0: GOSUB 210: IF P3 THEN 14700 14510 PRINT K$"'S KICK COMING TO "P$: GOSUB 14660: PRINT ZZ$: GOSUB 4000:CP = 1:YG = YG / 2:YP = 0: GOSUB 5220 14520 IF TD THEN ON TD GOTO 13110,10150 14530 GOSUB 5000 14540 GOSUB 340: HOME : GOTO 10040 14660 IF YL% > 109 OR (YL% > 100 AND FN A(5)) THEN POP : PRINT " IN THE ENDZONE...TOUCHBACK":YL% = 80: GOSUB 330: HOME : GOTO 10040 14670 RETURN 14700 P3 = 0: IF XX < 30 THEN PRINT K$" BLOWS THE PUNT!!!": PRINT T$(P)" BALL"ZZ$: GOTO 14540 14710 IF YL% > 99 THEN PRINT K$"'S PUNT GOES INTO": PRINT "THE ENDZONE FOR A TOUCHBACK":YL% = 80: GOTO 14540 14720 IF (YL% < 100 AND YL% > 90 AND FN A(10)) OR NOT FN A(10) THEN 14800 14730 IF FN A(2) THEN PRINT P$" CALLS FOR A FAIR CATCH": PRINT ZZ$: GOTO 14540 14740 GOTO 14510 14800 PRINT P$" LETS IT BOUNCE...":R1 = YL%:R2 = YL% + FN A(10): FOR R3 = R1 TO R2:YL% = R3 14810 IF YL% = 100 THEN 14710 14820 GOSUB 210: PRINT ZZ$: NEXT : GOTO 14540 15000 IF T% > 0 THEN RETURN 15010 ON Q GOTO 15030,15040,15070,15080 15030 GOSUB 15120: RETURN 15040 GOSUB 15120: GOSUB 17000 15050 FOR Z = 0 TO 1:S%(Z,12) = 3: NEXT :P = NOT (CT) 15060 MO = MO / 2: POP : GOTO 10020 15070 GOSUB 15120: RETURN 15080 IF (OT) OR S%(0,11) < > S%(1,11) THEN 16000 15090 GOSUB 90: POP :T% = QL:OT = 1: GOSUB 340: TEXT : HOME 15100 VTAB 10: PRINT "SCORE TIED AFTER REGULATION": GOSUB 340: PRINT : PRINT "WE GO INTO OVERTIME... 15110 GOSUB 340: FOR Z = 0 TO 1:S%(Z,12) = 3: NEXT : SPEED= 255: GOTO 10010 15120 T% = 0: GOSUB 7500: GOSUB 9030: HOME : GOSUB 90: VTAB 20: PRINT "END OF "T$(60 + Q)" QUARTER": GOSUB 340 15130 Q = Q + 1:T% = QL: RETURN 16000 GOSUB 7500: GOSUB 90: GOSUB 330: TEXT : HOME : VTAB 7: PRINT " AND THAT'S THE BALL GAME...": GOSUB 340: PRINT 16020 PRINT "FINAL SCORE:": PRINT : GOSUB 330 16030 FOR ZZ = 0 TO 1: PRINT T$(ZZ);: HTAB 15:Z = S%(ZZ,11): GOSUB 320: GOSUB 9190: PRINT Z$: GOSUB 330: NEXT : GOSUB 330: SPEED= 50 16035 VTAB 17: PRINT " FINAL STATISTICS": GOSUB 320 16040 HT = 1: GOSUB 8500: SPEED= 255: TEXT : END 17000 TEXT : HOME : VTAB 10: PRINT "--> HALFTIME STATS <--" 17010 HT = 1: GOSUB 8500: FOR Z = 0 TO 5: GOSUB 340: NEXT 17030 TEXT : HOME : VTAB 10: PRINT "IT'S HALFTIME!": GOSUB 330: PRINT : PRINT "PRESENTING...": PRINT : PRINT : GOSUB 340: PRINT "THE UNIVERSITY OF "T$(2)" MARCHING DOTS": GOSUB 340 17080 GR : HOME : VTAB 23: PRINT " PRESS SPACE BAR TO CONCLUDE HALF TIME": POKE KS,0 17090 S = 3 + FN A(30): FOR D = 1 TO 19: FOR I = 0 TO 19 17100 Z = D + I: COLOR= I * 3 / (D + 3) + D * S / 12 17110 PLOT D,Z: PLOT Z,D: PLOT 40 - D,40 - Z 17120 D1 = Z:P1 = D: GOSUB 40 17130 IF D > 9 THEN P1 = 40 - Z:D1 = 40 - D: GOSUB 40 17140 PLOT 40 - Z,40 - D: PLOT Z,40 - D: PLOT 40 - D,Z 17150 PLOT D,40 - Z: PLOT 40 - Z,D 17155 IF PEEK (KB) > 127 THEN POKE KS,0: RETURN 17160 NEXT : NEXT :P1 = 20:D1 = 100: GOSUB 40:P1 = 20:D1 = 150: GOSUB 40: GOTO 17090 18000 HOME : VTAB 3: PRINT "CAPTAIN "PL$(0,22)", PLEASE ": PRINT "CALL THE TOSS...": GOSUB 330: VTAB 22: HTAB 10: PRINT "HEADS OR TAILS (H/T) ?";: GET Z$: HOME 18030 FOR Z = 24 TO 1 STEP - 1: GOSUB 18120: NEXT : FOR Z = 1 TO 24: GOSUB 18120: NEXT : GOSUB 320: HTAB 3: VTAB 12 18070 IF LEFT$ (T$(59 + X),1) = Z$ THEN 18090 18080 PRINT "WRONG..."T$(1)" WILL RECEIVE.": GOSUB 340:CT = 1:P = 1: RETURN 18090 PRINT "YOU WIN...KICK OR RECEIVE (K/R)? ";: GET Z$ 18100 IF Z$ = "R" THEN CT = 0:P = 0: RETURN 18110 CT = 1:P = 1: RETURN 18120 HOME :X = FN A(2): VTAB Z: HTAB 16: PRINT T$(59 + X):P1 = Z:D1 = 15: GOSUB 40: RETURN 19000 POKE - 16298,0: TEXT : HOME : SPEED= 255 19010 X = RND ( - PEEK (78)) 19020 DEF FN A(X) = INT (X * RND (8)) 19030 DEF FN B(X) = INT ( - X * LOG ( RND (8)) + .5) 19040 DEF FN C(X) = INT (X / 5) + 3 19050 DIM P%(6,15),Y%(24),T%(11),S%(1,14),INJ%(13),T$(100),PL$(1,22),SUB$(13) 19070 FOR Y = 0 TO 1:S%(Y,12) = 3:S%(Y,13) = 100: NEXT 19080 S = G = YO = YS:SP = - 16336:KB = - 16384:KS = - 16368:Q = 1 19100 FOR Z = 0 TO 100: READ T$(Z): NEXT 19110 FOR Z = 0 TO 1: FOR ZZ = 0 TO 21: READ PL$(Z,ZZ): NEXT ZZ,Z 19120 FOR Z = 0 TO 13: READ SUB$(Z): NEXT 19130 FOR Z = 1 TO 6: FOR ZZ = 1 TO 15: READ P%(Z,ZZ): NEXT ZZ,Z 19140 FOR Z = 1 TO 23: READ Y%(Z): NEXT 19150 FOR Z = 770 TO 795: READ P: POKE Z,P: NEXT 19160 VTAB 24: FOR Z = 1 TO 19: PRINT LEFT$ ("SHOESTRING SOFTWARE",Z):P1 = 40 - 2 * Z:D1 = 10: GOSUB 40: NEXT 19170 GOSUB 330: VTAB 23: HTAB 25: PRINT "PRESENTS...";: GOSUB 330 19180 GOSUB 19190: GOSUB 320: HOME : GOTO 19240 19190 P1 = 37:D1 = 40: GOSUB 40: GOSUB 300:D1 = 50:P1 = 30: GOSUB 40: GOSUB 300:P1 = 32: GOSUB 40: GOSUB 300:P1 = 33: GOSUB 40: GOSUB 300:D1 = 150:P1 = 37: GOSUB 40: RETURN 19240 VTAB 8: HTAB 5: PRINT "TUESDAY";: VTAB 12: PRINT "NIGHT";: VTAB 16: PRINT "FOOTBALL": GOSUB 340 19260 HOME : VTAB 18: INPUT "HOW MANY MINUTES PER QUARTER (1-15)? ";QL: IF QL < 1 OR QL > 15 THEN 19260 19270 QL = QL * 60:T% = QL 19280 HOME : VTAB 18: INPUT "PLEASE ENTER YOUR LAST NAME ";PL$(0,22):PL$(1,22) = "APPLEBY": RETURN 20000 DATA OILERS,BROWNS,HOUSTON,CLEVELAND 20010 DATA TACKLED,HIT,DROPPED,STOPPED,HIT AND HIT HARD,TRIPPED UP,CREAMED,LEVELED 20020 DATA SHOVED OUT OF BOUNDS,KNOCKED OUT OF BOUNDS,PLAY BY,TACKLE BY,MAKES A MOVE,BREAKS A TACKLE,STUMBLES,STIFFARMS A TACKLER 20030 DATA HOLDING,PASS INTERFERENCE,OFFSIDES,PERSONAL FOUL,OFFENSE,DEFENSE 20040 DATA WIND KNOCKED OUT,MUSCLE SPASM,SPRAINED ANKLE,CONCUSSION,KNEE 20050 DATA NORMAL,NICKEL,BLITZ,GAMBLING,GOAL LINE,BUTKUS 20060 DATA OPTION,QB SNEAK,FB DIVE,PITCHOUT,OFF TACKLE,DRAW,SWEEP 20070 DATA SH.CURL,LG.CURL,SH.DOWN&OUT,LG.DOWN&OUT,THE BOMB,SCREEN,SH.CROSSING,LG.CROSSING 20080 DATA TRICK PLAY,***************,FIRST DOWNS,TOTAL YARDS,YDS RUSHING,YDS PASSING,TURNOVERS 20090 DATA HEADS,TAILS,FIRST,SECOND,THIRD,FOURTH,< KICK NO GOOD >,*** KICK GOOD ***,C,I," "," BREAK FROM THE HUDDLE"," COME TO THE LINE"," CALLS"," BARKS",SNAP,PLAY 20100 DATA " PITCHES"," HANDS OFF"," LATERALS" 20120 DATA RUN,PASS,OPTION,TRICK PLAY,FIELD GOAL,PUNT,INJ.REPORT,STATISTICS,TIME OUT 20130 DATA NORMAL,NICKEL,BLITZ,GAMBLING,GOAL LINE,BUTKUS,INJ.REPORT,STATISTICS,TIME OUT 20140 DATA DROPS,FADES,GETTING A HARD RUSH,BEING PRESSURED 20150 DATA MOON,HIGHSMITH,WHITE,PINKETT,HILL,DUNCAN,MATTHEWS,PENNISON,SMITH,MATTHEWS,ZENDEJAS 20160 DATA LYLES,MEADS,BROWN,SMITH,DISHMAN,FAIRS,SEALE,CHILDRESS,DONALDSON,JONES,EATON 20170 DATA KOSAR,FRANCO,BLIER,CUNNINGHAM,SWANN,STALLWORTH,PETERSON,DAVIS,WEBSTER,COURSON,BROWN 20180 DATA LAMBERT,BLOUNT,JOHNSON,HAM,WINSTON,THOMAS,SHELL,GREENWOOD,GREENE,FURNESS,BANASZAK 20200 DATA COSELL,MEREDITH,GIFFORD,LAMONICA,ANDERSON,BLANDA,SMITH,MOORE,MINGO,GOGOLAK,GILCRIST,CANNON,ALLWORTH,LADD 20215 REM SDI'S 20230 DATA 501,512,532,512,412,532,624,334,622,332,222,823,625,325,423 20240 DATA 701,612,632,712,612,632,424,234,422,232,122,822,425,225,655 20250 DATA 612,623,643,623,723,543,555,255,454,254,254,954,556,254,555 20260 DATA 623,634,654,634,634,754,656,366,665,365,365,756,658,458,767 20270 DATA 312,312,332,222,322,332,655,632,722,532,422,452,525,625,354 20280 DATA 512,523,443,523,823,443,765,266,665,266,188,866,765,277,555 20290 DATA 11300,11901,12803,21402,13104,21603 20300 DATA 21003,22008,21003,22003,24520,10005,11008,22515,22406 20340 DATA 10,15,5,15,5,0,5,15,173,48,192,173,0,3,32,168,252,173,1,3,208,5,206,48,3,240,6,206,1,3,76,2,3,96 65448 REM --------------------- 65458 REM ! TUESDAY NIGHT ! 65468 REM ! FOOTBALL ! 65488 REM ! COPYRIGHT 1980 ! 65498 REM ! BY C. ANDERSON ! 65508 REM !SHOESTRING SOFTWARE! 65518 REM ! 1235 CANDLELIGHT ! 65528 REM ! HOUSTON TX 77018 ! 65282 REM !ALL RIGHTS RESERVED! 65292 REM ---------------------