home *** CD-ROM | disk | FTP | other *** search
/ Share Gallery 1 / share_gal_1.zip / share_gal_1 / HD / HD048.ZIP / BASEBALL.ZIP / STATPAK.DOC < prev    next >
Text File  |  1988-01-05  |  40KB  |  888 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.                                  Baseball Statkeeper
  9.                                      Version 3.0
  10.                            (C)1987 By Michael J. Himowitz
  11.                         Distributed by Federal Hill Software
  12.                                8134 Scotts Level Road
  13.                                  Baltimore, MD 21208
  14.  
  15.                                     INTRODUCTION
  16.  
  17.              Baseball Statkeeper is a program for the IBM-PC and
  18.           compatibles which will track batting and fielding statistics for
  19.           up to 220 players on 12 teams. I designed it with Little Leaguers
  20.           in mind, but it can be used to keep records for almost any
  21.           baseball organization, including high school and college teams or
  22.           local softball leagues.
  23.              Version 3.0 contains many improvements over earlier versions
  24.           of the program. In fact, I've rewritten it from top to bottom.
  25.           This one is compiled, which means it runs much faster than the
  26.           old one and doesn't require the BASIC interpreter. Full-screen
  27.           data entry and more sophisticated sorting techniques have been
  28.           added. Statkeeper now tracks fielding as well as batting records,
  29.           and I've streamlined the program to make it easier to use.
  30.              The cost of all this is a restructuring of the filing system,
  31.           which means that files created with previous versions of
  32.           Statkeeper won't work with this one. However, I've tried to get
  33.           this one out early enough so folks can start their 1988 leagues
  34.           using this version.
  35.              While Federal Hill Software is (hopefully) a money-making
  36.           outfit, this particular program is a labor of love. So we're
  37.           distributing Baseball Statkeeper under the LeagueWare concept. If
  38.           you like it and use it, make a contribution to your local little
  39.           league (if you can't give your time, give them some money or take
  40.           the kids on your team out for ice cream after a game). If you
  41.           don't have a little league, you can make a contribution to ours:
  42.           Pikesville Baseball Inc., P.O. Box 5965, Pikesville, MD 21208.
  43.              You may give this program to anyone or post it on your local
  44.           bulletin board under the following conditions: (1) You may not
  45.           distribute the program in modified form. (2) You must distribute
  46.           all the files listed below when you give the program to someone
  47.           else.
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.                                                                           1
  61.  
  62.  
  63.  
  64.  
  65.  
  66.                                  System Requirements
  67.               
  68.              Baseball Statkeeper will run on any close IBM compatible with
  69.           at least 256K of memory. By "close compatible," I mean that the
  70.           computer must have a video adapter that conforms to any of the
  71.           standard IBM video displays--MDA, CGA, EGA, VGA or Hercules.
  72.           Unfortunately, it won't run on semi-compatibles such as the Tandy
  73.           2000, TI Professional or Sanyo 550 series. It will run on all
  74.           Tandy 1000, 1200, 3000 and 4000 machines with sufficient memory.
  75.           It will run just fine on single-drive systems. You should store
  76.           your data files on the same disk as the program.
  77.           The Statkeeper Files
  78.  
  79.              The disk or ARC file you received or downloaded should contain
  80.           the following files:
  81.  
  82.                BASEBALL.BAT      Batch file MUST be used to start program.
  83.                STATPAK.EXE       The Statkeeper program
  84.                SPEEDSCR.COM      A screen handler used by Statkeeper
  85.                STATPAK.PAK       Compressed screens used by Statkeeper
  86.                STATPAK.DOC       These instructions
  87.                DEMO.PLY          A sample player data file
  88.                DEMO.TMS          A sample team data file
  89.  
  90.  
  91.                                 Setting up Statkeeper
  92.  
  93.              Statkeeper is easy to set up. It will run from floppy or hard
  94.           drive systems. The only caveat is that all program files
  95.           (STATS.BAT, STATPAK.EXE, STATPAK.PAK and SPEEDSCR.COM) must be on
  96.           the same disk, or in the same hard disk directory, from which the
  97.           program is launched. Your data files should also be on the same
  98.           disk or in the same hard disk directory as the program files. I
  99.           haven't included fancy disk handling routines because the program
  100.           doesn't really need them. Even on a single floppy that includes
  101.           the operating system and all the Statpak program files, you'll
  102.           still have room for four or five complete, 220-player leagues.
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.                                                                           2
  120.  
  121.  
  122.  
  123.  
  124.  
  125.                                  Running Statkeeper
  126.  
  127.              To run statkeeper, just type BASEBALL and hit the RETURN or
  128.           ENTER key. You MUST launch the program by using the BASEBALL.BAT
  129.           file. DO NOT try to launch STATPAK.EXE directly. Here's why:
  130.              Before running Statkeeper, BASEBALL.BAT loads the SPEEDSCR.COM
  131.           utility, a screen handler required by the program. If
  132.           SPEEDSCR.COM is not loaded, the program won't work. The
  133.           BASEBALL.BAT file also removes SPEEDSCR when you exit from the
  134.           program. While SPEEDSCR won't do any harm if left in memory, it
  135.           can, under some unusual circumstances, display Statkeeper's
  136.           various screens on your monitor while you're doing something
  137.           else. The odds of this happening are about 1 in 20,000, but if
  138.           you use BASEBALL.BAT to launch the program, it will never happen.
  139.              When you run the program, you'll see a title screen, followed
  140.           a few seconds later by the Main Menu. When you see the menu,
  141.           you're ready to begin.
  142.  
  143.                                     The Main Menu
  144.  
  145.              Baseball Statkeeper is menu-driven. Depending on what you're
  146.           doing at the time, you'll see a variety of screens with numbered
  147.           choices. By selecting the proper number, you can get to the
  148.           function you want. When you first run the program, you'll see the
  149.           following menu:
  150.  
  151.                                   No League Chosen            
  152.                       Use <ARROWS> to select <ENTER>  to Choose
  153.                                                               
  154.                                1  ADD A PLAYER                
  155.                                2  UPDATE A PLAYER             
  156.                                3  TEAM LIST                   
  157.                                4  SELECT DISK FILE            
  158.                                5  SORT STATS                  
  159.                                6  PLAYER REPORTS              
  160.                                 7 CORRECT PLAYER NAME
  161.                                 8  QUIT THE PROGRAM            
  162.                                                               
  163.                              File:  Players: 0 Teams: 0       
  164.                                                               
  165.                                 No Sorting in Effect          
  166.  
  167.                When you have set up or loaded a league file, the words "No
  168.           League Chosen" will be replaced by the name of the league.
  169.           Likewise, the "File: Players: Teams" at the bottom of the menu
  170.           will contain the name of the disk file you're currently using,
  171.           along with the number of players and teams in the league whose
  172.           information is stored in that file.
  173.  
  174.  
  175.  
  176.  
  177.  
  178.                                                                           3
  179.  
  180.  
  181.  
  182.  
  183.  
  184.                To select any function from the Main Menu you may do one of
  185.           two things:
  186.  
  187.                     1. Use the Up or Down cursor keys to move the 
  188.                       highlight bar to your choice and then hit
  189.                     the <RETURN> key.
  190.                     2. Or just type the number of the choice you want.
  191.  
  192.              Before you can use any of the statistical functions, you must
  193.           create or load a data file from your disk using Choice No. 4 from
  194.           the Main Menu. We'll discuss that now.
  195.  
  196.                                  Setting Up a League
  197.  
  198.              Even if you're only tracking one team, you must set up a
  199.           league. To do this, choose No. 4 from the Main Menu. You will see
  200.           a list of files on your disk or in the current hard disk
  201.           directory. The files displayed, if any, will all have the
  202.           extension PLY.
  203.              To set up your league, type the name of the file in which you
  204.           want the data stored. You can use any standard DOS filename up to
  205.           eight characters in length. DO NOT put an extension on the
  206.           filename. Statkeeper will add the proper extension. When setting
  207.           up a new league, be sure to choose a filename that doesn't
  208.           already exist. If you type the name of an existing league file,
  209.           Statkeeper will assume you want to load that file into memory.
  210.           When you type a new filename, Statkeeper will ask you if you want
  211.           to create a new league file. If you do, type "Y" and the program
  212.           will continue. If you type anything else, you'll return to the
  213.           Main Menu.
  214.  
  215.                                  Establishing Teams
  216.  
  217.              When you have named your new league file, Statkeeper will
  218.           display a screen on which you may enter the name of the league
  219.           and the names of the teams in the league.
  220.              This is the first data entry screen you will encounter. You
  221.           will notice a number of highlighted fields. In each of these
  222.           fields, you can type the appropriate information. To move onto
  223.           the next field, just hit the RETURN or ENTER key.
  224.              You may move backwards and forwards through the fields on each
  225.           screen by using the UP and DOWN cursor keys. When you reach the
  226.           last field on the screen, hitting the UP or DOWN cursor key or
  227.           striking RETURN will recycle you back to the first field.
  228.              When you're completely through entering data on a screen, hit
  229.           the ESC key and the program will prompt you for the next step.
  230.           This is the way ALL data entry screens in Statkeeper work.
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.                                                                           4
  238.         Baseball Stakeeper 3.0
  239.  
  240.  
  241.  
  242.  
  243.              This is the way the league setup screen will look. I've filled
  244.           in some of the blanks to show you a six-team league called the
  245.           Pikesville Minors:
  246.              
  247.           TEAM NO.  1  PHILLIES                                            
  248.  
  249.           TEAM NO.  2  ORIOLES                                             
  250.  
  251.           TEAM NO.  3  YANKEES                      FULL NAME OF THIS
  252.           LEAGUE
  253.           TEAM NO.  4  DODGERS                                             
  254.  
  255.           TEAM NO.  5  REDSOX                       PIKESVILLE MINORS      
  256.  
  257.           TEAM NO.  6  WHITESOX                                            
  258.  
  259.           TEAM NO.  7                                                      
  260.  
  261.           TEAM NO.  8                                                      
  262.  
  263.           TEAM NO.  9                                                      
  264.  
  265.           TEAM NO. 10                                                      
  266.  
  267.           TEAM NO. 11                                                      
  268.  
  269.           TEAM NO. 12                                                      
  270.  
  271.  
  272.  
  273.              When you first see this screen, your cursor will be resting on
  274.           the League Name field. Type the name of the league and hit
  275.           RETURN.
  276.              The cursor will then move to the Team No. 1 field. Type the
  277.           name of your first team in the Team No. 1 field and hit RETURN.
  278.           Your cursor will move to the Team No. 2 field. If you have a
  279.           second team, type the team name and hit RETURN. Continue until
  280.           you've named all the teams in your league (You don't have to use
  281.           all 12, just as many as you need).
  282.              When you're through typing the names of your teams, hit the
  283.           ESC key. The program will ask you if the information is correct?
  284.           Look it over. If the information is correct, type "Y" and the
  285.           league file will be created on the disk. If it's not correct,
  286.           type "N" and you'll be returned to the first data entry field.
  287.               
  288.              At this point, it's a good idea to write down the names and
  289.           team numbers you've entered or use the SHIFT-PrtSc key to dump
  290.           the screen to your printer. It will come in handy in the next
  291.           step. You may add teams or change team names in similar fashion
  292.           at any time by selecting TEAM LIST from the main menu.
  293.  
  294.  
  295.  
  296.                                                                           5
  297.         Baseball Stakeeper 3.0
  298.  
  299.  
  300.  
  301.  
  302.  
  303.                              Setting Up a Player Roster
  304.              
  305.              Once you've set up your teams, the program will ask you if you
  306.           want to begin entering the names of players. If you do, type "Y"
  307.           and you'll go to the player entry screen. If you don't want to
  308.           enter players names now, type "Y" and you'll return to the Main
  309.           Menu.
  310.              When you have confirmed that you want to enter a player,
  311.           you'll see a player entry form displayed on the screen. It will
  312.           ask for the LAST NAME, FIRST INITIAL and TEAM NUMBER for each
  313.           player. The teams will be displayed on the left-hand side of the
  314.           screen for your reference.
  315.              Type each piece of information and hit the RETURN key to
  316.           advance to the next field. For the team number, you must use a
  317.           leading zero if the number is less than 10; i.e., "06" for team
  318.           No. 6.
  319.              When you're through, hit the ESC key. You'll be asked if the
  320.           information is correct. If it is, type "Y" and the program will
  321.           store the new player. If it isn't, type "N" and the program will
  322.           send you back to the player entry form.
  323.              After the player has been stored, the program will ask if you
  324.           want to add another player. If you do, type "Y" and the process
  325.           will be repeated. If you don't want to add another player, type
  326.           "N" and you'll return to the Main Menu.
  327.                You may add a player in a similar fashion at any time by
  328.           selecting Choice No. 1 (ADD A PLAYER) from the Main Menu.
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.                                                                           6
  356.         Baseball Stakeeper 3.0
  357.  
  358.  
  359.  
  360.  
  361.                                 UPDATING YOUR PLAYERS
  362.  
  363.              This is the heart of the program. It allows you to enter game
  364.           stats for each player. The game stats are compiled into running
  365.           totals for Statkeeper's various reports.
  366.              When you select this choice from the Main Menu, you'll see a
  367.           data entry screen asking you for the Last Name and First Initial
  368.           of the player whose record you want to update. Enter the last
  369.           name and first initial and hit the ESC key.
  370.              The program will search through the player file until it finds
  371.           the first name that matches. It will then display the player's
  372.           name and team and ask if this is the player you want. If it is,
  373.           type "Y" and you'll go onto the update screen. If it isn't the
  374.           player you wanted (There may be more than one player with the
  375.           same name), the program will continue searching until it finds
  376.           another match or exhausts the player list.
  377.              When you've confirmed that this is the player you want, you'll
  378.           see the Game Stats screen. The player's current stats will be
  379.           displayed on the top line, and there will be fields below in
  380.           which you can enter the player's stats for this game. It looks
  381.           like this:
  382.  
  383.               ENTER DATA FOR THIS GAME:                                
  384.                                                                        
  385.               AT BATS     5               FIELDING CHANCES  5          
  386.                                                                        
  387.               HITS        2               PUTOUTS           2          
  388.                                                                        
  389.               HOME RUNS   1               ERRORS            1          
  390.                                                                        
  391.               SINGLES     1                                            
  392.                                           HIT <ESC> WHEN YOU'RE THROUGH
  393.               DOUBLES     0                                            
  394.                                                                        
  395.               TRIPLES     0                                            
  396.                                                                       
  397.               WALKS       2                                            
  398.                                                                    
  399.               STRIKEOUTS  1                                            
  400.              
  401.              Your cursor will be resting on the AT BATS field. Enter the
  402.           number of AT BATS in this game and hit RETURN. Proceed from field
  403.           to field, entering the appropriate data for each. If you don't
  404.           want to include fielding stats, you can leave them blank. You can
  405.           go back to previous fields or advance to other fields by using
  406.           the UP and DOWN cursor keys.
  407.              The program will check to see that all the batting stats add
  408.           up. If you try to enter more HITS than AT BATS, or the home runs,
  409.           singles, doubles and triples don't equal the number of hits,
  410.           you'll get an error message and the cursor will be returned to
  411.           the proper data entry field.
  412.               When you're through entering data for the player, hit the ESC
  413.  
  414.                                                                           7
  415.         Baseball Stakeeper 3.0
  416.  
  417.  
  418.  
  419.  
  420.           key. You'll be asked if this data is correct, if it is, type "Y"
  421.           and you'll go on to the next step. If the numbers are not
  422.           correct, type "N" and you'll be returned to the game stats form.
  423.               Once you've confirmed that the figures are correct, the
  424.           program will display the revised totals for the player in reverse
  425.           video at the top of the screen. You'll then be asked if you want
  426.           to update another player. If you do, type "Y" and the process
  427.           will be repeated. If you don't want to update another player,
  428.           type "N" and you'll be returned to the Main Menu.
  429.  
  430.                                  Sorting Your Stats
  431.  
  432.               One of the nice features of this program is that it allows
  433.           you to produce reports sorted by various statistics. So you can
  434.           produce one report that shows the players ranked according to
  435.           Batting Average, another showing them ranked by Home Runs,
  436.           another by Strikeouts, etc. You can probably find a sort that
  437.           makes almost any player look good. Kids really love this stuff,
  438.           and if you're into serious coaching, it can be a valuable tool.
  439.               When you select this choice from the Main Menu, you'll see a
  440.           menu of sorting options that looks like this:
  441.  
  442.                                      Sort Menu                  
  443.                                                                 
  444.                                                                 
  445.                     1. By Name            9. By Walks           
  446.                     2. By Team           10. By OBP             
  447.                     3. By Hits           11. By Strikeouts      
  448.                     4. By Batting Avg.   12. By Fielding Chances
  449.                     5. By Home Runs      13. By Putouts         
  450.                     6. By Singles        14. By Errors          
  451.                     7. By Doubles        15. By FPC             
  452.                     8. By Triples        16. Return to Menu     
  453.                                                                 
  454.                          Enter the number of your choice:       
  455.  
  456.              To choose the sort you want, just type the number of your
  457.           choice and hit RETURN. Choice No. 16 returns you to the Main
  458.           Menu.
  459.              Once you have chosen the sort you want, you'll be asked if you
  460.           want the sort in ascending (lowest to highest) or descending
  461.           (highest to lowest) order. Type "A" for an ascending sort or "D"
  462.           for a descending sort. You'll probably want ascending sorts for
  463.           Name (which would be alphabetical), strikeouts and errors and
  464.           descending sorts for the other stats. But you get your choice.
  465.              When you have chosen a sort, a sorting message will appear on
  466.           the screen. When the sort is completed, you'll get a beep and
  467.           you'll be prompted to hit any key to return to the main menu.
  468.              The time it takes to sort depends on how many players you have
  469.           and how much work the sorting routine has to do. It can range
  470.           from a second or two to more than a minute. (Programmer's note: I
  471.           used an elementary Shell sort here. It's not the fastest, but it
  472.  
  473.                                                                           8
  474.         Baseball Stakeeper 3.0
  475.  
  476.  
  477.  
  478.  
  479.           seemed to have fewer recursion and stack space problems than some
  480.           of the more sophisticated sorting algorithms. In future versions,
  481.           I may include a machine language sort, but I wanted to get this
  482.           out in time for the folks in Florida and California with early
  483.           seasons).
  484.  
  485.                                    Player Reports
  486.  
  487.               Here's where the fun comes in. When you select this choice
  488.           from the Main Menu, you'll see a list of report which looks like
  489.           this:
  490.  
  491.                                      REPORT MENU        
  492.                                                         
  493.                              1. All Players             
  494.                              2. Players by team         
  495.                              3. All teams (printer only)
  496.                              4. Team summaries          
  497.                              5. Return to Main Menu     
  498.                                                         
  499.                                                         
  500.                              Your choice (Type 1-5)                
  501.  
  502.              To choose the type of report you want, type the number next to
  503.           the report. Remember that all players will be listed in the order
  504.           of the most recent sort. We'll discuss the various reports now.
  505.  
  506.                                      ALL PLAYERS
  507.  
  508.              This will produce a screen or printer listing of all players
  509.           in the order of the most recent sort. When you choose this,
  510.           you'll be asked whether you want the report displayed on the
  511.           (S)creen or your (P)rinter. Type "S" for the screen report or "P"
  512.           for the printer report.
  513.              If you choose the screen report, you'll see a screen showing
  514.           the players and their stats listed in the most recent sort order.
  515.           At the bottom of the screen you'll see three choices:
  516.  
  517.                        (N)ext Page   (P)revious Page   (M)enu
  518.  
  519.              Type "N" to see the next screen of players. Type "P" to see
  520.           the previous screen. Type "M" to return to the Main Menu. You can
  521.           page forward and backward through your player list this way.
  522.              If you choose the printer option, you'll be instructed to make
  523.           sure your printer is on line. Make sure the print head is at the
  524.           top of a page. You will then be prompted to type "P" to make the
  525.           printout or "M" to return to the Main Menu.
  526.  
  527.                                    PLAYERS BY TEAM
  528.  
  529.              This report will show you a list of players on a given team.
  530.           When you choose this option, you'll be shown a list of teams and
  531.  
  532.                                                                           9
  533.         Baseball Stakeeper 3.0
  534.  
  535.  
  536.  
  537.  
  538.           asked to enter the number of the team you want to see. Type the
  539.           team number and hit RETURN. You'll see a screen display of the
  540.           players on that team. At the bottom of the screen you'll be asked
  541.           if you want a printout. If you do, type "Y" and you'll be
  542.           prompted to hit any key to start printing. If you don't want a
  543.           printout, type "N".
  544.               You'll then be asked if you want to see another team. If you
  545.           do, type "Y" and you'll be asked what team you want to see. If
  546.           you don't, type "N" and you'll return to the Main Menu.
  547.  
  548.                                       ALL TEAMS
  549.  
  550.               This is a printer-only report. It will print out separate
  551.           pages for each team, one team to a page. The players will be
  552.           listed in the order of the most recent sort.
  553.  
  554.                                    TEAM SUMMARIES
  555.  
  556.              This will generate summaries of stats for each team, based on
  557.           the most recent player information. Each time you ask for a
  558.           summary, the program will reread the player stats to generate the
  559.           most up-to-date information. It may take a minute or more to do
  560.           this on a standard 8088 machine if you have a full 220-player
  561.           league. On an AT/compatible, it will be much faster.
  562.              When you select this report, you'll see the screen count off
  563.           the players as it reads each record. When it's through, offensive
  564.           statistics for each team will be displayed on the screen and
  565.           you'll be asked if you want to print the report. If you want to
  566.           print it, type "Y" and the report will be printed. If you don't
  567.           want the report printed, type "N" and the program will continue
  568.           with the next screen.
  569.               The next screen shows team defensive statistics. Again you'll
  570.           be asked if you want a printout. If you type "Y" the report will
  571.           be sent to your printer. If you type "N" you'll return to the
  572.           Main Menu.
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.                                                                          10
  592.         Baseball Stakeeper 3.0
  593.  
  594.  
  595.  
  596.  
  597.  
  598.                               OTHER MAIN MENU FUNCTIONS
  599.  
  600.                                   CORRECT AN ERROR
  601.  
  602.              This entry from the Main Menu will allow you to correct a name
  603.           or team assignment. When you choose it, you'll be shown a form
  604.           asking you to type in the Last Name and First Initial of the
  605.           player whose record you want to modify. When you've typed the
  606.           information, hit the ESC key.
  607.              The program will search the player file till it comes up with
  608.           the first match. It will then display the player and team and ask
  609.           you if this is the one you want. If it isn't the player you want,
  610.           type "N" and the program will continue searching until it finds
  611.           another match or reaches the end of the list.
  612.              If it is the player you want, type "Y" and you'll see a player
  613.           correction form with the current information displayed. You can
  614.           change the information in any field. When you're through, hit ESC
  615.           You'll be asked if this information is correct. If it is, type
  616.           "Y" and the revised player name and team will be attached to the
  617.           old player's record. If you type "N" you'll be returned to the
  618.           main menu, and the record will not be changed.
  619.  
  620.                                       TEAM LIST
  621.              
  622.              This choice will display a list of team names and numbers,
  623.           with blank fields for the names of teams you haven't assigned
  624.           yet. You may use this to add teams or change team information
  625.           after your initial league setup. Just use the UP and DOWN arrow
  626.           keys to go to the field you want. You can type over old
  627.           information or enter new information if it's a blank field.
  628.              When you're through, hit the ESC key. You'll be asked if the
  629.           information is correct. If it is not correct, type "N" and you'll
  630.           go back to the team entry screen. If you type "Y" the revised
  631.           team information will be stored on disk.
  632.              CAUTION: If you switch the names of teams around and assign
  633.           them to different numbers, you'll also have to correct the player
  634.           information for each player assigned to the teams you've
  635.           switched. So be careful here.
  636.  
  637.                                     PROGRAM NOTES
  638.  
  639.              Baseball Statkeeper is copyrighted by the author and remains
  640.           his intellectual property under U.S. Copyright law. You are
  641.           authorized to use and distribute the program to anyone, post it
  642.           on a bulletin board, or include it in a user group or other
  643.           library under the following conditions:
  644.              
  645.              1. The program must be distributed in unmodified form.
  646.              2. All the files associated with the program must be
  647.           distributed on the same disk or in the same .ARC file.
  648.              3. No money other than the standard, nominal copying fee
  649.  
  650.                                                                          11
  651.         Baseball Stakeeper 3.0
  652.  
  653.  
  654.  
  655.  
  656.           associated with user libraries and shareware/public domain
  657.           catalogs may be charged for distribution of the program.
  658.              Although Federal Hill Software has taken great pains to make
  659.           sure this software works properly, neither Federal Hill Software
  660.           nor the author guarantee that the program will perform in any
  661.           specific manner or be suitable for any specific purpose. Nor will
  662.           Federal Hill Software or the author be liable for any damages
  663.           that may result from its use.
  664.              The data entry screens in this program were developed using
  665.           the Screen Sculptor and Speedscreen utilities from the Software
  666.           Bottling Company of New York. The SPEEDSCR.COM program used by
  667.           Statkeeper is licensed by Federal Hill Software from the Software
  668.           Bottling Company and may only be used with this program.
  669.  
  670.                                    TECHNICAL NOTES
  671.  
  672.              If you're not interested in programming, you can skip over
  673.           this information. If you are a programmer, you may find it of
  674.           interest.
  675.              Baseball Statkeeper was written and compiled using Microsoft
  676.           QuickBasic 4.0. Many of the screens displayed in the program were
  677.           developed using Screen Sculptor and Speedscreen from the Software
  678.           Bottling Company of New York. These are excellent utilities that
  679.           can save days of work on a major project. If you do any
  680.           programming that requires data entry, they're well worth the
  681.           investment.
  682.              The screens used in the program are stored in packed format in
  683.           the file called STATPAK.PAK. They are handled by the SPEEDSCR.COM
  684.           program, which is loaded into memory by the BASEBALL.BAT file.
  685.           Calls to Speedscreen are made from within the program.
  686.              Data files for each league are contained in two files with the
  687.           extensions PLY and TMS. The .TMS file is a straight ASCII file
  688.           containing the name of the league, the number of teams and the
  689.           name of each team.
  690.              The .PLY file contains the current stats for each player. It's
  691.           a random access file with a length of 78. Each record is actually
  692.           an ASCII string. The first 77 characters contain the current data
  693.           for each player just as it would be displayed on the screen or
  694.           printer. The last byte is an ASCII character representing the
  695.           number of the record plus 32.
  696.              When the file is loaded, each player's record becomes an
  697.           element in an array. Displaying the record becomes an easy
  698.           matter. All I have to do is print the first 77 characters. The
  699.           last character of each record is a code showing the number of the
  700.           record on the disk file representing that player. I did this so
  701.           that when I sort the data, I can always tell which player belongs
  702.           where. In the sort, the actual array elements are swapped. This
  703.           is rather crude, but it keeps the program simple, because no
  704.           index files are necessary.
  705.              When a player's record is updated, the program breaks the
  706.           player's string into its separate numeric components, performs
  707.           calculations based on the new game data, reassembles the screen,
  708.  
  709.                                                                          12
  710.         Baseball Stakeeper 3.0
  711.  
  712.  
  713.  
  714.  
  715.           and writes the record back to disk in the proper place
  716.           (determined by the last byte of the record).
  717.              I realize that this is a strange duck, but it has one major
  718.           advantage in that the entire league file is kept in memory. This
  719.           makes searches and updates fast. The program is not constantly
  720.           going to disk. At the same time, it ensures the integrity of the
  721.           data by writing the player's record to disk each time it's
  722.           updated. 
  723.              Unfortunately, my license with The Software Bottling Company
  724.           of New York prevents me from distributing the source code.
  725.           However, I include this information in case you want to develop
  726.           your own routines for accessing the data. Here's a simple way to
  727.           do it in BASIC, assuming that player data is stored in the file
  728.           "FILENAME.PLY":
  729.  
  730.           10 DIM PLAYER$(220)
  731.           20 open "FILENAME.PLY" (FOR RANDOM) AS 1 LEN=78
  732.           30 Field #1, 78 as PLY$
  733.           40 howmany=lof(1)/78
  734.           50 for x=1 to howmany
  735.           60 get #1, x
  736.           70 next x
  737.           80 close #1
  738.  
  739.           The (FOR RANDOM) in line 20 is required by QuickBasic 4.0 but not
  740.           by the BASIC interpreter. Each player's record is now an element
  741.           in the array PLAYER$(). If you want to display all the records,
  742.           add these lines:
  743.  
  744.            90 CLS
  745.           100 FOR X=1 to HOWMANY
  746.           110 PRINT LEFT$(PLAYER$(X),77)
  747.           120 NEXT
  748.  
  749.           By using MID$ and VAL, you can pick apart each element to get the
  750.           various stats.
  751.  
  752.           If you want, you can write the data back to disk in a straight
  753.           ASCII file readable by word processors. Use the following lines
  754.           as a guide. Make sure to choose a different name for your output
  755.           file than the filename you loaded:
  756.  
  757.           200 open "NEWFILE.DAT" for output as 1
  758.           210 for X=1 to howmany
  759.           220 print #1, left$(player$(x),77)
  760.           220 next
  761.           230 close #1
  762.  
  763.           Try this out with the DEMO.PLY file that came with the program.
  764.           It's probably a good idea to make a copy of the file elsewhere
  765.           before you start playing with it.
  766.  
  767.  
  768.                                                                          13
  769.         Baseball Stakeeper 3.0
  770.  
  771.  
  772.  
  773.  
  774.                            AND NOW A WORD FROM OUR SPONSOR
  775.  
  776.              This program is a freebie. We think it's a good one. We also
  777.           sell software, which is how we stay in business. Our commercial
  778.           programs are known as The Cambridge Handicappers. They're
  779.           professional-quality handicapping systems for Thoroughbred,
  780.           Harness and Greyhound Racing.
  781.              If you don't follow racing, you may ask, "What's a
  782.           Handicapper?" Briefly, a handicapper is a system that analyzes
  783.           the past performance of a horse or dog and applies that
  784.           information to an upcoming race. It allows you to rank the horses
  785.           or dogs in a race and make an intelligent wagering decision.
  786.              The Cambridge Handicappers do not represent a get-rich-quick
  787.           scheme. They do represent years of experience and research. If
  788.           they're applied intelligently and with some discipline, you can
  789.           make money at the track.
  790.              The handicappers use information which is readily available in
  791.           the Thoroughbred Racing Form, harness or dog track program.
  792.           Entering the data each horse or dog is quick and easy. We even
  793.           provide a diagram of sample Racing Form and track program entries
  794.           to show you where to get each piece of information you need.
  795.              With a little practice (it doesn't take long to learn how to
  796.           do it), you can handicap a race in minutes and a whole card in
  797.           less than an hour--even if you've never handicapped a race
  798.           before.
  799.              When you're through, the programs will show you a list of the
  800.           horses or dogs in each race, with their numeric scores. The
  801.           higher the score, the more likely the animal is to win the race.
  802.              Our complete instruction manual doesn't just show you how to
  803.           use the program. It tells you how to bet and, most important,
  804.           when to bet on a race. Knowing when to sit out can be just as
  805.           important, since some races just can't be properly handicapped,
  806.           no matter what the tip sheets at the track tell you.
  807.              In addition, the IBM and Apple versions of the program include
  808.           our Wagermaster software, which will show you anticipated payoffs
  809.           on a wide variety of bets at various odds, as well as key bets
  810.           for daily doubles, perfectas, exactas, triples and trifectas.
  811.              The Thoroughbred, Harness and Greyhound Handicappers are sold
  812.           separately. The IBM versions are $30 each. You can order any two
  813.           for $50 or all three for $70.
  814.               The Apple II versions are $49.95 each, any two for $74.95 and
  815.           all three for $99.95.
  816.               Versions for the Commodore 64 and Tandy Color Computer (all
  817.           models, tape or disk) are $39.95 each, any two for $59.95 and all
  818.           three for $79.95.
  819.               To order, send a check, money order or credit card
  820.           information (we accept VISA and MASTER CARD) to Federal Hill
  821.           Software, 8134 Scotts Level Road, Baltimore, MD 21208 (301-521-
  822.           4886). Credit card orders should include the card number and
  823.           expiration date.
  824.               If you like racing, you won't find better handicapping
  825.           software at any price.   
  826.  
  827.                                                                          14
  828.         Baseball Stakeeper 3.0
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.             
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.                                                                          15
  887.         Baseball Stakeeper 3.0
  888.