Zoo

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(PRONOM)
m (Sample files)
 
(35 intermediate revisions by 7 users not shown)
Line 2: Line 2:
 
|subcat=Archiving
 
|subcat=Archiving
 
|extensions={{ext|zoo}}
 
|extensions={{ext|zoo}}
 +
|mimetypes={{mimetype|application/x-zoo}}
 
|pronom={{PRONOM|x-fmt/269}}
 
|pronom={{PRONOM|x-fmt/269}}
 +
|wikidata={{wikidata|Q219983}}
 +
|released=1986
 
}}
 
}}
 +
'''Zoo''' is a compressed archive format developed by Rahul Dhesi. It was one of the many competing archive formats in the 1980s, and was based (originally) on [[LZW]] compression. It had some popularity with Open/VMS and Amiga systems, but didn't ultimately win out over [[ZIP]].
  
'''ZOO''' was one of the many competing archive formats in the 1980s, and was based on the [[LZW]] compression system. It had some popularity with Open/VMS and Amiga systems, but didn't ultimately win out over [[ZIP]].
+
== Discussion ==
 +
The Zoo software encompassed several different utilities, which were sometimes distributed individually, and which had their own version numbers.
 +
* '''Zoo''' - The main program
 +
* '''Ooz''' - Extractor
 +
* '''Booz''' (Barebones Ooz) - Extractor; some versions can also list files
 +
* '''Looz''' (Ooz with List) - Extract/list/execute
 +
* '''Atoz''' - Helper utility for converting other formats ([[ARC (compression format)|ARC]], [[LBR]]) to Zoo
 +
* '''Fiz''' - Analyze damaged Zoo files
 +
* '''Stuff''' - File finder
 +
* '''Sez''' - Self-Extracting Zoo utility
  
== References ==
+
== Compression methods ==
* [http://en.wikipedia.org/wiki/Zoo_%28file_format%29 Zoo (file format) (Wikipedia)]
+
 
* information at fileformat.info [http://www.fileformat.info/format/zoo/corion.htm here]
+
{| class="wikitable"
 +
! ID !! Name !! Description
 +
|-
 +
|0 || No packing || Uncompressed
 +
|-
 +
|1 || LZD || [[LZW]]. A fairly generic LZW implementation, with a dynamic code size from 9 to 13 bits, and two special codes: 256=Clear, 257=Stop.
 +
|-
 +
|2 || LZH || [[LZ77 with Huffman coding|LZ77+Huffman]]. Nearly identical to [[LHA]]'s "lh5" method. A small difference is that Zoo defines a way to mark the end of data. The format is pretty well documented in the comments in unzoo.c by Martin Schoenert (see below).
 +
|}
 +
 
 +
== Identification ==
 +
Files have bytes {{magic|DC A7 C4 FD}} at offset 20.
 +
 
 +
Zoo files typically start with "{{magic|ZOO&nbsp;?.??&nbsp;Archive.}}", followed by the byte <code>0x1a</code>, where each "<code>?</code>" is a digit. Regarding this field, the source code says "The contents of the text message are however not used by Zoo and they may be anything."
 +
 
 +
== Related formats ==
 +
* [[Zoo filter format]]
 +
* [[Zoo Z format‎]]
 +
* [[Brik]] - same author
 +
 
 +
== Specifications ==
 +
''[Ed. note: The Zoo format information in these documents is not of the highest quality. We haven't found a specification that is reasonably complete and correct.]''
 +
 
 +
* [https://www.fileformat.info/format/zoo/corion.htm The ZOO Archive File Format] from Corion.net, via FileFormat.info
 
* [http://apple2.org.za/gswv/a2zine/GS.WorldView/Resources/The.MacShrinkIt.Project/ARCHIVES.TXT Archive format info, including ZOO]
 
* [http://apple2.org.za/gswv/a2zine/GS.WorldView/Resources/The.MacShrinkIt.Project/ARCHIVES.TXT Archive format info, including ZOO]
 +
* [http://www.textfiles.com/programming/FORMATS/arc_fmts.txt ZOO file header format (among other archive types)]
 +
 +
== Software ==
 +
* [[Konvertor]]
 +
* Zoo - DOS binaries
 +
** {{CdTextfiles|megarom/megarom1/ARC_LBR/ZOO120.ZIP|v1.20}} (1986-09-06)
 +
** {{CdTextfiles|carousel344/013/ZOO121.ZIP|v1.21}} (1986-09-21)
 +
** v1.40 (1987-01-24): [https://archive.org/details/shareware-grab-bag] → Shareware_Grab_Bag_1988.zip → 014/zoo140.arc
 +
** v1.41: [https://archive.org/details/os2sharewarebbs OS/2 Shareware BBS Full Collection] → 08-Other.zip → S12215.ZIP → ZOO.EXE (bare executable)
 +
** {{CdTextfiles|rbbsv3n1/zzap/zoo200.exe|v2.00}} (~1988-02-06)
 +
** {{CdTextfiles|hof91/ARC/ZOO201.EXE|v2.01}} (1988-08-25) - Also includes Fiz 2.0 and Stuff 1.0
 +
** {{CdTextfiles|simtel/simtel20/MSDOS/ARCHIVRS/ZOO210.EXE|v2.10}} (1991-07-09)
 +
* Other official Zoo utilities:
 +
** {{CdTextfiles|simtelctc/disk1/ZOO/BOOZ20.ZIP;1|Booz 2.0}} - Extractor; includes source code and DOS binary
 +
** {{CdTextfiles|carousel344/013/LOOZ210.ZIP|Looz 2.1}}
 +
** {{CdTextfiles|carousel/013B/OOZ130.ZIP|Ooz 1.30}}
 +
** Sez {{CdTextfiles|carousel344/013/SEZ200.ZIP|2.0}}, {{CdTextfiles|microhaus/mhblackbox3/ARCHIVER/SEZ230.ZIP|2.3}} - Makes self-extracting archives
 +
** {{CdTextfiles|simtelctc/disk1/ZOO/ATOZ112.ZIP;1|Atoz 1.12}} - Conversion helper
 +
** {{CdTextfiles|simtel/simtel9211/msdos/zoo/stuff2.zip|Stuff 2.0}}
 +
* [https://www.amiga-stuff.com/archivers-download.html amiga-stuff.com: Archivers] - Lists several versions of Zoo for Amiga
 +
* [http://archives.math.utk.edu/software/multi-platform/gap/util/unzoo.c unzoo.c] by Martin Schoenert (Does not support LZD.)
 +
* [https://github.com/PascalVault/Lazarus_Unpacker Open-source library in Free Pascal]
 +
* {{Deark}}
 +
 +
Original(?) source code:
 +
* v1.41 (1987-02-07): {{CdTextfiles|hof91/PROGLC/ZOO141_C.LZH|ZOO141_C.LZH}}
 +
* v1.51 (1987-07-12)
 +
** [https://archive.org/details/ASMEsMechanicalEngineeringToolkit1997December ASME's Mechanical Engineering Toolkit Dec. 1997] → C_LANG/Z150_SRC.LZH
 +
** As posted to Usenet comp.sources.unix 1987-08: [{{CdTextfilesURL|sourcecode/usenet/compsrcs/unix/volume11/zoo/}}]
 +
* v2.01 (1988-08-25)
 +
** [http://www.nic.funet.fi/index/unix/tools/zoo/zoo-2.01.tar.gz zoo-2.01.tar.gz]
 +
** [https://archive.org/details/ASMEsMechanicalEngineeringToolkit1997December ASME's Mechanical Engineering Toolkit Dec. 1997] → C_LANG/{Z201SRC1.Z00 + Z201SRC2.Z00}
 +
** [https://archive.org/details/pegasus20 Pegasus 2.0] → pegasus/c_2/zoo_src.zip
 +
* v2.10, a.k.a. v2.1 (1991-07-07)
 +
** [http://www.nic.funet.fi/index/unix/tools/zoo/zoo-2.1.tar.gz zoo-2.1.tar.gz]
 +
** {{CdTextfiles|aminet0294/AMINET/MISC/UNIX/ZOO_2_10.TAR|ZOO_2_10.TAR}}
 +
 +
Other source code and packages:
 +
* [http://distcache.freebsd.org/ports-distfiles/zoo-2.10pl1.tar.gz zoo-2.10pl1.tar.gz]
 +
* [http://www.ibiblio.org/pub/Linux/utils/compress/zoo-2.10-3.src.rpm zoo-2.10-3.src.rpm]
 +
 +
== Sample files ==
 +
* {{CdTextfilesURL|aminet0294/AMINET/UTIL/ARC/}} → *.ZOO
 +
* {{CdTextfilesURL|garbo/PC/}} → .../*.ZOO
 +
* {{CdTextfilesURL|geminiatari/ZIP/PROGRAM/}} → *.ZOO
 +
* {{DexvertSamples|archive/zoo}}
 +
 +
== Links ==
 +
* [[Wikipedia: Zoo (file format)]]
 +
* {{CdTextfiles|rbbsv3n1/zzap/zooplan1.zip|zooplan1.zip}} → ZOOPLAN1.TXT - A Zoo Manifesto, by Rahul Dhesi (1986-11-01)
 +
* {{CdTextfiles|simtelctc/disk1/ZOO/UGUIDE.ZIP;1|The zoo Archiver User's Guide}}, by Bill Davidsen (for Zoo 2.01)
 +
* [https://manpages.ubuntu.com/manpages/bionic/man1/zoo.1.html Zoo man page] - Includes a change log going back to v1.71
 +
* {{CdTextfiles|carousel344/013/ZOO121.ZIP|Zoo 1.21}} → ZOOHSTRY.TXT - Has some historical information about older versions

Latest revision as of 03:23, 28 December 2023

File Format
Name Zoo
Ontology
Extension(s) .zoo
MIME Type(s) application/x-zoo
PRONOM x-fmt/269
Wikidata ID Q219983
Released 1986

Zoo is a compressed archive format developed by Rahul Dhesi. It was one of the many competing archive formats in the 1980s, and was based (originally) on LZW compression. It had some popularity with Open/VMS and Amiga systems, but didn't ultimately win out over ZIP.

Contents

[edit] Discussion

The Zoo software encompassed several different utilities, which were sometimes distributed individually, and which had their own version numbers.

  • Zoo - The main program
  • Ooz - Extractor
  • Booz (Barebones Ooz) - Extractor; some versions can also list files
  • Looz (Ooz with List) - Extract/list/execute
  • Atoz - Helper utility for converting other formats (ARC, LBR) to Zoo
  • Fiz - Analyze damaged Zoo files
  • Stuff - File finder
  • Sez - Self-Extracting Zoo utility

[edit] Compression methods

ID Name Description
0 No packing Uncompressed
1 LZD LZW. A fairly generic LZW implementation, with a dynamic code size from 9 to 13 bits, and two special codes: 256=Clear, 257=Stop.
2 LZH LZ77+Huffman. Nearly identical to LHA's "lh5" method. A small difference is that Zoo defines a way to mark the end of data. The format is pretty well documented in the comments in unzoo.c by Martin Schoenert (see below).

[edit] Identification

Files have bytes DC A7 C4 FD at offset 20.

Zoo files typically start with "ZOO ?.?? Archive.", followed by the byte 0x1a, where each "?" is a digit. Regarding this field, the source code says "The contents of the text message are however not used by Zoo and they may be anything."

[edit] Related formats

[edit] Specifications

[Ed. note: The Zoo format information in these documents is not of the highest quality. We haven't found a specification that is reasonably complete and correct.]

[edit] Software

Original(?) source code:

Other source code and packages:

[edit] Sample files

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox