home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib32a.dsk / AUGUST.1987 / NFL.LINE.bas < prev    next >
BASIC Source File  |  2023-02-26  |  17KB  |  250 lines

  1. 10  REM  **********************
  2. 20  REM  *      NFL.LINE      *
  3. 30  REM  *   BY RUDY A. GUY   *
  4. 40  REM  * COPYRIGHT (C) 1987 *
  5. 50  REM  * BY MICROSPARC, INC *
  6. 60  REM  * CONCORD, MA  01742 *
  7. 70  REM  **********************
  8. 80 D$ =  CHR$(4): ONERR  GOTO 2300
  9. 90  IF  PEEK(64435) < >6  THEN 2440: REM  CHECK FOR //E OR //C
  10. 95  IF  PEEK(48896) < >76  THEN  HOME : PRINT "THIS PROGRAM RUNS UNDER PRODOS ONLY!": END 
  11. 100  HOME : POKE 49153,0: POKE 49237,0: POKE 1024,123:F8 =  PEEK(1024) < >123: POKE 49236,0: POKE 49152,0: IF F8 GOTO 2440: REM  CHECK FOR 80 COLUMN CARD
  12. 110  DIM TE$(28),CH$(16),PF%(16),PA%(16),W%(16),L%(16),T%(16),FF%(28),AP%(28),WW%(28),LL%(28),TT%(28),PC(28),S(28)
  13. 120  FOR I = 1 TO 28: READ TE$(I): NEXT 
  14. 130  FOR I = 1 TO 6: READ DI$(I): NEXT 
  15. 140  PRINT  CHR$(4)"PR#3": PRINT 
  16. 150 EF = 1: PRINT  CHR$(4)"PREFIX": INPUT PR$: PRINT  CHR$(4)"PREFIX NFL.DATA"
  17. 160  VTAB 10:A$ = "N.F.L. LINE": GOSUB 2200
  18. 170  VTAB 12:A$ = "By: Rudy A. Guy": GOSUB 2200
  19. 180  VTAB 14:A$ = "(c) Copyright 1987 - MicroSPARC Inc.": GOSUB 2200
  20. 190  FOR I = 1 TO 3000: NEXT 
  21. 200  VTAB 19: PRINT "Enter a '?' to get a directory listing."
  22. 210  VTAB 18: INPUT "What year data do you want to use? ";YR$: IF YR$ = "?"  THEN  HOME : PRINT  CHR$(4)"CAT": GOTO 210
  23. 220  IF  LEN(YR$) <2  OR  LEN(YR$) >4  THEN  PRINT  CHR$(7): VTAB 17: CALL  -958: GOTO 200
  24. 230  IF  LEN(YR$) = 2  THEN YR$ = "19" +YR$
  25. 240  IF  LEN(YR$) < >4  OR  LEN(YR$) = 4  AND  VAL(YR$) = 0  THEN  PRINT  CHR$(7): HOME : GOTO 200
  26. 250 EF = 2: PRINT  CHR$(4)"VERIFY NFL.DATA."YR$
  27. 260  HOME : INVERSE :EF = 0:A$ = "**  N.F.L. LINE - BY RUDY A. GUY  **": GOSUB 2200: NORMAL :A$ = "(c) Copyright 1987 - MicroSPARC Inc.": GOSUB 2200
  28. 270  VTAB 4:A$ = "N.F.L. " +YR$ +" Season": GOSUB 2200
  29. 280  VTAB 6:A$ = "Options": GOSUB 2200
  30. 290  VTAB 8:A$ = "[1] Change Year            ": GOSUB 2200: REM  12 SPACES
  31. 300 A$ = "[2] Enter Game Information ": GOSUB 2200
  32. 310 A$ = "[3] Show Team Records      ": GOSUB 2200: REM  6 SPACES
  33. 320 A$ = "[4] Show Division Standings": GOSUB 2200
  34. 330 A$ = "[5] Predict Game Outcomes  ": GOSUB 2200: REM  2 SPACES
  35. 340 A$ = "[6] Exit Program           ": GOSUB 2200: REM  11 SPACES
  36. 350  VTAB 15: POKE 1403,26: INPUT "Please choose:";SE$:SE =  VAL(SE$): IF SE <1  OR SE >6  THEN  PRINT  CHR$(7): GOTO 260
  37. 360  IF SE = 6  THEN  PRINT  CHR$(4)"PREFIX/": TEXT : HOME : END 
  38. 370  ON SE GOSUB 390,450,1040,1210,1660
  39. 380  PRINT  CHR$(24) CHR$(14): GOTO 260
  40. 390  HOME :TE$ = YR$: PRINT  CHR$(4)"CAT": PRINT : INPUT "Enter year with which to work :";YR$: IF YR$ = ""  THEN YR$ = TE$: RETURN 
  41. 400  IF  LEN(YR$) <2  THEN  PRINT  CHR$(7):YR$ = TE$: GOTO 390
  42. 410  IF  LEN(YR$) = 2  THEN YR$ = "19" +YR$
  43. 420  IF  LEN(YR$) < >4  OR  LEN(YR$) = 4  AND  VAL(YR$) = 0  THEN  PRINT  CHR$(7):YR$ = TE$: GOTO 390
  44. 430 EF = 3: PRINT  CHR$(4)"VERIFY NFL.DATA."YR$
  45. 440  RETURN 
  46. 450  HOME :A$ = "-> Enter Game Data <-": GOSUB 2210
  47. 460  GOSUB 2090
  48. 470  VTAB 18: INPUT "Game information for which team? ";SE$: IF SE$ = ""  THEN  TEXT : RETURN 
  49. 480 SE =  VAL(SE$): IF SE <1  OR SE >28  THEN  PRINT  CHR$(7): VTAB 18: CALL  -958: GOTO 470
  50. 490  HOME : PRINT : PRINT "Retrieving data on the " +TE$(SE) +"."
  51. 500  PRINT  CHR$(4)"OPEN NFL.DATA."YR$",L640": PRINT  CHR$(4)"READ NFL.DATA."YR$",R"SE
  52. 510  FOR I = 1 TO 16
  53. 520  INPUT CH$(I),PF%(I),PA%(I),W%(I),L%(I),T%(I): NEXT : PRINT  CHR$(4)"CLOSE"
  54. 530  IF FL = 1  THEN FL = 0: GOTO 680
  55. 540  HOME : POKE 32,49: POKE 33,30: POKE 34,0: HOME :A$ = TE$(SE): GOSUB 2220
  56. 550  PRINT "GA OPPONENT";: POKE 1403,22: PRINT "SCORE": PRINT "============================": REM 28EQUALSIGNS
  57. 560  FOR I = 1 TO 16: IF I <10  THEN  PRINT " ";
  58. 570  IF CH$(I) = ""  THEN 600
  59. 580  FOR J =  LEN(CH$(I)) TO 1  STEP  -1: IF  MID$ (CH$(I),J,1) = " "  THEN  PRINT I" " RIGHT$(CH$(I), LEN(CH$(I)) -J);:J = 0
  60. 590  NEXT J: GOTO 610
  61. 600  PRINT I" "CH$(I);
  62. 610  POKE 1403,22: IF PF%(I) <10  THEN  PRINT " ";
  63. 620  PRINT PF%(I)"-"PA%(I);: POKE 1403,29
  64. 630  IF CH$(I) = ""  THEN  PRINT : GOTO 670
  65. 640  IF PF%(I) >PA%(I)  THEN  PRINT "W";: GOTO 670
  66. 650  IF PF%(I) <PA%(I)  THEN  PRINT "L";: GOTO 670
  67. 660  PRINT "T";
  68. 670  NEXT 
  69. 680  TEXT : POKE 33,48: POKE 34,17: HOME : IF FL  THEN FL = 0: RETURN 
  70. 690  PRINT : INPUT "Game number to be changed (0 to quit):";NU$: IF  VAL(NU$) = 0  THEN  HOME : GOTO 1000
  71. 700 NU =  VAL(NU$): IF NU <1  OR NU >16  THEN  PRINT  CHR$(7): HOME : GOTO 690
  72. 710  HOME : PRINT : INPUT "Enter opposing team number:";TN$: IF  VAL(TN$) = 0  THEN  TEXT : RETURN 
  73. 720 TN =  VAL(TN$): IF TN = SE  THEN  PRINT  CHR$(7): GOTO 710
  74. 730  IF TN <1  OR TN >28  THEN  PRINT  CHR$(7): GOTO 710
  75. 740 L%(NU) = 0:W%(NU) = 0:T%(NU) = 0:CH$(NU) = TE$(TN)
  76. 750  HOME : VTAB 23: PRINT "Enter 'E' to erase the results of a game.": VTAB 19: PRINT "Points for the "TE$(SE)":";: INPUT "";PF$: IF PF$ = ""  THEN PF$ = "0"
  77. 760  IF PF$ = "e"  OR PF$ = "E"  THEN 1020
  78. 770  HOME : PRINT : PRINT "Points for the "TE$(TN)":";: INPUT "";PA$: IF PA$ = ""  THEN PA$ = "0"
  79. 780  HOME :A$ = "Game " + STR$(NU): GOSUB 2220: PRINT 
  80. 790  PRINT TE$(SE);: HTAB 24 - LEN(PF$): PRINT PF$: PRINT TE$(TN);: HTAB 24 - LEN(PA$): PRINT PA$
  81. 800  PRINT : INPUT "Correct (Y/N) ?";YN$: IF  LEFT$(YN$,1) = "y"  OR  LEFT$(YN$,1) = "Y" GOTO 820
  82. 810  TEXT : GOTO 450
  83. 820 PF%(NU) =  VAL(PF$):PA%(NU) =  VAL(PA$)
  84. 830  IF PF%(NU) <PA%(NU)  THEN L%(NU) = 1
  85. 840  IF PF%(NU) >PA%(NU)  THEN W%(NU) = 1
  86. 850  IF PF%(NU) = PA%(NU)  THEN T%(NU) = 1
  87. 860 FL = 1: GOSUB 540
  88. 870  HOME : PRINT : PRINT "Updating team information."
  89. 880  PRINT  CHR$(4)"OPEN NFL.DATA."YR$",L640": PRINT  CHR$(4)"WRITE NFL.DATA."YR$",R"SE
  90. 890  FOR I = 1 TO 16: PRINT CH$(I): PRINT PF%(I): PRINT PA%(I): PRINT W%(I): PRINT L%(I): PRINT T%(I): NEXT 
  91. 900  PRINT  CHR$(4)"READ NFL.DATA."YR$",R"TN: FOR I = 1 TO 16: INPUT CH$(I),PF%(I),PA%(I),W%(I),L%(I),T%(I): NEXT 
  92. 910  IF PF$ = "e"  OR PF$ = "E"  THEN CH$(NU) = "":L%(NU) = 0:W%(NU) = 0:T%(NU) = 0:PF%(NU) = 0:PA%(NU) = 0: GOTO 960
  93. 920 CH$(NU) = TE$(SE):PF%(NU) =  VAL(PA$):PA%(NU) =  VAL(PF$):L%(NU) = 0:W%(NU) = 0:T%(NU) = 0
  94. 930  IF PF%(NU) <PA%(NU)  THEN L%(NU) = 1
  95. 940  IF PF%(NU) >PA%(NU)  THEN W%(NU) = 1
  96. 950  IF PF%(NU) = PA%(NU)  THEN T%(NU) = 1
  97. 960  PRINT  CHR$(4)"WRITE NFL.DATA."YR$",R"TN
  98. 970  FOR I = 1 TO 16: PRINT CH$(I): PRINT PF%(I): PRINT PA%(I): PRINT W%(I): PRINT L%(I): PRINT T%(I): NEXT 
  99. 980  PRINT  CHR$(4)"CLOSE": IF PF$ = "e"  OR PF$ = "E"  THEN PF$ = "": GOTO 500
  100. 990 FL = 1: GOTO 500
  101. 1000  PRINT : INPUT "Another team? ";YN$: IF  LEFT$(YN$,1) = "y"  OR  LEFT$(YN$,1) = "Y"  THEN  TEXT : GOTO 450
  102. 1010  TEXT : RETURN 
  103. 1020  HOME : PRINT : PRINT "Erasing game "NU"."
  104. 1030 CH$(NU) = "":L%(NU) = 0:W%(NU) = 0:T%(NU) = 0:PF%(NU) = 0:PA%(NU) = 0: GOTO 880
  105. 1040  HOME :A$ = "--> NFL RECORDS <--": GOSUB 2200
  106. 1050  REM  PRINT TEAM W-L-T RECORD
  107. 1060  PRINT "Team                  W   L   T        Team                  W   L   T          ===============================================================================": REM  18/3/3/8/18/3/3/10 SPACES,79 ='S
  108. 1080  PRINT  CHR$(4)"OPEN NFL.DATA."YR$",L640": FOR I = 1 TO 14: PRINT  CHR$(4)"READ NFL.DATA."YR$",R"I
  109. 1090  FOR J = 1 TO 16: INPUT A$,A$,A$,W%(J),L%(J),T%(J):W% = W% +W%(J):L% = L% +L%(J):T% = T% +T%(J): NEXT 
  110. 1100  PRINT TE$(I);: POKE 1403,23 - LEN( STR$(W%)): PRINT W%;
  111. 1110  POKE 1403,27 - LEN( STR$(L%)): PRINT L%;
  112. 1120  POKE 1403,31 - LEN( STR$(T%)): PRINT T%:W% = 0:L% = 0:T% = 0
  113. 1130  NEXT : POKE 32,39: POKE 33,40: POKE 34,3: HOME 
  114. 1140  FOR I = 15 TO 28: PRINT  CHR$(4)"READ NFL.DATA."YR$",R"I
  115. 1150  FOR J = 1 TO 16: INPUT A$,A$,A$,W%(J),L%(J),T%(J):W% = W% +W%(J):L% = L% +L%(J):T% = T% +T%(J): NEXT 
  116. 1160  PRINT TE$(I);: POKE 1403,23 - LEN( STR$(W%)): PRINT W%;
  117. 1170  POKE 1403,27 - LEN( STR$(L%)): PRINT L%;
  118. 1180  POKE 1403,31 - LEN( STR$(T%)): PRINT T%:W% = 0:L% = 0:T% = 0
  119. 1190  NEXT : PRINT  CHR$(4)"CLOSE"
  120. 1200  TEXT : VTAB 23: PRINT "Press RETURN for the main menu.";: GET A$: PRINT : RETURN 
  121. 1210  HOME :A$ = "** Division Standings **": GOSUB 2200: POKE 34,1: HOME 
  122. 1220  GOSUB 1310
  123. 1230 K = 0: FOR I = 1 TO 28:S(I) = I: NEXT 
  124. 1240 B = 1:E = 5: GOSUB 1330: GOSUB 1400:K = K +1: GOSUB 1490
  125. 1250 B = 6:E = 9: GOSUB 1330: GOSUB 1400:K = K +1: GOSUB 1490: GOSUB 1640
  126. 1260 B = 10:E = 14: GOSUB 1330: GOSUB 1400:K = K +1: GOSUB 1490
  127. 1270 B = 15:E = 19: GOSUB 1330: GOSUB 1400:K = K +1: GOSUB 1490: GOSUB 1640
  128. 1280 B = 20:E = 24: GOSUB 1330: GOSUB 1400:K = K +1: GOSUB 1490
  129. 1290 B = 25:E = 28: GOSUB 1330: GOSUB 1400:K = K +1: GOSUB 1490
  130. 1300  VTAB 23: PRINT "Press RETURN for the main menu.";: GET A$: PRINT A$: TEXT : RETURN 
  131. 1310  FOR I = 1 TO 28:PC(I) = 0:WW%(I) = 0:LL%(I) = 0:TT%(I) = 0:FF%(I) = 0:AP%(I) = 0: NEXT 
  132. 1320  RETURN 
  133. 1330  PRINT  CHR$(4)"OPEN NFL.DATA."YR$",L640": FOR I = B TO E:PF% = 0:PA% = 0:W% = 0:L% = 0:T% = 0: PRINT  CHR$(4)"READ NFL.DATA."YR$",R"I
  134. 1340  FOR J = 1 TO 16: INPUT A$,PF%(J),PA%(J),W%(J),L%(J),T%(J)
  135. 1350 PF% = PF% +PF%(J):PA% = PA% +PA%(J)
  136. 1360 W% = W% +W%(J):L% = L% +L%(J):T% = T% +T%(J): NEXT J
  137. 1370 GA = W% +L% +T%: IF GA = 0  THEN PC(I) = 0: GOTO 1390
  138. 1380 W = W% +(T%/2):PC(I) = W/GA
  139. 1390 WW%(I) = W%:LL%(I) = L%:TT%(I) = T%:FF%(I) = PF%:AP%(I) = PA%: NEXT : PRINT  CHR$(4)"CLOSE"
  140. 1400  FOR I = B TO (B -1) +(E -B)
  141. 1410  FOR J = I +1 TO B +(E -B)
  142. 1420  IF PC(I) < = PC(J)  THEN 1460
  143. 1430 T = PC(I):TT = S(I)
  144. 1440 PC(I) = PC(J):S(I) = S(J)
  145. 1450 PC(J) = T:S(J) = TT
  146. 1460  NEXT J
  147. 1470  NEXT I
  148. 1480  RETURN 
  149. 1490  PRINT : PRINT DI$(K): PRINT 
  150. 1500  PRINT "Team";: POKE 1403,23: PRINT "W";: POKE 1403,27: PRINT "L";: POKE 1403,31: PRINT "T";: POKE 1403,37: PRINT "PF";
  151. 1510  POKE 1403,44: PRINT "PA";: POKE 1403,52: PRINT "PCT"
  152. 1520  PRINT "=======================================================": REM  55 equal signs
  153. 1530  FOR I = E TO B  STEP  -1: PRINT TE$(S(I));: POKE 1403,24 - LEN( STR$(WW%(S(I)))): PRINT WW%(S(I));
  154. 1540  POKE 1403,28 - LEN( STR$(LL%(S(I)))): PRINT LL%(S(I));
  155. 1550  POKE 1403,32 - LEN( STR$(TT%(S(I)))): PRINT TT%(S(I));
  156. 1560  POKE 1403,39 - LEN( STR$(FF%(S(I)))): PRINT FF%(S(I));
  157. 1570  POKE 1403,46 - LEN( STR$(AP%(S(I)))): PRINT AP%(S(I));
  158. 1580 PC$ =  STR$(PC(I)): IF PC$ = "0"  THEN PC$ = ".000": GOTO 1620
  159. 1590  IF PC$ = "1"  THEN PC$ = "1.000": GOTO 1620
  160. 1600  IF  LEN(PC$) <4  THEN PC$ = PC$ +"0": GOTO 1600
  161. 1610  IF  LEN(PC$) >4  THEN PC$ =  LEFT$(PC$,4)
  162. 1620  POKE 1403,55 - LEN(PC$): PRINT PC$
  163. 1630  NEXT : RETURN 
  164. 1640  VTAB 23: PRINT "Press 'ESC' for the main menu, press RETURN for more.";: WAIT  -16384,128: POKE  -16368,0: IF  PEEK( -16384) = 27  THEN  TEXT : HOME : POP : RETURN 
  165. 1650  HOME : RETURN 
  166. 1660  HOME :A$ = "<*> Game Predictions <*>": GOSUB 2210:PR = 0
  167. 1670  POKE 34,1: HOME : GOSUB 2090
  168. 1680  VTAB 20: INPUT "Enter HOME team's number:";T1$:T1 =  VAL(T1$): IF T1 = 0  THEN  TEXT : RETURN 
  169. 1690  IF T1 <1  OR T1 >28  THEN  PRINT  CHR$(7): VTAB 20: CALL  -958: GOTO 1680
  170. 1700  VTAB 21: INPUT "Enter AWAY team's number:";T2$:T2 =  VAL(T2$): IF T2 <1  OR T2 >28  THEN  PRINT  CHR$(7): VTAB 21: CALL  -958: GOTO 1700
  171. 1710  IF T2 = T1  THEN  PRINT  CHR$(7): VTAB 21: CALL  -958: GOTO 1700
  172. 1720  HOME : POKE 32,49: POKE 1403,49: POKE 33,30: POKE 34,0: HOME : PRINT : PRINT : PRINT : PRINT : PRINT 
  173. 1730  INVERSE : FOR I = 1 TO 270: PRINT " ";: NEXT 
  174. 1740  NORMAL : PRINT 
  175. 1750  VTAB 6: PRINT :A$ = "Working on...": GOSUB 2220: PRINT :A$ = TE$(T2): GOSUB 2220
  176. 1760  PRINT :A$ = "Vs.": GOSUB 2220: PRINT :A$ = TE$(T1): GOSUB 2220: VTAB 17
  177. 1770 PF% = 0:PA% = 0:W% = 0:L% = 0:G = 0:FU% = 0
  178. 1780  PRINT  CHR$(4)"OPEN NFL.DATA."YR$",L640": PRINT  CHR$(4)"READ NFL.DATA."YR$",R"T1
  179. 1790  FOR I = 1 TO 16: INPUT CH$,PF%(I),PA%(I),W%(I),L%(I),T%(I)
  180. 1800  IF CH$ = TE$(T2)  AND W%(I) = 1  THEN FU% = FU% +1
  181. 1810 PF% = PF% +PF%(I):PA% = PA% +PA%(I):W% = W% +W%(I):L% = L% +L%(I)
  182. 1820  IF CH$ < >""  THEN G = G +1
  183. 1830  NEXT :D% = W% -L%
  184. 1840 PF% = PF% +D%: IF G <3  THEN G = 3
  185. 1850 D1% =  INT(((PF% -PA%)/G) +FU% +1): REM  ADD FOR PRIOR VICTORY OVER OPPONENT AND ONE POINT FOR HOME FIELD ADVANTAGE
  186. 1860 PF% = 0:PA% = 0:W% = 0:L% = 0:G = 0:FU% = 0
  187. 1870  PRINT  CHR$(4)"READ NFL.DATA."YR$",R"T2
  188. 1880  FOR I = 1 TO 16: INPUT CH$,PF%(I),PA%(I),W%(I),L%(I),T%(I)
  189. 1890  IF CH$ = TE$(T1)  AND W%(I) = 1  THEN FU% = FU% +1
  190. 1900 PF% = PF% +PF%(I):PA% = PA% +PA%(I):W% = W% +W%(I):L% = L% +L%(I): IF CH$ < >""  THEN G = G +1
  191. 1910  NEXT :D% = W% -L%
  192. 1920 PF% = PF% +D%: IF G <3  THEN G = 3
  193. 1930 D2% =  INT((PF% -PA%)/G) +FU%
  194. 1940  PRINT  CHR$(4)"CLOSE"
  195. 1950  TEXT : POKE 34,17: HOME :PR = PR +1
  196. 1960  VTAB 18: INVERSE : FOR I = 1 TO 240: PRINT " ";: NEXT : NORMAL : PRINT 
  197. 1970  IF D1% >D2%  THEN A$ = TE$(T1) +" favored by " + STR$( INT( ABS(((D1% -D2%)/2) +.5))) +" over the " +TE$(T2) +".": GOTO 2000
  198. 1980  IF D1% <D2%  THEN A$ = TE$(T2) +" favored by " + STR$( INT( ABS(((D2% -D1%)/2) +.5))) +" over the " +TE$(T1) +".": GOTO 2000
  199. 1990  IF D1% = D2%  THEN A$ = TE$(T1) +" are rated even with the " +TE$(T2) +"."
  200. 2000  VTAB 19: GOSUB 2200
  201. 2010  PRINT  CHR$(4)"OPEN PREDICTIONS,L80": PRINT  CHR$(4)"WRITE PREDICTIONS,R0": PRINT PR: PRINT  CHR$(4)"WRITE PREDICTIONS,R"PR: PRINT A$: PRINT  CHR$(4)"CLOSE"
  202. 2020  VTAB 22: INPUT "Another prediction (Y/N) ?";YN$: IF  LEFT$(YN$,1) = "y"  OR  LEFT$(YN$,1) = "Y"  OR YN$ = ""  THEN  HOME : POKE 32,49: POKE 33,30: POKE 34,0: HOME : POKE 32,0: POKE 33,80: POKE 34,17: GOTO 1680
  203. 2030  VTAB 18: CALL  -958: VTAB 20: INPUT "Do you want a printout of these predictions?";YN$
  204. 2040  IF  LEFT$(YN$,1) = "n"  OR  LEFT$(YN$,1) = "N"  THEN  TEXT : RETURN 
  205. 2050  PRINT  CHR$(4)"PR#1": PRINT  CHR$(9)"80N"
  206. 2060  PRINT "N.F.L. LINE Predictions": PRINT "=======================": REM  23 equal signs
  207. 2070  PRINT  CHR$(4)"OPEN PREDICTIONS,L80": FOR I = 1 TO PR: PRINT  CHR$(4)"READ PREDICTIONS,R"I: INPUT A$: PRINT A$: NEXT : PRINT  CHR$(4)"CLOSE"
  208. 2080  PRINT  CHR$(4)"PR#0": PRINT  CHR$(4)"PR#A$C307": TEXT : RETURN 
  209. 2090  PRINT : FOR I = 1 TO 14: IF I <10  THEN  PRINT " ";
  210. 2100  PRINT I" "TE$(I): NEXT 
  211. 2110  POKE 32,24: POKE 33,24: POKE 34,2: POKE 35,17: HOME 
  212. 2120  FOR I = 15 TO 28: PRINT I" "TE$(I): NEXT 
  213. 2130  TEXT : POKE 34,16: HOME 
  214. 2140  RETURN 
  215. 2150  HOME : VTAB 12: PRINT "There are no data files on this disk. Do you want to create one?";: INPUT "";YN$: IF  LEFT$(YN$,1) = "y"  OR  LEFT$(YN$,1) = "Y"  THEN 2170
  216. 2160  TEXT : HOME : PRINT D$"PREFIX/": END 
  217. 2170  VTAB 14: INPUT "Enter the current year :";YR$: IF  LEN(YR$) <4  THEN  PRINT  CHR$(7): VTAB 14: CALL  -958: GOTO 2170
  218. 2180  HOME : VTAB 12:A$ = "Please wait. Data files being created.": GOSUB 2200
  219. 2190  PRINT  CHR$(4)"OPEN NFL.DATA."YR$",L640": PRINT  CHR$(4)"WRITE NFL.DATA."YR$",R0": PRINT YR$
  220. 2195  FOR I = 1 TO 28: PRINT  CHR$(4)"WRITE NFL.DATA."YR$",R"I: FOR J = 1 TO 16: PRINT : PRINT 0: PRINT 0: PRINT 0: PRINT 0: PRINT 0: NEXT J,I: PRINT  CHR$(4)"CLOSE": GOTO 260
  221. 2200 HT = 40 - LEN(A$)/2: POKE 1403,HT: PRINT A$: RETURN 
  222. 2210 HT = 20 - LEN(A$)/2: POKE 1403,HT: PRINT A$: RETURN 
  223. 2220 HT = 15 - LEN(A$)/2: POKE 1403,HT: PRINT A$: RETURN 
  224. 2230  DATA  Buffalo Bills,Indianapolis Colts,Miami Dolphins,New England Patriots,New York Jets
  225. 2240  DATA  Cincinnati Bengals,Cleveland Browns,Houston Oilers,Pittsburgh Steelers
  226. 2250  DATA  Denver Broncos,Kansas City Chiefs,Los Angeles Raiders,San Diego Chargers,Seattle Seahawks
  227. 2260  DATA  Dallas Cowboys,New York Giants,Philadelphia Eagles,St. Louis Cardinals,Washington Redskins
  228. 2270  DATA  Chicago Bears,Detroit Lions,Green Bay Packers,Minnesota Vikings,Tampa Bay Buccaneers
  229. 2280  DATA  Atlanta Falcons,Los Angeles Rams,New Orleans Saints,San Francisco 49ers
  230. 2290  DATA  AFC - EAST,AFC - CENTRAL,AFC - WEST,NFC - EAST,NFC - CENTRAL,NFC - WEST
  231. 2300 ER =  PEEK(222):EL =  PEEK(218) + PEEK(219) *256: CALL  -3288
  232. 2305  POKE 216,0
  233. 2310  IF ER = 7  AND EF = 1  THEN  PRINT : PRINT  CHR$(4)"CREATE NFL.DATA": PRINT  CHR$(4)"PREFIX NFL.DATA": GOTO 2150
  234. 2320  IF ER = 6  AND (EF = 2  OR EF = 3)  THEN 2450
  235. 2330  PRINT  CHR$(4)"CLOSE": TEXT : HOME : VTAB 12
  236. 2340  IF ER = 4  THEN  PRINT "Disk is Write Protected. Option aborted.": GOTO 2420
  237. 2350  IF ER = 8  OR ER = 6  THEN  PRINT "I/O Error. Check drive door. ";: GOTO 2410
  238. 2360  IF ER = 9  THEN  PRINT "Disk Full. ";: GOTO 2410
  239. 2370  IF ER = 10  THEN  PRINT "Data file is locked. ";: GOTO 2410
  240. 2380  IF ER = 17  THEN  PRINT "Directory Full. ";: GOTO 2410
  241. 2390  IF ER = 255  THEN  PRINT "Control-C interrupt. ";: GOTO 2410
  242. 2400  POKE 216,0: TEXT : HOME : VTAB 12: PRINT "ERROR "ER" HAS OCCURRED IN LINE "EL".": PRINT "PLEASE CHECK YOUR APPLESOFT OR PRODOS MANUAL.": PRINT  CHR$(4)"CLOSE": PRINT  CHR$(4)"PREFIX"PR$: END 
  243. 2410  PRINT "Option cancelled."
  244. 2420  VTAB 22: PRINT "Press a key for the main menu.";: GET A$: PRINT A$: IF EL <150  THEN  PRINT  CHR$(4)"PREFIX/": RUN 
  245. 2430  GOTO 260
  246. 2440  TEXT : HOME : VTAB 12: PRINT "APPLE //E OR //C WITH AN 80 COLUMN TEXT CARD IS REQUIRED.": PRINT D$"PREFIX/": END 
  247. 2450  HOME : VTAB 12: PRINT "There is no data file for "YR$". Do you want to create one?";: INPUT "";YN$
  248. 2460  IF (EF = 2  OR EF = 3)  AND ( LEFT$(YN$,1) = "Y"  OR  LEFT$(YN$,1) = "y")  THEN  HOME : GOTO 2180
  249. 2470  IF EF = 2  THEN  HOME : GOTO 200
  250. 2480  IF EF = 3  THEN YR$ = TE$: GOTO 260