home *** CD-ROM | disk | FTP | other *** search
/ Share Gallery 1 / share_gal_1.zip / share_gal_1 / CO / CO029A.ZIP / UNSTUFIT.ZIP / UNSTUFIT.DOC < prev    next >
Text File  |  1988-02-12  |  23KB  |  666 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.              ----------------------------------
  21.               unStufit: for the IBM PC
  22.              ----------------------------------
  23.                 STUFFIT file unpacker
  24.              ----------------------------------
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.     unStufit is distributed freely and may be copied by anyone for
  33.     any number of machines.  The author considers unStufit to be
  34.     "shareware" or "freeware".  unStufit is a part of the shareware
  35.     package PC-VCO.  If you have subscribed to PC-VCO, unStufit is
  36.     released for your use.    If you wish to use unStufit without
  37.     subscription to PC-VCO, please support its development and main-
  38.     tenance with a subscription of 10.00 dollars.  The author may be
  39.     reached at:
  40.  
  41.              CABER Software
  42.              R. (Scott) McGinnis
  43.              P.O. Box 3607 Mdse Mart
  44.              Chicago, IL 60654-0607
  45.  
  46.              PLINK id: TARTAN
  47.  
  48.  
  49.  
  50.  
  51.                                 Version 1.0: 880211
  52.                                 R.McGinnis; Chicago
  53.  
  54. unStufit: STUFFIT file extractor
  55. Version 1.0: 880211
  56.  
  57.  
  58.                  Table of Contents
  59.                  -----------------
  60.  
  61.  
  62.  
  63. I.    Introduction  ................................................. page  1
  64.  
  65. II.    Running the program  .......................................... page  3
  66.  
  67. III.    unStufit Command Summary ...................................... page  4
  68.  
  69. IV.    unStufit Switches ............................................. page  5
  70.  
  71. V.    VCOLIB usage .................................................. page  6
  72.  
  73. VI.    Batch extraction .............................................. page  7
  74.  
  75. VII.    Program Requirements .......................................... page  7
  76.  
  77. VIII.    Program and Author Information    ............................... page  8
  78.  
  79.  
  80.  
  81.  
  82.                 Appendices
  83.                 ----------
  84.  
  85.  
  86. A.    MacBinary Header .............................................. page  9
  87.  
  88. B.    STUFFIT File structure ........................................ page 10
  89.  
  90. C.    STUFFIT Archive Header ........................................ page 11
  91.  
  92. D.    STUFFIT Subfile Header ........................................ page 12
  93.  
  94. E.    unStufit Error messages ....................................... page 13
  95.  
  96.  
  97.  
  98.  
  99. unStufit: STUFFIT file extractor                    Page  1
  100. Version 1.0: 880211
  101.  
  102.  
  103. I.    Introduction
  104.  
  105.  
  106.     unStufit for the IBM PC is a utility that extracts files packed
  107.     together on a MacIntosh computer with the STUFFIT utility.  STUFFIT
  108.     on the MacIntosh will pack multiple files together (optionally
  109.     compressing and encoding them) into one file.  unStufit on the IBM
  110.     PC allows the extraction of individual files from the STUFFIT
  111.     envelope.  Many files maintained as '.SIT' (the usual STUFFIT
  112.     extension) on Mac BBS's, Clubs, and SIG's are now accessible to
  113.     users of the IBM PC.
  114.  
  115.  
  116.     STUFFIT was developed and has been extended by Raymond Lau.  STUFFIT
  117.     (through version 1.20) stored files together, with non-compression
  118.     and 3 optional types of data compression.  STUFFIT is available as
  119.     shareware.
  120.  
  121.  
  122.     unStufit is compatible with STUFFIT.  unStufit was developed to
  123.     support the shareware package PC-VCO for the IBM PC.  Face files
  124.     created on MacIntosh computers are frequently packed together on the
  125.     various boards:  PLINK, CIS, Delphi, and GEnie.  Now packed face
  126.     files are available to PC-VCO users.  A packed file may be
  127.     downloaded to an IBM PC and unStufit used to extract individual face
  128.     files.
  129.  
  130.  
  131.  
  132.     unStufit may be copied freely and distributed to anyone for any
  133.     number of machines.  The author considers this to be "shareware" or
  134.     "freeware" unStufit is a part of the shareware package PC-VCO.  If
  135.     you have sub- scribed to PC-VCO, unStufit is released for your use.
  136.     If you wish to use unStufit without subscription to PC-VCO, a
  137.     contribution is asked.    unStufit (and PC-VCO/unStufit) will be
  138.     extended and enhanced if response warrants.
  139.  
  140.  
  141. unStufit: STUFFIT file extractor                    Page  2
  142. Version 1.0: 880211
  143.  
  144.  
  145. I.    Introduction (continued)
  146.  
  147.  
  148.     What is PC-VCO, by-the-way?
  149.  
  150.     PC-VCO is a communications program for the IBM PC with two sides.
  151.     On the one hand, it provides standard comm program functions:  a
  152.     dialing directory, macros, disc logging, XMODEM and ASCII file
  153.     transfer, and so on.  However, used with network conferencing
  154.     services such as People/Link's PARTY, CompuServe's CB and Delphi's
  155.     conference area, PC-VCO provides a way to 'see' and 'hear' people
  156.     talking.
  157.  
  158.  
  159.     The idea for PC-VCO was derived from the VCO system, and its
  160.     predecessor VMCO, developed for the MacIntosh computer.  The VCO
  161.     programs (PC and MacIntosh) allow you to see the people you
  162.     communicate with on-line, using the graphic capabilities of the
  163.     personal computer and to hear conversation with speech synthesis.
  164.  
  165.  
  166.  
  167.     VCO was originally developed by Harry Chesley.    It was followed by
  168.     VMCO (which is CIS specific), written by Bob Perez independant to
  169.     the development of VCO.  The current (MacIntosh) version of VCO is
  170.     almost an exact duplicate of Harry Chesley's original - the original
  171.     source code was converted by Mike Cohen and made to accept multiple
  172.     service formats.  [Note:  Mike Cohen's VCO uses VMCO formated files.
  173.     Harry Chesley's VCO files differ.  VCOLIB can accomodate either.
  174.     PC-VCO in VCO mode can talk to either, according to your choice.]
  175.  
  176.  
  177.     The MacIntosh VCO allows the user to see the people talking on-line
  178.     through graphic Icons.    The Icons are provided to the VCO program as
  179.     'Resource files' and are built using a 'Resource Editor'.  Each VCO
  180.     user must have a resource file for every potential other speaker.
  181.     Charlie Brown and Snoopy Icons are used if no 'Faces' are available.
  182.     A range of expressions, from 'normal' to bored to surprised make VCO
  183.     conferences lively.  Each participant controls the expression
  184.     displayed to all other participants.
  185.  
  186.  
  187.     On most large systems, the face files for 20 or more people have
  188.     been packed (and compressed) together with the shareware product
  189.     STUFFIT.  The files will be found in the library areas with the
  190.     extension of '.SIT'.  And thus unStufit for the IBM PC !
  191.  
  192.  
  193. unStufit: STUFFIT file extractor                     Page 3
  194. Version 1.0:  880211
  195.  
  196.  
  197. II.    Running the program
  198.  
  199.  
  200.     unStufit is invoked at the DOS prompt with the command:
  201.  
  202.     ------------------------------------------------------
  203.     "d>" unStufit <option>
  204.  
  205.     Where "d>" is the DOS prompt, and
  206.  
  207.           <option> is: (<switch> or <cmd> <SIT-File> (<parm> (,<parm> ...)))
  208.  
  209.           where <switch>   is one of the following: /+, /-, /B, /D, /R
  210.             <parm>     is a subfile name,
  211.             <SIT-file> is the STUFFIT file name to be used,
  212.           and <cmd>        is one of the following: E,X,L,V
  213.  
  214.     Note: Specifying no commands at all will provide an abbreviated
  215.           HELP display summarizing available commands.
  216.     ------------------------------------------------------
  217.  
  218.     unStufit commands and switches are summarized on the next pages.
  219.  
  220.  
  221. unStufit: STUFFIT file extractor                     Page 4
  222. Version 1.0: 880211
  223.  
  224.  
  225. III.    unStufit Command Summary.
  226.  
  227.  
  228.     Command    Parameter Description
  229.     ---------  --------- --------------------------------------------------
  230.     (E)xtract  subfile   Extract the specified subfile.  Subfile names are
  231.            name      listed with the 'L' or 'V' commands.  Subfile names
  232.                  are up to 63 bytes in length, and may not contain
  233.                  a comma or a semi-colon.  Case is not significant.
  234.  
  235.     (X)tract   subfile   Extract the specified subfile.  This is simply a
  236.            name      synonym for the 'E' command discussed above for
  237.                  those of us who spell phonetically.
  238.  
  239.     (L)ist             List the subfiles of the specified SIT file.  If
  240.                  a parameter is given it will be ignored.  The
  241.                  list command gives the following information:
  242.  
  243.                  Subfile name (1-63 characters in length)
  244.                  File Type (4 characters)
  245.                  File creator (4 characters)
  246.                  Compression.  Compression types are:
  247.  
  248.                 0 - non-compression
  249.                 1 - repeat character compression (RLE)
  250.                 2 - dynamic Lempel-Ziv,Weiss compression
  251.                 3 - Huffman compression
  252.  
  253.  
  254.     (V)erbose         List the subfiles of the specified SIT file.  If a
  255.                  parameter is given it will be ignored.  The verbose
  256.                  list gives the information above and the following:
  257.  
  258.                 Data Fork size:     Byte count in the
  259.                             subfile's Data fork.
  260.                 Resource Fork size: Byte count in the subfile's
  261.                             Resource fork.
  262.                 Creation date:        Date the file was created.
  263.                 Modification date:  Date the file was last
  264.                             modified.
  265.  
  266. unStufit: STUFFIT file extractor                     Page 5
  267. Version 1.0: 880211
  268.  
  269.  
  270. IV.    unStufit Switches.
  271.  
  272.  
  273.     unStufit uses switches to control its output format.  In order to
  274.     explain these switches, some preliminaries are required.  Bear
  275.     with me, please, if you already understand the following points:
  276.  
  277.     .  Files uploaded by a MacIntosh and downloaded by an IBM PC will have
  278.        a header called 'MacBinary'.  The MacBinary header gives specifics
  279.        about the file's name, type/creator, etc.  The SIT file used by
  280.        unStufit must have a MacBinary header, with a type of "SIT!" and a
  281.        creator of "SIT!".  VCOLIB (the face file librarian for PC-VCO)
  282.        expects face files offered it for ingestion to have a MacBinary
  283.        header.
  284.  
  285.     .  MacIntosh files are implemented as 'forks'... each file has a
  286.        'Data' and a 'Resource' fork.  The Data fork is what we who use
  287.        IBM PC's understand to be a file - it is object code, data, a data
  288.        base, what-have-you.  The Resource fork contains O/S information
  289.        such as the ICON to be displayed to represent the file.  Again
  290.        using VCOLIB as an example:    VCOLIB uses only the resource fork of
  291.        a face file.
  292.  
  293.        And I don't know why the whole construction isn't referred to as
  294.        a fork, and the elements 'tines'.
  295.  
  296.  
  297.     With this understood, unStufit offers the following switches (which
  298.     must be entered prior to the command(s) effected):
  299.  
  300.     Switch    Description
  301.     ------- ------------------------------------------------------------
  302.     /+    Default condition.  A MacBinary header is created for each
  303.         file extracted (with the appropriate name, type and creator).
  304.  
  305.     /-    No MacBinary header will be output with extracted files.  This
  306.         would be appropriate if, for example, an encrypted file were
  307.         being uncompressed and encryption performed separately.
  308.  
  309.     /B    Default condition.  Both the Data and Resource forks are to be
  310.         extracted (if present).  Each will be output as a separate file
  311.         on the IBM PC (the name for each file will be queried).
  312.  
  313.     /D    Only the Data fork is to be extracted.    The Resource fork will
  314.         be skipped if present.
  315.  
  316.     /R    Only the Resource fork is to be extracted.  The Data fork will
  317.         be skipped if present.
  318.  
  319.  
  320. unStufit: STUFFIT file extractor                     Page 6
  321. Version 1.0: 880211
  322.  
  323.  
  324. V.    VCOLIB usage.
  325.  
  326.  
  327.     Face files packed together into one SIT file will have certain
  328.     characteristics.  First of all, the Data fork for each subfile will
  329.     be empty (size is 0 bytes).  Only the Resource fork is used.  VCOLIB
  330.     will only accept resource files with one of the following
  331.     type/creator values:
  332.  
  333.         Type Creator Usage
  334.         ---- ------- --------------------------------------------
  335.         FACE VCO!    File created for use with Mike Cohen's VCO
  336.                  (this version is mostly used on PLINK)
  337.         FACE VMCO    File created for use with Bob Perez's VMCO
  338.                  (this version is mostly used on CIS)
  339.         HRC1 HRC1    File created for use with Harry Chesley's VCO
  340.                  (this version is mostly used on GEnie and Delphi)
  341.  
  342.  
  343.     For example:  you might find a face-file Stuffit archive in the CIS
  344.     MacIntosh Users Group (MAUG) library (DL) named FACES1.SIT.  Down-
  345.     load the file using an error free binary protocol.  It will be seen
  346.     to conform to the above description (0 size data forks, and
  347.     type/creator of "FACEVMCO".
  348.  
  349.  
  350.     List the file's contents with the command:
  351.  
  352.        "d>" unStufit L FACES1.SIT    (assuming that is the name you gave it)
  353.  
  354.  
  355.     Extract an individual face with the command:
  356.  
  357.        "d>" unStufit X FACES1.SIT <somebody's name from the listing>
  358.  
  359.     You will be queried for the file name for the extracted subfile.
  360.     Choose any name (the face file itself contains the original name,
  361.     so the name you use for the file is relatively unimportant) that
  362.     does not conflict with a file already on your diskette/subdirectory.
  363.  
  364.  
  365.     Add the extracted file to PC-VCO's face library with the command:
  366.  
  367.        "d>" VCOLIB A <your library file> <the extracted file's name>
  368.  
  369.     Normally, the library file would be PC-VCO.FLB.  You may view the
  370.     entry with the command:
  371.  
  372.        "d>" VCOLIB V <your library file> <the name as it was originally>
  373.  
  374.  
  375.  
  376. unStufit: STUFFIT file extractor                     Page 7
  377. Version 1.0: 880211
  378.  
  379.  
  380. VI.    Batch Extraction
  381.  
  382.  
  383.     Version 1.0 of unStufit allows redirection of the output (e.g.    of
  384.     the 'L' command to the printer.  However, redirection of input is
  385.     not supported.    Although it may appear obvious to build a contents
  386.     list of a SIT file with the command:
  387.  
  388.     d> unStufit >TEMP.TXT L JAPANART.SIT           ; This works just nicely
  389.  
  390.     and then edit the result - providing blank (empty) lines for files
  391.     to be skipped - it won't work.  When the edited file is presented to
  392.     be processed, e.g.  with the command:
  393.  
  394.     d> unStufit <TEMP.TXT X JAPANART.SIT           ; It doesn't work!
  395.  
  396.     the program terminates abnormally.  If this program is extended,
  397.     this feature will be one of the first addressed.
  398.  
  399.  
  400.     unStufit will accept the 'X' command with no operand and unpack the
  401.     entire contents of the SIT file.  The command above (without the
  402.     redirection of input, of course) is an example.  Simply enter:
  403.  
  404.     d> unStufit X <SIT file name>
  405.  
  406.     and every file within the SIT file will be unpacked.  You can skip a
  407.     subfile with a null entry - a carriage return) at the file name
  408.     prompt.  And its faster than a selective extraction.  Another matter
  409.     to be addressed if response warrants.
  410.  
  411.  
  412. VII.    Program Requirements
  413.  
  414.  
  415.     This program can only function on an IBM PC or DOS compatible
  416.     machine.  It uses 'Handle' oriented I/O routines added with DOS 2.0.
  417.     Therefore DOS 2.0 is also a requirement.
  418.  
  419.  
  420.     The current version's memory requirements are modest.  unStufit
  421.     requires 96K - you'll need at least 128K.
  422.  
  423.  
  424. unStufit: STUFFIT file extractor                     Page 8
  425. Version 1.0: 880211
  426.  
  427.  
  428. VIII.    Program and Author Information
  429.  
  430.  
  431.     This program was written using Microsoft Macro-Assembler, version
  432.     5.0.  The author likes assembler.  Assembly language is an entirely
  433.     appropriate vehicle for the program.
  434.  
  435.  
  436.     unStufit, VCOLIB and PC-VCO were written by R. Scott McGinnis of
  437.     Chicago Illinois.  [GEnie and PLINK IDs: TARTAN].  Comment and
  438.     suggestions are welcomed.  You may also write:
  439.  
  440.  
  441.              CABER Software
  442.              R. (Scott) McGinnis
  443.              P.O. Box 3607 Mdse Mart
  444.              Chicago, IL 60654-0607
  445.  
  446.  
  447.     Credit for information on the MacIntosh must be given to Kelly Major.
  448.     Experience with PACKIT files contributed directly to this code, as
  449.     did the public domain source for ARC.  I also thank Elizabeth, for
  450.     putting up with the repeated jaw-breaker: "Lempel-Ziv this and Lempel-
  451.     Ziv that...".
  452.  
  453.  
  454.     unStufit (Version 1.0) may be distributed freely, with the caveat
  455.     that the Author information displayed at program termination is not
  456.     removed.  The author considers this to be "shareware" or "freeware".
  457.     unStufit is a part of the shareware package PC-VCO.  If you have
  458.     subscribed to PC-VCO, unStufit is released for your use.  If you
  459.     wish to use unStufit without subscription to PC-VCO, a contribution
  460.     of $10.00 is requested.  unStufit (and PC-VCO/unStufit) will be
  461.     extended and enhanced if response (measured by contribution)
  462.     warrants.
  463.  
  464.  
  465.     Most of the hardware names and software names (and products not
  466.     hardware or software) mentioned in this document are trademarks or
  467.     trade names of specific manufacturers.
  468.  
  469.  
  470. unStufit: STUFFIT file extractor                     Page 9
  471. Version 1.0: 880211                             Appendices
  472.  
  473.  
  474. A.    MacBinary header.
  475.  
  476.     The MacBinary header is 128 bytes in length, and structured:
  477.  
  478.  
  479.     0      1      2      3        4       5      6     7           65
  480.     +------+------+------+------+------+------+------+-----/ /-----+->
  481.     ! Ver  ! FLN  ! File Name                   ...     !
  482.     +------+------+------+------+------+------+------+-----/ /-----+->
  483.  
  484.            65     66     67     68       69      70     71    72     73
  485.         >--+------+------+------+------+------+------+------+------+->
  486.            ! Type               ! Creator               !
  487.         >--+------+------+------+------+------+------+------+------+->
  488.  
  489.            73     74    ...     126    127
  490.         >--+------+-----/ /-----+------+
  491.            ! Unused by us           !
  492.         >--+------+-----/ /-----+------+
  493.  
  494.     Where: Ver -------> MacBinary Version Number
  495.            FLN -------> Len of following File name (value 0-63)
  496.            File Name -> File Name; Used here as Creator ID.
  497.            Type ------> Type of file field.  We expect "SIT!".
  498.            Creator ---> Creator of file field.  We expect "SIT!".
  499.  
  500.  
  501.  
  502. unStufit: STUFFIT file extractor                    Page 10
  503. Version 1.0: 880211                             Appendices
  504.  
  505.  
  506. B.    STUFFIT file structure.
  507.  
  508.  
  509.     The stuffit file is a concatenated series of subfiles, with
  510.     a MacBinary Header.  After the MacBinary header, a stuffit
  511.     file looks like:
  512.  
  513.         sitArchiveHdr
  514.             file1Hdr (uncompressed)
  515.                 file1RsrcFork (possibly compressed)
  516.                 file1DataFork (possibly compressed)
  517.             file2Hdr ...
  518.                 file2RsrcFork ...
  519.                 file2DataFork ...
  520.             .
  521.             .
  522.             .
  523.             fileNHdr
  524.                 fileNRsrcFork
  525.                 fileNDataFork
  526.  
  527.  
  528.  
  529. unStufit: STUFFIT file extractor                    Page 11
  530. Version 1.0: 880211                             Appendices
  531.  
  532.  
  533. C.    STUFFIT Archive Header
  534.  
  535.  
  536.     OSType    signature;        /* = 'SIT!' -- for verification */
  537.     unsigned int    numFiles;    /* number of files in archive */
  538.     unsigned long    arcLength;    /* length of entire archive incl.
  539.                         hdr. -- for verification */
  540.     OSType    signature2;        /* = 'rLau' -- for verification */
  541.     unsigned char    version;    /* version number */
  542.     char reserved[7];
  543.  
  544.  
  545.     -----------------------------------------------------------
  546.     The header has the following structure:
  547.  
  548.     Field    Length    Contents
  549.     ------- ------- --------------------------------------------
  550.     Sig1    4    Type field for verification (SIT!)
  551.     NumF    2    COunt of files in archive
  552.     Len    4    Archive length (in bytes)
  553.     Sig2    4    Type field for verification (rlau)
  554.     Version 1    Version number
  555.     Fill    7    reserved for future
  556.  
  557.  
  558. unStufit: STUFFIT file extractor                    Page 12
  559. Version 1.0: 880211                             Appendices
  560.  
  561.  
  562. D.    Stuffit Subfile Header
  563.  
  564.  
  565.     unsigned char    compRMethod;    /* rsrc fork compression method */
  566.     unsigned char    compDMethod;    /* data fork compression method */
  567.     unsigned char    fName[64];    /* a STR63 */
  568.     OSType    fType;            /* file type */
  569.     OSType    fCreator;        /* erI */
  570.     int FndrFlags;            /* copy of Finder flags.
  571.     unsigned long    creationDate;
  572.     unsigned long    modDate;    /* !restoredPcompat w/backup prgms */
  573.     unsigned long    rsrcLength;    /* decompressed lengths */
  574.     unsigned long    dataLength;
  575.     unsigned long    compRLength;    /* compressed lengths */
  576.     unsigned long    compDLength;
  577.     int rsrcCRC;            /* crc of rsrc fork */
  578.     int dataCRC;            /* crc of data fork */
  579.     char reserved[6];
  580.     int hdrCRC;            /* crc of file header */
  581.  
  582.     ------------------------------------------------------------
  583.     The header has the following structure:
  584.  
  585.     Field    Length    Contents
  586.     ------- ------- --------------------------------------------
  587.     RMethod 1    Resource fork compression method
  588.     DMethod 1    Data fork compression method
  589.     NameLen 1    Length of NAME field in bytes (1-63)
  590.     Name    63    Name of subfile
  591.     Type    4    File type (as above)
  592.     Creator 4    File creator (as creator above)
  593.     Flags    1    Finder flags
  594.         1    one byte of filler to preserve word alignment
  595.     CrDate    4    file creation date  !  Count in seconds since
  596.     ModDate 4    file last modified  !         Jan 1, 1904
  597.     RSize    4    32 bit count of bytes in resource fork
  598.     DSize    4    32 bit count of bytes in data fork
  599.     CDSize    4    32 bit count of compressed bytes in data fork
  600.     RSize    4    32 bit count of compressed bytes in resource fork
  601.     Fill    6    reserved for future
  602.     CRC    2    CRC for above header
  603.  
  604.     ------------------------------------------------------------
  605.     Note: the CRC's used in Stuffit are computed as ARC computes
  606.     CRC's - not CCITT CRC-16 at all!.
  607.     ------------------------------------------------------------
  608.  
  609.  
  610. unStufit: STUFFIT file extractor                    Page 13
  611. Version 1.0: 880211                             Appendices
  612.  
  613.  
  614. E.    unStufit Error messages.
  615.  
  616.  
  617.     ------------------------------------------------------------
  618.     ... Parameter error
  619.  
  620.     The command line, as entered after the invocation of unStufit could
  621.     not be interpreted.  Re-type the command line.
  622.     ------------------------------------------------------------
  623.     ... File name syntax error
  624.  
  625.     unStufit follows the SEA/ARC convention of placing the file name of
  626.     the file to be manipulated after the first command and before the
  627.     parameters of that first command.  unStufit could not interpret the
  628.     expected name.
  629.     ------------------------------------------------------------
  630.     ... File is not STUFFIT format
  631.  
  632.     The file specified is not identified as a STUFFIT file in its
  633.     MacBinary header (the first 128 bytes).  Type must be "SIT!" and
  634.     creator "SIT!".
  635.     ------------------------------------------------------------
  636.     Short read reading subfile header
  637.  
  638.     The STUFFIT file has been truncated - only part of its contents are
  639.     available for extraction.
  640.     ------------------------------------------------------------
  641.     Warning:  Subfile header CRC does not match computed CRC.
  642.  
  643.     The STUFFIT file has been corrupted.  Or the author has a bug.    If
  644.     the file is downloaded a second time, and the error persists, its
  645.     probably a bug.  Please contact the author.
  646.     ------------------------------------------------------------
  647.     Subfile type unrecognized.
  648.  
  649.     The STUFFIT file uses a compression method other than those above.
  650.     ------------------------------------------------------------
  651.     Position past EOF requested.
  652.  
  653.     The STUFFIT file has been truncated - only part of its contents are
  654.     available for extraction.
  655.     ------------------------------------------------------------
  656.     Huffman tree is corrupt. I can not use it.
  657.  
  658.     Decoding information could not be loaded from a compressed file.
  659.     The file could be corrupt, or the author (me, again) may have a bug.
  660.     ------------------------------------------------------------
  661.     Warning: Subfile contentual CRC does not match computed CRC.
  662.  
  663.     The STUFFIT file has been corrupted.  Or the author has a bug.    If
  664.     the file is downloaded a second time, and the error persists, its
  665.     probably a bug.  Please contact the author.
  666.