Notes on ZIP format and disk spanning

One of the dark corners of ZIP file format is the "multi-segment" archive feature. By "multi-segment archive", I mean to include the disk spanning features intended for floppy disks, and the slightly more general case of "split archives", which was added to the format documentation around the year 2000. The idea is, what would normally … Continue reading Notes on ZIP format and disk spanning

Notes on some old self-extracting ZIP archives

The old PKZIP compression software for DOS includes a utility named "ZIP2EXE", which turns a plain ZIP file into a self-extracting executable file in DOS EXE format. Depending on the version of PKZIP/ZIP2EXE, and the options used, there are several different ways in which this EXE file is constructed. I wanted to learn about these … Continue reading Notes on some old self-extracting ZIP archives

Testing some LZ77 compression limits

This post is about data compression algorithms that involve LZ77, or a similar kind of compression. It's mainly about old-school compression algorithms and software. There is some information about LZ77 in my post about LZ77 prehistory. I won't explain it in detail here, but here are some things to know about it. Both the compressor … Continue reading Testing some LZ77 compression limits

Another Implode bug in old PKZIP software

In a previous post, I discussed an old PKZIP bug related to the compression method named "Implode". I'll call that bug the "MML bug", for "Minimum Match Length". [See also a later post: Bug #3.] In this post, I'll discuss another old PKZIP bug related to Implode compression, mainly just to distinguish it from that … Continue reading Another Implode bug in old PKZIP software

Investigating an UnZip decompression bug

One of the old compression methods for ZIP format is named "Shrink". In the process of writing my own Shrink decompressor, I came across a problem with the Info-ZIP UnZip software. It's triggered by a small percentage of Shrink-compressed files. As an example, I'll use the file that you can download here: BLING.WAV. Now, in … Continue reading Investigating an UnZip decompression bug

PKZIP “Implode” compression oddity

When I was researching old versions of PKZIP, I found that modern unzip programs aren't able to unzip the PKZIP v1.01 distribution file. Three of the member files inside the self-extracting ZIP file fail to decompress correctly. /cygdrive/c/dosprogs/ZIPTEST/101 $ unzip ../DIST/PKZ101.EXE exploding: README.DOC warning: 475 bytes required to uncompress to 873 bytes; supposed to require … Continue reading PKZIP “Implode” compression oddity