home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 9 Archive / 09-Archive.zip / arj2_273.exe / arj / readme.txt < prev    next >
Text File  |  2000-08-19  |  35KB  |  667 lines

  1.  
  2.    ARJ for OS/2 version 2.73 Release Notes                August, 19, 2000
  3.  
  4.  
  5.    This product is an  OS/2-hosted add-on for  ARJ 2.7x for DOS. It may be
  6.    used  separately  from  the DOS  package  but  it doesn't  contain  the
  7.    documentation found in DOS release.
  8.  
  9.    ***********************************************************************
  10.    ***                                                                 ***
  11.    ***  THIS PRODUCT IS DEVELOPED  SEPARATELY FROM THE MAINSTREAM ARJ  ***
  12.    ***  PACKAGE AND  THEREFORE IS NOT  UPDATED SYNCHRONOUSLY WITH ARJ  ***
  13.    ***  FOR DOS. SHAREWARE REGISTRATION FOR  ARJ/2 IS NOT PROVIDED BY  ***
  14.    ***  ARJ SOFTWARE, INC.                                             ***
  15.    ***                                                                 ***
  16.    ***********************************************************************
  17.  
  18.  
  19.    LEGAL NOTICE
  20.  
  21.       No  warranties  of  any  kind  are  made. In  no  event should ARJ
  22.       Software Russia  be liable for  any damage  resulting  from use or
  23.       misuse of this product.
  24.  
  25.       You have a royalty-free  right to  distribute ARJ/2 package in any
  26.       form. Commercial  use of  this product  must be  approved  by  ARJ
  27.       Software, Inc.
  28.  
  29.       The information in this document is  a subject  to change  without
  30.       notice.
  31.  
  32.  
  33.    INTRODUCTION
  34.  
  35.       As the OS/2 lacks a multifunctional compression utility, a version
  36.       of ARJ for  OS/2 has  been  developed  by ARJ Software Russia. The
  37.       aim  of  the  porting  was   to   retain  the   functionality  and
  38.       compatibility with  ARJ for DOS ("ARJ/DOS" from this point onward)
  39.       but  several  exceptions  occur. They  are covered  later in  this
  40.       document.
  41.  
  42.  
  43.    SYSTEM REQUIREMENTS
  44.  
  45.       *  OS/2 version 1.2 or higher, or Windows NT v 3.10 or higher.
  46.    For OS/2 systems:
  47.       *  A 80286 or higher CPU.
  48.       *  512K of memory is needed for operation.
  49.    For Windows NT systems:
  50.       *  1024K of memory is needed for operation.
  51.  
  52.  
  53.    DIFFERENCES WITH THE DOS AND WINDOWS NT VERSIONS OF ARJ
  54.  
  55.       ("-" indicates a missing feature, "*" - a different operation and
  56.        "+" stands for a feature unique to ARJ/2)
  57.  
  58.       -  There may be  a significant performance  drawback (compared to
  59.          ARJ/DOS and versions of ARJ/2 prior to 2.62.08) when accessing
  60.          files on volumes with no write-back cache.
  61.  
  62.       *  This branch has a fix for security weakness of mainstream ARJ.
  63.          It is  possible  to  make  ARJ  enter  an  eternal  loop  when
  64.          processing  the  archive, by  placing  negative values  in the
  65.          "compressed  size" field  of header. Now, if ARJ/2  encounters
  66.          such  a header, the  processing  will  be  terminated  with  a
  67.          message  saying that the header  is most  likely intentionally
  68.          modified for some malicious purpose. The problem reported here
  69.          may be fixed in subsequent releases of ARJ and ARJ32.
  70.  
  71.       *  External garble modules are provided as OS/2 DLLs. You may not
  72.          use DOS  modules  with  ARJ/2, or vice  versa. The  encryption
  73.          algorithm  is  the  same, so  ARJ/2 garbled  archives can   be
  74.          processed under DOS.
  75.  
  76.       *  ARJ/2  sets  the  "Host OS" to  "OS/2"  on its  archives. When
  77.          extracting  any such  archive with ARJ  for DOS,  some unusual
  78.          behavior  may  occur. Versions  of ARJ  prior to 2.50  convert
  79.          high-ASCII  characters in  filenames to  7-bit  characters  by
  80.          ignoring the  high  bit. So, the  filename  "▒TEST▒"  will  be
  81.          converted to "1TEST1" on extraction.
  82.  
  83.          ARJ/DOS also strips high  bit from  archive comments, but only
  84.          if the archive  was created  by ARJ/2. Archives  created  with
  85.          ARJ/DOS  and  then  processed   under OS/2  are not  affected.
  86.  
  87.          Beginning  with version  2.72, ARJ/DOS considers  the ARJSFXJR
  88.          archives created  under OS/2 to be hostile  to the DOS version
  89.          of ARJSFXJR and  therefore cannot  modify them. In such cases,
  90.          it's advised to use the "-2d" switch under OS/2.
  91.  
  92.       *  ARJ/2 uses the  default OS/2 error  handler that will normally
  93.          display  pop-up menus  prompting  for action.  The  -&  option
  94.          installs batch error and  exception handler (new feature since
  95.          ARJ/2 v 2.62.08). Remember  that the  ampersand  character  is
  96.          used  in OS/2 to start  two  processes  consequently, so  this
  97.          switch will actually split  the command line. Type -^& instead
  98.          of -& to install the error handler.
  99.  
  100.       *  ARJSFX and  ARJSFXJR archives  will display  ANSI sequences if
  101.          the ANSI support is enabled in the  current OS/2 session (it's
  102.          enabled by default in OS/2).
  103.  
  104.       *  By default, ARJ/2 stores extended attributes among with files.
  105.          To  disable  EA  storage  and thus revert  to  the traditional
  106.          header format, use  the "-2e" option. See  a special dedicated
  107.          section below for details on EA handling.
  108.  
  109.       *  The "-hm" options are compatible with their DOS implementation
  110.          hence  a temporary  swap file  is  created  if  the  file list
  111.          exceeds 3000 files.  To keep  the entire list  in  memory, use
  112.          -hm65000.
  113.  
  114.       +  The "-ha" has been improved. Now, when used in conjuction with
  115.          an archiving command, it does not mark read-only files as such
  116.          in archive. This simplifies  archiving from CD-ROM media where
  117.          virtualized read-only  attribute is  forced by  respective IFS
  118.          driver.
  119.  
  120.       +  The "-h#" option  has been improved to allow custom  date/time
  121.          formats. A  custom format  is specified  by  putting a  format
  122.          sequence  right  after  the "-h#".  The  following  characters
  123.          represent date/time macros:
  124.  
  125.           Y = year,       M = month,      D = day
  126.           h = hour,       m = minute,     s = second
  127.           N = day of year
  128.  
  129.           (note that these are case-sensitive)
  130.  
  131.          All other  characters, as  well as  those going  beyond format
  132.          limits (4 digits for year, 2 digits for all other fields), are
  133.          treated as delimiters. Examples:
  134.  
  135.          ARJ a project- -h#YYYYMMDD              (project-19991022.arj)
  136.          ARJ a backup- -h#MM-DD_hh-mm-ss    (backup-10-22_23-57-16.arj)
  137.          ARJ a specs -h#YY                                (specs99.arj)
  138.          ARJ a logs_ -h#NNN                              (logs_295.arj)
  139.          ARJ a test -h#YYYYYYYY                      (testYYYY1999.arj)
  140.  
  141.       +  The new "-2d" option  will  force the stamping  of "MS-DOS" as
  142.          host  operating system for  the archives created by  ARJ/2. It
  143.          may be  used  for  compatibility, to  avoid "binary file  from
  144.          another OS"  warnings. "-2d1" will  force only the main header
  145.          to be  stamped as MS-DOS one, so archive  comments will not be
  146.          discarded by DOS version.
  147.  
  148.       +  "-2k" option forces 2-digit display of year in lists. This can
  149.          be helpful if the  3-digit year  format used for  dates beyond
  150.          2100 is confusing.
  151.  
  152.          Alternatively, "-2k1" uses a non-ambigous format  that is both
  153.          easy to read and information-packed. The dates are represented
  154.          by two digits if the year is 1970 to 2069, and in three digits
  155.          if it's 2070 or beyond.
  156.  
  157.       +  "-2p<n>" can  be  used  to  set  the  priority  of  ARJ/2. The
  158.          knowledge  of OS/2 scheduling system  is required to  use this
  159.          option. It can dramatically increase performance but slow down
  160.          other processes. The <n> can be equal to 1, 2, 3 or 4:
  161.  
  162.           1 = idle-time priority
  163.           2 = regular priority
  164.           3 = time-critical priority
  165.           4 = fixed-high priority
  166.  
  167.          Priority  delta  values  are not  supported.  We  don't see  a
  168.          strong requirement for them.
  169.  
  170.       +  The "-2a"  option  is  implemented  in ARJ/2 due  to a popular
  171.          demand from  FidoNet system  operators. Basically it acts like
  172.          "-jo",  with  the  exception  that  file  names, and  not  the
  173.          extensions, are  "serialized". Consider  having a  file called
  174.          "FILE995N.TXT" and an archive that contains the  same file. If
  175.          extracted  with the "-2a"  option, the  file  will be  written
  176.          to "FILE9950.TXT", if  you extract it  again, it'll be  called
  177.          "FILE9951.TXT",  and   so   on  up   to  "FILE9959.TXT",  then
  178.          "FILE9960.TXT". And after "FILE9999.TXT" ARJ/2 will start with
  179.          "FIL00000.TXT". This option allows you to extract  one file to
  180.          100000000 unique  names.  It's  essential to  system operators
  181.          since multiple mail packets with the same  name may  come from
  182.          different systems.
  183.  
  184.          NOTES:
  185.            1. It'll be wise to include  this option in the  script that
  186.               unpacks the ARCmail packets and NOT in ARJ_SW environment
  187.               variable. This option is a  security measure  for systems
  188.               running in unattended mode, and will  only confuse you if
  189.               enabled by default.
  190.            2. There's a security hole: a file  called "9999.XXX" or so,
  191.               will not be  overwritten. However, all  subsequent writes
  192.               will be  redirected into  file "0000.XXX". So, files with
  193.               9s in the beginning have less chances of being preserved.
  194.               Hopefully such situation is unlikely for FidoNet systems.
  195.            3. There is another  option, "-jo1", to serialize filenames,
  196.               however  its  operation  is  different. The  volume  must
  197.               support  long  filenames in  order  to use  this  option,
  198.               moreover,  it's  not  suitable for  dealing with  FidoNet
  199.               ARCmail.
  200.  
  201.       +  ARJSFXJR does  not  support  long filenames  under Win95  DOS.
  202.          ARJSFXJR in ARJ/2 supports OS/2 long filenames.
  203.  
  204.       +  With no ARJ_SW specified, ARJ/2 looks for a file named ARJ.CFG
  205.          in its home directory. If found, this file  will be parsed and
  206.          used as a  standard  ARJ configuration  file (see  manual  for
  207.          details).
  208.  
  209.  
  210.    EXTENDED ATTRIBUTES HANDLING
  211.  
  212.       Beginning  with  version 2.62.10, ARJ/2  can back up  and restore
  213.       extended attributes (also referenced as EAs) without  needing any
  214.       external utilities. This is achieved by compressing  and  storing
  215.       EAs as a part of file header.
  216.  
  217.       Restrictions on EA support:
  218.  
  219.       *  The multivolume restart feature (-jn) will not work if EAs are
  220.          enabled. You'll  have to disable EAs with -2d  prior to  using
  221.          -jn, or to recreate the archive if the EAs are precious.
  222.  
  223.       *  Hollow mode archives do not support EAs.
  224.  
  225.       A set of new options has  been introduced to let the user control
  226.       EA handling:
  227.  
  228.       *  "-2c" restricts  EA  handling  to  critical EAs only. Archived
  229.          non-critical  EAs  will not  be  restored. When  an archive is
  230.          created, only critical EAs will be saved.
  231.  
  232.       *  "-2e" specifies EA inclusion filter. With no parameters given,
  233.          it disables EA handling at all. Otherwise, an  expression that
  234.          follows  it  is  interpreted  as a  wildcard  that  limits  EA
  235.          inclusion to a particular EAs. Multiple options can be entered
  236.          to represent a set of EA names but list files are not allowed.
  237.          Examples:
  238.  
  239.          ARJ a test
  240.  
  241.          In this example, all EAs will be preserved.
  242.  
  243.          ARJ a no_eas -2e
  244.          ARJ x no_eas -2e
  245.  
  246.          EAs will neither be packed nor restored.
  247.  
  248.          ARJ a documents -2e.LONGNAME
  249.  
  250.          In this case, only .LONGNAME EAs will be handled.
  251.  
  252.          ARJ a test -2e.CLASSINFO -2e.ICON*
  253.  
  254.          .CLASSINFO and .ICON* (i.e. .ICON, .ICON1, .ICONPOS) EAs  will
  255.          be packed and restored.
  256.  
  257.          It's wise to specify "-2e.*" when backing up your OS/2 desktop
  258.          or  configuration  files. The system  EAs start with dot (".")
  259.          while application EAs start with application name.
  260.  
  261.       *  "-2l" allows to convert  .LONGNAME extended  attributes (these
  262.          represent  icon  titles  used  in WPS)  to  file  names,  when
  263.          possible. This feature  simplifies moving document  files away
  264.          from an OS/2 system installed on a FAT volume.
  265.  
  266.          If  the icon title (and  so the  extended  attribute) contains
  267.          line  breaks,  wildcard  characters  or  other  symbols,  real
  268.          filename will be  used  instead and  the .LONGNAME EA will  be
  269.          preserved.
  270.  
  271.          This option is ignored during extraction. "-2e" and "-2x" have
  272.          no effect on  this option (but .LONGNAME EAs are not  saved if
  273.          .LONGNAME EA handling is implicitly or explicitly disabled).
  274.  
  275.       *  "-2x" specifies an exclusion filter. It must be followed by an
  276.          exclusion EA name  specification. The rules  are  the same  as
  277.          with "-2e". Also, the two options may work together, providing
  278.          both an inclusion and an exclusion rule. For example:
  279.  
  280.          ARJ a backup_ -r -p1 -h#2 -2e.* -2x.FED* c:\projects
  281.  
  282.          may be used to create regular back-ups of your work directory,
  283.          including all system EAs but  excluding  EAs created  with FED
  284.          (Fast Editor Lite, an editor written by Sergey I. Yevtushenko,
  285.          evsi@naverex.kiev.ua)  -  that   program   does   not   follow
  286.          traditional EA naming  conventions and  uses  system-alike EAs
  287.          for anchor position marks.
  288.  
  289.       Extended attributes are also supported in ARJSFXV self-extractors
  290.       where they are stored using the same technology as with usual ARJ
  291.       archives.
  292.  
  293.       The presence of EAs is indicated  by a "(EA: ...)" message when a
  294.       file is packed. Note that this size may differ from the one given
  295.       when the file is unpacked - the former is  the EA  structure size
  296.       and the latter is the space allocated for EA storage. The  number
  297.       of EAs and the size of EA structure  is also  displayed when  the
  298.       archive is listed with "ARJ v" command.
  299.  
  300.  
  301.    KNOWN PROBLEMS
  302.  
  303.       *  On FAT volumes under Windows NT, both long filenames and short
  304.          filenames may be used to specify a filename. If you refer to a
  305.          file  with its  short name (e.g. "ARJ a lntest LONGFI~1.TXT"),
  306.          the short filename will be stored as entered from console. So,
  307.          no LFN equivalent is placed  into the  archive, and if  a file
  308.          with a  similar long  filename exists in the  archive, it will
  309.          not be replaced.
  310.  
  311.       *  REARJ/2 may  behave incorrectly  if  the  command  interpreter
  312.          (specified   with  COMSPEC=   environment  variable)  is   not
  313.          compatible with CMD.EXE. It's also unwise to  rename REARJ.EXE
  314.          since  it  calls itself recursively  when  converting archives
  315.          within archives (/a).
  316.  
  317.  
  318.    FREQUENTLY ASKED QUESTIONS
  319.  
  320.       Q: Third-party applications fail to handle ARJ/2 archives!
  321.       A: Try to  disable  extended  attributes  (-2e)  and HPFS DTA/DTC
  322.          storage (-j$). Many applications are incapable of handling new
  323.          archive format (although  this format is fully  compliant with
  324.          documented  guidelines). Known  examples of  such applications
  325.          include  File Commander v  2.11, Norton  Commander v 5.00  and
  326.          WinRAR v 2.60.
  327.  
  328.       Q: Extended  attribute sizes  reported  by InfoZIP  and ARJ/2 are
  329.          different. What's the cause?
  330.       A: As  we  have  stated earlier, ARJ/2  reports  the  size of its
  331.          internal EA  storage structure  as EA size when packing files.
  332.          This may mismatch with space allocated for EAs  by the system,
  333.          and it may  also mismatch with  values reported by other  OS/2
  334.          native archivers.
  335.  
  336.       Q: How can I back up my  Workplace Shell folders, preserving  the
  337.          icons?
  338.       A: Since folders are represented with directories, you'll have to
  339.          enable directory storage with -a1 or -hbfd.
  340.  
  341.       Q: Why ARJ/2 is a 16-bit executable?
  342.       A: There are several reasons for it. First, the  Huffman encoding
  343.          and decoding routines are  optimized by  introducing assembler
  344.          code. That's  why  ARJ 2.x is  many times faster than ARJ 1.x,
  345.          and ARJ32 is quite slow compared to ARJ/2. Second, OS/2 16-bit
  346.          binaries do NOT  run in  VDMs and  are  actually  as fast  and
  347.          reliable as 32-bit  ones. So-called  16->32 thunks are  called
  348.          when OS/2 API is  accessed but  it rarely  happens: ARJ/2 does
  349.          Huffman encoding/decoding most of the time, not involving  any
  350.          kind of external API. An "ARJ32 for  OS/2" version was planned
  351.          but we decided to stay with 16-bit code, adding ARJ32-specific
  352.          features.
  353.  
  354.       Q: What is ARJLX?
  355.       A: It's  the  same  program  as  ARJ/2,  compressed  with  LXLITE
  356.          utility. It requires  OS/2  v 3.0 or  higher to  run. You  may
  357.          encounter some compatibility problems with  it (it's unable to
  358.          register ARJLX with REGISTER.EXE, and so on...)
  359.  
  360.       Q: The  EAs  have  vanished  after I  used  ARJ/DOS to update  an
  361.          archive.
  362.       A: Current versions  of ARJ/DOS and ARJ32, as well as ARJ/2 prior
  363.          to  2.62.10, strip  the  extended  headers when  any  kind  of
  364.          archive update occurs.
  365.  
  366.       Q: I want  to create  single-volume self-extracting archive  that
  367.          supports EAs but ARJ/2 uses ARJSFX instead of ARJSFXV.
  368.       A: You need to force use of  ARJSFXV/2. The best way for it is to
  369.          specify an arbitrary large value for volume size, e.g. -va.
  370.  
  371.       Q: How can I create an installer for my OS/2 product with ARJ?
  372.       A: ARJSFX/2 is able to run OS/2 commands after unpacking archive.
  373.          Try this: create a script you want to to be  invoked after the
  374.          installation completes.
  375.  
  376.          e.g., INSTALL2.CMD:
  377.          =======
  378.           /* REXX */
  379.  
  380.           if RxFuncQuery('SysLoadFuncs') then do
  381.            call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
  382.            call SysLoadFuncs
  383.           end
  384.  
  385.           say "Installation has completed, creating desktop object..."
  386.           call SysCreateObject ....
  387.          ========
  388.          and so on...
  389.  
  390.          Now create an archive comment with the first line as follows:
  391.          )) \InstallDir\ -b -x -y -!INSTALL2.CMD
  392.  
  393.          Call it, for example, CMT.ANS. Now create an ARJSFX archive:
  394.  
  395.          ARJ a PACKAGE.EXE -je -r -a -jm -zCMT.ANS -xCMT.ANS
  396.  
  397.          You'll make a  self-extracting archive  with an  automatically
  398.          invoked installation program.
  399.  
  400.          You may not commercially distribute these packages.
  401.  
  402.       Q: How can I distinguish ARJ/2 archives from ARJ or ARJZ ones?
  403.       A: Use the ARJ V  command. The "Host OS" field contains  the type
  404.          of archiver binding (DOS or OS/2). The "Revision" field may be
  405.          used to determine the archiver version that added the file:
  406.  
  407.                  1 = ARJ versions earlier than 0.14,
  408.                      ARJZ compatibility mode (-md is less than 26624)
  409.                  2 = ARJ v 0.14...0.20
  410.                  3 = ARJ v 1.00...2.22
  411.                  4 = ARJ v 2.30, X1
  412.                  5 = ARJ v 2.39a, 2.39b
  413.                  6 = ARJ v 2.39c...2.41
  414.                  7 = ARJ v 2.42a...2.50a
  415.                  8 = ARJ v 2.55...2.61, ARJ/2 v 2.61
  416.                  9 = ARJ v 2.62, ARJ/2 v 2.62, ARJ32 v 3.00
  417.                 10 = ARJ v 2.70 and higher, ARJ/2 v 2.62.10 and higher
  418.                 50 = ARJZ with maximum distance up to 32K
  419.                 51 = ARJZ with maximum distance up to 64K
  420.                100 = ARJ32 v 3.00b...3.01
  421.                101 = ARJ32 v 3.02 and higher
  422.  
  423.          Note: ARJ versions that  created the  Revision 1 header used a
  424.          different method 4 compression. Support for it  was dropped in
  425.          versions 1.xx. Such archives may  be incorrectly  processed by
  426.          ARJ/2.
  427.  
  428.  
  429.    INFORMATION FOR DEVELOPERS
  430.  
  431.       ARJ/2 header format is 100% compatible with ARJ header format but
  432.       ARJ/2 was the first to make use of extended header fields. Here's
  433.       a brief summary of the EA storage technology. First, the extended
  434.       header layout is as follows (all values are little-endian):
  435.  
  436.       Bytes  Description
  437.       -----  -----------
  438.           1  Extended header  ID (0x45, the  character  'E'). Indicates
  439.              a EA information header. This is only valid if the arj_nbr
  440.              (header revision number) is 10 or greater.
  441.           1  Continuation  flag. If set to  0, marks the  end of  block
  442.              chain so the  EA data  can be concatenated  and  unpacked.
  443.              Also it provides a way of checking for trashed EA blocks.
  444.           ?  Packed EA block.
  445.  
  446.       A  standard  CRC32  of the  whole  header, including  the  ID but
  447.       excluding header size field,  is  appended to  it. It is strongly
  448.       recommended  that  the CRC  is  verified  when any  compressed EA
  449.       processing occurs.
  450.  
  451.       The packed EA block is a  complex  structure that  can span  over
  452.       multiple volumes. In  case of  such  spanning, separate  parts of
  453.       the block  are stored in  separate extended headers  on different
  454.       volumes and they must be joined together  when the last block  is
  455.       read (it's recognized by EXTFILE_FLAG being clear). The layout of
  456.       the packed block follows:
  457.  
  458.       Bytes  Description
  459.       -----  -----------
  460.           1  Compression method (0...4, may differ from the  one  found
  461.              in the file header)
  462.           2  Unpacked EA data size in bytes
  463.           4  CRC32 of unpacked EA data
  464.           ?  Raw packed EA data
  465.  
  466.       The raw packed data may be decompressed  using the  original  ARJ
  467.       algorithms. In the case when the file  is  encrypted, the  packed
  468.       block is also  encrypted (but the garble routine is reinitialized
  469.       when  compression  of  the  EA  occurs). The password modifier is
  470.       the same as for the first file section. After  decompression, the
  471.       following EA structure will exist:
  472.  
  473.       Bytes  Description
  474.       -----  -----------
  475.           2  Total number of EAs
  476.           1  fEA byte (may indicate a critical EA)
  477.           1  Size of extended attribute name
  478.           2  Size of extended attribute value
  479.           ?  Extended attribute name (not ASCIIZ)
  480.           ?  Extended attribute value (binary data)
  481.  
  482.       Even if the file is a text one, the EAs must be handled as binary
  483.       data during compression and extraction. When EAs are spanned over
  484.       multiple volumes, neither the packed block header is repeated nor
  485.       the compression is restarted (actually, the whole block including
  486.       its header is created in memory and later split to volumes).
  487.  
  488.  
  489.    PRODUCT INFORMATION
  490.  
  491.       ARJ/2 has been developed by ARJ Software Russia with  the most of
  492.       original ARJ code left intact. It has been briefly tested  on IBM
  493.       OS/2 v 1.3, 2.0, 2.1, 3.0, 4.0 and 4.5, and Microsoft Windows  NT
  494.       Workstation v 3.51 and 4.0. The  file systems chosen for  testing
  495.       include FAT, HPFS, Ext2FS and NTFS.
  496.  
  497.       The ARJ/2 development team:
  498.  
  499.                       Programmed  by  Andrew Belov
  500.                     Testing lead  by  Viatcheslav Odintsov
  501.  
  502.       Source code is not available for public use.
  503.  
  504.  
  505.    REVISION HISTORY
  506.  
  507.       (only general availability versions are listed)
  508.  
  509.       2.61.10   21/11/1998   Initial release.
  510.       2.61.11   26/11/1998   ARJ/2 2.61.10 would cause exception 0Dh if
  511.                              ARJ$DISP is killed from the task list. The
  512.                              "clear screen" ANSI sequence now works.
  513.       2.61.13   13/12/1998   "ARJ M" fixup, decreased the size of EXEs,
  514.                              ARJ/2 now also works under Windows NT.
  515.       2.61.14   31/12/1998   Minor fixes. It is the last build of ARJ/2
  516.                              v 2.61.
  517.       2.62.02   09/01/1999   G.A. version. Minor fixes  in the  message
  518.                              section. ARJSFX  now properly supports the
  519.                              "-!" option.
  520.       2.62.03   12/01/1999   ARJ/2 v 2.62 crashed under Windows NT when
  521.                              creating directories. ARJSFX/ARJSFXV might
  522.                              come into loop on some LFN archives. ARJ/2
  523.                              might crash if LFN goes beyond 131 chars.
  524.       2.62.04   24/02/1999   Various problems with  ANSI comments  were
  525.                              fixed. Some documentation enhancements.
  526.       2.62.05   01/05/1999   ARJSFXV v 2.62c has been introduced.
  527.       2.62.07   23/08/1999   ARJ i reported damage in earlier  versions
  528.                              of ARJ/2. Modified  file  seek  logic  for
  529.                              newer IFS. The ARJ/2  distribution archive
  530.                              is now ARJ-SECURED.
  531.       2.62.09   04/09/1999   Fixed  header comment  corruption problem.
  532.                              Fixed problem with free space detection on
  533.                              FAT volumes larger than 1G. Enabled custom
  534.                              environment variable  setting (-+).  Added
  535.                              support for  spaces in  filenames. Changed
  536.                              default  extension  to  lowercase  ".arj".
  537.                              Resurrected the -& error handling  option.
  538.                              Volume labels are now  saved and restored.
  539.                              The  "-h2"  group  of  switches  has  been
  540.                              renamed to "-2" (although  old  names  may
  541.                              still be used). Removed Windows NT host OS
  542.                              stamping  to avoid  confusion with  native
  543.                              ARJ32  archives.  Packaged  a full set  of
  544.                              accompanying utilities.
  545.       2.62.10   15/09/1999   Timestamps are now restored upon directory
  546.                              creation.  Added   support   for  extended
  547.                              attributes  to ARJ and  ARJSFXV.  Fixed  a
  548.                              problem with directories  being mishandled
  549.                              by ARJSFXV.
  550.       2.62.12   26/09/1999   Added  check for encryption  when creating
  551.                              SFX archives. Fixed  chapter mark creation
  552.                              with   EAs   enabled.   Fixed   to   allow
  553.                              commenting  of  any  ARJ  chapters.  Added
  554.                              check for  files larger than 2  gigabytes.
  555.                              Fixed volume handling of "hollow" archives
  556.                              ("-j#"). Fixed  handling of  encrypted and
  557.                              dual-name  archives  with the "j"  and "y"
  558.                              commands. Disabled volume prompting when a
  559.                              volume  is not  an  ARJ  archive.  Changed
  560.                              multi-volume  function  to   automatically
  561.                              handle volumes over 99. Implemented inline
  562.                              ARJ-PROTECT storage as in ARJ32 v 3.02.
  563.       2.70.01   08/10/1999   Changed  error  message  display. Fixed to
  564.                              work in  xterm of  XFree86 for OS/2. Fixed
  565.                              possible   loop  when  -hk  is  used  with
  566.                              multivolume  option. Fixed  a problem with
  567.                              temporary archive not  being  deleted when
  568.                              no files are added.
  569.       2.70.02   25/10/1999   Fixed  date/time   stamping  in  ARJSFXJR.
  570.                              Fixed  recursive repacking in REARJ. Added
  571.                              custom -h# format  feature.  Added comment
  572.                              compatibility option.
  573.       2.70.04   06/11/1999   Added  day  number  option  to  -h#. Fixed
  574.                              extracted   file   postprocessing.   Added
  575.                              automatic  testing of  ungarbled archives.
  576.                              Fixed  chapter command  parsing  from  the
  577.                              configuration  file.  Implemented  default
  578.                              configuration  file  lookup. Fixed  garble
  579.                              password prompting. Corrected to work with
  580.                              EXT2FS.IFS.
  581.       2.70.05   31/12/1999   Fixed  rare  "Can't find ..." errors  when
  582.                              parsing list file. The SFX executables are
  583.                              now  compressed  with   standard  EXEPACK.
  584.                              Introduced  new  ARJ registration  scheme.
  585.                              Added  ARJ.KEY  registration  file lookup.
  586.                              Fixed "clear to end of line" ANSI sequence
  587.                              handling.  Fixed  "Out of  memory"  errors
  588.                              appearing after a long sequence of archive
  589.                              volumes.  Fixed   abnormal  effects   when
  590.                              extracting   damaged    archives.    Fixed
  591.                              timestamp   handling   during   extraction.
  592.                              Fixed  recursive  verification with /G  in
  593.                              REARJ. REARJ/2 has been updated to version
  594.                              2.42.
  595.       2.70.07   06/01/2000   Minor  optimizations  of  the  compression
  596.                              procedure. Added .LONGNAME EA to  filename
  597.                              conversion on  archiving. The  "/J" option
  598.                              was  not properly  working  in  registered
  599.                              REARJ/2.
  600.       2.70.08   07/01/2000   Fixed a  problem  with  valid registration
  601.                              keys being rejected by ARJ/2.
  602.       2.71.01   19/03/2000   Changed  "-ha"  option  to  skip read-only
  603.                              attributes  on   packing.  Fixed   century
  604.                              display for dates beyond 2000. Added "-2k"
  605.                              switch to  skip  century  display in  list
  606.                              commands.  Fixed parsing  of "-v...K"  and
  607.                              "-v...M"  size  modifiers.  Fixed  license
  608.                              information  display  in ARJSFXJR. Changed
  609.                              REGISTER.EXE  to use  "-arj" and  "-arj32"
  610.                              options  instead  of "-all".  Changed  the
  611.                              meaning of  the "-s" option of  ARJSFXV to
  612.                              enable file  sharing. Added  an  alternate
  613.                              multivolume archive naming feature.
  614.       2.71.02   25/03/2000   Fixed  file handle  deficiency (occured in
  615.                              2.70.09 and 2.71.01).
  616.       2.71.03   29/03/2000   Fixed  abnormal  behavior  of -b  and  -b2
  617.                              switches.
  618.       2.71.05   27/06/2000   Minor fixes and modifications.
  619.       2.72.06   18/08/2000   Commercial  versions  now   never  expire.
  620.                              Fixed a minor cosmetic  display issue when
  621.                              using  the "-t1"  option.  Fixed  abnormal
  622.                              handling  of "-*". Fixed  damaged archives
  623.                              resulting  from -m4. Added  option  checks
  624.                              when modifying an existing self-extracting
  625.                              archive. Modified ARJ version messages for
  626.                              compatibility with  Winzip. Fixed multiple
  627.                              volume diskette  updating to work properly
  628.                              when a work directory  is specified. Fixed
  629.                              rare  issue  of   ARJ  building  an  empty
  630.                              archive  as  the  last  of   a  series  of
  631.                              volumes. Fixed  the  ARJSFX self-extractor
  632.                              to  detect  and  display  an  ARJ-SECURITY
  633.                              envelope.  Fixed  the "jc"  extract  count
  634.                              option to  work with  volume  split files.
  635.                              Fixed   a    problem    using   "-js"   in
  636.                              ARJ_SW/ARJ32_SW  and on  the command line.
  637.                              Changed the "l"ist command  to show  " 00"
  638.                              for year  2000 and  "100" for  year  2100.
  639.                              Added  a "-2k1"  switch  for  non-ambigous
  640.                              date  formatting. Added "-hy1"  and "-hy2"
  641.                              options   to   force   OEM/ANSI   codepage
  642.                              settings. Fixed  garbling to  accept "-hg"
  643.                              when   garbling   an   existing  ungarbled
  644.                              archive.  Modified  help  display  not  to
  645.                              display milestone indicators. ARJCRYPT has
  646.                              been updated to version 2.1.
  647.       2.73.01   19/08/2000   Fixed  looping  on  self-pointing headers.
  648.                              Minor  changes  in  the  message  section.
  649.                              Added "-" symbol option  to  configuration
  650.                              file to work  like "+" symbol except  with
  651.                              prepending   of   its  associated   switch
  652.                              string. Fixed  volume size handling during
  653.                              update of ARJ-PROTECTED volumes. Corrected
  654.                              total file count  output  on list command.
  655.                              Fixed the  purging "k" of chapter volumes.
  656.                              Fixed  volume  series  breakups.  Fixed  a
  657.                              problem   with   the   "-vw"  option  when
  658.                              updating  a  volume.  Fixed  alignment  on
  659.                              verbose  list command. Corrected "-i3" and
  660.                              "-i6" total percentage counts for multiple
  661.                              volumes.  Fixed  the "-jc"  extract  count
  662.                              option to terminate prompting for unneeded
  663.                              volumes. Fixed looping when using "-va" on
  664.                              large partitions.
  665.  
  666.       End of document
  667.