home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / T.ZIP / XLAXDIFF.DOC < prev    next >
Encoding:
Text File  |  1989-02-18  |  8.9 KB  |  257 lines

  1.  
  2.  
  3.      XLAXDIFF                                                        Page 1
  4.  
  5.  
  6.                                     XLAXDIFF
  7.                             Express Nodelist Update
  8.                               Copyright 1987, 1988
  9.                                  By Scott Samet
  10.                           Friends of Dorothy 1:135/990
  11.  
  12.  
  13.  
  14.      This is a program to apply the weekly update NodeDiff files to the
  15.      matrix NodeList.  It's designed to be fast and easy to use.  On my 8
  16.      Mhz XT clone, it unarchives and applies a typical update in 45
  17.      seconds.
  18.  
  19.                                      NOTICE
  20.  
  21.      This version expects an IBM PC Compatible BIOS or some reasonable
  22.      facsimile.  It also expects to find a copy of ARCE somewhere in the
  23.      DOS Path.  Command line switches allow use of other unarc programs and
  24.      on non-PC-Compatibles.
  25.  
  26.                                License / Warranty
  27.  
  28.      The program and associated documentation are Copyright.  It may only
  29.      be distributed as part of the XlaxNode archive.  The full license and
  30.      warranty terms for XlaxNode and XlaxDiff are contained in the
  31.      XlaxNode.Doc file.
  32.  
  33.  
  34.                                 What does it do?
  35.  
  36.      XlaxDiff takes the most recent NodeList and applies any higher
  37.      numbered NodeDiff files, producing a new NodeList.  If it encounters
  38.      any NodeList or NodeDiff archive files along the way, it extracts the
  39.      files it needs.
  40.  
  41.  
  42.  
  43.                                    OPERATION
  44.  
  45.      If you have ARCE (the "official-un-official" Opus unarchive program)
  46.      in your DOS path, and you have NodeList and NodeDiff in your currect
  47.      path, just type XLAXDIFF and let it rip.
  48.  
  49.      If you are into all the bells and whistles, XLAXDIFF accepts arguments
  50.      on the command line:
  51.  
  52.           /G
  53.                By default, this version uses IBM PC BIOS calls for the
  54.                video display.  The /G switch on the command line will force
  55.                the use of ANSI escape sequences.  Machines without PC BIOS
  56.                support, such as the Z-100 or DEC Rainbow MUST use the /G
  57.                switch.
  58.  
  59.           /O=[path\][filename]
  60.                Path and/or file name (no type) to use for the old NodeList.
  61.                The default is NodeList in the current directory.
  62.  
  63.  
  64.      XLAXDIFF                                                        Page 1
  65.  
  66.  
  67.      XLAXDIFF                                                        Page 2
  68.  
  69.  
  70.           /E=[path\][filename]
  71.                Path and/or file name (no type) to use for the updates to
  72.                the the NodeList.  The default is NodeDiff in the current
  73.                directory.
  74.  
  75.           /N=[path\][filename]
  76.                Path and/or file name (no type) to use for the new (output)
  77.                NodeList.  The default is the path and name of the old
  78.                NodeList.  The day number of the highest update file will be
  79.                used as the file type.
  80.  
  81.           /A[=[path\][filename]]
  82.                Indicates an archive containing the new (output) Nodelist is
  83.                to be created.  A path and/or file name (no type) may be
  84.                specified.  If omitted, the path and file name of the new
  85.                nodelist will be used.  The first character of the type will
  86.                be replaced by the letter 'A'.  Using an archive program
  87.                name on the /X switch does NOT force an archive to be
  88.                created.
  89.  
  90.           /X=[[path\]progname][,[[path\]progname]]
  91.                Name of the archive programs to be used.  The first is the
  92.                program to use for unarchiving files, the second for
  93.                archiving files.  If omitted, ARCE and ARCA will be assumed.
  94.                Path and file names are significant, file type will be
  95.                ignored.  If the path is omitted, the DOS Path will be
  96.                searched.
  97.  
  98.           /L
  99.                Leave: Any files extracted from archives are to be left in
  100.                the current directory when the program is done.  Normal
  101.                action is to delete these work files.
  102.  
  103.           /C
  104.                Cleanup: The input Nodelist and Nodediff files are deleted
  105.                if the program completes and the output file passes the CRC
  106.                check.  The only file left will be the new Nodelist (and
  107.                archive, if requested).
  108.  
  109.  
  110.  
  111.                                   ERROR CODES
  112.  
  113.      XlaxDiff returns an error code to DOS.  This code can be tested by the
  114.      IF ERRORLEVEL test in a batch file.
  115.  
  116.                LEVEL    DESCRIPTION
  117.  
  118.                  0      Updates applied without error.
  119.  
  120.                  1      No work to do: No NodeDiff file present or NodeList
  121.                         later than all NodeDiffs.
  122.  
  123.                  2      NodeList/NodeDiff file sequence broken by missing
  124.                         file.
  125.  
  126.  
  127.  
  128.      XLAXDIFF                                                        Page 2
  129.  
  130.  
  131.      XLAXDIFF                                                        Page 3
  132.  
  133.  
  134.                  3      Error renaming output file.
  135.  
  136.                  4      Checksum error in output NodeList.  Usual cause is
  137.                         corrupted Nodelist input file.
  138.  
  139.                  5      Other errors, including:
  140.                         o   Command line syntax error.
  141.                         o   NodeDiff file format error.
  142.                         o   Archive or Unarchive program error message.
  143.  
  144.  
  145.             BUGS, PROBLEMS, COMPLAINTS, SUGGESTIONS and COMPLIMENTS
  146.  
  147.      Hopefully there will not be a lot of the first three.  Be sure to tell
  148.      me the what version of the program you are running and the NodeList
  149.      and NodeDiff numbers causing the problem.  If you think that the error
  150.      message might be helpful, XlaxDiff output can be piped, so just say:
  151.           XlaxDiff > Bug.Rpt
  152.  
  153.      ARCHIVE! the stuff up, make YOUR node number part of the file name,
  154.      and send it down the net.
  155.  
  156.      Bug reports with unidentified archives, or missing program version
  157.      number or other supporting information will be sent to NUL.
  158.  
  159.  
  160.                        NodeList/NodeDiff Selection Logic
  161.  
  162.      Here's the actual logic:  The program determines the latest files by
  163.      using the day number that is part of the file names.  For the year end
  164.      logic to work correctly, the range of day numbers should not exceed a
  165.      six month period.
  166.  
  167.      First, it determines the latest NodeList and NodeDiff files.  If the
  168.      NodeList is later than or equal to the NodeDiff, the NodeList is
  169.      unarced, if necessary.  If the /A switch is specified, the NodeList is
  170.      (re)archived.  Otherwise, if the /C switch is specified, the input
  171.      NodeList archive is deleted.
  172.  
  173.      If a later NodeDiff exists, it is opened and the first line read.
  174.      That line contains the number of the NodeList to which the updates
  175.      apply.  If no NodeList with that number exists, then a check is made
  176.      for a NodeDiff.  If a NodeDiff is found, that NodeDiff is opened and
  177.      the process is repeated until a NodeList is located.  If the program
  178.      cannot find an unbroken chain of NodeDiff files leading back to a
  179.      NodeList file, then it aborts.
  180.  
  181.      Example 1:
  182.           You have NodeList.245, NodeList.252, NodeDiff.245 and
  183.           NodeDiff.252 in the current directory.  There's no NodeDiff
  184.           higher than the higest NodeList, so the program exits.
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.      XLAXDIFF                                                        Page 3
  193.  
  194.  
  195.      XLAXDIFF                                                        Page 4
  196.  
  197.  
  198.      Example 2:
  199.           You have NodeList.238, NodeDiff.238, NodeDiff.245 and
  200.           NodeDiff.252 in the current directory.  NodeDiff.252 refers to
  201.           list #245, NodeDiff.245 refers to list #238 and NodeDiff.238
  202.           refers to list #231.  In this case, the program follows the chain
  203.           from NodeDiff.252 to NodeDiff.245 to NodeList.238 and will apply
  204.           the two NodeDiff files and create NodeList.252 in the current
  205.           directory.  NodeDiff.238 is not needed.
  206.  
  207.      Example 3:
  208.           The same as Example 2, except the NodeList file is #224.  The
  209.           program follows the chain from NodeDiff.252 to NodeDiff.245 to
  210.           NodeDiff.238.  There is no NodeList.231 or NodeDiff.231, so the
  211.           program is unable to apply the updates.
  212.  
  213.      Example 4:
  214.           You have NodeList.360 and NodeDiff.002 in the current directory.
  215.           Since the time span from 360 to 002 (seven days) is less than the
  216.           time span from 002 to 360 (358 days), NodeDiff.002 will be
  217.           considered the latest file.  If NodeDiff.002 refers to
  218.           NodeList.360, the update will be applied; otherwise the program
  219.           will issue an error message.
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.      XLAXDIFF                                                        Page 4
  257.