168349Sobrien#------------------------------------------------------------------------------
2362844Sdelphij# $File: compress,v 1.79 2020/05/30 23:53:04 christos Exp $
368349Sobrien# compress:  file(1) magic for pure-compression formats (no archives)
468349Sobrien#
568349Sobrien# compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, etc.
668349Sobrien#
768349Sobrien# Formats for various forms of compressed data
868349Sobrien# Formats for "compress" proper have been moved into "compress.c",
968349Sobrien# because it tries to uncompress it to figure out what's inside.
1068349Sobrien
1168349Sobrien# standard unix compress
1268349Sobrien0	string		\037\235	compress'd data
13186690Sobrien!:mime	application/x-compress
14191736Sobrien!:apple	LZIVZIVU
1568349Sobrien>2	byte&0x80	>0		block compressed
1668349Sobrien>2	byte&0x1f	x		%d bits
1768349Sobrien
1868349Sobrien# gzip (GNU zip, not to be confused with Info-ZIP or PKWARE zip archiver)
19354939Sdelphij# URL: https://en.wikipedia.org/wiki/Gzip
20354939Sdelphij# Reference: https://tools.ietf.org/html/rfc1952
21354939Sdelphij# Update: Joerg Jenderek, Apr 2019
22103373Sobrien#   Edited by Chris Chittleborough <cchittleborough@yahoo.com.au>, March 2002
23103373Sobrien#	* Original filename is only at offset 10 if "extra field" absent
24103373Sobrien#	* Produce shorter output - notably, only report compression methods
25226048Sobrien#         other than 8 ("deflate", the only method defined in RFC 1952).
26354939Sdelphij# Note: find defs -iname '*.trid.xml' -exec grep -q '<Bytes>1F8B08' {} \; -ls
27354939Sdelphij# TODO:
28354939Sdelphij# FBR	Blueberry FlashBack screen Record	https://www.flashbackrecorder.com/
29354939Sdelphij# KPR	KOffice/Calligra KPresenter		application/x-kpresenter
30354939Sdelphij# KPT	KOffice/Calligra KPresenter template?	application/x-kpresenter
31354939Sdelphij# SAV	Diggles Saved Game File			http://www.innonics.com
32354939Sdelphij# SAV	FarCry (demo) saved game		http://www.farcry-thegame.com
33354939Sdelphij# DAT	ZOAGZIP game data format		http://en.wikipedia.org/wiki/SD_Gundam_Capsule_Fighter
34354939Sdelphij0       string          \037\213
35354939Sdelphij# to display gzip compressed (strength=100=2*50) before other (strength=50)?
36354939Sdelphij#!:strength * 2
37354939Sdelphij# no FNAME and FCOMMENT bit implies no file name/comment. That means only binary
38354939Sdelphij>3	byte&0x18	=0
39354939Sdelphij# For binary gzipped no ASCII text should occur
40354939Sdelphij#	mcd-monu-cad.trid.xml
41354939Sdelphij>>10	string		MCD			Monu-Cad Drawing, Component or Font
42354939Sdelphij#>>36	string		Created\ with\ MONU-CAD	
43354939Sdelphij#!:mime	application/octet-stream
44354939Sdelphij# http://fileformats.archiveteam.org/wiki/Monu-CAD
45354939Sdelphij#	http://www.monucad.com/downloads/FullDemo-2005.EXE
46354939Sdelphij#	/HANDS96.MCC	Component
47354939Sdelphij#	/DEMO_DD01.MCD	Drawing
48354939Sdelphij#	/MCALF020.FNT	Font
49354939Sdelphij!:ext	mcc/mcd/fnt
50354939Sdelphij# http://www.generalcadd.com
51354939Sdelphij>>10	string		GXD			General CADD, Drawing or Component
52354939Sdelphij#!:mime	application/octet-stream
53354939Sdelphij#	/gxc/BUILDINGEDGE.gxc			Component
54354939Sdelphij#	/gxd/HOCKETT-STPAUL-WRHSE.gxd		Drawing
55354939Sdelphij#	/gxd/POWERLAND-MILL-ADD-11.gxd		Drawing		v9.1.06
56354939Sdelphij!:ext	gxc/gxd
57354939Sdelphij#>>>13	ubyte		0			\b, version 0
58354939Sdelphij>>>13	string		09			\b, version 9
59354939Sdelphij# other gzipped binary like gzipped tar, VirtualBox extension package,...
60354939Sdelphij>>10	default		x		gzip compressed data
61360521Sdelphij!:mime	application/gzip
62354939Sdelphij>>>0	use	gzip-info
63354939Sdelphij# size of the original (uncompressed) input data modulo 2^32
64362844Sdelphij>>-0	offset		>48
65354939Sdelphij>>>-4	ulelong		x		\b, original size modulo 2^32 %u
66362844Sdelphij>>-0	offset		<48		\b, truncated
67354939Sdelphij# gzipped TAR or VirtualBox extension package
68354939Sdelphij#!:mime	application/x-compressed-tar
69354939Sdelphij#!:mime	application/x-virtualbox-vbox-extpack
70354939Sdelphij# https://www.w3.org/TR/SVG/mimereg.html
71354939Sdelphij#!:mime	image/image/svg+xml-compressed
72354939Sdelphij#	zlib.3.gz
73354939Sdelphij#	microcode-20180312.tgz
74354939Sdelphij#	tpz same as tgz
75354939Sdelphij#	lua-md5_1.2-1_i386_i486.ipk	https://en.wikipedia.org/wiki/Opkg
76354939Sdelphij#	Oracle_VM_VirtualBox_Extension_Pack-5.0.12-104815.vbox-extpack
77354939Sdelphij!:ext	gz/tgz/tpz/ipk/vbox-extpack/svgz
78354939Sdelphij# FNAME/FCOMMENT bit implies file name/comment as iso-8859-1 text
79354939Sdelphij>3	byte&0x18	>0		gzip compressed data
80354939Sdelphij!:mime	application/gzip
81354939Sdelphij# gzipped tar, gzipped Abiword document
82354939Sdelphij#!:mime	application/x-compressed-tar
83354939Sdelphij#!:mime	application/x-abiword-compressed
84354939Sdelphij#!:mime	image/image/svg+xml-compressed
85354939Sdelphij#	kleopatra_splashscreen.svgz	gzipped .svg
86354939Sdelphij!:ext	gz/tgz/tpz/zabw/svgz
87354939Sdelphij>>0	use	gzip-info
88354939Sdelphij# size of the original (uncompressed) input data modulo 2^32
89362844Sdelphij>>-0	offset		>48
90362844Sdelphij>>>-4	ulelong		x		\b, original size modulo 2^32 %u
91362844Sdelphij>>-0	offset		<48		\b, truncated
92354939Sdelphij#	display information of gzip compressed files
93354939Sdelphij0	name				gzip-info
94354939Sdelphij#>2	byte		x		THIS iS GZIP
95103373Sobrien>2	byte		<8		\b, reserved method
96103373Sobrien>2	byte		>8		\b, unknown method
97103373Sobrien>3	byte		&0x01		\b, ASCII
98159764Sobrien>3	byte		&0x02		\b, has CRC
99103373Sobrien>3	byte		&0x04		\b, extra field
100103373Sobrien>3	byte&0xC	=0x08
101103373Sobrien>>10	string		x		\b, was "%s"
102159764Sobrien>3	byte		&0x10		\b, has comment
103267843Sdelphij>3	byte		&0x20		\b, encrypted
104267843Sdelphij>4	ledate		>0		\b, last modified: %s
105267843Sdelphij>8	byte		2		\b, max compression
106267843Sdelphij>8	byte		4		\b, max speed
107159764Sobrien>9	byte		=0x00		\b, from FAT filesystem (MS-DOS, OS/2, NT)
108103373Sobrien>9	byte		=0x01		\b, from Amiga
109103373Sobrien>9	byte		=0x02		\b, from VMS
110103373Sobrien>9	byte		=0x03		\b, from Unix
111159764Sobrien>9	byte		=0x04		\b, from VM/CMS
112103373Sobrien>9	byte		=0x05		\b, from Atari
113159764Sobrien>9	byte		=0x06		\b, from HPFS filesystem (OS/2, NT)
114103373Sobrien>9	byte		=0x07		\b, from MacOS
115159764Sobrien>9	byte		=0x08		\b, from Z-System
116159764Sobrien>9	byte		=0x09		\b, from CP/M
117159764Sobrien>9	byte		=0x0A		\b, from TOPS/20
118159764Sobrien>9	byte		=0x0B		\b, from NTFS filesystem (NT)
119159764Sobrien>9	byte		=0x0C		\b, from QDOS
120159764Sobrien>9	byte		=0x0D		\b, from Acorn RISCOS
121354939Sdelphij# size of the original (uncompressed) input data modulo 2^32
122354939Sdelphij#>-4	ulelong		x		\b, original size modulo 2^32 %u
123354939Sdelphij#ERROR: line 114: non zero offset 1048572 at level 1
12468349Sobrien
12568349Sobrien# packed data, Huffman (minimum redundancy) codes on a byte-by-byte basis
12668349Sobrien0	string		\037\036	packed data
127186690Sobrien!:mime	application/octet-stream
12868349Sobrien>2	belong		>1		\b, %d characters originally
12968349Sobrien>2	belong		=1		\b, %d character originally
13068349Sobrien#
131133359Sobrien# This magic number is byte-order-independent.
132133359Sobrien0	short		0x1f1f		old packed data
133186690Sobrien!:mime	application/octet-stream
13468349Sobrien
13568349Sobrien# XXX - why *two* entries for "compacted data", one of which is
13668349Sobrien# byte-order independent, and one of which is byte-order dependent?
13768349Sobrien#
13868349Sobrien0	short		0x1fff		compacted data
139186690Sobrien!:mime	application/octet-stream
14068349Sobrien# This string is valid for SunOS (BE) and a matching "short" is listed
14168349Sobrien# in the Ultrix (LE) magic file.
14268349Sobrien0	string		\377\037	compacted data
143186690Sobrien!:mime	application/octet-stream
14468349Sobrien0	short		0145405		huf output
145186690Sobrien!:mime	application/octet-stream
14668349Sobrien
14768349Sobrien# bzip2
14868349Sobrien0	string		BZh		bzip2 compressed data
149186690Sobrien!:mime	application/x-bzip2
15068349Sobrien>3	byte		>47		\b, block size = %c00k
15168349Sobrien
152337827Seadler# bzip	a block-sorting file compressor
153337827Seadler#	by Julian Seward <sewardj@cs.man.ac.uk> and others
154337827Seadler0	string		BZ0		bzip compressed data
155337827Seadler!:mime	application/x-bzip
156337827Seadler>3	byte		>47		\b, block size = %c00k
157337827Seadler
158191736Sobrien# lzip
159191736Sobrien0	string		LZIP		lzip compressed data
160191736Sobrien!:mime application/x-lzip
161191736Sobrien>4	byte		x		\b, version: %d
162191736Sobrien
16368349Sobrien# squeeze and crunch
16468349Sobrien# Michael Haardt <michael@cantor.informatik.rwth-aachen.de>
16568349Sobrien0	beshort		0x76FF		squeezed data,
16668349Sobrien>4	string		x		original name %s
16768349Sobrien0	beshort		0x76FE		crunched data,
16868349Sobrien>2	string		x		original name %s
16968349Sobrien0	beshort		0x76FD		LZH compressed data,
17068349Sobrien>2	string		x		original name %s
17168349Sobrien
17268349Sobrien# Freeze
17368349Sobrien0	string		\037\237	frozen file 2.1
17468349Sobrien0	string		\037\236	frozen file 1.0 (or gzip 0.5)
17568349Sobrien
17668349Sobrien# SCO compress -H (LZH)
17768349Sobrien0	string		\037\240	SCO compress -H (LZH) data
17868349Sobrien
17968349Sobrien# European GSM 06.10 is a provisional standard for full-rate speech
18068349Sobrien# transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse
18168349Sobrien# excitation/long term prediction) coding at 13 kbit/s.
18268349Sobrien#
18368349Sobrien# There's only a magic nibble (4 bits); that nibble repeats every 33
18468349Sobrien# bytes.  This isn't suited for use, but maybe we can use it someday.
18568349Sobrien#
18668349Sobrien# This will cause very short GSM files to be declared as data and
18768349Sobrien# mismatches to be declared as data too!
18868349Sobrien#0	byte&0xF0	0xd0		data
18968349Sobrien#>33	byte&0xF0	0xd0
19068349Sobrien#>66	byte&0xF0	0xd0
19168349Sobrien#>99	byte&0xF0	0xd0
19268349Sobrien#>132	byte&0xF0	0xd0		GSM 06.10 compressed audio
19368349Sobrien
19468349Sobrien# lzop from <markus.oberhumer@jk.uni-linz.ac.at>
19568349Sobrien0	string		\x89\x4c\x5a\x4f\x00\x0d\x0a\x1a\x0a	lzop compressed data
19668349Sobrien>9	beshort		<0x0940
19768349Sobrien>>9	byte&0xf0	=0x00		- version 0.
19868349Sobrien>>9	beshort&0x0fff	x		\b%03x,
19968349Sobrien>>13	byte		1		LZO1X-1,
20068349Sobrien>>13	byte		2		LZO1X-1(15),
20168349Sobrien>>13	byte		3		LZO1X-999,
20268349Sobrien## >>22	bedate		>0		last modified: %s,
20368349Sobrien>>14	byte		=0x00		os: MS-DOS
20468349Sobrien>>14	byte		=0x01		os: Amiga
20568349Sobrien>>14	byte		=0x02		os: VMS
20668349Sobrien>>14	byte		=0x03		os: Unix
20768349Sobrien>>14	byte		=0x05		os: Atari
20868349Sobrien>>14	byte		=0x06		os: OS/2
20968349Sobrien>>14	byte		=0x07		os: MacOS
21068349Sobrien>>14	byte		=0x0A		os: Tops/20
21168349Sobrien>>14	byte		=0x0B		os: WinNT
21268349Sobrien>>14	byte		=0x0E		os: Win32
21368349Sobrien>9	beshort		>0x0939
21468349Sobrien>>9	byte&0xf0	=0x00		- version 0.
21568349Sobrien>>9	byte&0xf0	=0x10		- version 1.
21668349Sobrien>>9	byte&0xf0	=0x20		- version 2.
21768349Sobrien>>9	beshort&0x0fff	x		\b%03x,
21868349Sobrien>>15	byte		1		LZO1X-1,
21968349Sobrien>>15	byte		2		LZO1X-1(15),
22068349Sobrien>>15	byte		3		LZO1X-999,
22168349Sobrien## >>25	bedate		>0		last modified: %s,
22268349Sobrien>>17	byte		=0x00		os: MS-DOS
22368349Sobrien>>17	byte		=0x01		os: Amiga
22468349Sobrien>>17	byte		=0x02		os: VMS
22568349Sobrien>>17	byte		=0x03		os: Unix
22668349Sobrien>>17	byte		=0x05		os: Atari
22768349Sobrien>>17	byte		=0x06		os: OS/2
22868349Sobrien>>17	byte		=0x07		os: MacOS
22968349Sobrien>>17	byte		=0x0A		os: Tops/20
23068349Sobrien>>17	byte		=0x0B		os: WinNT
23168349Sobrien>>17	byte		=0x0E		os: Win32
232103373Sobrien
233103373Sobrien# 4.3BSD-Quasijarus Strong Compression
234354939Sdelphij# https://minnie.tuhs.org/Quasijarus/compress.html
235103373Sobrien0	string		\037\241	Quasijarus strong compressed data
236110949Sobrien
237110949Sobrien# From: Cory Dikkers <cdikkers@swbell.net>
238110949Sobrien0	string		XPKF		Amiga xpkf.library compressed data
239110949Sobrien0	string		PP11		Power Packer 1.1 compressed data
240110949Sobrien0	string		PP20		Power Packer 2.0 compressed data,
241110949Sobrien>4	belong		0x09090909	fast compression
242110949Sobrien>4	belong		0x090A0A0A	mediocre compression
243110949Sobrien>4	belong		0x090A0B0B	good compression
244110949Sobrien>4	belong		0x090A0C0C	very good compression
245110949Sobrien>4	belong		0x090A0C0D	best compression
246110949Sobrien
247159764Sobrien# 7-zip archiver, from Thomas Klausner (wiz@danbala.tuwien.ac.at)
248354939Sdelphij# https://www.7-zip.org or DOC/7zFormat.txt
249110949Sobrien#
250159764Sobrien0	string		7z\274\257\047\034	7-zip archive data,
251110949Sobrien>6	byte		x			version %d
252110949Sobrien>7	byte		x			\b.%d
253226048Sobrien!:mime	application/x-7z-compressed
254298192Sdelphij!:ext 7z/cb7
255133359Sobrien
256186690Sobrien# Type: LZMA
257234250Sobrien0	lelong&0xffffff	=0x5d
258267843Sdelphij>12	leshort		0xff			LZMA compressed data,
259267843Sdelphij!:mime	application/x-lzma
260234250Sobrien>>5	lequad		=0xffffffffffffffff	streamed
261234250Sobrien>>5	lequad		!0xffffffffffffffff	non-streamed, size %lld
262267843Sdelphij>12	leshort		0			LZMA compressed data,
263267843Sdelphij>>5	lequad		=0xffffffffffffffff	streamed
264267843Sdelphij>>5	lequad		!0xffffffffffffffff	non-streamed, size %lld
265186690Sobrien
266192348Sdelphij# http://tukaani.org/xz/xz-file-format.txt
267226048Sobrien0	ustring		\xFD7zXZ\x00		XZ compressed data
268284237Sdelphij!:strength * 2
269192348Sdelphij!:mime	application/x-xz
270192348Sdelphij
271226048Sobrien# https://github.com/ckolivas/lrzip/blob/master/doc/magic.header.txt
272226048Sobrien0	string		LRZI			LRZIP compressed data
273226048Sobrien>4	byte		x			- version %d
274226048Sobrien>5	byte		x			\b.%d
275226048Sobrien!:mime	application/x-lrzip
276226048Sobrien
277354939Sdelphij# https://fastcompression.blogspot.fi/2013/04/lz4-streaming-format-final.html
278267843Sdelphij0	lelong		0x184d2204	LZ4 compressed data (v1.4+)
279267843Sdelphij!:mime	application/x-lz4
280267843Sdelphij# Added by osm0sis@xda-developers.com
281267843Sdelphij0 	lelong		0x184c2103	LZ4 compressed data (v1.0-v1.3)
282267843Sdelphij!:mime	application/x-lz4
283267843Sdelphij0	lelong		0x184c2102	LZ4 compressed data (v0.1-v0.9)
284267843Sdelphij!:mime	application/x-lz4
285267843Sdelphij
286309847Sdelphij# Zstandard/LZ4 skippable frames
287309847Sdelphij# https://github.com/facebook/zstd/blob/dev/zstd_compression_format.md
288309847Sdelphij0         lelong&0xFFFFFFF0  0x184D2A50
289328874Seadler>(4.l+8)  indirect	x
290309847Sdelphij
291309847Sdelphij# Zstandard Dictionary ID subroutine
292309847Sdelphij0     name        zstd-dictionary-id
293309847Sdelphij# Single Segment = True
294309847Sdelphij>0    byte        &0x20   \b, Dictionary ID:
295309847Sdelphij>>0   byte&0x03   0       None
296309847Sdelphij>>0   byte&0x03   1
297309847Sdelphij>>>1  byte        x       %u
298309847Sdelphij>>0   byte&0x03   2
299309847Sdelphij>>>1  leshort     x       %u
300309847Sdelphij>>0   byte&0x03   3
301309847Sdelphij>>>1  lelong      x       %u
302309847Sdelphij# Single Segment = False
303309847Sdelphij>0    byte        ^0x20   \b, Dictionary ID:
304309847Sdelphij>>0   byte&0x03   0       None
305309847Sdelphij>>0   byte&0x03   1
306309847Sdelphij>>>2  byte        x       %u
307309847Sdelphij>>0   byte&0x03   2
308309847Sdelphij>>>2  leshort     x       %u
309309847Sdelphij>>0   byte&0x03   3
310309847Sdelphij>>>2  lelong      x       %u
311309847Sdelphij
312309847Sdelphij# Zstandard compressed data
313309847Sdelphij# https://github.com/facebook/zstd/blob/dev/zstd_compression_format.md
314309847Sdelphij0     lelong       0xFD2FB522  Zstandard compressed data (v0.2)
315360521Sdelphij!:mime  application/zstd
316309847Sdelphij0     lelong       0xFD2FB523  Zstandard compressed data (v0.3)
317360521Sdelphij!:mime  application/zstd
318309847Sdelphij0     lelong       0xFD2FB524  Zstandard compressed data (v0.4)
319360521Sdelphij!:mime  application/zstd
320309847Sdelphij0     lelong       0xFD2FB525  Zstandard compressed data (v0.5)
321360521Sdelphij!:mime  application/zstd
322309847Sdelphij0     lelong       0xFD2FB526  Zstandard compressed data (v0.6)
323360521Sdelphij!:mime  application/zstd
324309847Sdelphij0     lelong       0xFD2FB527  Zstandard compressed data (v0.7)
325360521Sdelphij!:mime  application/zstd
326309847Sdelphij>4    use          zstd-dictionary-id
327309847Sdelphij0     lelong       0xFD2FB528  Zstandard compressed data (v0.8+)
328360521Sdelphij!:mime  application/zstd
329309847Sdelphij>4    use          zstd-dictionary-id
330309847Sdelphij
331309847Sdelphij# https://github.com/facebook/zstd/blob/dev/zstd_compression_format.md
332309847Sdelphij0  lelong    0xEC30A437  Zstandard dictionary
333360521Sdelphij!:mime  application/x-std-dictionary
334309847Sdelphij>4 lelong    x           (ID %u)
335309847Sdelphij
336133359Sobrien# AFX compressed files (Wolfram Kleff)
337133359Sobrien2	string		-afx-		AFX compressed file data
338159764Sobrien
339159764Sobrien# Supplementary magic data for the file(1) command to support
340159764Sobrien# rzip(1).  The format is described in magic(5).
341159764Sobrien#
342159764Sobrien# Copyright (C) 2003 by Andrew Tridgell.  You may do whatever you want with
343159764Sobrien# this file.
344159764Sobrien#
345159764Sobrien0	string		RZIP		rzip compressed data
346159764Sobrien>4	byte		x		- version %d
347159764Sobrien>5	byte		x		\b.%d
348159764Sobrien>6	belong		x		(%d bytes)
349192348Sdelphij
350226048Sobrien0	string		ArC\x01		FreeArc archive <http://freearc.org>
351226048Sobrien
352226048Sobrien# Type:	DACT compressed files
353226048Sobrien0	long	0x444354C3	DACT compressed data
354226048Sobrien>4	byte	>-1		(version %i.
355226048Sobrien>5	byte	>-1		%i.
356226048Sobrien>6	byte	>-1		%i)
357226048Sobrien>7	long	>0		, original size: %i bytes
358226048Sobrien>15	long	>30		, block size: %i bytes
359267843Sdelphij
360267843Sdelphij# Valve Pack (VPK) files
361267843Sdelphij0	lelong	0x55aa1234	Valve Pak file
362267843Sdelphij>0x4	lelong	x		\b, version %u
363267843Sdelphij>0x8	lelong	x		\b, %u entries
364267843Sdelphij
365267843Sdelphij# Snappy framing format
366354939Sdelphij# https://code.google.com/p/snappy/source/browse/trunk/framing_format.txt
367267843Sdelphij0	string	\377\006\0\0sNaPpY	snappy framed data
368267843Sdelphij!:mime	application/x-snappy-framed
369275698Sdelphij
370354939Sdelphij# qpress, https://www.quicklz.com/
371275698Sdelphij0	string	qpress10	qpress compressed data
372275698Sdelphij!:mime	application/x-qpress
373275698Sdelphij
374275698Sdelphij# Zlib https://www.ietf.org/rfc/rfc6713.txt
375288143Sdelphij0	string/b	x
376328874Seadler>0	beshort%31	=0
377288143Sdelphij>>0	byte&0xf	=8
378288143Sdelphij>>>0	byte&0x80 	=0	zlib compressed data
379275698Sdelphij!:mime	application/zlib
380337827Seadler
381337827Seadler# BWC compression
382337827Seadler0	string		BWC
383337827Seadler>3	byte		0	BWC compressed data
384337827Seadler
385337827Seadler# UCL compression
386337827Seadler0	bequad		0x00e955434cff011a	UCL compressed data
387337827Seadler
388337827Seadler# Softlib archive
389337827Seadler0	string		SLIB	Softlib archive
390337827Seadler>4	leshort		x	\b, version %d
391337827Seadler>6	leshort		x	(contains %d files)
392337827Seadler
393337827Seadler# URL:  https://github.com/lzfse/lzfse/blob/master/src/lzfse_internal.h#L276
394337827Seadler# From: Eric Hall <eric.hall@darkart.com>
395337827Seadler0	string	bvx-	lzfse encoded, no compression
396337827Seadler0	string	bvx1	lzfse compressed, uncompressed tables
397337827Seadler0	string	bvx2	lzfse compressed, compressed tables
398337827Seadler0	string	bvxn	lzfse encoded, lzvn compressed
399362844Sdelphij
400362844Sdelphij# pcxLib.exe compression program
401362844Sdelphij# http://www.shikadi.net/moddingwiki/PCX_Library
402362844Sdelphij0	string/b	pcxLib
403362844Sdelphij>0x0A	string/b	Copyright\020(c)\020Genus\020Microprogramming,\020Inc.	pcxLib compressed
404