home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / basic / library / gwbasic / friendly / stats.bas < prev    next >
Encoding:
BASIC Source File  |  1994-05-25  |  17.2 KB  |  189 lines

  1. 10 DEFSTR Z:XT$="A:":DEFDBL J,G,V,W,X:DEFINT A-C:DIM Z(22,10,1),D(2,33,1),AVG!(21),VALUE(21),TEAMNAME$(30):DEF FNX(V)=FIX(DIFF-(INT(DIFF/V))*V)+1:GOSUB 1690:CLS:COLOR 7,0:ON KEY(9) GOSUB 1320:ON KEY(10) GOSUB 960:ON ERROR GOTO 1340
  2. 20 XX=13:YYY=54:GOSUB 910:GOSUB 540
  3. 30 COLOR 12,0:CLS:LOCATE 1,20:PRINT STRING$(41,"█"):LOCATE 2,20:PRINT"██"TAB(35)"SPORTS MENU";:LOCATE ,59:PRINT"██":LOCATE 3,20:PRINT STRING$(41,"█"):FOR A=4 TO 13:LOCATE A,20:PRINT"██":LOCATE A,59:PRINT"██":NEXT:LOCATE 14,20:PRINT STRING$(41,"█")
  4. 40 LOCATE 5,26:COLOR 15:PRINT"A";:COLOR 3:PRINT") Enter A Team Roster.":LOCATE ,26:COLOR 15:PRINT"B";:COLOR 3:PRINT") Evaluate Both Teams.":LOCATE ,26:COLOR 15:PRINT"C";:COLOR 3:PRINT") Change Birth Date(s)
  5. 50 LOCATE ,26:COLOR 15:PRINT"D";:COLOR 3:PRINT") Save A Team To Diskette.":LOCATE ,26:COLOR 15:PRINT"E";:COLOR 3:PRINT") Load Team From Diskette.":LOCATE ,26:COLOR 15:PRINT"F";:COLOR 3:PRINT") Erase Team Off Diskette.
  6. 60 LOCATE ,26:COLOR 15:PRINT"G";:COLOR 3:PRINT") Select Data Drive"
  7. 70 LOCATE 13,26,1:PRINT"What is your option? <A-G>":LOCATE 13,54:XX=CSRLIN:YYY=POS(0):GOSUB 990
  8. 80 GOSUB 1670:IF Z<"A" OR Z>"G" THEN 80 ELSE ON ASC(Z)-64 GOTO 90,100,110,120,130,140,150
  9. 90 GOSUB 230:GOSUB 300:GOTO 30
  10. 100 GOSUB 280:GOSUB 470:GOSUB 810:GOSUB 660:GOTO 30
  11. 110 GOSUB 160:GOTO 30
  12. 120 GOSUB 1010:GOTO 30
  13. 130 GOSUB 1100:GOTO 30
  14. 140 GOSUB 1210:GOTO 30
  15. 150 GOSUB 1690:GOTO 30
  16. 160 IF TEAM$(0)<>"" OR TEAM$(1)<>"" THEN ELSE LOCATE 20,25:COLOR 15,0:PRINT"You Must First Create Team":LOCATE 21,20:PRINT"Rosters Or Load Teams From Diskette":FOR A=1 TO 3000:NEXT:RETURN
  17. 170 IF TEAM$(0)<>"" AND TEAM$(1)<>"" THEN ELSE IF TEAM$(0)<>"" THEN T=0:GOTO 200 ELSE IF TEAM$(1)<>"" THEN T=1:GOTO 200
  18. 180 CLS:LOCATE ,20:PRINT"Which Roster Do You Wish To Update?":LOCATE ,20:PRINT TEAM$(0)" or "TEAM$(1)"? ";:GOSUB 1610
  19. 190 IF ZA=TEAM$(0) THEN T=0 ELSE IF ZA=TEAM$(1) THEN T=1 ELSE 180
  20. 200 CLS:PRINT"Position: "TAB(30)"Birth Date"TAB(60)"Team "TEAM$(T):FOR A=0 TO 21:LOCATE ,1:PRINT Z(A,0,T);:LOCATE ,30:PRINT Z(A,1,T);:XX=CSRLIN:YYY=POS(0)
  21. 210 LOCATE ,60:COLOR 15,0:PRINT"Correct? <Y/N>";:COLOR 3,0:GOSUB 450:IF Z1="1" THEN LOCATE ,60:PRINT SPC(19); ELSE LOCATE XX,30:PRINT"Birth Date :(m-d-y) ";:GOSUB 340:Z(A,1,T)=Z2
  22. 220 PRINT:NEXT:RETURN
  23. 230 CLS:LOCATE 4,20:PRINT"Enter Name Of Team ";
  24. 240 GOSUB 1610:IF ZA<>"        " THEN 250 ELSE LOCATE 10,20:PRINT"You Must Enter A Team Name":FOR SLO=1 TO 3000:NEXT:RETURN 30
  25. 250 IF TEAM$(0)<>"" AND TEAM$(1)="" THEN TEAM$(1)=ZA:T=1:RETURN
  26. 260 IF TEAM$(1)<>"" AND TEAM$(0)="" THEN TEAM$(0)=ZA:T=0:RETURN
  27. 270 LOCATE 6,20:PRINT"Are They The Home or Visiting Team? <H/V>";:GOSUB 1300:TEAM$(T)=ZA:RETURN
  28. 280 IF TEAM$(0)<>"" OR TEAM$(1)<>"" THEN ELSE LOCATE 20,25:COLOR 15,0:PRINT"You Must First Create Team":LOCATE 21,20:PRINT"Rosters Or Load Teams From Diskette":FOR A=1 TO 3000:NEXT:RETURN 30
  29. 290 CLS:LOCATE 8,15:PRINT"What Is Date Of Game :(m-d-y)? ";:GOSUB 340:GAME$=Z2:CLS:RETURN
  30. 300 A=0:Z1="":CLS:PRINT"Team  "TEAM$(T)
  31. 310 XX=CSRLIN:YYY=POS(0):GOSUB 990
  32. 320 LOCATE 2:COLOR 3,0
  33. 330 WHILE A<22:LOCATE ,1:PRINT"Position: "Z(A,0,T);:LOCATE ,30,1:PRINT"Birth Date:? (m-d-y) ";:GOSUB 340:Z(A,1,T)=Z2:A=A+1:PRINT:WEND:RETURN
  34. 340 IF INKEY$<>"" THEN 340
  35. 350 Z="":Z1="":LOCATE ,53:PRINT SPC(25);:LOCATE ,53
  36. 360 GOSUB 1670:IF Z=CHR$(8) THEN 350 ELSE IF Z="." OR Z=" " OR Z="/" OR Z="-" THEN ELSE IF (Z<"0" OR Z>"9") OR LEN(Z1)>1 THEN 360 ELSE Z1=Z1+Z:LOCATE ,53:PRINT Z1;:GOTO 360
  37. 370 IF VAL(Z1)<1 OR VAL(Z1)>12 THEN 350 ELSE IF LEN(Z1)<>2 THEN Z1=" "+Z1
  38. 380 Z2=Z1+"/":Z1="":LOCATE ,53:PRINT Z2;
  39. 390 GOSUB 1670:IF Z=CHR$(8) THEN 350 ELSE IF Z="." OR Z=" " OR Z="/" OR Z="-" THEN ELSE IF (Z<"0" OR Z>"9") OR LEN(Z1)>1 THEN 390 ELSE Z1=Z1+Z:LOCATE ,POS(0):PRINT Z;:GOTO 390
  40. 400 IF VAL(Z1)<1 OR VAL(Z1)>31 THEN 350 ELSE IF LEN(Z1)<>2 THEN Z1=" "+Z1
  41. 410 Z2=Z2+Z1+"/":Z1="":LOCATE ,53:PRINT Z2;
  42. 420 GOSUB 1670:IF Z=CHR$(8) THEN 350 ELSE IF Z<"0" OR Z>"9" THEN 420 ELSE Z1=Z:LOCATE ,POS(0):PRINT Z;
  43. 430 GOSUB 1670:IF Z=CHR$(8) THEN 350 ELSE IF Z<"0" OR Z>"9" THEN 430 ELSE Z1=Z1+Z:IF VAL(Z1)<1 OR VAL(Z1)>99 THEN 350
  44. 440 Z2=Z2+Z1:LOCATE ,53:PRINT Z2;:LOCATE ,62:COLOR 15:PRINT"Correct? <Y/N>";:COLOR 3,0:GOSUB 450:IF Z1<>"1" THEN 350 ELSE LOCATE ,62:PRINT SPC(16);:RETURN
  45. 450 GOSUB 1670:Z=Z:Z1="":IF Z="Y" THEN Z1="1" ELSE IF Z<>"N" THEN 450
  46. 460 PRINT Z;:RETURN
  47. 470 LOCATE 10,30,1:PRINT"ONE MOMENT PLEASE"
  48. 480 MONTH=VAL(MID$(GAME$,1,2)):DAY=VAL(MID$(GAME$,4,2)):YEAR=1900+VAL(MID$(GAME$,7,2)):GOSUB 530:GAME=JD
  49. 490 FOR T=0 TO 1:FOR B=0 TO 21:IF Z(B,1,T)="" THEN 520
  50. 500 MONTH=VAL(MID$(Z(B,1,T),1,2)):DAY=VAL(MID$(Z(B,1,T),4,2)):YEAR=1900+VAL(MID$(Z(B,1,T),7,2)):GOSUB 530:DIFF=GAME-JD:W=FNX(23):Z(B,2,T)=STR$(W):Z(B,3,T)=STR$(D(0,W,0)):W=FNX(28):Z(B,4,T)=STR$(W):Z(B,5,T)=STR$(D(1,W,0))
  51. 510 W=FNX(33):Z(B,6,T)=STR$(W):Z(B,7,T)=STR$(D(2,W,0))
  52. 520 NEXT B:NEXT T:RETURN
  53. 530 W=FIX((MONTH-14)/12):JD=INT(1461*(YEAR+4800+W)/4):X=FIX(367*(MONTH-2-W*12)/12):JD=JD+X:X=INT(INT(3*(YEAR+4900+W)/100)/4):JD=JD+DAY-32075-X:RETURN
  54. 540 CLS:PRINT STRING$(80,"█"):FOR A=2 TO 22:LOCATE A,1:PRINT"█":LOCATE A,80:PRINT"█":NEXT:LOCATE 23,1:PRINT STRING$(80,"█");
  55. 550 COLOR 15,0:LOCATE 3,15:PRINT"B I O R H Y T H M   S P O R T S   P R E D I C T I N G":LOCATE 6,23:PRINT"Would You Like Instructions? <Y/N>";:COLOR 3,0:GOSUB 450:IF Z1<>"1" THEN RETURN
  56. 560 LOCATE 4,9:PRINT"This program combines the number crunching ability of your PC, the":LOCATE ,6:PRINT"biorhythm theory, and an assortment of other weights and measures, to
  57. 570 LOCATE ,6:PRINT"predict which of two teams should be  dominant in any particular game":LOCATE ,6:PRINT"on any given Sunday (for more info about the Biorhythm Theory in gen-
  58. 580 LOCATE ,6:PRINT"eral, please refer to your FriendlyWare manual on page number 31).":LOCATE ,13:PRINT"Predictions are generated by first calculating each individual
  59. 590 LOCATE ,6:PRINT"player's biorhythm chart,  and then mixing those results for each":LOCATE ,6:PRINT"unit (offense and defense) to come up with a team average.  The aver-
  60. 600 LOCATE ,6:PRINT"age also includes variables for  key positions,  skill positions, etc.":LOCATE ,9:PRINT"A team's offense is compared to the other team's defense and vice-
  61. 610 LOCATE ,6:PRINT"versa to produce the overall prediction.   The results should tell if":LOCATE ,6:PRINT"one team is more likely to perform close to its potential on game day.
  62. 620 LOCATE ,8:PRINT"Remember  though,  that a weak team  playing at its  high may still":LOCATE ,6:PRINT"not be as strong  as a great team that is a little down.  That is why
  63. 630 LOCATE ,6:PRINT"YOUR  OWN  evaluation  and  analysis is necessary to use this program.":LOCATE ,6:PRINT"In other words, we are providing you with a `TOOL',  not a  `LABORER'.
  64. 640 LOCATE ,8:PRINT"Once you have entered the players birth dates for a particular team,":LOCATE ,6:PRINT"it is possible to  save this  information  onto another diskette  for
  65. 650 LOCATE ,6:PRINT"future use. You will also have the ability to update your information.":LOCATE 25,28:COLOR 15:PRINT"Strike Any Key To Continue";:COLOR 3,0:GOSUB 1670:RETURN
  66. 660 A=0:GOSUB 780:FFF=0
  67. 670 C=5:FOR B=0 TO 21:LOCATE C,2:COLOR 15,0:PRINT USING "\           \";Z(B,0,A);:LOCATE ,17:PRINT Z(B,1,A);:LOCATE ,27:PRINT ZZ(D(0,VAL(Z(B,2,A)),1));:LOCATE ,34:PRINT USING "#.#";VAL(Z(B,3,A));:LOCATE ,40:PRINT ZZ(D(1,VAL(Z(B,4,A)),1));
  68. 680 LOCATE ,47:PRINT USING "#.#";VAL(Z(B,5,A));:LOCATE ,53:PRINT ZZ(D(2,VAL(Z(B,6,A)),1));:LOCATE ,60:PRINT USING "#.#";VAL(Z(B,7,A));:LOCATE ,66:PRINT USING "##.#";VAL(Z(B,9,A));:LOCATE ,74:PRINT USING "##.##";VAL(Z(B,8,A));:COLOR 2,0
  69. 690 C=C+1:IF B=10 THEN IF FFF THEN COLOR 6,0:LOCATE 18,44 ELSE LOCATE 18,5 ELSE 710
  70. 700 PRINT USING "\      \";TEAM$(A);:PRINT" Offensive Average Is ";:PRINT USING "###.##";OF(A);:A=TURN(A):GOSUB 770
  71. 710 NEXT B
  72. 720 IF FFF THEN COLOR 6,0:LOCATE 19,44 ELSE LOCATE 19,5
  73. 730 PRINT USING "\      \";TEAM$(A);:PRINT" Defensive Average Is ";:PRINT USING "###.##";DF(A);
  74. 740 GOSUB 770:FFF=1:IF A THEN 670
  75. 750 LOCATE 21,26:PRINT USING "\      \";TEAM$(0);:PRINT" Team Evaluation Is";:PRINT USING " ####.##";TEAMAVG(0)*100
  76. 760 LOCATE 22,26:PRINT USING "\      \";TEAM$(1);:PRINT" Team Evaluation Is";:PRINT USING " ####.##";TEAMAVG(1)*100
  77. 770 COLOR 15,0:C=5:LOCATE 25,29,0:PRINT"Strike Any Key To Continue";:GOSUB 1670:LOCATE 25,20:PRINT SPC(40);:LOCATE 24,1:PRINT SPC(60);:RETURN
  78. 780 COLOR 4,0:CLS:PRINT"╔══════════════╦════════╦════════════╦════════════╦════════════╦═══════════════╗";:PRINT"║    PLAYER    ║  BIRTH ║  PHYSICAL  ║  EMOTIONAL ║INTELLECTUAL║     TOTALS    ║";
  79. 790 PRINT"║ POSITION     ║ DATE   ║ CYCLE  PTS.║ CYCLE  PTS.║ CYCLE  PTS.║   PTS.   AVG. ║";:PRINT"╠══════════════╬════════╬══════╤═════╬══════╤═════╬══════╤═════╬═══════╤═══════╣";
  80. 800 FOR E=4 TO 14:PRINT"║              ║        ║      │     ║      │     ║      │     ║       │       ║";:NEXT:PRINT"╚══════════════╩════════╩══════╧═════╩══════╧═════╩══════╧═════╩═══════╧═══════╝";:COLOR 3,0:RETURN
  81. 810 AVG!(0)=0:AVG!(1)=0:OF(0)=0:DF(0)=0:OF(1)=0:DF(1)=0:TEAMAVG(0)=0:TEAMAVG(1)=0
  82. 820 FOR A=0 TO 1:FOR B=0 TO 21:DD=3
  83. 830 TOT1=VAL(Z(B,3,A)):IF TOT1=0 THEN DD=DD-1
  84. 840 TOT2=VAL(Z(B,5,A)):IF TOT2=0 THEN DD=DD-1
  85. 850 TOT3=VAL(Z(B,7,A)):IF TOT3=0 THEN DD=DD-1
  86. 860 IF DD=0 THEN AVG!=0 ELSE AVG!=(TOT1+TOT2+TOT3)/DD:AVG!=AVG!*VALUE(B):AVG!(A)=AVG!(A)+AVG!
  87. 870 Z(B,8,A)=STR$(AVG!):Z(B,9,A)=STR$((TOT1+TOT2+TOT3)):IF B<11 THEN OF(A)=OF(A)+AVG! ELSE DF(A)=DF(A)+AVG!
  88. 880 NEXT B
  89. 890 IF A=0 THEN AVG!(A)=AVG!(A)+2
  90. 900 TEAMAVG(A)=AVG!(A)/22:DF(A)=DF(A)/11:OF(A)=OF(A)/11:NEXT A:RETURN
  91. 910 FOR B=0 TO 1:FOR A=1 TO 23:READ D(0,A,B):NEXT:FOR A=1 TO 28:READ D(1,A,B):NEXT:FOR A=1 TO 33:READ D(2,A,B):NEXT:NEXT:FOR A=0 TO 21:READ VALUE(A):NEXT:RESTORE 950:ERASE Z:DIM Z(22,10,1):FOR A=0 TO 21:READ Z(A,0,0):Z(A,0,1)=Z(A,0,0):NEXT
  92. 920 ZZ(0)="crit":ZZ(1)="low ":ZZ(2)="avg ":ZZ(3)="high":TURN(1)=0:TURN(0)=1:RETURN
  93. 930 DATA 2,3,4.5,6,7.5,7.5,7.5,6,4.5,3,2,0,1,2,3,4,5,5,5,4,3,2,0,2,2,3,4.5,4.5,6,7.5,7.5,7.5,6,4.5,4.5,3,2,0,1,2,3,3,4,5,5,5,4,3,2,1,0,2,2,3,3,4.5,4.5,6,7.5,7.5,7.5,6,4.5,4.5,3,3,2,0,1,2,2,3,3,4,5,5,5,4,3,3,4,4,1,0
  94. 940 DATA 1,2,2,2,3,3,3,2,2,2,1,0,1,2,2,2,3,3,3,2,2,2,0,1,1,2,2,2,2,3,3,3,2,2,2,2,1,0,1,2,2,2,2,3,3,3,2,2,2,1,0,1,1,2,2,2,2,2,3,3,3,2,2,2,2,2,1,0,1,2,2,2,2,2,3,3,3,2,2,2,2,2,1,0,5,3,2,2,2,2,1,1,1,1,1,4,2,2,2,2,2,1,1,1,1,3
  95. 950 DATA QUARTERBACK,HALFBACK,FULLBACK,WIDE RECEIVER,TIGHT END,SPLIT END,CENTER,R.TACKLE,R.GUARD,L.TACKLE,L.GUARD,M.LINEBACKER,R.LINEBACKER,L.LINEBACKER,LINEBACK/LINE,R.CORNERBACK,L.CORNERBACK,DEF.LINEMAN,DEF.LINEMAN,DEF.LINEMAN,STRONG SAFETY,FREE SAFETY
  96. 960 KEY(10) OFF:XX=CSRLIN:YYY=POS(0):LOCATE 25,1:PRINT SPC(79);:COLOR 15
  97. 970 LOCATE 25,20:PRINT"Do You Wish To Leave This Program? <Y/N>";:COLOR 3,0
  98. 980 Z3=Z1:GOSUB 450:IF Z1="1" THEN 1000
  99. 990 LOCATE 25,1:PRINT SPC(79);:LOCATE 25,24:COLOR 0,7:PRINT" Strike <F10> To Leave Program ";:COLOR 3,0:LOCATE XX,YYY:KEY(10) ON:Z="":Z1=Z3:RETURN
  100. 1000 RUN"menu2"
  101. 1010 IF TEAM$(0)<>"" OR TEAM$(1)<>"" THEN 1030
  102. 1020 LOCATE 20,15,0:COLOR 15,0:PRINT"You Must Create Team Rosters Before You Can Save Them.":FOR A=1 TO 3000:NEXT:COLOR 3,0:RETURN
  103. 1030 CLS:LOCATE 2,20:PRINT"Which Team Do You Wish To Save?";:GOSUB 1310:LOCATE 3,25:PRINT TEAM$(0)" or "TEAM$(1):K9=0:LOCATE 5,30:GOSUB 1610:Z=ZA
  104. 1040 IF Z=TEAM$(0) THEN B=0:GOTO 1060 ELSE IF Z=TEAM$(1) THEN B=1:GOTO 1060 ELSE IF K9 THEN 1090
  105. 1050 LOCATE 12,20:PRINT"Invalid Name, Please Try Again.":FOR A=1 TO 3000:NEXT:LOCATE 12,1:PRINT SPC(79):GOTO 1030
  106. 1060 Z=Z+".STS":OPEN"I",#1,XT$+"NAME.FLE"
  107. 1070 IF EOF(1)=0 THEN INPUT#1,TEAMNAME$:IF TEAMNAME$=Z OR K9 THEN 1080 ELSE 1070 ELSE CLOSE:OPEN XT$+"NAME.FLE" FOR APPEND AS #1:WRITE#1,Z
  108. 1080 IF K9 THEN 1090 ELSE CLOSE:OPEN"O",#1,XT$+Z:FOR A=0 TO 11 STEP 11:WRITE#1,Z(A,1,B),Z(A+1,1,B),Z(A+2,1,B),Z(A+3,1,B),Z(A+4,1,B),Z(A+5,1,B),                Z(A+6,1,B),Z(A+7,1,B),Z(A+8,1,B),Z(A+9,1,B),Z(A+10,1,B):NEXT
  109. 1090 CLOSE:RETURN
  110. 1100 CLS:GOSUB 1310:K9=0:IF K9 THEN 1090 ELSE OPEN"I",#1,XT$+"NAME.FLE"
  111. 1110 IF EOF(1) THEN ELSE INPUT#1,TEAMNAME$:LOCATE ,POS(0)+12:PRINT LEFT$(TEAMNAME$,8);:GOTO 1110
  112. 1120 LOCATE 20,20:PRINT"Which Team Do You Wish To Load?";:K9=0:GOSUB 1610:Z=ZA:IF K9 THEN 1090 ELSE CLOSE:OPEN"I",#1,XT$+"NAME.FLE"
  113. 1130 IF EOF(1) THEN CLOSE ELSE INPUT#1,TEAMNAME$:IF Z=LEFT$(TEAMNAME$,8) THEN 1150 ELSE 1130
  114. 1140 LOCATE 20,1:PRINT SPC(79):LOCATE 20,20:PRINT"Invalid Team Name, Please Try Again.":FOR A=1 TO 2000:NEXT:LOCATE 20,20:PRINT SPC(79):GOTO 1120
  115. 1150 LOCATE 20,1:PRINT SPC(78):LOCATE 20,20:K9=0
  116. 1160 IF TEAM$(0)<>"" AND TEAM$(1)="" THEN TEAM$(1)=LEFT$(TEAMNAME$,8):T=1:GOTO 1190
  117. 1170 IF TEAM$(1)<>"" AND TEAM$(0)="" THEN TEAM$(0)=LEFT$(TEAMNAME$,8):T=0:GOTO 1190
  118. 1180 PRINT"Home Team or Visiting Team? <H/V>":K9=0:GOSUB 1300:TEAM$(T)=LEFT$(TEAMNAME$,8)
  119. 1190 IF K9 THEN 1090 ELSE CLOSE:OPEN"I",#1,XT$+TEAMNAME$
  120. 1200 FOR A=0 TO 11 STEP 11:INPUT#1,Z(A,1,T),Z(A+1,1,T),Z(A+2,1,T),Z(A+3,1,T),Z(A+4,1,T),Z(A+5,1,T),Z(A+6,1,T),Z(A+7,1,T),Z(A+8,1,T),Z(A+9,1,T),Z(A+10,1,T):NEXT:CLOSE:RETURN
  121. 1210 CLS:GOSUB 1310:K9=0:A=0:OPEN"I",#1,XT$+"NAME.FLE":ERASE TEAMNAME$:DIM TEAMNAME$(30)
  122. 1220 IF EOF(1) THEN CLOSE:GOTO 1240
  123. 1230 A=A+1:INPUT#1,TEAMNAME$(A):LOCATE ,POS(0)+12:PRINT LEFT$(TEAMNAME$(A),8);:GOTO 1220
  124. 1240 LOCATE 20,20:PRINT"Which Team Do You Wish To Erase?";
  125. 1250 K9=0:GOSUB 1610:Z1=ZA:Z1=Z1+".STS":IF K9 THEN 1090
  126. 1260 FOR B=1 TO A:IF Z1=TEAMNAME$(B) THEN 1280 ELSE NEXT
  127. 1270 LOCATE 20,1:PRINT SPC(79):LOCATE 20,20:PRINT"Invalid File Name, Please Try Again.":FOR B=1 TO 3000:NEXT:LOCATE 20,1:PRINT SPC(79):GOTO 1240
  128. 1280 KILL XT$+TEAMNAME$(B):TEAMNAME$(B)="":CLOSE #2:OPEN"O",#2,XT$+"NAME.FLE":FOR A=1 TO 30:IF TEAMNAME$(A)<>"" THEN WRITE#2,TEAMNAME$(A)
  129. 1290 NEXT:CLOSE:RETURN
  130. 1300 GOSUB 1670:IF K9 THEN RETURN ELSE IF Z="H" THEN T=0:RETURN ELSE IF Z="V" THEN T=1:RETURN ELSE 1300
  131. 1310 KEY(9) ON:LOCATE 24,20:COLOR 0,3:PRINT" Strike <F9> To Return To Sports Menu ";:COLOR 3,0:XX=1:YYY=1:GOTO 990
  132. 1320 KEY(9) OFF:RETURN 1330
  133. 1330 K9=1:CLOSE:RETURN
  134. 1340 XX=CSRLIN:YYY=POS(0):LOCATE 22,1,0:PRINT SPC(79);:COLOR 14,0
  135. 1350 IF ERR=53 AND ERL=1190 OR ERL=1280 THEN 1480
  136. 1360 IF ERR=61 THEN 1500
  137. 1370 IF ERR=67 THEN 1510
  138. 1380 IF ERR=70 THEN 1520
  139. 1390 IF ERR=71 THEN 1530
  140. 1400 IF ERR=72 THEN 1540
  141. 1410 IF ERR=53 AND ERL=1000 THEN 1460
  142. 1420 IF ERR=53 THEN 1490
  143. 1430 IF ERR=52 THEN 1470
  144. 1440 ON ERROR GOTO 0
  145. 1450 END
  146. 1460 CLS:LOCATE 21,22:PRINT"Insert A FriendlyWare Diskette #2 And":GOTO 1560
  147. 1470 LOCATE 21,35:PRINT"Bad File Name. ":GOTO 1560
  148. 1480 LOCATE 21,22:PRINT"Insert Diskette With Team File And":GOTO 1560
  149. 1490 LOCATE 21,23:PRINT"Insert Diskette With NAME.FLE And":GOTO 1560
  150. 1500 LOCATE 21,34:PRINT"Diskette Is Full.":GOTO 1550
  151. 1510 LOCATE 21,27:PRINT"Diskette Has Too Many Files.":GOTO 1550
  152. 1520 LOCATE 21,27:PRINT"Diskette Is Write Protected.":GOTO 1550
  153. 1530 LOCATE 21,20:PRINT"Disk Cover Is Open. Close Cover And":GOTO 1560
  154. 1540 LOCATE 21,29:PRINT"Diskette Read Error."
  155. 1550 LOCATE 22,27:PRINT"Insert New Diskette And"
  156. 1560 LOCATE 23,26:PRINT"Strike Any Key To Continue
  157. 1570 GOSUB 1670
  158. 1580 FOR AC=21 TO 23:LOCATE AC,1:PRINT SPC(79);:NEXT
  159. 1590 IF ERL=1080 THEN RESUME 1090
  160. 1600 LOCATE XX,YYY,1:COLOR 3,0:RESUME
  161. 1610 ZH="":ZI="":ZA="        ":LOCATE ,POS(0)+1
  162. 1620 GOSUB 1670:IF K9 THEN RETURN ELSE ZI=Z:IF ZI=CHR$(13) THEN ZA=SPACE$(8):LSET ZA=ZH:RETURN
  163. 1630 IF ZI=CHR$(8) THEN IF LEN(ZH)<1 THEN 1620 ELSE PRINT CHR$(29)" "CHR$(29);:ZH=LEFT$(ZH,LEN(ZH)-1):GOTO 1620
  164. 1640 IF (ZI<"0" OR ZI>"9") AND (ZI<"A" OR ZI>"Z") THEN 1620
  165. 1650 IF LEN(ZH)>7 THEN PRINT CHR$(7) ELSE ZH=ZH+ZI:PRINT ZI;
  166. 1660 GOTO 1620
  167. 1670 IF INKEY$<>"" THEN 1670
  168. 1680 DEF SEG=&H40:POKE &H17,(PEEK(&H17) OR 96):Z=INKEY$:IF Z="" THEN 1680 ELSE RETURN
  169. 1690 COLOR 7,0:CLS:KEY(10) OFF:ON ERROR GOTO 1700:CLOSE#3:OPEN"fw.bat" FOR INPUT AS #3:CLOSE#3:HK$="YES":GOTO 1710
  170. 1700 CLOSE#3:HK$="":RESUME 1710
  171. 1710 CLS:COLOR 15:LOCATE 2,31:PRINT"SELECT DATA DRIVE":COLOR 12:LOCATE 4,28:PRINT"Current Data Drive Is "XT$:LOCATE 6,16:PRINT"Sports Predicting Is Configured For ";:IF HK$="YES" THEN PRINT"Hard Disk" ELSE PRINT"Floppy Disk"
  172. 1720 COLOR 2:LOCATE 8,28:PRINT"These Are Your Options:":LOCATE 10,27:COLOR 0,7:PRINT" A ":LOCATE 12,27:PRINT" B ":LOCATE 14,27:PRINT" C ":LOCATE 16,27:PRINT" D ":LOCATE 18,27:PRINT" E ":LOCATE 20,27:PRINT"F10"
  173. 1730 LOCATE 10,33:COLOR 6,0:PRINT"Set Data Drive To A:":LOCATE 12,33:PRINT"Set Data Drive To B:":LOCATE 14,33:PRINT"Set Data Drive To C:":LOCATE 16,33:PRINT"Set Data Drive To D:":LOCATE 18,33:PRINT"Set For ";
  174. 1740 IF HK$<>"YES" THEN PRINT"Hard Disk" ELSE PRINT"Floppy Disk
  175. 1750 LOCATE 20,33:PRINT"Leave This Program":COLOR 15:LOCATE 23,26:PRINT"Strike Space Bar To Continue"
  176. 1760 GOSUB 1820:IF LEN(Z)>1 AND RIGHT$(Z,1)="D" THEN 1850 ELSE IF Z=" " THEN ELSE IF Z<"A" OR Z>"E" THEN 1760
  177. 1770 IF Z="E" THEN IF HK$="YES" THEN HK$="" ELSE HK$="YES" ELSE IF Z=" " THEN ON ERROR GOTO 1840 ELSE XT$=Z+":":ON ERROR GOTO 1700
  178. 1780 IF HK$="" THEN CLOSE#3:OPEN XT$+"LOGO.COM" FOR INPUT AS #3:CLOSE#3:GOSUB 1790:GOTO 1710 ELSE IF Z=" " THEN 1830 ELSE 1710
  179. 1790 LOCATE 22,20:COLOR 31:PRINT"You may not use this diskette for data storage!"
  180. 1800 LOCATE 23,25:COLOR 7:PRINT"Insert a data diskette in drive "XT$
  181. 1810 FOR BC=1 TO 2800:NEXT:RETURN
  182. 1820 Z=INKEY$:IF Z="" THEN 1820 ELSE IF Z<"a" OR Z>"z" THEN RETURN ELSE Z=CHR$(ASC(Z)-32):RETURN
  183. 1830 CLOSE:OPEN XT$+"NAME.FLE" FOR APPEND AS #1:CLOSE:KEY(10) ON:ON ERROR GOTO 1340:RETURN
  184. 1840 IF ERR=61 OR ERR=67 THEN LOCATE 23,1:PRINT SPC(79);:COLOR 31:LOCATE 23,32:PRINT"Diskette is full":COLOR 7:RESUME 3000
  185. 1841 LOCATE 23,1:PRINT SPC(79);:LOCATE 24,1:PRINT SPC(79);
  186. 1849 RESUME 1830
  187. 1850 ON ERROR GOTO 1340:GOTO 1000
  188. 3000 FOR BC=1 TO 2800:NEXT:GOTO 1690
  189.