MS-DOS installation compression

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Format details)
Line 6: Line 6:
 
}}
 
}}
 
A pair of compression formats by Microsoft that appear on MS-DOS and early Windows (3.x) installation disks; the formats have no generally agreed-upon name. Compressed files may be generated by the COMPRESS.EXE program (appearing in Microsoft's Setup Toolkit for Visual C++), and uncompressed with the EXPAND.EXE program distributed with Windows and MS-DOS. Compressed files have the last character of the file extension replaced with an underscore, or sometimes a dollar sign.
 
A pair of compression formats by Microsoft that appear on MS-DOS and early Windows (3.x) installation disks; the formats have no generally agreed-upon name. Compressed files may be generated by the COMPRESS.EXE program (appearing in Microsoft's Setup Toolkit for Visual C++), and uncompressed with the EXPAND.EXE program distributed with Windows and MS-DOS. Compressed files have the last character of the file extension replaced with an underscore, or sometimes a dollar sign.
 
+
<!-- There are reports of the Google Chrome installer [http://festiva-yourchoice.blogspot.com/2010/01/expandexe-preventing-google-chrome-from.html needing the EXPAND.EXE program]. -->
There are reports of the Google Chrome installer [http://festiva-yourchoice.blogspot.com/2010/01/expandexe-preventing-google-chrome-from.html needing the EXPAND.EXE program].
+
  
 
== See also ==
 
== See also ==
 +
* [[Microsoft SZ installation compression]]
 +
 
This is not the only compressed file format for which the last character of the file extension might be replaced with an underscore. Others include:
 
This is not the only compressed file format for which the last character of the file extension might be replaced with an underscore. Others include:
 
* [[InstallShield installer archive]] (<code>_INST32I.EX_</code>)
 
* [[InstallShield installer archive]] (<code>_INST32I.EX_</code>)
Line 17: Line 18:
  
 
== Format details ==
 
== Format details ==
There are two major formats, which can be referred to by their file signatures: "SZDD", and "KWAJ". SZDD is more common. There is also a QBasic variant of SZDD format.
+
There are two major formats, which can be referred to by their file signatures: "SZDD", and "KWAJ". SZDD is more common. Another variant, sometimes known as "SZ", or the "QBasic variant", is covered in a separate article: [[Microsoft SZ installation compression]].
  
 
=== SZDD ===
 
=== SZDD ===
Line 40: Line 41:
  
 
== Identification ==
 
== Identification ==
File begin with bytes {{magic|53 5A 44 44 88 F0 27 33}} ("SZDD" variant), or {{magic|4B 57 41 4A 88 F0 27 D1}} ("KWAJ" variant), or {{magic|53 5A 20 88 F0 27 33 D1}} (QBasic SZDD variant).
+
File begin with bytes {{magic|53 5A 44 44 88 F0 27 33}} ("SZDD" variant), or {{magic|4B 57 41 4A 88 F0 27 D1}} ("KWAJ" variant).
  
 
== Software ==
 
== Software ==
* [http://www.cabextract.org.uk/libmspack/ libmspack] → msexpand
+
* [https://www.cabextract.org.uk/libmspack/ libmspack] → msexpand
 
* EXPAND.EXE - utility included with many versions of MS Windows and MS-DOS
 
* EXPAND.EXE - utility included with many versions of MS Windows and MS-DOS
 
* [ftp://ftp.microsoft.com/softlib/mslfiles/CP0982.EXE Setup Toolkit for Visual C++]
 
* [ftp://ftp.microsoft.com/softlib/mslfiles/CP0982.EXE Setup Toolkit for Visual C++]
Line 55: Line 56:
  
 
== Links ==
 
== Links ==
* [http://support.microsoft.com/kb/80751 Documentation in Microsoft site]
+
* [https://web.archive.org/web/20160527025701/https://support.microsoft.com/en-us/kb/80751 Documentation in Microsoft site] (archived)
* [http://www.cabextract.org.uk/libmspack/doc/szdd_kwaj_format.html SZDD and KWAJ formats description]
+
* [https://www.cabextract.org.uk/libmspack/doc/szdd_kwaj_format.html SZDD and KWAJ formats description]
  
 
[[Category:File formats with too many extensions]]
 
[[Category:File formats with too many extensions]]

Revision as of 17:22, 20 December 2022

File Format
Name MS-DOS installation compression
Ontology
Extension(s) .??_, .??$
PRONOM fmt/462, fmt/469

A pair of compression formats by Microsoft that appear on MS-DOS and early Windows (3.x) installation disks; the formats have no generally agreed-upon name. Compressed files may be generated by the COMPRESS.EXE program (appearing in Microsoft's Setup Toolkit for Visual C++), and uncompressed with the EXPAND.EXE program distributed with Windows and MS-DOS. Compressed files have the last character of the file extension replaced with an underscore, or sometimes a dollar sign.

Contents

See also

This is not the only compressed file format for which the last character of the file extension might be replaced with an underscore. Others include:

Format details

There are two major formats, which can be referred to by their file signatures: "SZDD", and "KWAJ". SZDD is more common. Another variant, sometimes known as "SZ", or the "QBasic variant", is covered in a separate article: Microsoft SZ installation compression.

SZDD

SZDD's compression format similar to Okumura's LZSS. There is a byte at offset 8 that specifies the exact type of compression. Most sources say that the only known value for this byte is "A" (0x41), but some report[1] that there is also a type "B", used by Windows 3.1 builds 026 and 034e.

KWAJ

KWAJ format is somewhat more sophisticated than SZDD. There is a 16-bit field at offset 8 that specifies the compression or encoding method.

Compression code Description
0 Uncompressed
1 XOR
2 LZSS
3 LZ77 + Huffman
4 MSZIP (based on DEFLATE)

Identification

File begin with bytes 53 5A 44 44 88 F0 27 33 ("SZDD" variant), or 4B 57 41 4A 88 F0 27 D1 ("KWAJ" variant).

Software

Sample files

Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox