I've already written about two PKZIP bugs related to the "Implode" compression method. Now I've come across another one, so I guess I'll investigate it as well. Here are the first two: Bug #1 (MML)Bug #2 (v1.01 literal tree issue) There's an old collection of files called the Pier 1 Shareware CDROM (#1). On it … Continue reading PKZIP Implode bug #3
Month: February 2020
Notes on WinHelp format, part 3
This post is part of a series about WinHelp file format. Please read the other parts first: Part 1Part 2 With what we learned previously, we can decompress the TOPIC blocks, locate the TOPICLINKs, and stitch each TOPICLINK's fragments together to make each TOPICLINK a contiguous blob of bytes: A defragmented TOPICLINK is composed of … Continue reading Notes on WinHelp format, part 3
Notes on WinHelp format, part 2
This post is part of a series about WinHelp file format. Part 1 - Read this first.Part 3 The internal TOPIC file (named "|TOPIC") is the business part of the HLP file. It contains the text, and other information. To read the TOPIC file, you need to know the TOPIC "block size", which will be … Continue reading Notes on WinHelp format, part 2
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
Notes on WinHelp format, part 1
I wanted to write a program to extract the text from WinHelp .HLP files. HLP format was the standard Microsoft Windows help/documentation file format from around 1990 (the start of the Windows 3.x era), through the early 2000s. There are countless old Windows applications that come with an HLP file, but starting with Vista, Windows … Continue reading Notes on WinHelp format, part 1