Ar (Haruhiko Okumura)
(2 intermediate revisions by 2 users not shown) | |||
Line 39: | Line 39: | ||
Formats derived from ar's compression scheme, directly or indirectly, include: | Formats derived from ar's compression scheme, directly or indirectly, include: | ||
* [[LHA]] "lh5" compression | * [[LHA]] "lh5" compression | ||
− | * [[Zoo]] | + | * [[Zoo]] "LZH" compression |
* [[ARJ]] | * [[ARJ]] | ||
* [[SCO compress LZH]] | * [[SCO compress LZH]] | ||
Line 58: | Line 58: | ||
* https://oku.edu.mie-u.ac.jp/~okumura/compression/ar002/ | * https://oku.edu.mie-u.ac.jp/~okumura/compression/ar002/ | ||
* [{{SACFTPURL|pack|ar_110.zip}} "AR v1.1"] - ar002 with modifications by Terran Melconian (DOS binary + source code) | * [{{SACFTPURL|pack|ar_110.zip}} "AR v1.1"] - ar002 with modifications by Terran Melconian (DOS binary + source code) | ||
+ | * [https://github.com/PascalVault/Lazarus_Unpacker Open-source library in Free Pascal] | ||
* See also [[LHA#Software]]. | * See also [[LHA#Software]]. | ||
+ | |||
+ | == Sample files == | ||
+ | * [https://github.com/PascalVault/Lazarus_Unpacker/tree/main/_TestFiles Sample .AR file (AR002)] | ||
== Links == | == Links == | ||
* [https://oku.edu.mie-u.ac.jp/~okumura/compression/history.html History of Data Compression in Japan] | * [https://oku.edu.mie-u.ac.jp/~okumura/compression/history.html History of Data Compression in Japan] |
Latest revision as of 12:52, 1 November 2023
ar is a compressed archive utility developed by Haruhiko Okumura. It is not related to the Unix ar archiver.
Contents |
[edit] Discussion
ar was essentially a preview of the influential family of compression methods used by LHA version 2.x: the "lh5
" method and related methods.
There seem to have been two main versions of ar. Neither has a clear version number, but based on the distribution filenames, and other information from Okumura, we may call them ar001 (or "ar v0.01"), and ar002 (or "ar v0.02").
ar was distributed mainly as source code, though most distributions of ar002 include a DOS binary.
ar001 uses its own file format, not known to be compatible with anything else. ar002 uses LHA file format.
[edit] Format details
ar's compression is based on LZ77 with static Huffman coding. ar001 by default uses a 4K history buffer, like LHA's "lh4
" method. ar002 by default uses an 8K history buffer, like "lh5
". It's unclear whether the ar compression methods are 100% compatible with the standard LHA methods, but they're at least very close.
The CRC-16 algorithm used by ar001 is different from the one used by ar002 and LHA. It seems to be equivalent to the one called "CRC-16/IBM-SDLC" by CRC RevEng.
[edit] Identifiers
Neither version of ar has a default or recommended filename extension.
A version of ar002 by T. Melconian uses the .ar extension.
[edit] Identification
ar001 files have no signature. Robust identification would probably have to involve verifying the header CRC.
For ar002, refer to LHA#Identification.
[edit] Related formats
- LZSS (Haruhiko Okumura) - same author
- LZARI - same author
- Micrognosis Compression Archiver
Formats derived from ar's compression scheme, directly or indirectly, include:
- LHA "lh5" compression
- Zoo "LZH" compression
- ARJ
- SCO compress LZH
- Disk Masher System "Heavy" compression
[edit] Specifications
For the header formats, see the comments near the beginning of the ar.c file in the corresponding distribution.
See also LHA#Format documentation.
[edit] Software
ar001:
- AR001.ZIP - Source code
- AR_EXE.ZIP - Unofficial DOS binary (untested)
ar002:
- AR002.ZIP - Source code + DOS binary
- https://oku.edu.mie-u.ac.jp/~okumura/compression/ar002/
- "AR v1.1" - ar002 with modifications by Terran Melconian (DOS binary + source code)
- Open-source library in Free Pascal
- See also LHA#Software.