LIF (Knowledge Dynamics)

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Format details)
(Format details)
Line 27: Line 27:
 
|16 || 8 || 4 || Original size
 
|16 || 8 || 4 || Original size
 
|-
 
|-
|24 || 4 || 2 || CRC of compressed data. The CRC algorithm seems to be the one named "CRC-16/IBM-3740" by the [https://reveng.sourceforge.io/crc-catalogue/16.htm CRC RevEng catalogue] (a slight variant of [[CRC-16#CRC-16/XMODEM|CRC-16/XMODEM]]).
+
|24 || 4 || 2 || CRC of compressed data ([[CRC-16#CRC-16/IBM-3740|CRC-16/IBM-3740]])
 
|-
 
|-
 
|28 || 4 || 2 || CRC of uncompressed data
 
|28 || 4 || 2 || CRC of uncompressed data

Revision as of 18:00, 29 December 2023

File Format
Name LIF (Knowledge Dynamics)
Ontology
Extension(s) .lif
Released ≤1989

.LIF is an installer-archive format, apparently associated with INSTALL for DOS, by Knowledge Dynamics Corporation. See RED (Knowledge Dynamics) for more information about INSTALL.

This article covers the LIF format that begins with a string of ASCII-encoded hex digits. Note that the presumed successor format, RED, also sometimes uses the .LIF filename extension.

Contents

Format details

File structure

A LIF file consists of a sequence of member file segments. Each member consists of a 54-byte header, then the file data, which is usually compressed.

The header starts with 34 bytes of ASCII-encoded hex digits. A filename follows. The bytes at offset 8 through 15 encode the compressed data size, which is needed to locate the next member.

Header structure

The 54-byte member header seems to have the following structure:

Offset Size (in file) Size (decoded) Description
0 8 4 DOS date, time
8 8 4 Compressed size
16 8 4 Original size
24 4 2 CRC of compressed data (CRC-16/IBM-3740)
28 4 2 CRC of uncompressed data
32 2 1 Compression method
34 20 Filename, NUL-padded. This 20-byte field might use as little as 12 bytes for the filename, with the remaining bytes having an undetermined purpose.

Compression methods

Method 1 is uncompressed. Method 2 is LZW, possibly the same as Zoo. Method 3 has been observed, but is unidentified.

FWIW, there is a "Knowledge Dynamics LZW COMPRESSOR" format that was used in some video games: [1], via [2]. However, it seems different from the LZW compression used in LIF.

Sample files

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox