home *** CD-ROM | disk | FTP | other *** search
/ High Voltage Shareware / high1.zip / high1 / DIR8 / FC_MA.ZIP / FC.DOC next >
Text File  |  1992-09-25  |  34KB  |  781 lines

  1.  
  2.  
  3.                                     FC Ver. 2.7
  4.                         Copyright (c) 1989-1992 Mike Albert
  5.                                   September 1992
  6.  
  7.  
  8.  
  9.      1   INTRODUCTION
  10.  
  11.      FC compares two text files and lists the differences between them line
  12.      by line.  FC provides the following benefits:
  13.  
  14.          o   FC shows word by word differences between lines that have
  15.              changed.
  16.  
  17.          o   FC helps "C" programmers merge program changes.  FC can compare
  18.              two "C" programs containing separate sets of changes, and
  19.              combine them automatically to make a single program.
  20.  
  21.          o   FC lets you do multiple comparisons in one run.
  22.  
  23.          o   FC can ignore white space changes.  This is useful when you want
  24.              to ignore format changes in "C" programs or other text.
  25.  
  26.          o   FC never gets confused or "unsynchronized" (as some comparison
  27.              programs can).
  28.  
  29.          o   FC always finds the smallest set of differences between files,
  30.              and never misses matching lines.
  31.  
  32.          o   FC lets you list changes in ways that make sense to you by
  33.              providing multiple display options.  You can also customize FC
  34.              to use your favorite options automatically.
  35.  
  36.      If you're familiar with earlier versions of FC, look at section 7 to
  37.      learn about the enhancements.
  38.  
  39.      FC can be used on any IBM-compatible computer.  Any display adapter that
  40.      provides 80 character lines, including those with more than 25 lines per
  41.      screen, will work correctly.  FC runs under MS-DOS versions 2.0 and
  42.      later, but 3.0 or later is required to customize the default options.
  43.      The amount of memory required is dependent on file size.  100K is enough
  44.      for small files, while up to 425K is needed for large ones.  Files
  45.      containing up to 16,300 lines can be compared.
  46.  
  47.      Note that recent versions of MS-DOS contain a file comparison program
  48.      that is also named FC.  To ensure that you get this FC instead of the
  49.      MS-DOS one, make sure that the directory containing this FC appears
  50.      earlier in your path statement than the directory that contains your
  51.      MS-DOS files.
  52.  
  53.  
  54.  
  55.      2   OPERATION
  56.  
  57.      To list the differences between two ASCII text files line by line:
  58.              fc  file1  file2  options
  59.  
  60.      Changes to file1 to make file2 are listed.  Wild-card characters can be
  61.      used to do multiple comparisons.  The options are:
  62.  
  63.              -a      list all lines (whether different or the same)
  64.  
  65.  
  66.                                        - 1 -
  67.  
  68.              -s      list only lines that are the same
  69.              -w      ignore white space differences in lines when comparing
  70.              -b      don't list redundant blank lines
  71.              -k      ignore case differences (i.e. upper vs. lower) when
  72.                      comparing
  73.              -i      show file equivalence only, -ib beeps when files are
  74.                      different
  75.              -f      list using an alternate format that's useful for editing
  76.              -m      merge two C programs
  77.              -c<n>   show context for changes - list up to <n> unchanged
  78.                      lines as changed when that's clearer - default <n> is 1
  79.              -d<n>   show differences between changed lines word by word -
  80.                      <n> = 1 shows minor differences, 10 shows all - default
  81.                      <n> is 5
  82.              -t<n>   tab interval is <n> characters - default interval is 8
  83.              -u      update default options, -u- clears old defaults first
  84.              >file3  put difference listing in file file3
  85.  
  86.      A default option can be turned off with a minus sign, e.g. -m- turns off
  87.      the -m option.  You can also make an option affect only screen output or
  88.      file output - an "s" after the option letter indicates screen output,
  89.      while "f" indicates file output.  E.g. -ds5 specifies that the -d5
  90.      option is used for screen output, but doesn't affect output to a file.
  91.      This feature is useful when updating default options (with the -u
  92.      option), because you often want different options for the two output
  93.      devices.
  94.  
  95.      The following examples illustrate the use of FC:
  96.  
  97.          Compare two files in the current directory and display the
  98.          differences on the screen:
  99.  
  100.              fc  prog1.asc  prog2.asc
  101.  
  102.          Compare two files in different directories and drives, list all
  103.          lines using the alternate listing format (ignoring white space
  104.          differences when comparing), and put the difference listing in file
  105.          prog2.dif:
  106.  
  107.              fc  d:\backup\prog1.asc  c:\tc\prog2.asc  -a  -f  -w  >prog2.dif
  108.  
  109.          Compare two files with the same names in different directories and
  110.          drives, and display the differences using the alternate listing
  111.          format:
  112.  
  113.              fc  -f  d:\backup\prog1.asc  c:\tc
  114.  
  115.          Compare all files with ".c" extensions and the same names in two
  116.          different directories:
  117.  
  118.              fc  \backup\*.c  \tc\*.*
  119.  
  120.          Merge two "C" programs to make a single combined program:
  121.  
  122.              fc  dbupdat1.c  dbupdat2.c  -m  >dbupdat3.c
  123.  
  124.          Change the default options for future invocations of FC to -w -c -b
  125.          for output to either output device, and -d5 for output to the
  126.          screen:
  127.  
  128.              fc  -u-  -w  -c  -b  -ds5
  129.  
  130.  
  131.                                       - 2 -
  132.  
  133.          Turn off the -w default option (which was previously set) for output
  134.          to a file, but leave it on for screen output:
  135.  
  136.              fc  -u  -wf-
  137.  
  138.  
  139.  
  140.      3   DETAILED OPERATION
  141.  
  142.      The arguments to FC (files and options) can be supplied in any order.
  143.      The options work as follows:
  144.  
  145.          -a      All - FC normally lists only the lines that differ between
  146.                  the two files.  With the -a option, matching lines are also
  147.                  listed.
  148.  
  149.          -s      Same - With the -s option, only matching lines are listed.
  150.  
  151.          -w      White space - FC normally lists lines as different if any
  152.                  character in the line (except trailing white space) is
  153.                  different.  With this option, differences in embedded white
  154.                  space (i.e. space and tab characters) are ignored.  This is
  155.                  useful when you want to ignore differences in the layout of
  156.                  programs or documents.  FC knows about "C" language syntax,
  157.                  so that only white space that is ignored by a "C" compiler
  158.                  is ignored by FC.
  159.  
  160.          -b      Blanks - FC normally lists all lines that have changed.
  161.                  With this option, redundant blank lines (i.e. more than one
  162.                  blank line in a row, or blank lines leading or trailing a
  163.                  group of changes) aren't shown.
  164.  
  165.          -k      Case - FC normally treats upper and lower case letters as
  166.                  different when comparing lines.  With this option, the upper
  167.                  and lower case versions of each letter are considered to be
  168.                  equivalent.
  169.  
  170.          -i      Identity - FC normally lists line by line differences
  171.                  between the two files.  With the -i option, FC compares the
  172.                  files byte by byte, and only indicates whether or not the
  173.                  files are identical.  The files are considered identical
  174.                  only if they are the same length, and each byte of the first
  175.                  file equals the corresponding byte in the second.  There is
  176.                  no limit on the size of the files you can compare when this
  177.                  option is used.
  178.  
  179.          -ib     Identity beep - This option is identical to the -i option,
  180.                  except that FC also beeps when it finds nonidentical files.
  181.  
  182.          -f      Format - This option directs FC to list changes using a
  183.                  different format that doesn't indent, and shows the line
  184.                  numbers of changes in both files.  This format is useful
  185.                  when directing the listing to a file used to re-create
  186.                  changes.
  187.  
  188.          -m      Merge format - FC merges two "C" programs into a single
  189.                  program when this option is used.  The new file can be
  190.                  compiled as the first program, the second program, or the
  191.                  combination of the two.  When you #define the symbol
  192.                  FC_FILE_1, lines present in the first file are included.
  193.                  FC_FILE_2 does the same thing for the second file.  If you
  194.  
  195.  
  196.                                       - 3 -
  197.  
  198.                  specify both #define's, lines from both programs are
  199.                  included.  This feature is particularly useful when
  200.                  combining two separate sets of changes to a program.  You
  201.                  merge the two changed programs, examine the combined
  202.                  program, and remove the #ifdef's to complete the merge.  In
  203.                  most cases the #ifdef's can be removed without incident.
  204.                  Where there are conflicts between the two sets of changes,
  205.                  you can resolve them as needed.  If you feel brave, you can
  206.                  compile the merged program with both #define's specified and
  207.                  see if it works.  The merge does not always produce a
  208.                  compilable program - if the changes involve comments,
  209.                  #ifdef's, or multiline #define's, the #ifdef's inserted can
  210.                  conflict with them.
  211.  
  212.          -c<n>   Context - When this option is used, FC shows context
  213.                  surrounding changes to make the listing more readable.  This
  214.                  is done by listing unchanged lines as changed when they are
  215.                  between changed lines.  Use this option when you want to
  216.                  make the listing easier to understand, and don't care if a
  217.                  few unchanged lines are listed as changed.  The value <n>
  218.                  indicates how many unchanged lines can be listed as changed.
  219.                  An <n> of 1 or 2 is usually sufficient.  The default value
  220.                  of <n> is 1.
  221.  
  222.          -d<n>   Differences - Show differences between changed lines word by
  223.                  word.  If the listing is shown on the screen, differences
  224.                  are identified by reverse video.  If the listing is directed
  225.                  to an output file, changes are enclosed in curly brackets
  226.                  (i.e. "{}").  The value of <n> indicates which differences
  227.                  are shown - this is useful because showing the differences
  228.                  between totally different lines is confusing.  An <n> of 1
  229.                  shows only minor differences, while 10 shows all.  The
  230.                  default value of <n> is 5.
  231.  
  232.          -t<n>   Tab interval - This option sets the tab interval used to
  233.                  expand tabs when comparing and listing lines.  The default
  234.                  interval is 8.
  235.  
  236.          -u      Update - This feature updates the default options.  You can
  237.                  use this option to make your favorite options the default,
  238.                  so you don't have to enter them every time you use FC.  When
  239.                  you use the -u option, the current options (i.e. the current
  240.                  defaults plus options specified on the command line) become
  241.                  the default.  The -u- option is like -u, except that the
  242.                  current defaults are ignored - only the options shown on the
  243.                  command line become the new defaults.  FC can't update the
  244.                  options and compare files in the same run, so don't specify
  245.                  file names when you use the -u or -u- option.  This feature
  246.                  works by changing the program (i.e. fc.exe) file.  If you
  247.                  want, you can make multiple FC's with different default
  248.                  options by simply copying the fc.exe file with a new name
  249.                  (e.g. fcmerge.exe) and using the -u option to set the
  250.                  default values of the copy.  This feature only works with
  251.                  MS-DOS version 3.0 or later.
  252.  
  253.          >file   FC normally displays the difference listing on the screen.
  254.            or    This option directs the listing to the file you specify -
  255.          >>file  just enter the file name after the ">".  If the file already
  256.                  exists, it is overwritten.  The ">>" option can be used in
  257.                  the same way to append the listing to the end of a file,
  258.                  instead of overwriting it.
  259.  
  260.  
  261.                                       - 4 -
  262.  
  263.      The file names specify a drive and directory in the normal MS-DOS
  264.      manner.  If no drive is specified, FC looks for files on the current
  265.      drive.  If no directory is specified, FC looks in the current directory.
  266.      The standard MS-DOS wild-card characters may be used to compare multiple
  267.      files.  When FC finds wild-card characters in the first file name, it
  268.      performs a compare for each matching file.  A wild-card character in the
  269.      second name means use the name (or extension) of the first file.  If the
  270.      second file is not found FC indicates it is missing, and continues with
  271.      other files that match the first name.  If you specify a directory or
  272.      drive (without a file name and extension) for either the first or second
  273.      name, FC acts as though you specified a file and extension of "*.*".
  274.      The following examples illustrate these principles:
  275.  
  276.          Compare all files with ".c" extensions and the same names in two
  277.          different directories:
  278.  
  279.              fc  \backup\*.c  \tc
  280.  
  281.          Compare files fcupdate.c1 and fcupdate.c2:
  282.  
  283.              fc  fcupdate.c1  *.c2
  284.  
  285.          Compare all files in the current directory with ".c1" extensions
  286.          with files that have the same names and ".c2" extensions in the same
  287.          directory:
  288.  
  289.              fc  *.c1  *.c2
  290.  
  291.          Compare all files in current directory with files that have the same
  292.          names on the diskette in drive b:
  293.  
  294.              fc  .  b:
  295.  
  296.          Compare all files with names starting with "a" and having a ".c"
  297.          extension with files that have the same names in the directory
  298.          "work" that is a subdirectory of the parent directory of the current
  299.          directory:
  300.  
  301.              fc  \backup\a*.c  ..\work
  302.  
  303.  
  304.      The files you compare must contain ASCII text.  Displayable characters
  305.      with values above hex 7F will also be processed correctly.  All
  306.      characters except values 00, 07, and 08 (null, backspace, and bell) are
  307.      passed through to the difference listing.  Character value 09 (tab) is
  308.      passed through with the -f and -m formats, but expanded to spaces (as
  309.      specified with the -t option) with the normal format.  FC expands tabs
  310.      as specified in the -t option and removes trailing white space on each
  311.      line before comparing.  If two lines differ only in this regard, FC will
  312.      report that they are the same.  Other control characters (e.g. vertical
  313.      tabs, page breaks) are not changed before comparing.
  314.  
  315.      Lines can end with carriage return characters (hex value 0D), new line
  316.      characters (hex value 0A), or both characters together.  FC ignores line
  317.      ending characters when comparing, so identical lines with different
  318.      ending characters are listed as unchanged.  Lines in the difference
  319.      listing always end with a carriage return followed by a new line.
  320.  
  321.      FC only processes lines of up to 2,000 characters.  If FC encounters a
  322.      longer line, it breaks it after the 2,000th character to make two
  323.      separate lines.
  324.  
  325.  
  326.                                       - 5 -
  327.  
  328.      The preceding paragraphs that describe how characters and lines are
  329.      compared and displayed don't pertain when the -i option (indicate file
  330.      equivalence only) is used.  With the -i option, files are compared byte
  331.      by byte for equality, and line differences aren't listed.
  332.  
  333.      If you display the difference listing on the screen, you can control the
  334.      scrolling.  When FC is scrolling, pressing any key makes it pause.  When
  335.      it pauses, you can use the following keys:
  336.  
  337.          Enter   Show another screen full
  338.          space   Show one more line
  339.          s       Scroll continuously
  340.          ESC     Exit the program
  341.  
  342.      You can also use the Ctrl-S and Ctrl-Q keys (the ASCII terminal
  343.      convention) to regulate scrolling if you prefer.
  344.  
  345.  
  346.  
  347.      4   FC MESSAGES
  348.  
  349.          Error: argument -<x> is invalid
  350.              FC couldn't recognize the argument you specified on the command
  351.              line (argument <x>).  Check the list of arguments that FC
  352.              accepts to determine what options you can use.  You can list the
  353.              options FC recognizes by typing "fc ?".
  354.  
  355.          Error: suboption <s> of option -<x> is wrong
  356.              FC couldn't recognize the suboption <s> specified with the <x>
  357.              option on the command line.  Most suboptions are a single
  358.              letter, e.g. suboption b of option i is specified as -ib.  An
  359.              example of the same suboption specified for screen display only
  360.              is -isb.  Check the list of options and suboptions that FC
  361.              accepts to determine what you can use.  You can list the options
  362.              and suboptions FC recognizes by typing "fc ?".
  363.  
  364.          Error: the -<x> option value <v> is wrong
  365.              FC couldn't recognize the value <v> specified with the <x>
  366.              option on the command line.  Most options accept one or two
  367.              decimal digits, e.g. -t8 to specify a tab increment of 8.  An
  368.              example of a value specified for screen display only is -ds5.
  369.              Check the list of options that FC accepts to determine what
  370.              values you can use.  You can list the options and values FC
  371.              recognizes by typing "fc ?".
  372.  
  373.          Error: option -<x> doesn't accept a value
  374.              FC found a value specified for option <x>, but that option
  375.              doesn't accept a value.  You can list the options FC recognizes
  376.              by typing "fc ?".
  377.  
  378.          Error: both -<x> and -<y> options specified together
  379.              FC found two incompatible options (<x> and <y>) specified on the
  380.              command line.  You can only use one at a time.
  381.  
  382.          Warning: -<x> default option ignored because -<y> option specified
  383.              FC found an option (argument <x>) on the command line that
  384.              conflicts with default option <y>.  FC ignored the default
  385.              option.
  386.  
  387.  
  388.  
  389.  
  390.  
  391.                                       - 6 -
  392.  
  393.          Warning: -<x> option ignored because it conflicts with -<y> default
  394.          option
  395.              FC found an option (argument <x>) on the command line that
  396.              conflicts with default option <y>.  FC ignored the option on the
  397.              command line.
  398.  
  399.          Error: <n> is too small a value for option -<x> - the lower limit
  400.          is <m>
  401.              FC found a value (<n>) specified for option <x> that is too
  402.              small.  You must specify a value greater than or equal to <m>.
  403.  
  404.          Error: <n> is too large a value for option -<x> - the limit is <m>
  405.              FC found a value (<n>) specified for option <x> that is too
  406.              large.  You must specify a value less than or equal to <m>.
  407.  
  408.          Error: more than two file names specified
  409.          Error: fewer than two file names specified
  410.              FC didn't find the names of two files to compare on the command
  411.              line.  If you forgot to specify the minus sign ("-") in front of
  412.              an option, FC interpreted it as a file name.  You must specify
  413.              two file names.
  414.  
  415.          Error: file <f> wasn't found
  416.              FC couldn't find file <f>.  If you didn't specify a directory or
  417.              drive, FC looked in the current directory and drive.  Make sure
  418.              you specify the correct file name, with the directory and drive
  419.              if needed, on the command line.
  420.  
  421.          Error: no files found at <f>
  422.              FC couldn't find any files in directory or drive <f>.  Make sure
  423.              you specify the correct drive and directory on the command line.
  424.  
  425.          Error: no files match <f>
  426.              FC couldn't find any files that matched file name <f>, which
  427.              contains wild-card characters.  Make sure you specify the
  428.              correct file name on the command line.
  429.  
  430.          Error: more than 16,300 lines in file <f>
  431.              File <f> contains more than 16,300 lines.  FC can only process
  432.              files containing up to 16,300 lines.  Your only option is to
  433.              break your files into smaller files.
  434.  
  435.          Error: not enough memory to process these files
  436.              FC needs more memory to process these files than is available.
  437.              FC will continue by comparing the remaining files if you
  438.              specified multiple comparisons, otherwise it will terminate.
  439.              The only way to correct this problem is to run on a machine with
  440.              more memory, remove any memory-resident programs, or to split
  441.              the file into smaller files.  This problem only occurs when
  442.              comparing large files on machines with small memory
  443.              configurations.
  444.  
  445.          Warning: Not enough memory to show word differences in the following
  446.          change
  447.              FC needs more memory to list the word-by-word differences
  448.              between a set of changed lines (as requested with the -d option)
  449.              than is available.  FC will not list word-by-word differences
  450.              for this set of lines, but will with others.  This problem only
  451.              occurs when comparing large files on machines with small memory
  452.              configurations.
  453.  
  454.  
  455.  
  456.                                       - 7 -
  457.  
  458.          Error: output failed, disk probably full
  459.              FC detected an error when writing a file.  This only occurs when
  460.              the difference listing is directed to a file with the ">" or
  461.              ">>" options.  The most likely cause of this error is a full
  462.              disk.
  463.  
  464.          Error: file names can't be used with the -u option
  465.              FC found file names specified on the command line with the -u or
  466.              -u- option.  You can't update default options and compare files
  467.              at the same time.
  468.  
  469.          Error: couldn't update default options
  470.              FC couldn't write to the program (i.e. fc.exe) file to update
  471.              the default options.  This happens when the fc.exe file is on a
  472.              write-protected floppy disk, the file has been given the read-
  473.              only attribute, you're using an MS-DOS version less than 3.0, or
  474.              the file is on a network server and you don't have write
  475.              privileges for the file.
  476.  
  477.  
  478.  
  479.      5   LICENSING, WARRANTY, and REGISTRATION
  480.  
  481.      FC is distributed as shareware.  I encourage you to try FC and share it
  482.      with friends as long as:
  483.  
  484.          The FC program and this documentation file are not modified and are
  485.          distributed together.
  486.  
  487.          FC is not provided as a part of any other product.
  488.  
  489.          No fees, beyond a reasonable fee for media, duplication, or
  490.          downloading costs, are charged.
  491.  
  492.          FC is not used for commercial, government, or business purposes
  493.          without registration.  Each registration is for a single person or a
  494.          single computer.
  495.  
  496.      If you find FC useful and decide to use it regularly, you are required
  497.      to register.  All registration payments will be donated to Oxfam
  498.      America, an international development and disaster relief agency.  It's
  499.      a worthy charity that I've been supporting for many years.  For more
  500.      information on Oxfam see section 6.
  501.  
  502.      When you register you get the satisfaction of saving lives in Africa,
  503.      Asia, and South America, and encourage me to produce more software at
  504.      reasonable prices.  You also get the following benefits:
  505.  
  506.          I'll notify you of new FC versions when they become available.
  507.  
  508.          I'll send an updated version of FC to you at no additional cost.
  509.          You can request this at any time.  I'll do this once per registered
  510.          user.
  511.  
  512.          I'll answer questions on FC and its use.  You can contact me at the
  513.          address shown below or via CompuServe mail.
  514.  
  515.          If any important bugs are found I will notify you.
  516.  
  517.          I'll make an attempt (but can't guarantee) to fix any problems you
  518.          find.
  519.  
  520.  
  521.                                       - 8 -
  522.  
  523.      Registration is $25.  Please make your check payable to Oxfam America -
  524.      I'll send your checks to Oxfam and record your registration information.
  525.      I'll also accept original canceled checks or receipts from Oxfam that
  526.      list you as the donor.  Please send payments, registration information,
  527.      and any other correspondence to:
  528.  
  529.                 Mike Albert
  530.                 P. O. Box 535
  531.                 Bedford, MA   01730
  532.  
  533.      I can also be reached via CompuServe mail; my userid is [70325,1134].
  534.  
  535.      Anyone can order the latest version of FC directly from me for a fee of
  536.      $5.00.  Just send the order (make sure it contains your mailing address)
  537.      with your check to the above address.  You'll receive a 5 1/4 inch 360Kb
  538.      floppy disk containing the executable and documentation files.  If you
  539.      need other formats (5 1/4 inch 1.2Mb or 3 1/2 inch 720Kb or 1.44Mb) I
  540.      can provide them.  I'll also include other shareware products I produce.
  541.      If you live outside North America, please send extra money for the
  542.      increased postage.
  543.  
  544.      I welcome all comments and suggestions concerning FC.  I'd like to know
  545.      how you are using FC, where you obtained it, and what problems, bugs, or
  546.      weaknesses you find.  If you tell me about enhancements or changes
  547.      you're interested in, I'll make an effort to provide them.
  548.  
  549.      This program is provided "as is" without warranty of any kind, either
  550.      express or implied, but not limited to the implied warranties of
  551.      merchantability or fitness for a particular purpose.  The entire risk as
  552.      to the results and performance of the program is assumed by the user.
  553.      Should the program prove defective, the user assumes the entire cost of
  554.      all necessary servicing, repair, or correction.
  555.  
  556.  
  557.  
  558.      6   OXFAM AMERICA
  559.  
  560.      As stated in Oxfam literature,
  561.  
  562.          "Oxfam America is an international agency that funds self-help
  563.          development projects and disaster relief in poor countries in
  564.          Africa, Asia, and Latin America, and also prepares and distributes
  565.          educational materials for people in the United States on the issues
  566.          of development and hunger.  The name "Oxfam" comes from the Oxford
  567.          Committee for Famine Relief, founded in England in 1942.  Oxfam
  568.          America, based in Boston, was formed in 1970, and is one of seven
  569.          autonomous Oxfams around the world (Great Britain, Australia,
  570.          Belgium, Canada, Quebec, Hong Kong and the United States).  Oxfam is
  571.          a nonsectarian, nonprofit agency that neither seeks or accepts U.S.
  572.          government funds.  All contributions are tax-deductible to the
  573.          extent permitted by law."
  574.  
  575.      For more information, you can phone Oxfam at 617-482-1211, or write to
  576.      them at:
  577.  
  578.                   Oxfam America
  579.                   26 West Street
  580.                   Boston, MA  02111-1206
  581.  
  582.  
  583.  
  584.  
  585.  
  586.                                       - 9 -
  587.  
  588.      7   FC REVISION HISTORY
  589.  
  590.  
  591.          FC version 2.7 - 9/25/92
  592.  
  593.              Fixed occasional malfunction in -c option processing.
  594.  
  595.              Improved display format.
  596.  
  597.              Updated documentation to show new mailing address and CompuServe
  598.              contact information.
  599.  
  600.  
  601.          FC version 2.6 - 6/11/91
  602.  
  603.              Corrected minor problems.
  604.  
  605.  
  606.          FC version 2.5 - 5/23/91
  607.  
  608.              Added -i and -ib options to test if files are equivalent.
  609.  
  610.              Fixed problem processing directories with extensions.
  611.  
  612.              Improved warning messages and error checking.
  613.  
  614.              Ensured that spurious keystrokes are ignored during screen
  615.              display.
  616.  
  617.  
  618.          FC version 2.4 - 1/28/91
  619.  
  620.              Added support of output to screens with more than 25 lines.
  621.  
  622.              Fixed minor errors.
  623.  
  624.  
  625.          FC version 2.3 - 12/30/90
  626.  
  627.              Added -k option to ignore case differences when comparing lines.
  628.  
  629.  
  630.          FC version 2.2 - 6/5/90
  631.  
  632.              Increased the speed - some comparisons take only 60% as long as
  633.              previous versions.
  634.  
  635.              Fixed a problem displaying per word changes in very long lines
  636.              (around 2000 characters).
  637.  
  638.              Fixed a problem that occurred when '.' was used to indicate a
  639.              directory.
  640.  
  641.              Fixed error in handling Ctrl-C when display scrolling is paused.
  642.  
  643.  
  644.          FC version 2.1 - 4/29/90
  645.  
  646.              Altered the difference computation for word changes within lines
  647.              to pick more intuitive changes.  In some cases there's more than
  648.  
  649.  
  650.  
  651.                                       - 10 -
  652.  
  653.              one set of minimal changes.  Version 2.0 could pick differences
  654.              that were minimal, but difficult to understand.
  655.  
  656.              Increased the speed.
  657.  
  658.              Fixed a problem in which characters with values above 127 were
  659.              sometimes treated as spaces when comparing.
  660.  
  661.              Fixed a minor formatting problem with the difference listing
  662.              produced with the -m option.
  663.  
  664.              Fixed a minor problem that occurred when another program invoked
  665.              FC and input redirection was used.
  666.  
  667.  
  668.          FC version 2.0 - 3/21/90
  669.  
  670.              Added -d option to show word-by-word differences between changed
  671.              lines.
  672.  
  673.              Added -m option to merge two "C" source programs.
  674.  
  675.              Added comparison of multiple files in a single run - this is
  676.              invoked by specifying wild-card characters in file names.
  677.  
  678.              Added -w option to ignore white space differences when
  679.              comparing.
  680.  
  681.              Added -b option to not show redundant blank lines in difference
  682.              listing.
  683.  
  684.              Added -c option to show changes in context.
  685.  
  686.              Added -u option to let the user set default options.
  687.  
  688.              Added -f option to produce a new format for the difference
  689.              listing.
  690.  
  691.              Increased the speed - some comparisons take only half the time
  692.              of the previous version.
  693.  
  694.              Added separate sets of options that are selected based on the
  695.              output device, i.e. the screen or a redirected output file.
  696.  
  697.              Altered the difference computation to pick more intuitive
  698.              changes.  In some cases there's more than one set of minimal
  699.              changes.  Previous FC versions could pick differences that were
  700.              minimal, but difficult to understand.
  701.  
  702.              Added support of Ctrl-S and Ctrl-Q to suspend and resume display
  703.              scrolling.
  704.  
  705.              Added support of files that use carriage return characters
  706.              (instead of new line characters) to end lines.
  707.  
  708.  
  709.          FC version 1.3 - 7/10/89
  710.  
  711.              Corrected problem in which matching lines occasionally were
  712.              listed as different.
  713.  
  714.  
  715.  
  716.                                       - 11 -
  717.  
  718.              Added -s option to list only lines that match.
  719.  
  720.  
  721.          FC version 1.2 - 3/20/89
  722.  
  723.              Increased speed.
  724.  
  725.              Increased number of lines that can be compared - from 8,000 to
  726.              16,300.
  727.  
  728.              Increased maximum line length from 1000 to 2000 characters.
  729.  
  730.              Added display of characters with values above 7F.  This is
  731.              particularly useful for non-English text.
  732.  
  733.              Fixed bug that occurred when processing a very large (around
  734.              8,000 line) file - FC would incorrectly report that there was
  735.              insufficient memory to process the file.
  736.  
  737.              Removed testing for Ctrl-Z (MSDOS end of file marker) in the
  738.              middle of a file - Ctrl-Z is now compared and displayed just
  739.              like other characters.
  740.  
  741.  
  742.          FC version 1.1 - 2/16/89
  743.  
  744.              Added documentation (that you're reading now).
  745.  
  746.              Added interactive control of screen display.
  747.  
  748.              Changed informational and usage messages displayed by program.
  749.  
  750.              Corrected problem that occurred when long lines were displayed.
  751.  
  752.              Added accept of Ctrl-C during file read.
  753.  
  754.  
  755.          FC version 1.0 - 1/9/89
  756.  
  757.              Initial release of FC program.
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.                                       - 12 -