1# filetypes.tcl --
2#
3#	Tcl based file type recognizer using the runtime core and
4#	generated from /usr/share/misc/magic.mime. Limited output,
5#	but only mime-types, i.e. standardized.
6#
7# Copyright (c) 2004-2005 Colin McCormack <coldstore@users.sourceforge.net>
8# Copyright (c) 2005-2006 Andreas Kupries <andreas_kupries@users.sourceforge.net>
9#
10# See the file "license.terms" for information on usage and redistribution
11# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
12#
13# RCS: @(#) $Id: filetypes.tcl,v 1.6 2006/09/27 21:19:35 andreas_kupries Exp $
14
15#####
16#
17# "mime type discriminator"
18# http://wiki.tcl.tk/12537
19#
20# Tcl code harvested on:  10 Feb 2005, 04:16 GMT
21# Wiki page last updated: ???
22#
23#####
24
25# ### ### ### ######### ######### #########
26## Requirements.
27
28package require Tcl 8.4
29package require fileutil::magic::rt    ; # We need the runtime core.
30
31# ### ### ### ######### ######### #########
32## Implementation
33
34namespace eval ::fileutil::magic {}
35
36proc ::fileutil::magic::filetype {file} {
37    if {![file exists $file]} {
38        return -code error "file not found: \"$file\""
39    }
40    if {[file isdirectory $file]} {
41	return directory
42    }
43
44    rt::open $file
45    filetype::run
46    rt::close
47    set types [rt::resultv]
48
49    if {[llength $types]} {
50	# We postprocess the data if needed, as the low-level
51	# recognizer can return duplicate information.
52
53	array set _ {}
54	set utypes  {}
55	foreach t $types {
56	    if {[info exists _($t)]} continue
57	    lappend utypes $t
58	    set _($t) .
59	    set types $utypes
60	}
61    }
62    return [join $types]
63}
64
65package provide fileutil::magic::filetype 1.0.2
66# The actual recognizer is the command below.
67
68##
69## -- Do not edit after this line !
70## -- ** BEGIN GENERATED CODE ** --
71
72package require fileutil::magic::rt
73namespace eval ::fileutil::magic::filetype {
74    namespace import ::fileutil::magic::rt::*
75}
76
77proc ::fileutil::magic::filetype::run {} {
78switch -- [Nv S 0] 518 {emit {ALAN game data}
79if {[N c 2 < 0xa]} {emit {version 2.6%d}}
80} -7408 {emit {Amiga Workbench}
81if {[N S 2 == 0x1]} {switch -- [Nv c 48] 1 {emit {disk icon}} 2 {emit {drawer icon}} 3 {emit {tool icon}} 4 {emit {project icon}} 5 {emit {garbage icon}} 6 {emit {device icon}} 7 {emit {kickstart icon}} 8 {emit {workbench application icon}}
82}
83if {[N S 2 > 0x1]} {emit {icon, vers. %d}}
84} 3840 {emit {AmigaOS bitmap font}} 3843 {emit {AmigaOS outline font}} 19937 {emit {MPEG-4 LO-EP audio stream}} 3599 {emit {Atari MSA archive data}
85if {[N S 2 x {}]} {emit {\b, %d sectors per track}}
86switch -- [Nv S 4] 0 {emit {\b, 1 sided}} 1 {emit {\b, 2 sided}}
87if {[N S 6 x {}]} {emit {\b, starting track: %d}}
88if {[N S 8 x {}]} {emit {\b, ending track: %d}}
89} 368 {emit {WE32000 COFF}
90if {[N S 18 ^ 0x10]} {emit object}
91if {[N S 18 & 0x10]} {emit executable}
92if {[N I 12 > 0x0]} {emit {not stripped}}
93if {[N S 18 ^ 0x1000]} {emit {N/A on 3b2/300 w/paging}}
94if {[N S 18 & 0x2000]} {emit {32100 required}}
95if {[N S 18 & 0x4000]} {emit {and MAU hardware required}}
96switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(pure\)}} 267 {emit {\(demand paged\)}} 291 {emit {\(target shared library\)}}
97if {[N S 22 > 0x0]} {emit {- version %ld}}
98} 369 {emit {WE32000 COFF executable \(TV\)}
99if {[N I 12 > 0x0]} {emit {not stripped}}
100} 14541 {emit {C64 PCLink Image}} 30463 {emit {squeezed data,}
101if {[S 4 x {}]} {emit {original name %s}}
102} 30462 {emit {crunched data,}
103if {[S 2 x {}]} {emit {original name %s}}
104} 30461 {emit {LZH compressed data,}
105if {[S 2 x {}]} {emit {original name %s}}
106} -32760 {emit {Lynx cartridge,}
107if {[N S 2 x {}]} {emit {RAM start $%04x}}
108if {[S 6 == BS93]} {emit 0 12 1}
109if {[N I 16 == 0x3030 &0xfe00f0f0]} {emit {Infocom game data}}
110if {[N c 0 == 0x0]} {emit {\(false match\)}}
111if {[N c 0 > 0x0]} {emit {\(Z-machine %d,}
112if {[N S 2 x {}]} {emit {Release %d /}}
113if {[S 18 x {}]} {emit {Serial %.6s\)}}
114}
115} 2935 {emit {ATSC A/52 aka AC-3 aka Dolby Digital stream,}
116switch -- [Nv c 4 &0xc0] 0 {emit {48 kHz,}} 64 {emit {44.1 kHz,}} -128 {emit {32 kHz,}} -64 {emit {reserved frequency,}}
117switch -- [Nv c 6 &0xe0] 0 {emit {1+1 front,}} 32 {emit {1 front/0 rear,}} 64 {emit {2 front/0 rear,}} 96 {emit {3 front/0 rear,}} -128 {emit {2 front/1 rear,}} -96 {emit {3 front/1 rear,}} -64 {emit {2 front/2 rear,}} -32 {emit {3 front/2 rear,}}
118switch -- [Nv c 7 &0x40] 0 {emit {LFE off,}} 64 {emit {LFE on,}}
119switch -- [Nv S 6 &0x0180] 0 {emit {Dolby Surround not indicated}} 128 {emit {not Dolby Surround encoded}} 256 {emit {Dolby Surround encoded}} 384 {emit {reserved Dolby Surround mode}}
120} 5493 {emit {fsav \(linux\) macro virus}
121if {[N s 8 > 0x0]} {emit {\(%d-}}
122if {[N c 11 > 0x0]} {emit {\b%02d-}}
123if {[N c 10 > 0x0]} {emit {\b%02d\)}}
124} -26367 {emit {GPG key public ring}} 1280 {emit {Hitachi SH big-endian COFF}
125switch -- [Nv S 18 &0x0002] 0 {emit object} 2 {emit executable}
126switch -- [Nv S 18 &0x0008] 8 {emit {\b, stripped}} 0 {emit {\b, not stripped}}
127} 351 {emit {370 XA sysV executable}
128if {[N I 12 > 0x0]} {emit {not stripped}}
129if {[N S 22 > 0x0]} {emit {- version %d}}
130if {[N I 30 > 0x0]} {emit {- 5.2 format}}
131} 346 {emit {370 XA sysV pure executable}
132if {[N I 12 > 0x0]} {emit {not stripped}}
133if {[N S 22 > 0x0]} {emit {- version %d}}
134if {[N I 30 > 0x0]} {emit {- 5.2 format}}
135} 22529 {emit {370 sysV pure executable}
136if {[N I 12 > 0x0]} {emit {not stripped}}
137} 23041 {emit {370 XA sysV pure executable}
138if {[N I 12 > 0x0]} {emit {not stripped}}
139} 23809 {emit {370 sysV executable}
140if {[N I 12 > 0x0]} {emit {not stripped}}
141} 24321 {emit {370 XA sysV executable}
142if {[N I 12 > 0x0]} {emit {not stripped}}
143} 345 {emit {SVR2 executable \(Amdahl-UTS\)}
144if {[N I 12 > 0x0]} {emit {not stripped}}
145if {[N I 24 > 0x0]} {emit {- version %ld}}
146} 348 {emit {SVR2 pure executable \(Amdahl-UTS\)}
147if {[N I 12 > 0x0]} {emit {not stripped}}
148if {[N I 24 > 0x0]} {emit {- version %ld}}
149} 344 {emit {SVR2 pure executable \(USS/370\)}
150if {[N I 12 > 0x0]} {emit {not stripped}}
151if {[N I 24 > 0x0]} {emit {- version %ld}}
152} 349 {emit {SVR2 executable \(USS/370\)}
153if {[N I 12 > 0x0]} {emit {not stripped}}
154if {[N I 24 > 0x0]} {emit {- version %ld}}
155} 407 {emit {Apollo m68k COFF executable}
156if {[N S 18 ^ 0x4000]} {emit {not stripped}}
157if {[N S 22 > 0x0]} {emit {- version %ld}}
158} 404 {emit {apollo a88k COFF executable}
159if {[N S 18 ^ 0x4000]} {emit {not stripped}}
160if {[N S 22 > 0x0]} {emit {- version %ld}}
161} 200 {emit {hp200 \(68010\) BSD}
162switch -- [Nv S 2] 263 {emit {impure binary}} 264 {emit {read-only binary}} 267 {emit {demand paged binary}}
163} 300 {emit {hp300 \(68020+68881\) BSD}
164switch -- [Nv S 2] 263 {emit {impure binary}} 264 {emit {read-only binary}} 267 {emit {demand paged binary}}
165} 479 {emit {executable \(RISC System/6000 V3.1\) or obj module}
166if {[N I 12 > 0x0]} {emit {not stripped}}
167} 260 {emit {shared library}} 261 {emit {ctab data}} -508 {emit {structured file}} 12320 {emit {character Computer Graphics Metafile}} 474 {emit {SGI image data}
168if {[N c 2 == 0x1]} {emit {\b, RLE}}
169if {[N c 3 == 0x2]} {emit {\b, high precision}}
170if {[N S 4 x {}]} {emit {\b, %d-D}}
171if {[N S 6 x {}]} {emit {\b, %d x}}
172if {[N S 8 x {}]} {emit %d}
173if {[N S 10 x {}]} {emit {\b, %d channel}}
174if {[N S 10 != 0x1]} {emit {\bs}}
175if {[S 80 > 0]} {emit {\b, \"%s\"}}
176} 4112 {emit {PEX Binary Archive}} 2560 {emit {PCX ver. 2.5 image data}} 2562 {emit {PCX ver. 2.8 image data, with palette}} 2563 {emit {PCX ver. 2.8 image data, without palette}} 2564 {emit {PCX for Windows image data}} 2565 {emit {PCX ver. 3.0 image data}
177if {[N s 4 x {}]} {emit {bounding box [%hd,}}
178if {[N s 6 x {}]} {emit {%hd] -}}
179if {[N s 8 x {}]} {emit {[%hd,}}
180if {[N s 10 x {}]} {emit %hd\],}
181if {[N c 65 > 0x1]} {emit {%d planes each of}}
182if {[N c 3 x {}]} {emit %hhd-bit}
183switch -- [Nv c 68] 0 {emit image,} 1 {emit colour,} 2 {emit grayscale,}
184if {[N c 68 > 0x2]} {emit image,}
185if {[N c 68 < 0x0]} {emit image,}
186if {[N s 12 > 0x0]} {emit {%hd x}
187if {[N s 14 x {}]} {emit {%hd dpi,}}
188}
189switch -- [Nv c 2] 0 {emit uncompressed} 1 {emit {RLE compressed}}
190} 12320 {emit {character Computer Graphics Metafile}} 21930 {emit {BIOS \(ia32\) ROM Ext.}
191if {[S 5 == USB]} {emit USB}
192if {[S 7 == LDR]} {emit {UNDI image}}
193if {[S 30 == IBM]} {emit {IBM comp. Video}}
194if {[S 26 == Adaptec]} {emit Adaptec}
195if {[S 28 == Adaptec]} {emit Adaptec}
196if {[S 42 == PROMISE]} {emit Promise}
197if {[N c 2 x {}]} {emit {\(%d*512\)}}
198} -21267 {emit {Java serialization data}
199if {[N S 2 > 0x4]} {emit {\b, version %d}}
200} -40 {emit {JPEG image data}
201if {[S 6 == JFIF]} {emit {\b, JFIF standard}
202if {[N c 11 x {}]} {emit {\b %d.}}
203if {[N c 12 x {}]} {emit {\b%02d}}
204if {[N c 18 != 0x0]} {emit {\b, thumbnail %dx}
205if {[N c 19 x {}]} {emit {\b%d}}
206}
207}
208if {[S 6 == Exif]} {emit {\b, EXIF standard}
209if {[S 12 == II]} {if {[N s 70 == 0x8769]} {if {[N s [I 78 i 14] == 0x9000]} {if {[N c [I 78 i 23] x {}]} {emit %c}
210if {[N c [I 78 i 24] x {}]} {emit {\b.%c}}
211if {[N c [I 78 i 25] != 0x30]} {emit {\b%c}}
212}
213}
214if {[N s 118 == 0x8769]} {if {[N s [I 126 i 38] == 0x9000]} {if {[N c [I 126 i 47] x {}]} {emit %c}
215if {[N c [I 126 i 48] x {}]} {emit {\b.%c}}
216if {[N c [I 126 i 49] != 0x30]} {emit {\b%c}}
217}
218}
219if {[N s 130 == 0x8769]} {if {[N s [I 138 i 38] == 0x9000]} {if {[N c [I 138 i 47] x {}]} {emit %c}
220if {[N c [I 138 i 48] x {}]} {emit {\b.%c}}
221if {[N c [I 138 i 49] != 0x30]} {emit {\b%c}}
222}
223if {[N s [I 138 i 50] == 0x9000]} {if {[N c [I 138 i 59] x {}]} {emit %c}
224if {[N c [I 138 i 60] x {}]} {emit {\b.%c}}
225if {[N c [I 138 i 61] != 0x30]} {emit {\b%c}}
226}
227if {[N s [I 138 i 62] == 0x9000]} {if {[N c [I 138 i 71] x {}]} {emit %c}
228if {[N c [I 138 i 72] x {}]} {emit {\b.%c}}
229if {[N c [I 138 i 73] != 0x30]} {emit {\b%c}}
230}
231}
232if {[N s 142 == 0x8769]} {if {[N s [I 150 i 38] == 0x9000]} {if {[N c [I 150 i 47] x {}]} {emit %c}
233if {[N c [I 150 i 48] x {}]} {emit {\b.%c}}
234if {[N c [I 150 i 49] != 0x30]} {emit {\b%c}}
235}
236if {[N s [I 150 i 50] == 0x9000]} {if {[N c [I 150 i 59] x {}]} {emit %c}
237if {[N c [I 150 i 60] x {}]} {emit {\b.%c}}
238if {[N c [I 150 i 61] != 0x30]} {emit {\b%c}}
239}
240if {[N s [I 150 i 62] == 0x9000]} {if {[N c [I 150 i 71] x {}]} {emit %c}
241if {[N c [I 150 i 72] x {}]} {emit {\b.%c}}
242if {[N c [I 150 i 73] != 0x30]} {emit {\b%c}}
243}
244}
245}
246if {[S 12 == MM]} {if {[N S 118 == 0x8769]} {if {[N S [I 126 I 14] == 0x9000]} {if {[N c [I 126 I 23] x {}]} {emit %c}
247if {[N c [I 126 I 24] x {}]} {emit {\b.%c}}
248if {[N c [I 126 I 25] != 0x30]} {emit {\b%c}}
249}
250if {[N S [I 126 I 38] == 0x9000]} {if {[N c [I 126 I 47] x {}]} {emit %c}
251if {[N c [I 126 I 48] x {}]} {emit {\b.%c}}
252if {[N c [I 126 I 49] != 0x30]} {emit {\b%c}}
253}
254}
255if {[N S 130 == 0x8769]} {if {[N S [I 138 I 38] == 0x9000]} {if {[N c [I 138 I 47] x {}]} {emit %c}
256if {[N c [I 138 I 48] x {}]} {emit {\b.%c}}
257if {[N c [I 138 I 49] != 0x30]} {emit {\b%c}}
258}
259if {[N S [I 138 I 62] == 0x9000]} {if {[N c [I 138 I 71] x {}]} {emit %c}
260if {[N c [I 138 I 72] x {}]} {emit {\b.%c}}
261if {[N c [I 138 I 73] != 0x30]} {emit {\b%c}}
262}
263}
264if {[N S 142 == 0x8769]} {if {[N S [I 150 I 50] == 0x9000]} {if {[N c [I 150 I 59] x {}]} {emit %c}
265if {[N c [I 150 I 60] x {}]} {emit {\b.%c}}
266if {[N c [I 150 I 61] != 0x30]} {emit {\b%c}}
267}
268}
269}
270}
271switch -- [Nv c [I 4 S 5]] -2 {emit {}
272if {[S [I 4 S 8] x {}]} {emit {\b, comment: \"%s\"}}
273} -64 {emit {\b, baseline}
274if {[N c [I 4 S 6] x {}]} {emit {\b, precision %d}}
275if {[N S [I 4 S 7] x {}]} {emit {\b, %dx}}
276if {[N S [I 4 S 9] x {}]} {emit {\b%d}}
277} -63 {emit {\b, extended sequential}
278if {[N c [I 4 S 6] x {}]} {emit {\b, precision %d}}
279if {[N S [I 4 S 7] x {}]} {emit {\b, %dx}}
280if {[N S [I 4 S 9] x {}]} {emit {\b%d}}
281} -62 {emit {\b, progressive}
282if {[N c [I 4 S 6] x {}]} {emit {\b, precision %d}}
283if {[N S [I 4 S 7] x {}]} {emit {\b, %dx}}
284if {[N S [I 4 S 9] x {}]} {emit {\b%d}}
285}
286} -32768 {emit {lif file}} -30875 {emit {disk quotas file}} 1286 {emit {IRIS Showcase file}
287if {[N c 2 == 0x49]} {emit -}
288if {[N c 3 x {}]} {emit {- version %ld}}
289} 550 {emit {IRIS Showcase template}
290if {[N c 2 == 0x63]} {emit -}
291if {[N c 3 x {}]} {emit {- version %ld}}
292} 352 {emit {MIPSEB ECOFF executable}
293switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(swapped\)}} 267 {emit {\(paged\)}}
294if {[N I 8 > 0x0]} {emit {not stripped}}
295if {[N I 8 == 0x0]} {emit stripped}
296if {[N c 22 x {}]} {emit {- version %ld}}
297if {[N c 23 x {}]} {emit .%ld}
298} 354 {emit {MIPSEL-BE ECOFF executable}
299switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(swapped\)}} 267 {emit {\(paged\)}}
300if {[N I 8 > 0x0]} {emit {not stripped}}
301if {[N I 8 == 0x0]} {emit stripped}
302if {[N c 23 x {}]} {emit {- version %d}}
303if {[N c 22 x {}]} {emit .%ld}
304} 24577 {emit {MIPSEB-LE ECOFF executable}
305switch -- [Nv S 20] 1793 {emit {\(impure\)}} 2049 {emit {\(swapped\)}} 2817 {emit {\(paged\)}}
306if {[N I 8 > 0x0]} {emit {not stripped}}
307if {[N I 8 == 0x0]} {emit stripped}
308if {[N c 23 x {}]} {emit {- version %d}}
309if {[N c 22 x {}]} {emit .%ld}
310} 25089 {emit {MIPSEL ECOFF executable}
311switch -- [Nv S 20] 1793 {emit {\(impure\)}} 2049 {emit {\(swapped\)}} 2817 {emit {\(paged\)}}
312if {[N I 8 > 0x0]} {emit {not stripped}}
313if {[N I 8 == 0x0]} {emit stripped}
314if {[N c 23 x {}]} {emit {- version %ld}}
315if {[N c 22 x {}]} {emit .%ld}
316} 355 {emit {MIPSEB MIPS-II ECOFF executable}
317switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(swapped\)}} 267 {emit {\(paged\)}}
318if {[N I 8 > 0x0]} {emit {not stripped}}
319if {[N I 8 == 0x0]} {emit stripped}
320if {[N c 22 x {}]} {emit {- version %ld}}
321if {[N c 23 x {}]} {emit .%ld}
322} 358 {emit {MIPSEL-BE MIPS-II ECOFF executable}
323switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(swapped\)}} 267 {emit {\(paged\)}}
324if {[N I 8 > 0x0]} {emit {not stripped}}
325if {[N I 8 == 0x0]} {emit stripped}
326if {[N c 22 x {}]} {emit {- version %ld}}
327if {[N c 23 x {}]} {emit .%ld}
328} 25345 {emit {MIPSEB-LE MIPS-II ECOFF executable}
329switch -- [Nv S 20] 1793 {emit {\(impure\)}} 2049 {emit {\(swapped\)}} 2817 {emit {\(paged\)}}
330if {[N I 8 > 0x0]} {emit {not stripped}}
331if {[N I 8 == 0x0]} {emit stripped}
332if {[N c 23 x {}]} {emit {- version %ld}}
333if {[N c 22 x {}]} {emit .%ld}
334} 26113 {emit {MIPSEL MIPS-II ECOFF executable}
335switch -- [Nv S 20] 1793 {emit {\(impure\)}} 2049 {emit {\(swapped\)}} 2817 {emit {\(paged\)}}
336if {[N I 8 > 0x0]} {emit {not stripped}}
337if {[N I 8 == 0x0]} {emit stripped}
338if {[N c 23 x {}]} {emit {- version %ld}}
339if {[N c 22 x {}]} {emit .%ld}
340} 320 {emit {MIPSEB MIPS-III ECOFF executable}
341switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(swapped\)}} 267 {emit {\(paged\)}}
342if {[N I 8 > 0x0]} {emit {not stripped}}
343if {[N I 8 == 0x0]} {emit stripped}
344if {[N c 22 x {}]} {emit {- version %ld}}
345if {[N c 23 x {}]} {emit .%ld}
346} 322 {emit {MIPSEL-BE MIPS-III ECOFF executable}
347switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(swapped\)}} 267 {emit {\(paged\)}}
348if {[N I 8 > 0x0]} {emit {not stripped}}
349if {[N I 8 == 0x0]} {emit stripped}
350if {[N c 22 x {}]} {emit {- version %ld}}
351if {[N c 23 x {}]} {emit .%ld}
352} 16385 {emit {MIPSEB-LE MIPS-III ECOFF executable}
353switch -- [Nv S 20] 1793 {emit {\(impure\)}} 2049 {emit {\(swapped\)}} 2817 {emit {\(paged\)}}
354if {[N I 8 > 0x0]} {emit {not stripped}}
355if {[N I 8 == 0x0]} {emit stripped}
356if {[N c 23 x {}]} {emit {- version %ld}}
357if {[N c 22 x {}]} {emit .%ld}
358} 16897 {emit {MIPSEL MIPS-III ECOFF executable}
359switch -- [Nv S 20] 1793 {emit {\(impure\)}} 2049 {emit {\(swapped\)}} 2817 {emit {\(paged\)}}
360if {[N I 8 > 0x0]} {emit {not stripped}}
361if {[N I 8 == 0x0]} {emit stripped}
362if {[N c 23 x {}]} {emit {- version %ld}}
363if {[N c 22 x {}]} {emit .%ld}
364} 384 {emit {MIPSEB Ucode}} 386 {emit {MIPSEL-BE Ucode}} 336 {emit {mc68k COFF}
365if {[N S 18 ^ 0x10]} {emit object}
366if {[N S 18 & 0x10]} {emit executable}
367if {[N I 12 > 0x0]} {emit {not stripped}}
368if {[S 168 == .lowmem]} {emit {Apple toolbox}}
369switch -- [Nv S 20] 263 {emit {\(impure\)}} 264 {emit {\(pure\)}} 267 {emit {\(demand paged\)}} 273 {emit {\(standalone\)}}
370} 337 {emit {mc68k executable \(shared\)}
371if {[N I 12 > 0x0]} {emit {not stripped}}
372} 338 {emit {mc68k executable \(shared demand paged\)}
373if {[N I 12 > 0x0]} {emit {not stripped}}
374} 364 {emit {68K BCS executable}} 365 {emit {88K BCS executable}} 24602 {emit {Atari 68xxx executable,}
375if {[N I 2 x {}]} {emit {text len %lu,}}
376if {[N I 6 x {}]} {emit {data len %lu,}}
377if {[N I 10 x {}]} {emit {BSS len %lu,}}
378if {[N I 14 x {}]} {emit {symboltab len %lu,}}
379if {[N I 18 == 0x0]} {emit 0 70 4}
380if {[N I 22 & 0x1]} {emit {fastload flag,}}
381if {[N I 22 & 0x2]} {emit {may be loaded to alternate RAM,}}
382if {[N I 22 & 0x4]} {emit {malloc may be from alternate RAM,}}
383if {[N I 22 x {}]} {emit {flags: 0x%lX,}}
384if {[N S 26 == 0x0]} {emit {no relocation tab}}
385if {[N S 26 != 0x0]} {emit {+ relocation tab}}
386if {[S 30 == SFX]} {emit {[Self-Extracting LZH SFX archive]}}
387if {[S 38 == SFX]} {emit {[Self-Extracting LZH SFX archive]}}
388if {[S 44 == ZIP!]} {emit {[Self-Extracting ZIP SFX archive]}}
389} 100 {emit {Atari 68xxx CPX file}
390if {[N S 8 x {}]} {emit {\(version %04lx\)}}
391} 392 {emit {Tower/XP rel 2 object}
392if {[N I 12 > 0x0]} {emit {not stripped}}
393switch -- [Nv S 20] 263 {emit executable} 264 {emit {pure executable}}
394if {[N S 22 > 0x0]} {emit {- version %ld}}
395} 397 {emit {Tower/XP rel 2 object}
396if {[N I 12 > 0x0]} {emit {not stripped}}
397switch -- [Nv S 20] 263 {emit executable} 264 {emit {pure executable}}
398if {[N S 22 > 0x0]} {emit {- version %ld}}
399} 400 {emit {Tower/XP rel 3 object}
400if {[N I 12 > 0x0]} {emit {not stripped}}
401switch -- [Nv S 20] 263 {emit executable} 264 {emit {pure executable}}
402if {[N S 22 > 0x0]} {emit {- version %ld}}
403} 405 {emit {Tower/XP rel 3 object}
404if {[N I 12 > 0x0]} {emit {not stripped}}
405switch -- [Nv S 20] 263 {emit executable} 264 {emit {pure executable}}
406if {[N S 22 > 0x0]} {emit {- version %ld}}
407} 408 {emit {Tower32/600/400 68020 object}
408if {[N I 12 > 0x0]} {emit {not stripped}}
409switch -- [Nv S 20] 263 {emit executable} 264 {emit {pure executable}}
410if {[N S 22 > 0x0]} {emit {- version %ld}}
411} 416 {emit {Tower32/800 68020}
412if {[N S 18 & 0x2000]} {emit {w/68881 object}}
413if {[N S 18 & 0x4000]} {emit {compatible object}}
414if {[N S 18 & 0xffff9fff]} {emit object}
415switch -- [Nv S 20] 263 {emit executable} 267 {emit {pure executable}}
416if {[N I 12 > 0x0]} {emit {not stripped}}
417if {[N S 22 > 0x0]} {emit {- version %ld}}
418} 421 {emit {Tower32/800 68010}
419if {[N S 18 & 0x4000]} {emit {compatible object}}
420if {[N S 18 & 0xffff9fff]} {emit object}
421switch -- [Nv S 20] 263 {emit executable} 267 {emit {pure executable}}
422if {[N I 12 > 0x0]} {emit {not stripped}}
423if {[N S 22 > 0x0]} {emit {- version %ld}}
424} -30771 {emit {OS9/6809 module:}
425switch -- [Nv c 6 &0x0f] 0 {emit non-executable} 1 {emit {machine language}} 2 {emit {BASIC I-code}} 3 {emit {Pascal P-code}} 4 {emit {C I-code}} 5 {emit {COBOL I-code}} 6 {emit {Fortran I-code}}
426switch -- [Nv c 6 &0xf0] 16 {emit {program executable}} 32 {emit subroutine} 48 {emit multi-module} 64 {emit {data module}} -64 {emit {system module}} -48 {emit {file manager}} -32 {emit {device driver}} -16 {emit {device descriptor}}
427} 19196 {emit {OS9/68K module:}
428if {[N c 20 == 0x80 &0x80]} {emit re-entrant}
429if {[N c 20 == 0x40 &0x40]} {emit ghost}
430if {[N c 20 == 0x20 &0x20]} {emit system-state}
431switch -- [Nv c 19] 1 {emit {machine language}} 2 {emit {BASIC I-code}} 3 {emit {Pascal P-code}} 4 {emit {C I-code}} 5 {emit {COBOL I-code}} 6 {emit {Fortran I-code}}
432switch -- [Nv c 18] 1 {emit {program executable}} 2 {emit subroutine} 3 {emit multi-module} 4 {emit {data module}} 11 {emit {trap library}} 12 {emit {system module}} 13 {emit {file manager}} 14 {emit {device driver}} 15 {emit {device descriptor}}
433} -26368 {emit {PGP key public ring}} -27391 {emit {PGP key security ring}} -27392 {emit {PGP key security ring}} -23040 {emit {PGP encrypted data}} -4693 {emit {}
434if {[N S 2 == 0xeedb]} {emit RPM
435if {[N c 4 x {}]} {emit v%d}
436switch -- [Nv S 6] 0 {emit bin} 1 {emit src}
437switch -- [Nv S 8] 1 {emit i386} 2 {emit Alpha} 3 {emit Sparc} 4 {emit MIPS} 5 {emit PowerPC} 6 {emit 68000} 7 {emit SGI} 8 {emit RS6000} 9 {emit IA64} 10 {emit Sparc64} 11 {emit MIPSel} 12 {emit ARM}
438if {[S 10 x {}]} {emit %s}
439}
440} -1279 {emit {QDOS object}
441if {[S 2 x {} p]} {emit '%s'}
442} -511 {emit {MySQL table definition file}
443if {[N c 2 x {}]} {emit {Version %d}}
444} 378 {emit {amd 29k coff noprebar executable}} 890 {emit {amd 29k coff prebar executable}} -8185 {emit {amd 29k coff archive}}
445if {[S 0 == {TADS2\ bin}]} {emit TADS
446if {[N I 9 != 0xa0d1a00]} {emit {game data, CORRUPTED}}
447if {[N I 9 == 0xa0d1a00]} {if {[S 13 x {}]} {emit {%s game data}}
448}
449}
450if {[S 0 == {TADS2\ rsc}]} {emit TADS
451if {[N I 9 != 0xa0d1a00]} {emit {resource data, CORRUPTED}}
452if {[N I 9 == 0xa0d1a00]} {if {[S 13 x {}]} {emit {%s resource data}}
453}
454}
455if {[S 0 == {TADS2\ save/g}]} {emit TADS
456if {[N I 12 != 0xa0d1a00]} {emit {saved game data, CORRUPTED}}
457if {[N I 12 == 0xa0d1a00]} {if {[S [I 16 s 32] x {}]} {emit {%s saved game data}}
458}
459}
460if {[S 0 == {TADS2\ save}]} {emit TADS
461if {[N I 10 != 0xa0d1a00]} {emit {saved game data, CORRUPTED}}
462if {[N I 10 == 0xa0d1a00]} {if {[S 14 x {}]} {emit {%s saved game data}}
463}
464}
465switch -- [Nv i 0] -1010055483 {emit {RISC OS Chunk data}
466if {[S 12 == OBJ_]} {emit {\b, AOF object}}
467if {[S 12 == LIB_]} {emit {\b, ALF library}}
468} 65389 {emit {very old VAX archive}} 65381 {emit {old VAX archive}
469if {[S 8 == __.SYMDEF]} {emit {random library}}
470} 236525 {emit {PDP-11 old archive}} 236526 {emit {PDP-11 4.0 archive}} 6583086 {emit {DEC audio data:}
471switch -- [Nv i 12] 1 {emit {8-bit ISDN mu-law,}} 2 {emit {8-bit linear PCM [REF-PCM],}} 3 {emit {16-bit linear PCM,}} 4 {emit {24-bit linear PCM,}} 5 {emit {32-bit linear PCM,}} 6 {emit {32-bit IEEE floating point,}} 7 {emit {64-bit IEEE floating point,}} 23 {emit {8-bit ISDN mu-law compressed \(CCITT G.721 ADPCM voice data encoding\),}}
472switch -- [Nv I 12] 8 {emit {Fragmented sample data,}} 10 {emit {DSP program,}} 11 {emit {8-bit fixed point,}} 12 {emit {16-bit fixed point,}} 13 {emit {24-bit fixed point,}} 14 {emit {32-bit fixed point,}} 18 {emit {16-bit linear with emphasis,}} 19 {emit {16-bit linear compressed,}} 20 {emit {16-bit linear with emphasis and compression,}} 21 {emit {Music kit DSP commands,}} 24 {emit {compressed \(8-bit CCITT G.722 ADPCM\)}} 25 {emit {compressed \(3-bit CCITT G.723.3 ADPCM\),}} 26 {emit {compressed \(5-bit CCITT G.723.5 ADPCM\),}} 27 {emit {8-bit A-law \(CCITT G.711\),}}
473switch -- [Nv i 20] 1 {emit mono,} 2 {emit stereo,} 4 {emit quad,}
474if {[N i 16 > 0x0]} {emit {%d Hz}}
475} 204 {emit {386 compact demand paged pure executable}
476if {[N i 16 > 0x0]} {emit {not stripped}}
477if {[N c 32 == 0x6a]} {emit {\(uses shared libs\)}}
478} 263 {emit {386 executable}
479if {[N i 16 > 0x0]} {emit {not stripped}}
480if {[N c 32 == 0x6a]} {emit {\(uses shared libs\)}}
481} 264 {emit {386 pure executable}
482if {[N i 16 > 0x0]} {emit {not stripped}}
483if {[N c 32 == 0x6a]} {emit {\(uses shared libs\)}}
484} 267 {emit {386 demand paged pure executable}
485if {[N i 16 > 0x0]} {emit {not stripped}}
486if {[N c 32 == 0x6a]} {emit {\(uses shared libs\)}}
487} 324508366 {emit {GNU dbm 1.x or ndbm database, little endian}} 340322 {emit {Berkeley DB 1.85/1.86}
488if {[N i 4 > 0x0]} {emit {\(Btree, version %d, little-endian\)}}
489} -109248628 {emit {SE Linux policy}
490if {[N i 16 x {}]} {emit v%d}
491if {[N i 20 == 0x1]} {emit MLS}
492if {[N i 24 x {}]} {emit {%d symbols}}
493if {[N i 28 x {}]} {emit {%d ocons}}
494} 453186358 {emit {Netboot image,}
495if {[N i 4 == 0x0 &0xFFFFFF00]} {switch -- [Nv i 4 &0x100] 0 {emit {mode 2}} 256 {emit {mode 3}}
496}
497if {[N i 4 != 0x0 &0xFFFFFF00]} {emit {unknown mode}}
498} 684539205 {emit {Linux Compressed ROM File System data, little endian}
499if {[N i 4 x {}]} {emit {size %d}}
500if {[N i 8 & 0x1]} {emit {version \#2}}
501if {[N i 8 & 0x2]} {emit sorted_dirs}
502if {[N i 8 & 0x4]} {emit hole_support}
503if {[N i 32 x {}]} {emit {CRC 0x%x,}}
504if {[N i 36 x {}]} {emit {edition %d,}}
505if {[N i 40 x {}]} {emit {%d blocks,}}
506if {[N i 44 x {}]} {emit {%d files}}
507} 876099889 {emit {Linux Journalled Flash File system, little endian}} -536798843 {emit {Linux jffs2 filesystem data little endian}} 4 {emit {X11 SNF font data, LSB first}} 1279543401 {emit {ld.so hints file \(Little Endian}
508if {[N i 4 > 0x0]} {emit {\b, version %d\)}}
509if {[N I 4 <= 0x0]} {emit {\b\)}}
510} 1638399 {emit {GEM Metafile data}
511if {[N s 4 x {}]} {emit {version %d}}
512} 987654321 {emit {DCX multi-page PCX image data}} -681629056 {emit {Cineon image data}
513if {[N I 200 > 0x0]} {emit {\b, %ld x}}
514if {[N I 204 > 0x0]} {emit %ld}
515} 20000630 {emit {OpenEXR image data}} 6553863 {emit {Linux/i386 impure executable \(OMAGIC\)}
516if {[N i 16 == 0x0]} {emit {\b, stripped}}
517} 6553864 {emit {Linux/i386 pure executable \(NMAGIC\)}
518if {[N i 16 == 0x0]} {emit {\b, stripped}}
519} 6553867 {emit {Linux/i386 demand-paged executable \(ZMAGIC\)}
520if {[N i 16 == 0x0]} {emit {\b, stripped}}
521} 6553804 {emit {Linux/i386 demand-paged executable \(QMAGIC\)}
522if {[N i 16 == 0x0]} {emit {\b, stripped}}
523} 336851773 {emit {SYSLINUX' LSS16 image data}
524if {[N s 4 x {}]} {emit {\b, width %d}}
525if {[N s 6 x {}]} {emit {\b, height %d}}
526} -249691108 {emit {magic binary file for file\(1\) cmd}
527if {[N i 4 x {}]} {emit {\(version %d\) \(little endian\)}}
528} 574529400 {emit {Transport Neutral Encapsulation Format}} -21555 {emit {MLSSA datafile,}
529if {[N s 4 x {}]} {emit {algorithm %d,}}
530if {[N i 10 x {}]} {emit {%d samples}}
531} 134769520 {emit {TurboC BGI file}} 134761296 {emit {TurboC Font file}} 76 {emit {}
532if {[N i 4 == 0x21401]} {emit {Windows shortcut file}}
533} 1313096225 {emit {Microsoft Outlook binary email folder}} 220991 {emit {Windows 3.x help file}} 263 {emit {a.out NetBSD little-endian object file}
534if {[N i 16 > 0x0]} {emit {not stripped}}
535} 459141 {emit {ECOFF NetBSD/alpha binary}
536switch -- [Nv s 10] 1 {emit {not stripped}} 0 {emit stripped}
537} 33645 {emit {PDP-11 single precision APL workspace}} 33644 {emit {PDP-11 double precision APL workspace}} 268435511 {emit {Psion Series 5}
538switch -- [Nv i 4] 268435513 {emit {font file}} 268435514 {emit {printer driver}} 268435515 {emit clipboard} 268435522 {emit {multi-bitmap image}} 268435562 {emit {application infomation file}} 268435565 {emit {}
539switch -- [Nv i 8] 268435581 {emit {sketch image}} 268435582 {emit {voice note}} 268435583 {emit {word file}} 268435589 {emit {OPL program}} 268435592 {emit {sheet file}} 268435908 {emit {EasyFax initialisation file}}
540} 268435571 {emit {OPO module}} 268435572 {emit {OPL application}} 268435594 {emit {exported multi-bitmap image}}
541} 268435521 {emit {Psion Series 5 ROM multi-bitmap image}} 268435536 {emit {Psion Series 5}
542switch -- [Nv i 4] 268435565 {emit database} 268435684 {emit {ini file}}
543} 268435577 {emit {Psion Series 5 binary:}
544switch -- [Nv i 4] 0 {emit DLL} 268435529 {emit {comms hardware library}} 268435530 {emit {comms protocol library}} 268435549 {emit OPX} 268435564 {emit application} 268435597 {emit DLL} 268435628 {emit {logical device driver}} 268435629 {emit {physical device driver}} 268435685 {emit {file transfer protocol}} 268435685 {emit {file transfer protocol}} 268435776 {emit {printer defintion}} 268435777 {emit {printer defintion}}
545} 268435578 {emit {Psion Series 5 executable}} 234 {emit {BALANCE NS32000 .o}
546if {[N i 16 > 0x0]} {emit {not stripped}}
547if {[N i 124 > 0x0]} {emit {version %ld}}
548} 4330 {emit {BALANCE NS32000 executable \(0 @ 0\)}
549if {[N i 16 > 0x0]} {emit {not stripped}}
550if {[N i 124 > 0x0]} {emit {version %ld}}
551} 8426 {emit {BALANCE NS32000 executable \(invalid @ 0\)}
552if {[N i 16 > 0x0]} {emit {not stripped}}
553if {[N i 124 > 0x0]} {emit {version %ld}}
554} 12522 {emit {BALANCE NS32000 standalone executable}
555if {[N i 16 > 0x0]} {emit {not stripped}}
556if {[N i 124 > 0x0]} {emit {version %ld}}
557} 320013059 {emit {SpeedShop data file}} 16922978 {emit {mdbm file, version 0 \(obsolete\)}} -1582119980 {emit {tcpdump capture file \(little-endian\)}
558if {[N s 4 x {}]} {emit {- version %d}}
559if {[N s 6 x {}]} {emit {\b.%d}}
560switch -- [Nv i 20] 0 {emit {\(No link-layer encapsulation}} 1 {emit {\(Ethernet}} 2 {emit {\(3Mb Ethernet}} 3 {emit {\(AX.25}} 4 {emit {\(ProNET}} 5 {emit {\(CHAOS}} 6 {emit {\(Token Ring}} 7 {emit {\(ARCNET}} 8 {emit {\(SLIP}} 9 {emit {\(PPP}} 10 {emit {\(FDDI}} 11 {emit {\(RFC 1483 ATM}} 12 {emit {\(raw IP}} 13 {emit {\(BSD/OS SLIP}} 14 {emit {\(BSD/OS PPP}} 19 {emit {\(Linux ATM Classical IP}} 50 {emit {\(PPP or Cisco HDLC}} 51 {emit {\(PPP-over-Ethernet}} 99 {emit {\(Symantec Enterprise Firewall}} 100 {emit {\(RFC 1483 ATM}} 101 {emit {\(raw IP}} 102 {emit {\(BSD/OS SLIP}} 103 {emit {\(BSD/OS PPP}} 104 {emit {\(BSD/OS Cisco HDLC}} 105 {emit {\(802.11}} 106 {emit {\(Linux Classical IP over ATM}} 107 {emit {\(Frame Relay}} 108 {emit {\(OpenBSD loopback}} 109 {emit {\(OpenBSD IPsec encrypted}} 112 {emit {\(Cisco HDLC}} 113 {emit {\(Linux \"cooked\"}} 114 {emit {\(LocalTalk}} 117 {emit {\(OpenBSD PFLOG}} 119 {emit {\(802.11 with Prism header}} 122 {emit {\(RFC 2625 IP over Fibre Channel}} 123 {emit {\(SunATM}} 127 {emit {\(802.11 with radiotap header}} 129 {emit {\(Linux ARCNET}} 138 {emit {\(Apple IP over IEEE 1394}} 140 {emit {\(MTP2}} 141 {emit {\(MTP3}} 143 {emit {\(DOCSIS}} 144 {emit {\(IrDA}} 147 {emit {\(Private use 0}} 148 {emit {\(Private use 1}} 149 {emit {\(Private use 2}} 150 {emit {\(Private use 3}} 151 {emit {\(Private use 4}} 152 {emit {\(Private use 5}} 153 {emit {\(Private use 6}} 154 {emit {\(Private use 7}} 155 {emit {\(Private use 8}} 156 {emit {\(Private use 9}} 157 {emit {\(Private use 10}} 158 {emit {\(Private use 11}} 159 {emit {\(Private use 12}} 160 {emit {\(Private use 13}} 161 {emit {\(Private use 14}} 162 {emit {\(Private use 15}} 163 {emit {\(802.11 with AVS header}}
561if {[N i 16 x {}]} {emit {\b, capture length %d\)}}
562} -1582117580 {emit {extended tcpdump capture file \(little-endian\)}
563if {[N s 4 x {}]} {emit {- version %d}}
564if {[N s 6 x {}]} {emit {\b.%d}}
565switch -- [Nv i 20] 0 {emit {\(No link-layer encapsulation}} 1 {emit {\(Ethernet}} 2 {emit {\(3Mb Ethernet}} 3 {emit {\(AX.25}} 4 {emit {\(ProNET}} 5 {emit {\(CHAOS}} 6 {emit {\(Token Ring}} 7 {emit {\(ARCNET}} 8 {emit {\(SLIP}} 9 {emit {\(PPP}} 10 {emit {\(FDDI}} 11 {emit {\(RFC 1483 ATM}} 12 {emit {\(raw IP}} 13 {emit {\(BSD/OS SLIP}} 14 {emit {\(BSD/OS PPP}}
566if {[N i 16 x {}]} {emit {\b, capture length %d\)}}
567} 33647 {emit {VAX single precision APL workspace}} 33646 {emit {VAX double precision APL workspace}} 263 {emit {VAX executable}
568if {[N i 16 > 0x0]} {emit {not stripped}}
569} 264 {emit {VAX pure executable}
570if {[N i 16 > 0x0]} {emit {not stripped}}
571} 267 {emit {VAX demand paged pure executable}
572if {[N i 16 > 0x0]} {emit {not stripped}}
573} 272 {emit {VAX demand paged \(first page unmapped\) pure executable}
574if {[N i 16 > 0x0]} {emit {not stripped}}
575} 518 {emit b.out
576if {[N s 30 & 0x10]} {emit overlay}
577if {[N s 30 & 0x2]} {emit separate}
578if {[N s 30 & 0x4]} {emit pure}
579if {[N s 30 & 0x800]} {emit segmented}
580if {[N s 30 & 0x400]} {emit standalone}
581if {[N s 30 & 0x1]} {emit executable}
582if {[N s 30 ^ 0x1]} {emit {object file}}
583if {[N s 30 & 0x4000]} {emit V2.3}
584if {[N s 30 & 0x8000]} {emit V3.0}
585if {[N c 28 & 0x4]} {emit 86}
586if {[N c 28 & 0xb]} {emit 186}
587if {[N c 28 & 0x9]} {emit 286}
588if {[N c 28 & 0x29]} {emit 286}
589if {[N c 28 & 0xa]} {emit 386}
590if {[N s 30 & 0x4]} {emit {Large Text}}
591if {[N s 30 & 0x2]} {emit {Large Data}}
592if {[N s 30 & 0x102]} {emit {Huge Objects Enabled}}
593}
594if {[N i 16 == 0xef000011]} {emit {RISC OS AIF executable}}
595if {[S 0 == Draw]} {emit {RISC OS Draw file data}}
596if {[S 0 == {FONT\0}]} {emit {RISC OS outline font data,}
597if {[N c 5 x {}]} {emit {version %d}}
598}
599if {[S 0 == {FONT\1}]} {emit {RISC OS 1bpp font data,}
600if {[N c 5 x {}]} {emit {version %d}}
601}
602if {[S 0 == {FONT\4}]} {emit {RISC OS 4bpp font data}
603if {[N c 5 x {}]} {emit {version %d}}
604}
605if {[S 0 == {Maestro\r}]} {emit {RISC OS music file}
606if {[N c 8 x {}]} {emit {version %d}}
607}
608switch -- [Nv s 0] 21020 {emit {COFF DSP21k}
609if {[N i 18 & 0x2]} {emit executable,}
610if {[N i 18 ^ 0x2]} {if {[N i 18 & 0x1]} {emit {static object,}}
611if {[N i 18 ^ 0x1]} {emit {relocatable object,}}
612}
613if {[N i 18 & 0x8]} {emit stripped}
614if {[N i 18 ^ 0x8]} {emit {not stripped}}
615} 387 {emit {COFF format alpha}
616if {[N s 22 != 0x2000 &030000]} {emit executable}
617switch -- [Nv s 24] 264 {emit pure} 267 {emit paged} 263 {emit object}
618if {[N s 22 != 0x0 &020000]} {emit {dynamically linked}}
619if {[N i 16 != 0x0]} {emit {not stripped}}
620if {[N i 16 == 0x0]} {emit stripped}
621if {[N s 22 == 0x2000 &030000]} {emit {shared library}}
622if {[N c 27 x {}]} {emit {- version %d}}
623if {[N c 26 x {}]} {emit .%d}
624if {[N c 28 x {}]} {emit -%d}
625} -147 {emit {very old PDP-11 archive}} -155 {emit {old PDP-11 archive}
626if {[S 8 == __.SYMDEF]} {emit {random library}}
627} -5536 {emit {ARJ archive data}
628if {[N c 5 x {}]} {emit {\b, v%d,}}
629if {[N c 8 & 0x4]} {emit multi-volume,}
630if {[N c 8 & 0x10]} {emit slash-switched,}
631if {[N c 8 & 0x20]} {emit backup,}
632if {[S 34 x {}]} {emit {original name: %s,}}
633switch -- [Nv c 7] 0 {emit {os: MS-DOS}} 1 {emit {os: PRIMOS}} 2 {emit {os: Unix}} 3 {emit {os: Amiga}} 4 {emit {os: Macintosh}} 5 {emit {os: OS/2}} 6 {emit {os: Apple ][ GS}} 7 {emit {os: Atari ST}} 8 {emit {os: NeXT}} 9 {emit {os: VAX/VMS}}
634if {[N c 3 > 0x0]} {emit %d\]}
635} -5247 {emit {PRCS packaged project}} 387 {emit {COFF format alpha}
636if {[N s 22 & 0x1000 &020000]} {emit {sharable library,}}
637if {[N s 22 ^ 0x1000 &020000]} {emit {dynamically linked,}}
638switch -- [Nv s 24] 264 {emit pure} 267 {emit {demand paged}}
639if {[N i 8 > 0x0]} {emit {executable or object module, not stripped}}
640if {[N i 8 == 0x0]} {if {[N i 12 == 0x0]} {emit {executable or object module, stripped}}
641if {[N i 12 > 0x0]} {emit {executable or object module, not stripped}}
642}
643if {[N c 27 > 0x0]} {emit {- version %d.}}
644if {[N c 26 > 0x0]} {emit %d-}
645if {[N s 28 > 0x0]} {emit %d}
646} 392 {emit {Alpha compressed COFF}} 399 {emit {Alpha u-code object}} 6532 {emit {Linux old jffs2 filesystem data little endian}} 1360 {emit {Hitachi SH little-endian COFF}
647switch -- [Nv s 18 &0x0002] 0 {emit object} 2 {emit executable}
648switch -- [Nv s 18 &0x0008] 8 {emit {\b, stripped}} 0 {emit {\b, not stripped}}
649} -13230 {emit {RLE image data,}
650if {[N s 6 x {}]} {emit {%d x}}
651if {[N s 8 x {}]} {emit %d}
652if {[N s 2 > 0x0]} {emit {\b, lower left corner: %d}}
653if {[N s 4 > 0x0]} {emit {\b, lower right corner: %d}}
654if {[N c 10 == 0x1 &0x1]} {emit {\b, clear first}}
655if {[N c 10 == 0x2 &0x2]} {emit {\b, no background}}
656if {[N c 10 == 0x4 &0x4]} {emit {\b, alpha channel}}
657if {[N c 10 == 0x8 &0x8]} {emit {\b, comment}}
658if {[N c 11 > 0x0]} {emit {\b, %d color channels}}
659if {[N c 12 > 0x0]} {emit {\b, %d bits per pixel}}
660if {[N c 13 > 0x0]} {emit {\b, %d color map channels}}
661} 322 {emit {basic-16 executable}
662if {[N i 12 > 0x0]} {emit {not stripped}}
663} 323 {emit {basic-16 executable \(TV\)}
664if {[N i 12 > 0x0]} {emit {not stripped}}
665} 328 {emit {x86 executable}
666if {[N i 12 > 0x0]} {emit {not stripped}}
667} 329 {emit {x86 executable \(TV\)}
668if {[N i 12 > 0x0]} {emit {not stripped}}
669} 330 {emit {iAPX 286 executable small model \(COFF\)}
670if {[N i 12 > 0x0]} {emit {not stripped}}
671} 338 {emit {iAPX 286 executable large model \(COFF\)}
672if {[N i 12 > 0x0]} {emit {not stripped}}
673} 332 {emit {80386 COFF executable}
674if {[N i 12 > 0x0]} {emit {not stripped}}
675if {[N s 22 > 0x0]} {emit {- version %ld}}
676} 1078 {emit {Linux/i386 PC Screen Font data,}
677switch -- [Nv c 2] 0 {emit {256 characters, no directory,}} 1 {emit {512 characters, no directory,}} 2 {emit {256 characters, Unicode directory,}} 3 {emit {512 characters, Unicode directory,}}
678if {[N c 3 > 0x0]} {emit 8x%d}
679} 387 {emit {ECOFF alpha}
680switch -- [Nv s 24] 263 {emit executable} 264 {emit pure} 267 {emit {demand paged}}
681if {[N Q 8 > 0x0]} {emit {not stripped}}
682if {[N Q 8 == 0x0]} {emit stripped}
683if {[N s 23 > 0x0]} {emit {- version %ld.}}
684} 332 {emit {MS Windows COFF Intel 80386 object file}} 358 {emit {MS Windows COFF MIPS R4000 object file}} 388 {emit {MS Windows COFF Alpha object file}} 616 {emit {MS Windows COFF Motorola 68000 object file}} 496 {emit {MS Windows COFF PowerPC object file}} 656 {emit {MS Windows COFF PA-RISC object file}} 6 {emit {DBase 3 index file}} -24712 {emit TNEF} 263 {emit {PDP-11 executable}
685if {[N s 8 > 0x0]} {emit {not stripped}}
686if {[N c 15 > 0x0]} {emit {- version %ld}}
687} 257 {emit {PDP-11 UNIX/RT ldp}} 261 {emit {PDP-11 old overlay}} 264 {emit {PDP-11 pure executable}
688if {[N s 8 > 0x0]} {emit {not stripped}}
689if {[N c 15 > 0x0]} {emit {- version %ld}}
690} 265 {emit {PDP-11 separate I&D executable}
691if {[N s 8 > 0x0]} {emit {not stripped}}
692if {[N c 15 > 0x0]} {emit {- version %ld}}
693} 287 {emit {PDP-11 kernel overlay}} 267 {emit {PDP-11 demand-paged pure executable}
694if {[N s 8 > 0x0]} {emit {not stripped}}
695} 280 {emit {PDP-11 overlaid pure executable}
696if {[N s 8 > 0x0]} {emit {not stripped}}
697} 281 {emit {PDP-11 overlaid separate executable}
698if {[N s 8 > 0x0]} {emit {not stripped}}
699} 4843 {emit {SYMMETRY i386 .o}
700if {[N i 16 > 0x0]} {emit {not stripped}}
701if {[N i 124 > 0x0]} {emit {version %ld}}
702} 8939 {emit {SYMMETRY i386 executable \(0 @ 0\)}
703if {[N i 16 > 0x0]} {emit {not stripped}}
704if {[N i 124 > 0x0]} {emit {version %ld}}
705} 13035 {emit {SYMMETRY i386 executable \(invalid @ 0\)}
706if {[N i 16 > 0x0]} {emit {not stripped}}
707if {[N i 124 > 0x0]} {emit {version %ld}}
708} 17131 {emit {SYMMETRY i386 standalone executable}
709if {[N i 16 > 0x0]} {emit {not stripped}}
710if {[N i 124 > 0x0]} {emit {version %ld}}
711} 21020 {emit {SHARC COFF binary}
712if {[N s 2 > 0x1]} {emit {, %hd sections}
713if {[N i 12 > 0x0]} {emit {, not stripped}}
714}
715} 4097 {emit {LANalyzer capture file}} 4103 {emit {LANalyzer capture file}} 376 {emit {VAX COFF executable}
716if {[N i 12 > 0x0]} {emit {not stripped}}
717if {[N s 22 > 0x0]} {emit {- version %ld}}
718} 381 {emit {VAX COFF pure executable}
719if {[N i 12 > 0x0]} {emit {not stripped}}
720if {[N s 22 > 0x0]} {emit {- version %ld}}
721} -155 {emit x.out
722if {[S 2 == __.SYMDEF]} {emit randomized}
723if {[N c 0 x {}]} {emit archive}
724} 518 {emit {Microsoft a.out}
725if {[N s 8 == 0x1]} {emit {Middle model}}
726if {[N s 30 & 0x10]} {emit overlay}
727if {[N s 30 & 0x2]} {emit separate}
728if {[N s 30 & 0x4]} {emit pure}
729if {[N s 30 & 0x800]} {emit segmented}
730if {[N s 30 & 0x400]} {emit standalone}
731if {[N s 30 & 0x8]} {emit fixed-stack}
732if {[N c 28 & 0x80]} {emit byte-swapped}
733if {[N c 28 & 0x40]} {emit word-swapped}
734if {[N i 16 > 0x0]} {emit not-stripped}
735if {[N s 30 ^ 0xc000]} {emit pre-SysV}
736if {[N s 30 & 0x4000]} {emit V2.3}
737if {[N s 30 & 0x8000]} {emit V3.0}
738if {[N c 28 & 0x4]} {emit 86}
739if {[N c 28 & 0xb]} {emit 186}
740if {[N c 28 & 0x9]} {emit 286}
741if {[N c 28 & 0xa]} {emit 386}
742if {[N c 31 < 0x40]} {emit {small model}}
743switch -- [Nv c 31] 72 {emit {large model	}} 73 {emit {huge model}}
744if {[N s 30 & 0x1]} {emit executable}
745if {[N s 30 ^ 0x1]} {emit {object file}}
746if {[N s 30 & 0x40]} {emit {Large Text}}
747if {[N s 30 & 0x20]} {emit {Large Data}}
748if {[N s 30 & 0x120]} {emit {Huge Objects Enabled}}
749if {[N i 16 > 0x0]} {emit {not stripped}}
750} 320 {emit {old Microsoft 8086 x.out}
751if {[N c 3 & 0x4]} {emit separate}
752if {[N c 3 & 0x2]} {emit pure}
753if {[N c 0 & 0x1]} {emit executable}
754if {[N c 0 ^ 0x1]} {emit relocatable}
755if {[N i 20 > 0x0]} {emit {not stripped}}
756} 1408 {emit {XENIX 8086 relocatable or 80286 small model}}
757switch -- [Nv Y 0] 381 {emit {CLIPPER COFF executable \(VAX \#\)}
758switch -- [Nv Y 20] 263 {emit {\(impure\)}} 264 {emit {\(5.2 compatible\)}} 265 {emit {\(pure\)}} 267 {emit {\(demand paged\)}} 291 {emit {\(target shared library\)}}
759if {[N Q 12 > 0x0]} {emit {not stripped}}
760if {[N Y 22 > 0x0]} {emit {- version %ld}}
761} 383 {emit {CLIPPER COFF executable}
762switch -- [Nv Y 18 &074000] 0 {emit {C1 R1}} 2048 {emit {C2 R1}} 4096 {emit {C3 R1}} 30720 {emit TEST}
763switch -- [Nv Y 20] 263 {emit {\(impure\)}} 264 {emit {\(pure\)}} 265 {emit {\(separate I&D\)}} 267 {emit {\(paged\)}} 291 {emit {\(target shared library\)}}
764if {[N Q 12 > 0x0]} {emit {not stripped}}
765if {[N Y 22 > 0x0]} {emit {- version %ld}}
766if {[N Q 48 == 0x1 &01]} {emit {alignment trap enabled}}
767switch -- [Nv c 52] 1 {emit -Ctnc} 2 {emit -Ctsw} 3 {emit -Ctpw} 4 {emit -Ctcb}
768switch -- [Nv c 53] 1 {emit -Cdnc} 2 {emit -Cdsw} 3 {emit -Cdpw} 4 {emit -Cdcb}
769switch -- [Nv c 54] 1 {emit -Csnc} 2 {emit -Cssw} 3 {emit -Cspw} 4 {emit -Cscb}
770} 272 {emit {0420 Alliant virtual executable}
771if {[N Y 2 & 0x20]} {emit {common library}}
772if {[N Q 16 > 0x0]} {emit {not stripped}}
773} 273 {emit {0421 Alliant compact executable}
774if {[N Y 2 & 0x20]} {emit {common library}}
775if {[N Q 16 > 0x0]} {emit {not stripped}}
776} 29127 {emit {cpio archive}} -14479 {emit {byte-swapped cpio archive}} -147 {emit {very old PDP-11 archive}} -155 {emit {old PDP-11 archive}} 1793 {emit {VAX-order 68K Blit \(standalone\) executable}} 262 {emit {VAX-order2 68k Blit mpx/mux executable}} 1537 {emit {VAX-order 68k Blit mpx/mux executable}} 7967 {emit {old packed data}} 8191 {emit {compacted data}} -13563 {emit {huf output}} 1281 {emit {locale data table}
777switch -- [Nv Y 6] 36 {emit {for MIPS}} 64 {emit {for Alpha}}
778} 340 {emit Encore
779switch -- [Nv Y 20] 263 {emit executable} 264 {emit {pure executable}} 267 {emit {demand-paged executable}} 271 {emit {unsupported executable}}
780if {[N Q 12 > 0x0]} {emit {not stripped}}
781if {[N Y 22 > 0x0]} {emit {- version %ld}}
782if {[N Y 22 == 0x0]} {emit -}
783} 341 {emit {Encore unsupported executable}
784if {[N Q 12 > 0x0]} {emit {not stripped}}
785if {[N Y 22 > 0x0]} {emit {- version %ld}}
786if {[N Y 22 == 0x0]} {emit -}
787} 286 {emit {Berkeley vfont data}} 7681 {emit {byte-swapped Berkeley vfont data}} 256 {emit {raw G3 data, byte-padded}} 5120 {emit {raw G3 data}} 373 {emit {i386 COFF object}} 10775 {emit {\"compact bitmap\" format \(Poskanzer\)}} 601 {emit {mumps avl global}
788if {[N c 2 > 0x0]} {emit {\(V%d\)}}
789if {[N c 6 > 0x0]} {emit {with %d byte name}}
790if {[N c 7 > 0x0]} {emit {and %d byte data cells}}
791} 602 {emit {mumps blt global}
792if {[N c 2 > 0x0]} {emit {\(V%d\)}}
793if {[N Y 8 > 0x0]} {emit {- %d byte blocks}}
794switch -- [Nv c 15] 0 {emit {- P/D format}} 1 {emit {- P/K/D format}} 2 {emit {- K/D format}}
795if {[N c 15 > 0x2]} {emit {- Bad Flags}}
796} 10012 {emit {Sendmail frozen configuration}
797if {[S 16 x {}]} {emit {- version %s}}
798} -16162 {emit {Compiled PSI \(v1\) data}} -16166 {emit {Compiled PSI \(v2\) data}
799if {[S 3 x {}]} {emit {\(%s\)}}
800} -21846 {emit {SoftQuad DESC or font file binary}
801if {[N Y 2 > 0x0]} {emit {- version %d}}
802} 283 {emit {Curses screen image}} 284 {emit {Curses screen image}} 263 {emit {unknown machine executable}
803if {[N Y 8 > 0x0]} {emit {not stripped}}
804if {[N c 15 > 0x0]} {emit {- version %ld}}
805} 264 {emit {unknown pure executable}
806if {[N Y 8 > 0x0]} {emit {not stripped}}
807if {[N c 15 > 0x0]} {emit {- version %ld}}
808} 265 {emit {PDP-11 separate I&D}
809if {[N Y 8 > 0x0]} {emit {not stripped}}
810if {[N c 15 > 0x0]} {emit {- version %ld}}
811} 267 {emit {unknown pure executable}
812if {[N Y 8 > 0x0]} {emit {not stripped}}
813if {[N c 15 > 0x0]} {emit {- version %ld}}
814} 392 {emit {Perkin-Elmer executable}} 21845 {emit {VISX image file}
815switch -- [Nv c 2] 0 {emit {\(zero\)}} 1 {emit {\(unsigned char\)}} 2 {emit {\(short integer\)}} 3 {emit {\(float 32\)}} 4 {emit {\(float 64\)}} 5 {emit {\(signed char\)}} 6 {emit {\(bit-plane\)}} 7 {emit {\(classes\)}} 8 {emit {\(statistics\)}} 10 {emit {\(ascii text\)}} 15 {emit {\(image segments\)}} 100 {emit {\(image set\)}} 101 {emit {\(unsigned char vector\)}} 102 {emit {\(short integer vector\)}} 103 {emit {\(float 32 vector\)}} 104 {emit {\(float 64 vector\)}} 105 {emit {\(signed char vector\)}} 106 {emit {\(bit plane vector\)}} 121 {emit {\(feature vector\)}} 122 {emit {\(feature vector library\)}} 124 {emit {\(chain code\)}} 126 {emit {\(bit vector\)}} -126 {emit {\(graph\)}} -125 {emit {\(adjacency graph\)}} -124 {emit {\(adjacency graph library\)}}
816if {[S 2 == .VISIX]} {emit {\(ascii text\)}}
817}
818if {[S 4 == pipe]} {emit {CLIPPER instruction trace}}
819if {[S 4 == prof]} {emit {CLIPPER instruction profile}}
820switch -- [Nv I 0] 1936484385 {emit {Allegro datafile \(packed\)}} 1936484398 {emit {Allegro datafile \(not packed/autodetect\)}} 1936484395 {emit {Allegro datafile \(appended exe data\)}} 1018 {emit {AmigaOS shared library}} 1011 {emit {AmigaOS loadseg\(\)ble executable/binary}} 999 {emit {AmigaOS object/library data}} -2147479551 {emit {AmigaOS outline tag}} 1 {emit {JVT NAL sequence}
821if {[N c 4 == 0x7 &0x1F]} {emit {\b, H.264 video}
822switch -- [Nv c 5] 66 {emit {\b, baseline}} 77 {emit {\b, main}} 88 {emit {\b, extended}}
823if {[N c 7 x {}]} {emit {\b @ L %u}}
824}
825} 807842421 {emit {Microsoft ASF}} 333312 {emit {AppleSingle encoded Macintosh file}} 333319 {emit {AppleDouble encoded Macintosh file}} 1711210496 {emit {VAX 3.0 archive}} 1013019198 {emit {VAX 5.0 archive}} 1314148939 {emit {MultiTrack sound data}
826if {[N I 4 x {}]} {emit {- version %ld}}
827} 779248125 {emit {RealAudio sound file}} 1688404224 {emit {IRCAM file \(VAX\)}} 1688404480 {emit {IRCAM file \(Sun\)}} 1688404736 {emit {IRCAM file \(MIPS little-endian\)}} 1688404992 {emit {IRCAM file \(NeXT\)}} 1125466468 {emit {X64 Image}} -12432129 {emit {WRAptor packer \(c64\)}} 554074152 {emit {Sega Dreamcast VMU game image}} 931151890 {emit {V64 Nintendo 64 ROM dump}} 327 {emit {Convex old-style object}
828if {[N I 16 > 0x0]} {emit {not stripped}}
829} 331 {emit {Convex old-style demand paged executable}
830if {[N I 16 > 0x0]} {emit {not stripped}}
831} 333 {emit {Convex old-style pre-paged executable}
832if {[N I 16 > 0x0]} {emit {not stripped}}
833} 335 {emit {Convex old-style pre-paged, non-swapped executable}
834if {[N I 16 > 0x0]} {emit {not stripped}}
835} 70231 {emit {Core file}} 385 {emit {Convex SOFF}
836if {[N I 88 == 0x0 &0x000f0000]} {emit c1}
837if {[N I 88 & 0x10000]} {emit c2}
838if {[N I 88 & 0x20000]} {emit c2mp}
839if {[N I 88 & 0x40000]} {emit parallel}
840if {[N I 88 & 0x80000]} {emit intrinsic}
841if {[N I 88 & 0x1]} {emit {demand paged}}
842if {[N I 88 & 0x2]} {emit pre-paged}
843if {[N I 88 & 0x4]} {emit non-swapped}
844if {[N I 88 & 0x8]} {emit POSIX}
845if {[N I 84 & 0x80000000]} {emit executable}
846if {[N I 84 & 0x40000000]} {emit object}
847if {[N I 84 == 0x0 &0x20000000]} {emit {not stripped}}
848switch -- [Nv I 84 &0x18000000] 0 {emit {native fpmode}} 268435456 {emit {ieee fpmode}} 402653184 {emit {undefined fpmode}}
849} 389 {emit {Convex SOFF core}} 391 {emit {Convex SOFF checkpoint}
850if {[N I 88 == 0x0 &0x000f0000]} {emit c1}
851if {[N I 88 & 0x10000]} {emit c2}
852if {[N I 88 & 0x20000]} {emit c2mp}
853if {[N I 88 & 0x40000]} {emit parallel}
854if {[N I 88 & 0x80000]} {emit intrinsic}
855if {[N I 88 & 0x8]} {emit POSIX}
856switch -- [Nv I 84 &0x18000000] 0 {emit {native fpmode}} 268435456 {emit {ieee fpmode}} 402653184 {emit {undefined fpmode}}
857} 324508366 {emit {GNU dbm 1.x or ndbm database, big endian}} 398689 {emit {Berkeley DB}
858switch -- [Nv I 8] 4321 {emit {}
859if {[N I 4 > 0x2]} {emit 1.86}
860if {[N I 4 < 0x3]} {emit 1.85}
861if {[N I 4 > 0x0]} {emit {\(Hash, version %d, big-endian\)}}
862} 1234 {emit {}
863if {[N I 4 > 0x2]} {emit 1.86}
864if {[N I 4 < 0x3]} {emit 1.85}
865if {[N I 4 > 0x0]} {emit {\(Hash, version %d, native byte-order\)}}
866}
867} 340322 {emit {Berkeley DB 1.85/1.86}
868if {[N I 4 > 0x0]} {emit {\(Btree, version %d, big-endian\)}}
869} 9994 {emit {ESRI Shapefile}
870if {[N I 4 == 0x0]} {emit 16 34 0}
871if {[N I 8 == 0x0]} {emit 16 34 1}
872if {[N I 12 == 0x0]} {emit 16 34 2}
873if {[N I 16 == 0x0]} {emit 16 34 3}
874if {[N I 20 == 0x0]} {emit 16 34 4}
875if {[N i 28 x {}]} {emit {version %d}}
876if {[N I 24 x {}]} {emit {length %d}}
877switch -- [Nv i 32] 0 {emit {type Null Shape}} 1 {emit {type Point}} 3 {emit {type PolyLine}} 5 {emit {type Polygon}} 8 {emit {type MultiPoint}} 11 {emit {type PointZ}} 13 {emit {type PolyLineZ}} 15 {emit {type PolygonZ}} 18 {emit {type MultiPointZ}} 21 {emit {type PointM}} 23 {emit {type PolyLineM}} 25 {emit {type PolygonM}} 28 {emit {type MultiPointM}} 31 {emit {type MultiPatch}}
878} 199600449 {emit {SGI disk label \(volume header\)}} 1481003842 {emit {SGI XFS filesystem data}
879if {[N I 4 x {}]} {emit {\(blksz %d,}}
880if {[N S 104 x {}]} {emit {inosz %d,}}
881if {[N S 100 ^ 0x2004]} {emit {v1 dirs\)}}
882if {[N S 100 & 0x2004]} {emit {v2 dirs\)}}
883} 684539205 {emit {Linux Compressed ROM File System data, big endian}
884if {[N I 4 x {}]} {emit {size %d}}
885if {[N I 8 & 0x1]} {emit {version \#2}}
886if {[N I 8 & 0x2]} {emit sorted_dirs}
887if {[N I 8 & 0x4]} {emit hole_support}
888if {[N I 32 x {}]} {emit {CRC 0x%x,}}
889if {[N I 36 x {}]} {emit {edition %d,}}
890if {[N I 40 x {}]} {emit {%d blocks,}}
891if {[N I 44 x {}]} {emit {%d files}}
892} 876099889 {emit {Linux Journalled Flash File system, big endian}} 654645590 {emit {PPCBoot image}
893if {[S 4 == PPCBoot]} {if {[S 12 x {}]} {emit {version %s}}
894}
895} 4 {emit {X11 SNF font data, MSB first}} 335698201 {emit {libGrx font data,}
896if {[N s 8 x {}]} {emit %dx}
897if {[N s 10 x {}]} {emit {\b%d}}
898if {[S 40 x {}]} {emit %s}
899} -12169394 {emit {DOS code page font data collection}} 1279543401 {emit {ld.so hints file \(Big Endian}
900if {[N I 4 > 0x0]} {emit {\b, version %d\)}}
901if {[N I 4 <= 0x0]} {emit {\b\)}}
902} -951729837 {emit GEOS
903switch -- [Nv c 40] 1 {emit executable} 2 {emit VMFile} 3 {emit binary} 4 {emit {directory label}}
904if {[N c 40 < 0x1]} {emit unknown}
905if {[N c 40 > 0x4]} {emit unknown}
906if {[S 4 x {}]} {emit {\b, name \"%s\"}}
907} 235082497 {emit {Hierarchical Data Format \(version 4\) data}} 34603270 {emit {PA-RISC1.1 relocatable object}} 34603271 {emit {PA-RISC1.1 executable}
908if {[N I 168 & 0x4]} {emit {dynamically linked}}
909if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
910if {[N I 96 > 0x0]} {emit {- not stripped}}
911} 34603272 {emit {PA-RISC1.1 shared executable}
912if {[N I 168 == 0x4 &0x4]} {emit {dynamically linked}}
913if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
914if {[N I 96 > 0x0]} {emit {- not stripped}}
915} 34603275 {emit {PA-RISC1.1 demand-load executable}
916if {[N I 168 == 0x4 &0x4]} {emit {dynamically linked}}
917if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
918if {[N I 96 > 0x0]} {emit {- not stripped}}
919} 34603278 {emit {PA-RISC1.1 shared library}
920if {[N I 96 > 0x0]} {emit {- not stripped}}
921} 34603277 {emit {PA-RISC1.1 dynamic load library}
922if {[N I 96 > 0x0]} {emit {- not stripped}}
923} 34865414 {emit {PA-RISC2.0 relocatable object}} 34865415 {emit {PA-RISC2.0 executable}
924if {[N I 168 & 0x4]} {emit {dynamically linked}}
925if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
926if {[N I 96 > 0x0]} {emit {- not stripped}}
927} 34865416 {emit {PA-RISC2.0 shared executable}
928if {[N I 168 & 0x4]} {emit {dynamically linked}}
929if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
930if {[N I 96 > 0x0]} {emit {- not stripped}}
931} 34865419 {emit {PA-RISC2.0 demand-load executable}
932if {[N I 168 & 0x4]} {emit {dynamically linked}}
933if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
934if {[N I 96 > 0x0]} {emit {- not stripped}}
935} 34865422 {emit {PA-RISC2.0 shared library}
936if {[N I 96 > 0x0]} {emit {- not stripped}}
937} 34865421 {emit {PA-RISC2.0 dynamic load library}
938if {[N I 96 > 0x0]} {emit {- not stripped}}
939} 34275590 {emit {PA-RISC1.0 relocatable object}} 34275591 {emit {PA-RISC1.0 executable}
940if {[N I 168 == 0x4 &0x4]} {emit {dynamically linked}}
941if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
942if {[N I 96 > 0x0]} {emit {- not stripped}}
943} 34275592 {emit {PA-RISC1.0 shared executable}
944if {[N I 168 == 0x4 &0x4]} {emit {dynamically linked}}
945if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
946if {[N I 96 > 0x0]} {emit {- not stripped}}
947} 34275595 {emit {PA-RISC1.0 demand-load executable}
948if {[N I 168 == 0x4 &0x4]} {emit {dynamically linked}}
949if {[N I [I 144 Q 0] == 0x54ef630]} {emit {dynamically linked}}
950if {[N I 96 > 0x0]} {emit {- not stripped}}
951} 34275598 {emit {PA-RISC1.0 shared library}
952if {[N I 96 > 0x0]} {emit {- not stripped}}
953} 34275597 {emit {PA-RISC1.0 dynamic load library}
954if {[N I 96 > 0x0]} {emit {- not stripped}}
955} 557605234 {emit {archive file}
956switch -- [Nv I 68] 34276889 {emit {- PA-RISC1.0 relocatable library}} 34604569 {emit {- PA-RISC1.1 relocatable library}} 34670105 {emit {- PA-RISC1.2 relocatable library}} 34866713 {emit {- PA-RISC2.0 relocatable library}}
957} 34341128 {emit {HP s200 pure executable}
958if {[N S 4 > 0x0]} {emit {- version %ld}}
959if {[N I 8 & 0x80000000]} {emit {save fp regs}}
960if {[N I 8 & 0x40000000]} {emit {dynamically linked}}
961if {[N I 8 & 0x20000000]} {emit debuggable}
962if {[N I 36 > 0x0]} {emit {not stripped}}
963} 34341127 {emit {HP s200 executable}
964if {[N S 4 > 0x0]} {emit {- version %ld}}
965if {[N I 8 & 0x80000000]} {emit {save fp regs}}
966if {[N I 8 & 0x40000000]} {emit {dynamically linked}}
967if {[N I 8 & 0x20000000]} {emit debuggable}
968if {[N I 36 > 0x0]} {emit {not stripped}}
969} 34341131 {emit {HP s200 demand-load executable}
970if {[N S 4 > 0x0]} {emit {- version %ld}}
971if {[N I 8 & 0x80000000]} {emit {save fp regs}}
972if {[N I 8 & 0x40000000]} {emit {dynamically linked}}
973if {[N I 8 & 0x20000000]} {emit debuggable}
974if {[N I 36 > 0x0]} {emit {not stripped}}
975} 34341126 {emit {HP s200 relocatable executable}
976if {[N S 4 > 0x0]} {emit {- version %ld}}
977if {[N S 6 > 0x0]} {emit {- highwater %d}}
978if {[N I 8 & 0x80000000]} {emit {save fp regs}}
979if {[N I 8 & 0x20000000]} {emit debuggable}
980if {[N I 8 & 0x10000000]} {emit PIC}
981} 34210056 {emit {HP s200 \(2.x release\) pure executable}
982if {[N S 4 > 0x0]} {emit {- version %ld}}
983if {[N I 36 > 0x0]} {emit {not stripped}}
984} 34210055 {emit {HP s200 \(2.x release\) executable}
985if {[N S 4 > 0x0]} {emit {- version %ld}}
986if {[N I 36 > 0x0]} {emit {not stripped}}
987} 34341134 {emit {HP s200 shared library}
988if {[N S 4 > 0x0]} {emit {- version %ld}}
989if {[N S 6 > 0x0]} {emit {- highwater %d}}
990if {[N I 36 > 0x0]} {emit {not stripped}}
991} 34341133 {emit {HP s200 dynamic load library}
992if {[N S 4 > 0x0]} {emit {- version %ld}}
993if {[N S 6 > 0x0]} {emit {- highwater %d}}
994if {[N I 36 > 0x0]} {emit {not stripped}}
995} 505 {emit {AIX compiled message catalog}} 1504078485 {emit {Sun raster image data}
996if {[N I 4 > 0x0]} {emit {\b, %d x}}
997if {[N I 8 > 0x0]} {emit %d,}
998if {[N I 12 > 0x0]} {emit %d-bit,}
999switch -- [Nv I 20] 0 {emit {old format,}} 2 {emit compressed,} 3 {emit RGB,} 4 {emit TIFF,} 5 {emit IFF,} 65535 {emit {reserved for testing,}}
1000switch -- [Nv I 24] 0 {emit {no colormap}} 1 {emit {RGB colormap}} 2 {emit {raw colormap}}
1001} 65544 {emit {GEM Image data}
1002if {[N S 12 x {}]} {emit {%d x}}
1003if {[N S 14 x {}]} {emit %d,}
1004if {[N S 4 x {}]} {emit {%d planes,}}
1005if {[N S 8 x {}]} {emit {%d x}}
1006if {[N S 10 x {}]} {emit {%d pixelsize}}
1007} 235082497 {emit {Hierarchical Data Format \(version 4\) data}} -889275714 {emit {compiled Java class data,}
1008if {[N S 6 x {}]} {emit {version %d.}}
1009if {[N S 4 x {}]} {emit {\b%d}}
1010} -1195374706 {emit {Linux kernel}
1011if {[S 483 == Loading]} {emit {version 1.3.79 or older}}
1012if {[S 489 == Loading]} {emit {from prehistoric times}}
1013} 1330597709 {emit {User-mode Linux COW file}
1014if {[N I 4 x {}]} {emit {\b, version %d}}
1015if {[S 8 x {}]} {emit {\b, backing file %s}}
1016} -1195374706 {emit Linux
1017if {[N I 486 == 0x454c4b53]} {emit {ELKS Kernel}}
1018if {[N I 486 != 0x454c4b53]} {emit {style boot sector}}
1019} -889275714 {emit {Mach-O fat file}
1020if {[N I 4 == 0x1]} {emit {with 1 architecture}}
1021if {[N I 4 > 0x1]} {if {[N I 4 x {}]} {emit {with %ld architectures		}}
1022}
1023} -17958194 {emit Mach-O
1024switch -- [Nv I 12] 1 {emit object} 2 {emit executable} 3 {emit {shared library}} 4 {emit core} 5 {emit {preload executable}} 6 {emit {dynamically linked shared library}} 7 {emit {dynamic linker}} 8 {emit bundle}
1025if {[N I 12 > 0x8]} {if {[N I 12 x {}]} {emit filetype=%ld}
1026}
1027if {[N I 4 < 0x0]} {if {[N I 4 x {}]} {emit architecture=%ld}
1028}
1029switch -- [Nv I 4] 1 {emit vax} 2 {emit romp} 3 {emit architecture=3} 4 {emit ns32032} 5 {emit ns32332} 6 {emit {for m68k architecture}
1030switch -- [Nv I 8] 2 {emit {\(mc68040\)}} 3 {emit {\(mc68030 only\)}}
1031} 7 {emit i386} 8 {emit mips} 9 {emit ns32532} 10 {emit architecture=10} 11 {emit {hp pa-risc}} 12 {emit acorn} 13 {emit m88k} 14 {emit sparc} 15 {emit i860-big} 16 {emit i860} 17 {emit rs6000} 18 {emit ppc}
1032if {[N I 4 > 0x12]} {if {[N I 4 x {}]} {emit architecture=%ld}
1033}
1034} -249691108 {emit {magic binary file for file\(1\) cmd}
1035if {[N I 4 x {}]} {emit {\(version %d\) \(big endian\)}}
1036} 440786851 {emit {}
1037if {[N S 5 == 0x4282]} {if {[S 8 == matroska]} {emit {Matroska data}}
1038}
1039} 263 {emit {old SGI 68020 executable}} 264 {emit {old SGI 68020 pure executable}} 1396917837 {emit {IRIS Showcase file}
1040if {[N c 4 x {}]} {emit {- version %ld}}
1041} 1413695053 {emit {IRIS Showcase template}
1042if {[N c 4 x {}]} {emit {- version %ld}}
1043} -559039810 {emit {IRIX Parallel Arena}
1044if {[N I 8 > 0x0]} {emit {- version %ld}}
1045} -559043152 {emit {IRIX core dump}
1046if {[N I 4 == 0x1]} {emit of}
1047if {[S 16 x {}]} {emit '%s'}
1048} -559043264 {emit {IRIX 64-bit core dump}
1049if {[N I 4 == 0x1]} {emit of}
1050if {[S 16 x {}]} {emit '%s'}
1051} -1161903941 {emit {IRIX N32 core dump}
1052if {[N I 4 == 0x1]} {emit of}
1053if {[S 16 x {}]} {emit '%s'}
1054} 834535424 {emit {Microsoft Word Document}} 6656 {emit {Lotus 1-2-3}
1055switch -- [Nv I 4] 1049600 {emit {wk3 document data}} 34604032 {emit {wk4 document data}} 125829376 {emit {fm3 or fmb document data}} 125829120 {emit {fm3 or fmb document data}}
1056} 512 {emit {Lotus 1-2-3}
1057switch -- [Nv I 4] 100926976 {emit {wk1 document data}} 109052416 {emit {fmt document data}}
1058} -976170042 {emit {DOS EPS Binary File}
1059if {[N Q 4 > 0x0]} {emit {Postscript starts at byte %d}
1060if {[N Q 8 > 0x0]} {emit {length %d}
1061if {[N Q 12 > 0x0]} {emit {Metafile starts at byte %d}
1062if {[N Q 16 > 0x0]} {emit {length %d}}
1063}
1064if {[N Q 20 > 0x0]} {emit {TIFF starts at byte %d}
1065if {[N Q 24 > 0x0]} {emit {length %d}}
1066}
1067}
1068}
1069} 263 {emit {a.out NetBSD big-endian object file}
1070if {[N I 16 > 0x0]} {emit {not stripped}}
1071} 326773060 {emit {NeWS bitmap font}} 326773063 {emit {NeWS font family}} 326773072 {emit {scalable OpenFont binary}} 326773073 {emit {encrypted scalable OpenFont binary}} 263 {emit {Plan 9 executable, Motorola 68k}} 491 {emit {Plan 9 executable, Intel 386}} 583 {emit {Plan 9 executable, Intel 960}} 683 {emit {Plan 9 executable, SPARC}} 1031 {emit {Plan 9 executable, MIPS R3000}} 1163 {emit {Plan 9 executable, AT&T DSP 3210}} 1303 {emit {Plan 9 executable, MIPS R4000 BE}} 1451 {emit {Plan 9 executable, AMD 29000}} 1607 {emit {Plan 9 executable, ARM 7-something}} 1771 {emit {Plan 9 executable, PowerPC}} 1943 {emit {Plan 9 executable, MIPS R4000 LE}} 2123 {emit {Plan 9 executable, DEC Alpha}} -976170042 {emit {DOS EPS Binary File}
1072if {[N Q 4 > 0x0]} {emit {Postscript starts at byte %d}
1073if {[N Q 8 > 0x0]} {emit {length %d}
1074if {[N Q 12 > 0x0]} {emit {Metafile starts at byte %d}
1075if {[N Q 16 > 0x0]} {emit {length %d}}
1076}
1077if {[N Q 20 > 0x0]} {emit {TIFF starts at byte %d}
1078if {[N Q 24 > 0x0]} {emit {length %d}}
1079}
1080}
1081}
1082} 518517022 {emit {Pulsar POP3 daemon mailbox cache file.}
1083if {[N I 4 x {}]} {emit {Version: %d.}}
1084if {[N I 8 x {}]} {emit {\b%d}}
1085} -1722938102 {emit {python 1.5/1.6 byte-compiled}} -2017063670 {emit {python 2.0 byte-compiled}} 720047370 {emit {python 2.1 byte-compiled}} 770510090 {emit {python 2.2 byte-compiled}} 1005718794 {emit {python 2.3 byte-compiled}} 1257963521 {emit {QL plugin-ROM data,}
1086if {[S 9 == {\0} p]} {emit un-named}
1087if {[S 9 x {} p]} {emit {named: %s}}
1088} -1582119980 {emit {tcpdump capture file \(big-endian\)}
1089if {[N S 4 x {}]} {emit {- version %d}}
1090if {[N S 6 x {}]} {emit {\b.%d}}
1091switch -- [Nv I 20] 0 {emit {\(No link-layer encapsulation}} 1 {emit {\(Ethernet}} 2 {emit {\(3Mb Ethernet}} 3 {emit {\(AX.25}} 4 {emit {\(ProNET}} 5 {emit {\(CHAOS}} 6 {emit {\(Token Ring}} 7 {emit {\(BSD ARCNET}} 8 {emit {\(SLIP}} 9 {emit {\(PPP}} 10 {emit {\(FDDI}} 11 {emit {\(RFC 1483 ATM}} 12 {emit {\(raw IP}} 13 {emit {\(BSD/OS SLIP}} 14 {emit {\(BSD/OS PPP}} 19 {emit {\(Linux ATM Classical IP}} 50 {emit {\(PPP or Cisco HDLC}} 51 {emit {\(PPP-over-Ethernet}} 99 {emit {\(Symantec Enterprise Firewall}} 100 {emit {\(RFC 1483 ATM}} 101 {emit {\(raw IP}} 102 {emit {\(BSD/OS SLIP}} 103 {emit {\(BSD/OS PPP}} 104 {emit {\(BSD/OS Cisco HDLC}} 105 {emit {\(802.11}} 106 {emit {\(Linux Classical IP over ATM}} 107 {emit {\(Frame Relay}} 108 {emit {\(OpenBSD loopback}} 109 {emit {\(OpenBSD IPsec encrypted}} 112 {emit {\(Cisco HDLC}} 113 {emit {\(Linux \"cooked\"}} 114 {emit {\(LocalTalk}} 117 {emit {\(OpenBSD PFLOG}} 119 {emit {\(802.11 with Prism header}} 122 {emit {\(RFC 2625 IP over Fibre Channel}} 123 {emit {\(SunATM}} 127 {emit {\(802.11 with radiotap header}} 129 {emit {\(Linux ARCNET}} 138 {emit {\(Apple IP over IEEE 1394}} 140 {emit {\(MTP2}} 141 {emit {\(MTP3}} 143 {emit {\(DOCSIS}} 144 {emit {\(IrDA}} 147 {emit {\(Private use 0}} 148 {emit {\(Private use 1}} 149 {emit {\(Private use 2}} 150 {emit {\(Private use 3}} 151 {emit {\(Private use 4}} 152 {emit {\(Private use 5}} 153 {emit {\(Private use 6}} 154 {emit {\(Private use 7}} 155 {emit {\(Private use 8}} 156 {emit {\(Private use 9}} 157 {emit {\(Private use 10}} 158 {emit {\(Private use 11}} 159 {emit {\(Private use 12}} 160 {emit {\(Private use 13}} 161 {emit {\(Private use 14}} 162 {emit {\(Private use 15}} 163 {emit {\(802.11 with AVS header}}
1092if {[N I 16 x {}]} {emit {\b, capture length %d\)}}
1093} -1582117580 {emit {extended tcpdump capture file \(big-endian\)}
1094if {[N S 4 x {}]} {emit {- version %d}}
1095if {[N S 6 x {}]} {emit {\b.%d}}
1096switch -- [Nv I 20] 0 {emit {\(No link-layer encapsulation}} 1 {emit {\(Ethernet}} 2 {emit {\(3Mb Ethernet}} 3 {emit {\(AX.25}} 4 {emit {\(ProNET}} 5 {emit {\(CHAOS}} 6 {emit {\(Token Ring}} 7 {emit {\(ARCNET}} 8 {emit {\(SLIP}} 9 {emit {\(PPP}} 10 {emit {\(FDDI}} 11 {emit {\(RFC 1483 ATM}} 12 {emit {\(raw IP}} 13 {emit {\(BSD/OS SLIP}} 14 {emit {\(BSD/OS PPP}}
1097if {[N I 16 x {}]} {emit {\b, capture length %d\)}}
1098} 263 {emit {old sun-2 executable}
1099if {[N I 16 > 0x0]} {emit {not stripped}}
1100} 264 {emit {old sun-2 pure executable}
1101if {[N I 16 > 0x0]} {emit {not stripped}}
1102} 267 {emit {old sun-2 demand paged executable}
1103if {[N I 16 > 0x0]} {emit {not stripped}}
1104} 525398 {emit {SunOS core file}
1105switch -- [Nv I 4] 432 {emit {\(SPARC\)}
1106if {[S 132 x {}]} {emit {from '%s'}}
1107switch -- [Nv I 116] 3 {emit {\(quit\)}} 4 {emit {\(illegal instruction\)}} 5 {emit {\(trace trap\)}} 6 {emit {\(abort\)}} 7 {emit {\(emulator trap\)}} 8 {emit {\(arithmetic exception\)}} 9 {emit {\(kill\)}} 10 {emit {\(bus error\)}} 11 {emit {\(segmentation violation\)}} 12 {emit {\(bad argument to system call\)}} 29 {emit {\(resource lost\)}}
1108if {[N I 120 x {}]} {emit {\(T=%dK,}}
1109if {[N I 124 x {}]} {emit D=%dK,}
1110if {[N I 128 x {}]} {emit {S=%dK\)}}
1111} 826 {emit {\(68K\)}
1112if {[S 128 x {}]} {emit {from '%s'}}
1113} 456 {emit {\(SPARC 4.x BCP\)}
1114if {[S 152 x {}]} {emit {from '%s'}}
1115}
1116} 50331648 {emit {VMS Alpha executable}
1117if {[S 75264 == {PK\003\004}]} {emit {\b, Info-ZIP SFX archive v5.12 w/decryption}}
1118} 1297241678 {emit {VMware nvram}} 1129273156 {emit VMware
1119switch -- [Nv c 4] 3 {emit {virtual disk}
1120if {[N i 32 x {}]} {emit {\(%d/}}
1121if {[N i 36 x {}]} {emit {\b%d/}}
1122if {[N i 40 x {}]} {emit {\b%d\)}}
1123} 2 {emit {undoable disk}
1124if {[S 32 x {}]} {emit {\(%s\)}}
1125}
1126}
1127if {[S 0 == {Core\001}]} {emit {Alpha COFF format core dump \(Digital UNIX\)}
1128if {[S 24 x {}]} {emit {\b, from '%s'}}
1129}
1130if {[S 0 == {Core\002}]} {emit {Alpha COFF format core dump \(Digital UNIX\)}
1131if {[S 24 x {}]} {emit {\b, from '%s'}}
1132}
1133if {[S 0 == {AMANDA:\ }]} {emit AMANDA
1134if {[S 8 == {TAPESTART\ DATE}]} {emit {tape header file,}
1135if {[S 23 == X]} {if {[S 25 > {\ }]} {emit {Unused %s}}
1136}
1137if {[S 23 > {\ }]} {emit {DATE %s}}
1138}
1139if {[S 8 == {FILE\ }]} {emit {dump file,}
1140if {[S 13 > {\ }]} {emit {DATE %s}}
1141}
1142}
1143if {[S 0 == FC14]} {emit {Future Composer 1.4 Module sound file}}
1144if {[S 0 == SMOD]} {emit {Future Composer 1.3 Module sound file}}
1145if {[S 0 == AON4artofnoise]} {emit {Art Of Noise Module sound file}}
1146if {[S 1 == MUGICIAN/SOFTEYES]} {emit {Mugician Module sound file}}
1147if {[S 58 == {SIDMON\ II\ -\ THE}]} {emit {Sidmon 2.0 Module sound file}}
1148if {[S 0 == Synth4.0]} {emit {Synthesis Module sound file}}
1149if {[S 0 == ARP.]} {emit {The Holy Noise Module sound file}}
1150if {[S 0 == {BeEp\0}]} {emit {JamCracker Module sound file}}
1151if {[S 0 == {COSO\0}]} {emit {Hippel-COSO Module sound file}}
1152if {[S 0 == {\#\#\ version}]} {emit {catalog translation}}
1153if {[S 0 == RDSK]} {emit {Rigid Disk Block}
1154if {[S 160 x {}]} {emit {on %.24s}}
1155}
1156if {[S 0 == {DOS\0}]} {emit {Amiga DOS disk}}
1157if {[S 0 == {DOS\1}]} {emit {Amiga FFS disk}}
1158if {[S 0 == {DOS\2}]} {emit {Amiga Inter DOS disk}}
1159if {[S 0 == {DOS\3}]} {emit {Amiga Inter FFS disk}}
1160if {[S 0 == {DOS\4}]} {emit {Amiga Fastdir DOS disk}}
1161if {[S 0 == {DOS\5}]} {emit {Amiga Fastdir FFS disk}}
1162if {[S 0 == KICK]} {emit {Kickstart disk}}
1163if {[S 0 == MOVI]} {emit {Silicon Graphics movie file}}
1164if {[S 4 == moov]} {emit {Apple QuickTime}
1165if {[S 12 == mvhd]} {emit {\b movie \(fast start\)}}
1166if {[S 12 == mdra]} {emit {\b URL}}
1167if {[S 12 == cmov]} {emit {\b movie \(fast start, compressed header\)}}
1168if {[S 12 == rmra]} {emit {\b multiple URLs}}
1169}
1170if {[S 4 == mdat]} {emit {Apple QuickTime movie \(unoptimized\)}}
1171if {[S 4 == wide]} {emit {Apple QuickTime movie \(unoptimized\)}}
1172if {[S 4 == skip]} {emit {Apple QuickTime movie \(modified\)}}
1173if {[S 4 == free]} {emit {Apple QuickTime movie \(modified\)}}
1174if {[S 4 == idsc]} {emit {Apple QuickTime image \(fast start\)}}
1175if {[S 4 == idat]} {emit {Apple QuickTime image \(unoptimized\)}}
1176if {[S 4 == pckg]} {emit {Apple QuickTime compressed archive}}
1177if {[S 4 == jP B]} {emit {JPEG 2000 image}}
1178if {[S 4 == ftyp]} {emit {ISO Media}
1179if {[S 8 == isom]} {emit {\b, MPEG v4 system, version 1}}
1180if {[S 8 == iso2]} {emit {\b, MPEG v4 system, part 12 revision}}
1181if {[S 8 == mp41]} {emit {\b, MPEG v4 system, version 1}}
1182if {[S 8 == mp42]} {emit {\b, MPEG v4 system, version 2}}
1183if {[S 8 == mp7t]} {emit {\b, MPEG v4 system, MPEG v7 XML}}
1184if {[S 8 == mp7b]} {emit {\b, MPEG v4 system, MPEG v7 binary XML}}
1185if {[S 8 == jp2 B]} {emit {\b, JPEG 2000}}
1186if {[S 8 == 3gp]} {emit {\b, MPEG v4 system, 3GPP}
1187switch -- [Nv c 11] 4 {emit {\b v4 \(H.263/AMR GSM 6.10\)}} 5 {emit {\b v5 \(H.263/AMR GSM 6.10\)}} 6 {emit {\b v6 \(ITU H.264/AMR GSM 6.10\)}}
1188}
1189if {[S 8 == mmp4]} {emit {\b, MPEG v4 system, 3GPP Mobile}}
1190if {[S 8 == avc1]} {emit {\b, MPEG v4 system, 3GPP JVT AVC}}
1191if {[S 8 == M4A B]} {emit {\b, MPEG v4 system, iTunes AAC-LC}}
1192if {[S 8 == M4P B]} {emit {\b, MPEG v4 system, iTunes AES encrypted}}
1193if {[S 8 == M4B B]} {emit {\b, MPEG v4 system, iTunes bookmarked}}
1194if {[S 8 == qt B]} {emit {\b, Apple QuickTime movie}}
1195}
1196if {[N I 0 == 0x100 &0xFFFFFF00]} {emit {MPEG sequence}
1197switch -- [Nv c 3] -70 {emit {}
1198if {[N c 4 & 0x40]} {emit {\b, v2, program multiplex}}
1199if {[N c 4 ^ 0x40]} {emit {\b, v1, system multiplex}}
1200} -69 {emit {\b, v1/2, multiplex \(missing pack header\)}} -80 {emit {\b, v4}
1201if {[N I 5 == 0x1b5]} {if {[N c 9 & 0x80]} {switch -- [Nv c 10 &0xF0] 16 {emit {\b, video}} 32 {emit {\b, still texture}} 48 {emit {\b, mesh}} 64 {emit {\b, face}}
1202}
1203switch -- [Nv c 9 &0xF8] 8 {emit {\b, video}} 16 {emit {\b, still texture}} 24 {emit {\b, mesh}} 32 {emit {\b, face}}
1204}
1205switch -- [Nv c 4] 1 {emit {\b, simple @ L1}} 2 {emit {\b, simple @ L2}} 3 {emit {\b, simple @ L3}} 4 {emit {\b, simple @ L0}} 17 {emit {\b, simple scalable @ L1}} 18 {emit {\b, simple scalable @ L2}} 33 {emit {\b, core @ L1}} 34 {emit {\b, core @ L2}} 50 {emit {\b, main @ L2}} 51 {emit {\b, main @ L3}} 53 {emit {\b, main @ L4}} 66 {emit {\b, n-bit @ L2}} 81 {emit {\b, scalable texture @ L1}} 97 {emit {\b, simple face animation @ L1}} 98 {emit {\b, simple face animation @ L2}} 99 {emit {\b, simple face basic animation @ L1}} 100 {emit {\b, simple face basic animation @ L2}} 113 {emit {\b, basic animation text @ L1}} 114 {emit {\b, basic animation text @ L2}} -127 {emit {\b, hybrid @ L1}} -126 {emit {\b, hybrid @ L2}} -111 {emit {\b, advanced RT simple @ L!}} -110 {emit {\b, advanced RT simple @ L2}} -109 {emit {\b, advanced RT simple @ L3}} -108 {emit {\b, advanced RT simple @ L4}} -95 {emit {\b, core scalable @ L1}} -94 {emit {\b, core scalable @ L2}} -93 {emit {\b, core scalable @ L3}} -79 {emit {\b, advanced coding efficiency @ L1}} -78 {emit {\b, advanced coding efficiency @ L2}} -77 {emit {\b, advanced coding efficiency @ L3}} -76 {emit {\b, advanced coding efficiency @ L4}} -63 {emit {\b, advanced core @ L1}} -62 {emit {\b, advanced core @ L2}} -47 {emit {\b, advanced scalable texture @ L1}} -46 {emit {\b, advanced scalable texture @ L2}} -45 {emit {\b, advanced scalable texture @ L3}} -31 {emit {\b, simple studio @ L1}} -30 {emit {\b, simple studio @ L2}} -29 {emit {\b, simple studio @ L3}} -28 {emit {\b, simple studio @ L4}} -27 {emit {\b, core studio @ L1}} -26 {emit {\b, core studio @ L2}} -25 {emit {\b, core studio @ L3}} -24 {emit {\b, core studio @ L4}} -16 {emit {\b, advanced simple @ L0}} -15 {emit {\b, advanced simple @ L1}} -14 {emit {\b, advanced simple @ L2}} -13 {emit {\b, advanced simple @ L3}} -12 {emit {\b, advanced simple @ L4}} -11 {emit {\b, advanced simple @ L5}} -9 {emit {\b, advanced simple @ L3b}} -8 {emit {\b, FGS @ L0}} -7 {emit {\b, FGS @ L1}} -6 {emit {\b, FGS @ L2}} -5 {emit {\b, FGS @ L3}} -4 {emit {\b, FGS @ L4}} -3 {emit {\b, FGS @ L5}}
1206} -75 {emit {\b, v4}
1207if {[N c 4 & 0x80]} {switch -- [Nv c 5 &0xF0] 16 {emit {\b, video \(missing profile header\)}} 32 {emit {\b, still texture \(missing profile header\)}} 48 {emit {\b, mesh \(missing profile header\)}} 64 {emit {\b, face \(missing profile header\)}}
1208}
1209switch -- [Nv c 4 &0xF8] 8 {emit {\b, video \(missing profile header\)}} 16 {emit {\b, still texture \(missing profile header\)}} 24 {emit {\b, mesh \(missing profile header\)}} 32 {emit {\b, face \(missing profile header\)}}
1210} -77 {emit {}
1211switch -- [Nv I 12] 440 {emit {\b, v1, progressive Y'CbCr 4:2:0 video}} 434 {emit {\b, v1, progressive Y'CbCr 4:2:0 video}} 437 {emit {\b, v2,}
1212switch -- [Nv c 16 &0x0F] 1 {emit {\b HP}} 2 {emit {\b Spt}} 3 {emit {\b SNR}} 4 {emit {\b MP}} 5 {emit {\b SP}}
1213switch -- [Nv c 17 &0xF0] 64 {emit {\b@HL}} 96 {emit {\b@H-14}} -128 {emit {\b@ML}} -96 {emit {\b@LL}}
1214if {[N c 17 & 0x8]} {emit {\b progressive}}
1215if {[N c 17 ^ 0x8]} {emit {\b interlaced}}
1216switch -- [Nv c 17 &0x06] 2 {emit {\b Y'CbCr 4:2:0 video}} 4 {emit {\b Y'CbCr 4:2:2 video}} 6 {emit {\b Y'CbCr 4:4:4 video}}
1217}
1218if {[N c 11 & 0x2]} {if {[N c 75 & 0x1]} {switch -- [Nv I 140] 440 {emit {\b, v1, progressive Y'CbCr 4:2:0 video}} 434 {emit {\b, v1, progressive Y'CbCr 4:2:0 video}} 437 {emit {\b, v2,}
1219switch -- [Nv c 144 &0x0F] 1 {emit {\b HP}} 2 {emit {\b Spt}} 3 {emit {\b SNR}} 4 {emit {\b MP}} 5 {emit {\b SP}}
1220switch -- [Nv c 145 &0xF0] 64 {emit {\b@HL}} 96 {emit {\b@H-14}} -128 {emit {\b@ML}} -96 {emit {\b@LL}}
1221if {[N c 145 & 0x8]} {emit {\b progressive}}
1222if {[N c 145 ^ 0x8]} {emit {\b interlaced}}
1223switch -- [Nv c 145 &0x06] 2 {emit {\b Y'CbCr 4:2:0 video}} 4 {emit {\b Y'CbCr 4:2:2 video}} 6 {emit {\b Y'CbCr 4:4:4 video}}
1224}
1225}
1226}
1227switch -- [Nv I 76] 440 {emit {\b, v1, progressive Y'CbCr 4:2:0 video}} 434 {emit {\b, v1, progressive Y'CbCr 4:2:0 video}} 437 {emit {\b, v2,}
1228switch -- [Nv c 80 &0x0F] 1 {emit {\b HP}} 2 {emit {\b Spt}} 3 {emit {\b SNR}} 4 {emit {\b MP}} 5 {emit {\b SP}}
1229switch -- [Nv c 81 &0xF0] 64 {emit {\b@HL}} 96 {emit {\b@H-14}} -128 {emit {\b@ML}} -96 {emit {\b@LL}}
1230if {[N c 81 & 0x8]} {emit {\b progressive}}
1231if {[N c 81 ^ 0x8]} {emit {\b interlaced}}
1232switch -- [Nv c 81 &0x06] 2 {emit {\b Y'CbCr 4:2:0 video}} 4 {emit {\b Y'CbCr 4:2:2 video}} 6 {emit {\b Y'CbCr 4:4:4 video}}
1233}
1234switch -- [Nv I 4 &0xFFFFFF00] 2013542400 {emit {\b, HD-TV 1920P}
1235if {[N c 7 == 0x10 &0xF0]} {emit {\b, 16:9}}
1236} 1342188800 {emit {\b, SD-TV 1280I}
1237if {[N c 7 == 0x10 &0xF0]} {emit {\b, 16:9}}
1238} 805453824 {emit {\b, PAL Capture}
1239if {[N c 7 == 0x10 &0xF0]} {emit {\b, 4:3}}
1240} 671211520 {emit {\b, LD-TV 640P}
1241if {[N c 7 == 0x10 &0xF0]} {emit {\b, 4:3}}
1242} 335605760 {emit {\b, 320x240}
1243if {[N c 7 == 0x10 &0xF0]} {emit {\b, 4:3}}
1244} 251699200 {emit {\b, 240x160}
1245if {[N c 7 == 0x10 &0xF0]} {emit {\b, 4:3}}
1246} 167802880 {emit {\b, 160x120}
1247if {[N c 7 == 0x10 &0xF0]} {emit {\b, 4:3}}
1248}
1249switch -- [Nv S 4 &0xFFF0] 11264 {emit {\b, 4CIF}
1250switch -- [Nv S 5 &0x0FFF] 480 {emit {\b NTSC}} 576 {emit {\b PAL}}
1251switch -- [Nv c 7 &0xF0] 32 {emit {\b, 4:3}} 48 {emit {\b, 16:9}} 64 {emit {\b, 11:5}} -128 {emit {\b, PAL 4:3}} -64 {emit {\b, NTSC 4:3}}
1252} 5632 {emit {\b, CIF}
1253switch -- [Nv S 5 &0x0FFF] 240 {emit {\b NTSC}} 288 {emit {\b PAL}} 576 {emit {\b PAL 625}
1254switch -- [Nv c 7 &0xF0] 32 {emit {\b, 4:3}} 48 {emit {\b, 16:9}} 64 {emit {\b, 11:5}}
1255}
1256switch -- [Nv c 7 &0xF0] 32 {emit {\b, 4:3}} 48 {emit {\b, 16:9}} 64 {emit {\b, 11:5}} -128 {emit {\b, PAL 4:3}} -64 {emit {\b, NTSC 4:3}}
1257} 11520 {emit {\b, CCIR/ITU}
1258switch -- [Nv S 5 &0x0FFF] 480 {emit {\b NTSC 525}} 576 {emit {\b PAL 625}}
1259switch -- [Nv c 7 &0xF0] 32 {emit {\b, 4:3}} 48 {emit {\b, 16:9}} 64 {emit {\b, 11:5}}
1260} 7680 {emit {\b, SVCD}
1261switch -- [Nv S 5 &0x0FFF] 480 {emit {\b NTSC 525}} 576 {emit {\b PAL 625}}
1262switch -- [Nv c 7 &0xF0] 32 {emit {\b, 4:3}} 48 {emit {\b, 16:9}} 64 {emit {\b, 11:5}}
1263}
1264switch -- [Nv c 7 &0x0F] 1 {emit {\b, 23.976 fps}} 2 {emit {\b, 24 fps}} 3 {emit {\b, 25 fps}} 4 {emit {\b, 29.97 fps}} 5 {emit {\b, 30 fps}} 6 {emit {\b, 50 fps}} 7 {emit {\b, 59.94 fps}} 8 {emit {\b, 60 fps}}
1265if {[N c 11 & 0x4]} {emit {\b, Constrained}}
1266}
1267if {[N c 3 == 0x7 &0x1F]} {emit {\b, H.264 video}
1268switch -- [Nv c 4] 66 {emit {\b, baseline}} 77 {emit {\b, main}} 88 {emit {\b, extended}}
1269if {[N c 6 x {}]} {emit {\b @ L %u}}
1270}
1271}
1272switch -- [Nv S 0 &0xFFFE] -6 {emit {MPEG ADTS, layer III, v1}
1273switch -- [Nv c 2 &0xF0] 16 {emit {\b,  32 kBits}} 32 {emit {\b,  40 kBits}} 48 {emit {\b,  48 kBits}} 64 {emit {\b,  56 kBits}} 80 {emit {\b,  64 kBits}} 96 {emit {\b,  80 kBits}} 112 {emit {\b,  96 kBits}} -128 {emit {\b, 112 kBits}} -112 {emit {\b, 128 kBits}} -96 {emit {\b, 160 kBits}} -80 {emit {\b, 192 kBits}} -64 {emit {\b, 224 kBits}} -48 {emit {\b, 256 kBits}} -32 {emit {\b, 320 kBits}}
1274switch -- [Nv c 2 &0x0C] 0 {emit {\b, 44.1 kHz}} 4 {emit {\b, 48 kHz}} 8 {emit {\b, 32 kHz}}
1275switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1276} -4 {emit {MPEG ADTS, layer II, v1}
1277switch -- [Nv c 2 &0xF0] 16 {emit {\b,  32 kBits}} 32 {emit {\b,  48 kBits}} 48 {emit {\b,  56 kBits}} 64 {emit {\b,  64 kBits}} 80 {emit {\b,  80 kBits}} 96 {emit {\b,  96 kBits}} 112 {emit {\b, 112 kBits}} -128 {emit {\b, 128 kBits}} -112 {emit {\b, 160 kBits}} -96 {emit {\b, 192 kBits}} -80 {emit {\b, 224 kBits}} -64 {emit {\b, 256 kBits}} -48 {emit {\b, 320 kBits}} -32 {emit {\b, 384 kBits}}
1278switch -- [Nv c 2 &0x0C] 0 {emit {\b, 44.1 kHz}} 4 {emit {\b, 48 kHz}} 8 {emit {\b, 32 kHz}}
1279switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1280} -2 {emit {MPEG ADTS, layer I, v1}
1281switch -- [Nv c 2 &0xF0] 16 {emit {\b,  32 kBits}} 32 {emit {\b,  64 kBits}} 48 {emit {\b,  96 kBits}} 64 {emit {\b, 128 kBits}} 80 {emit {\b, 160 kBits}} 96 {emit {\b, 192 kBits}} 112 {emit {\b, 224 kBits}} -128 {emit {\b, 256 kBits}} -112 {emit {\b, 288 kBits}} -96 {emit {\b, 320 kBits}} -80 {emit {\b, 352 kBits}} -64 {emit {\b, 384 kBits}} -48 {emit {\b, 416 kBits}} -32 {emit {\b, 448 kBits}}
1282switch -- [Nv c 2 &0x0C] 0 {emit {\b, 44.1 kHz}} 4 {emit {\b, 48 kHz}} 8 {emit {\b, 32 kHz}}
1283switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1284} -14 {emit {MPEG ADTS, layer III, v2}
1285switch -- [Nv c 2 &0xF0] 16 {emit {\b,   8 kBits}} 32 {emit {\b,  16 kBits}} 48 {emit {\b,  24 kBits}} 64 {emit {\b,  32 kBits}} 80 {emit {\b,  40 kBits}} 96 {emit {\b,  48 kBits}} 112 {emit {\b,  56 kBits}} -128 {emit {\b,  64 kBits}} -112 {emit {\b,  80 kBits}} -96 {emit {\b,  96 kBits}} -80 {emit {\b, 112 kBits}} -64 {emit {\b, 128 kBits}} -48 {emit {\b, 144 kBits}} -32 {emit {\b, 160 kBits}}
1286switch -- [Nv c 2 &0x0C] 0 {emit {\b, 22.05 kHz}} 4 {emit {\b, 24 kHz}} 8 {emit {\b, 16 kHz}}
1287switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1288} -12 {emit {MPEG ADTS, layer II, v2}
1289switch -- [Nv c 2 &0xF0] 16 {emit {\b,   8 kBits}} 32 {emit {\b,  16 kBits}} 48 {emit {\b,  24 kBits}} 64 {emit {\b,  32 kBits}} 80 {emit {\b,  40 kBits}} 96 {emit {\b,  48 kBits}} 112 {emit {\b,  56 kBits}} -128 {emit {\b,  64 kBits}} -112 {emit {\b,  80 kBits}} -96 {emit {\b,  96 kBits}} -80 {emit {\b, 112 kBits}} -64 {emit {\b, 128 kBits}} -48 {emit {\b, 144 kBits}} -32 {emit {\b, 160 kBits}}
1290switch -- [Nv c 2 &0x0C] 0 {emit {\b, 22.05 kHz}} 4 {emit {\b, 24 kHz}} 8 {emit {\b, 16 kHz}}
1291switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1292} -10 {emit {MPEG ADTS, layer I, v2}
1293switch -- [Nv c 2 &0xF0] 16 {emit {\b,  32 kBits}} 32 {emit {\b,  48 kBits}} 48 {emit {\b,  56 kBits}} 64 {emit {\b,  64 kBits}} 80 {emit {\b,  80 kBits}} 96 {emit {\b,  96 kBits}} 112 {emit {\b, 112 kBits}} -128 {emit {\b, 128 kBits}} -112 {emit {\b, 144 kBits}} -96 {emit {\b, 160 kBits}} -80 {emit {\b, 176 kBits}} -64 {emit {\b, 192 kBits}} -48 {emit {\b, 224 kBits}} -32 {emit {\b, 256 kBits}}
1294switch -- [Nv c 2 &0x0C] 0 {emit {\b, 22.05 kHz}} 4 {emit {\b, 24 kHz}} 8 {emit {\b, 16 kHz}}
1295switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1296} -30 {emit {MPEG ADTS, layer III,  v2.5}
1297switch -- [Nv c 2 &0xF0] 16 {emit {\b,   8 kBits}} 32 {emit {\b,  16 kBits}} 48 {emit {\b,  24 kBits}} 64 {emit {\b,  32 kBits}} 80 {emit {\b,  40 kBits}} 96 {emit {\b,  48 kBits}} 112 {emit {\b,  56 kBits}} -128 {emit {\b,  64 kBits}} -112 {emit {\b,  80 kBits}} -96 {emit {\b,  96 kBits}} -80 {emit {\b, 112 kBits}} -64 {emit {\b, 128 kBits}} -48 {emit {\b, 144 kBits}} -32 {emit {\b, 160 kBits}}
1298switch -- [Nv c 2 &0x0C] 0 {emit {\b, 11.025 kHz}} 4 {emit {\b, 12 kHz}} 8 {emit {\b, 8 kHz}}
1299switch -- [Nv c 3 &0xC0] 0 {emit {\b, Stereo}} 64 {emit {\b, JntStereo}} -128 {emit {\b, 2x Monaural}} -64 {emit {\b, Monaural}}
1300}
1301if {[S 0 == ADIF]} {emit {MPEG ADIF, AAC}
1302if {[N c 4 & 0x80]} {if {[N c 13 & 0x10]} {emit {\b, VBR}}
1303if {[N c 13 ^ 0x10]} {emit {\b, CBR}}
1304switch -- [Nv c 16 &0x1E] 2 {emit {\b, single stream}} 4 {emit {\b, 2 streams}} 6 {emit {\b, 3 streams}}
1305if {[N c 16 & 0x8]} {emit {\b, 4 or more streams}}
1306if {[N c 16 & 0x10]} {emit {\b, 8 or more streams}}
1307if {[N c 4 & 0x80]} {emit {\b, Copyrighted}}
1308if {[N c 13 & 0x40]} {emit {\b, Original Source}}
1309if {[N c 13 & 0x20]} {emit {\b, Home Flag}}
1310}
1311if {[N c 4 ^ 0x80]} {if {[N c 4 & 0x10]} {emit {\b, VBR}}
1312if {[N c 4 ^ 0x10]} {emit {\b, CBR}}
1313switch -- [Nv c 7 &0x1E] 2 {emit {\b, single stream}} 4 {emit {\b, 2 streams}} 6 {emit {\b, 3 streams}}
1314if {[N c 7 & 0x8]} {emit {\b, 4 or more streams}}
1315if {[N c 7 & 0x10]} {emit {\b, 8 or more streams}}
1316if {[N c 4 & 0x40]} {emit {\b, Original Stream\(s\)}}
1317if {[N c 4 & 0x20]} {emit {\b, Home Source}}
1318}
1319}
1320if {[N S 0 == 0xfff0 &0xFFF6]} {emit {MPEG ADTS, AAC}
1321if {[N c 1 & 0x8]} {emit {\b, v2}}
1322if {[N c 1 ^ 0x8]} {emit {\b, v4}
1323if {[N c 2 & 0xc0]} {emit {\b LTP}}
1324}
1325switch -- [Nv c 2 &0xc0] 0 {emit {\b Main}} 64 {emit {\b LC}} -128 {emit {\b SSR}}
1326switch -- [Nv c 2 &0x3c] 0 {emit {\b, 96 kHz}} 4 {emit {\b, 88.2 kHz}} 8 {emit {\b, 64 kHz}} 12 {emit {\b, 48 kHz}} 16 {emit {\b, 44.1 kHz}} 20 {emit {\b, 32 kHz}} 24 {emit {\b, 24 kHz}} 28 {emit {\b, 22.05 kHz}} 32 {emit {\b, 16 kHz}} 36 {emit {\b, 12 kHz}} 40 {emit {\b, 11.025 kHz}} 44 {emit {\b, 8 kHz}}
1327switch -- [Nv S 2 &0x01c0] 64 {emit {\b, monaural}} 128 {emit {\b, stereo}} 192 {emit {\b, stereo + center}} 256 {emit {\b, stereo+center+LFE}} 320 {emit {\b, surround}} 384 {emit {\b, surround + LFE}}
1328if {[N S 2 & 0x1c0]} {emit {\b, surround + side}}
1329}
1330if {[N S 0 == 0x56e0 &0xFFE0]} {emit {MPEG-4 LOAS}
1331if {[N c 3 == 0x40 &0xE0]} {switch -- [Nv c 4 &0x3C] 4 {emit {\b, single stream}} 8 {emit {\b, 2 streams}} 12 {emit {\b, 3 streams}}
1332if {[N c 4 & 0x8]} {emit {\b, 4 or more streams}}
1333if {[N c 4 & 0x20]} {emit {\b, 8 or more streams}}
1334}
1335if {[N c 3 == 0x0 &0xC0]} {switch -- [Nv c 4 &0x78] 8 {emit {\b, single stream}} 16 {emit {\b, 2 streams}} 24 {emit {\b, 3 streams}}
1336if {[N c 4 & 0x20]} {emit {\b, 4 or more streams}}
1337if {[N c 4 & 0x40]} {emit {\b, 8 or more streams}}
1338}
1339}
1340switch -- [Nv s 4] -20719 {emit {FLI file}
1341if {[N s 6 x {}]} {emit {- %d frames,}}
1342if {[N s 8 x {}]} {emit {width=%d pixels,}}
1343if {[N s 10 x {}]} {emit {height=%d pixels,}}
1344if {[N s 12 x {}]} {emit depth=%d,}
1345if {[N s 16 x {}]} {emit ticks/frame=%d}
1346} -20718 {emit {FLC file}
1347if {[N s 6 x {}]} {emit {- %d frames}}
1348if {[N s 8 x {}]} {emit {width=%d pixels,}}
1349if {[N s 10 x {}]} {emit {height=%d pixels,}}
1350if {[N s 12 x {}]} {emit depth=%d,}
1351if {[N s 16 x {}]} {emit ticks/frame=%d}
1352}
1353if {[N I 0 == 0x47400010 &0xFF5FFF1F]} {emit {MPEG transport stream data}
1354if {[N c 188 != 0x47]} {emit CORRUPTED}
1355}
1356switch -- [Nv I 0 &0xffffff00] 520552448 {emit DIF
1357if {[N c 4 & 0x1]} {emit {\(DVCPRO\) movie file}}
1358if {[N c 4 ^ 0x1]} {emit {\(DV\) movie file}}
1359if {[N c 3 & 0x80]} {emit {\(PAL\)}}
1360if {[N c 3 ^ 0x80]} {emit {\(NTSC\)}}
1361} -2063526912 {emit {cisco IOS microcode}
1362if {[S 7 x {}]} {emit {for '%s'}}
1363} -2063480064 {emit {cisco IOS experimental microcode}
1364if {[S 7 x {}]} {emit {for '%s'}}
1365} -16907520 {emit {MySQL MISAM index file}
1366if {[N c 3 x {}]} {emit {Version %d}}
1367} -16906496 {emit {MySQL MISAM compressed data file}
1368if {[N c 3 x {}]} {emit {Version %d}}
1369} -16907008 {emit {MySQL ISAM index file}
1370if {[N c 3 x {}]} {emit {Version %d}}
1371} -16906752 {emit {MySQL ISAM compressed data file}
1372if {[N c 3 x {}]} {emit {Version %d}}
1373}
1374if {[S 0 == {\x8aMNG}]} {emit {MNG video data,}
1375if {[N I 4 != 0xd0a1a0a]} {emit CORRUPTED,}
1376if {[N I 4 == 0xd0a1a0a]} {if {[N I 16 x {}]} {emit {%ld x}}
1377if {[N I 20 x {}]} {emit %ld}
1378}
1379}
1380if {[S 0 == {\x8bJNG}]} {emit {JNG video data,}
1381if {[N I 4 != 0xd0a1a0a]} {emit CORRUPTED,}
1382if {[N I 4 == 0xd0a1a0a]} {if {[N I 16 x {}]} {emit {%ld x}}
1383if {[N I 20 x {}]} {emit %ld}
1384}
1385}
1386if {[S 3 == {\x0D\x0AVersion:Vivo}]} {emit {Vivo video data}}
1387if {[S 0 == {\#VRML\ V1.0\ ascii} b]} {emit {VRML 1 file}}
1388if {[S 0 == {\#VRML\ V2.0\ utf8} b]} {emit {ISO/IEC 14772 VRML 97 file}}
1389if {[S 0 == HVQM4]} {emit %s
1390if {[S 6 x {}]} {emit v%s}
1391if {[N c 0 x {}]} {emit {GameCube movie,}}
1392if {[N S 52 x {}]} {emit {%d x}}
1393if {[N S 54 x {}]} {emit %d,}
1394if {[N S 38 x {}]} {emit %dµs,}
1395if {[N S 66 == 0x0]} {emit {no audio}}
1396if {[N S 66 > 0x0]} {emit {%dHz audio}}
1397}
1398if {[S 0 == DVDVIDEO-VTS]} {emit {Video title set,}
1399if {[N c 33 x {}]} {emit v%x}
1400}
1401if {[S 0 == DVDVIDEO-VMG]} {emit {Video manager,}
1402if {[N c 33 x {}]} {emit v%x}
1403}
1404switch -- [Nv Q 0] 33132 {emit {APL workspace \(Ken's original?\)}} 65389 {emit {very old archive}} 65381 {emit {old archive}} 33132 {emit {apl workspace}} 557605234 {emit {archive file}} 262 {emit {68k Blit mpx/mux executable}} 269 {emit {i960 b.out relocatable object}
1405if {[N Q 16 > 0x0]} {emit {not stripped}}
1406} 1145263299 {emit {DACT compressed data}
1407if {[N c 4 > 0xffffffff]} {emit {\(version %i.}}
1408if {[N c 5 > 0xffffffff]} {emit {$BS%i.}}
1409if {[N c 6 > 0xffffffff]} {emit {$BS%i\)}}
1410if {[N Q 7 > 0x0]} {emit {$BS, original size: %i bytes}}
1411if {[N Q 15 > 0x1e]} {emit {$BS, block size: %i bytes}}
1412} 398689 {emit {Berkeley DB}
1413switch -- [Nv I 8] 4321 {emit {}
1414if {[N I 4 > 0x2]} {emit 1.86}
1415if {[N I 4 < 0x3]} {emit 1.85}
1416if {[N I 4 > 0x0]} {emit {\(Hash, version %d, native byte-order\)}}
1417} 1234 {emit {}
1418if {[N I 4 > 0x2]} {emit 1.86}
1419if {[N I 4 < 0x3]} {emit 1.85}
1420if {[N I 4 > 0x0]} {emit {\(Hash, version %d, little-endian\)}}
1421}
1422} 340322 {emit {Berkeley DB 1.85/1.86}
1423if {[N Q 4 > 0x0]} {emit {\(Btree, version %d, native byte-order\)}}
1424} 1234567 {emit {X image}} 168757262 {emit {TML 0123 byte-order format}} 252317192 {emit {TML 1032 byte-order format}} 135137807 {emit {TML 2301 byte-order format}} 235409162 {emit {TML 3210 byte-order format}} 34078982 {emit {HP s500 relocatable executable}
1425if {[N Q 16 > 0x0]} {emit {- version %ld}}
1426} 34078983 {emit {HP s500 executable}
1427if {[N Q 16 > 0x0]} {emit {- version %ld}}
1428} 34078984 {emit {HP s500 pure executable}
1429if {[N Q 16 > 0x0]} {emit {- version %ld}}
1430} 65381 {emit {HP old archive}} 34275173 {emit {HP s200 old archive}} 34406245 {emit {HP s200 old archive}} 34144101 {emit {HP s500 old archive}} 22552998 {emit {HP core file}} 1302851304 {emit {HP-WINDOWS font}
1431if {[N c 8 > 0x0]} {emit {- version %ld}}
1432} 34341132 {emit {compiled Lisp}} 1123028772 {emit {Artisan image data}
1433switch -- [Nv Q 4] 1 {emit {\b, rectangular 24-bit}} 2 {emit {\b, rectangular 8-bit with colormap}} 3 {emit {\b, rectangular 32-bit \(24-bit with matte\)}}
1434} 1886817234 {emit {CLISP memory image data}} -762612112 {emit {CLISP memory image data, other endian}} -569244523 {emit {GNU-format message catalog data}} -1794895138 {emit {GNU-format message catalog data}} -1042103351 {emit {SPSS Portable File}
1435if {[S 40 x {}]} {emit %s}
1436} 31415 {emit {Mirage Assembler m.out executable}} 61374 {emit {OSF/Rose object}} 1351614727 {emit {Pyramid 90x family executable}} 1351614728 {emit {Pyramid 90x family pure executable}
1437if {[N Q 16 > 0x0]} {emit {not stripped}}
1438} 1351614731 {emit {Pyramid 90x family demand paged pure executable}
1439if {[N Q 16 > 0x0]} {emit {not stripped}}
1440} -97271666 {emit {SunPC 4.0 Hard Disk}} 268 {emit {unknown demand paged pure executable}
1441if {[N Q 16 > 0x0]} {emit {not stripped}}
1442} 270 {emit {unknown readable demand paged pure executable}} 395726 {emit {Jaleo XFS file}
1443if {[N Q 4 x {}]} {emit {- version %ld}}
1444if {[N Q 8 x {}]} {emit {- [%ld -}}
1445if {[N Q 20 x {}]} {emit %ldx}
1446if {[N Q 24 x {}]} {emit %ldx}
1447switch -- [Nv Q 28] 1008 {emit YUV422\]} 1000 {emit RGB24\]}
1448} 59399 {emit {object file \(z8000 a.out\)}} 59400 {emit {pure object file \(z8000 a.out\)}} 59401 {emit {separate object file \(z8000 a.out\)}} 59397 {emit {overlay object file \(z8000 a.out\)}}
1449if {[S 0 == FiLeStArTfIlEsTaRt]} {emit {binscii \(apple ][\) text}}
1450if {[S 0 == {\x0aGL}]} {emit {Binary II \(apple ][\) data}}
1451if {[S 0 == {\x76\xff}]} {emit {Squeezed \(apple ][\) data}}
1452if {[S 0 == NuFile]} {emit {NuFile archive \(apple ][\) data}}
1453if {[S 0 == {N\xf5F\xe9l\xe5}]} {emit {NuFile archive \(apple ][\) data}}
1454if {[S 0 == package0]} {emit {Newton package, NOS 1.x,}
1455if {[N I 12 & 0x80000000]} {emit AutoRemove,}
1456if {[N I 12 & 0x40000000]} {emit CopyProtect,}
1457if {[N I 12 & 0x10000000]} {emit NoCompression,}
1458if {[N I 12 & 0x4000000]} {emit Relocation,}
1459if {[N I 12 & 0x2000000]} {emit UseFasterCompression,}
1460if {[N I 16 x {}]} {emit {version %d}}
1461}
1462if {[S 0 == package1]} {emit {Newton package, NOS 2.x,}
1463if {[N I 12 & 0x80000000]} {emit AutoRemove,}
1464if {[N I 12 & 0x40000000]} {emit CopyProtect,}
1465if {[N I 12 & 0x10000000]} {emit NoCompression,}
1466if {[N I 12 & 0x4000000]} {emit Relocation,}
1467if {[N I 12 & 0x2000000]} {emit UseFasterCompression,}
1468if {[N I 16 x {}]} {emit {version %d}}
1469}
1470if {[S 0 == package4]} {emit {Newton package,}
1471switch -- [Nv c 8] 8 {emit {NOS 1.x,}} 9 {emit {NOS 2.x,}}
1472if {[N I 12 & 0x80000000]} {emit AutoRemove,}
1473if {[N I 12 & 0x40000000]} {emit CopyProtect,}
1474if {[N I 12 & 0x10000000]} {emit NoCompression,}
1475}
1476if {[S 4 == O====]} {emit {AppleWorks word processor data}
1477if {[N c 85 > 0x0 &0x01]} {emit {\b, zoomed}}
1478if {[N c 90 > 0x0 &0x01]} {emit {\b, paginated}}
1479if {[N c 92 > 0x0 &0x01]} {emit {\b, with mail merge}}
1480}
1481if {[N I 0 == 0x80000 &0xff00ff]} {emit {Applesoft BASIC program data}}
1482if {[S 8144 == {\x7F\x7F\x7F\x7F\x7F\x7F\x7F\x7F}]} {emit {Apple II image with white background}}
1483if {[S 8144 == {\x55\x2A\x55\x2A\x55\x2A\x55\x2A}]} {emit {Apple II image with purple background}}
1484if {[S 8144 == {\x2A\x55\x2A\x55\x2A\x55\x2A\x55}]} {emit {Apple II image with green background}}
1485if {[S 8144 == {\xD5\xAA\xD5\xAA\xD5\xAA\xD5\xAA}]} {emit {Apple II image with blue background}}
1486if {[S 8144 == {\xAA\xD5\xAA\xD5\xAA\xD5\xAA\xD5}]} {emit {Apple II image with orange background}}
1487if {[N I 0 == 0x6400d000 &0xFF00FFFF]} {emit {Apple Mechanic font}}
1488if {[S 0 == *BEGIN]} {emit Applixware
1489if {[S 7 == WORDS]} {emit {Words Document}}
1490if {[S 7 == GRAPHICS]} {emit Graphic}
1491if {[S 7 == RASTER]} {emit Bitmap}
1492if {[S 7 == SPREADSHEETS]} {emit Spreadsheet}
1493if {[S 7 == MACRO]} {emit Macro}
1494if {[S 7 == BUILDER]} {emit {Builder Object}}
1495}
1496if {[S 257 == {ustar\0}]} {emit {POSIX tar archive}}
1497if {[S 257 == {ustar\040\040\0}]} {emit {GNU tar archive}}
1498if {[S 0 == 070707]} {emit {ASCII cpio archive \(pre-SVR4 or odc\)}}
1499if {[S 0 == 070701]} {emit {ASCII cpio archive \(SVR4 with no CRC\)}}
1500if {[S 0 == 070702]} {emit {ASCII cpio archive \(SVR4 with CRC\)}}
1501if {[S 0 == {!<arch>\ndebian}]} {if {[S 8 == debian-split]} {emit {part of multipart Debian package}}
1502if {[S 8 == debian-binary]} {emit {Debian binary package}}
1503if {[S 68 x {}]} {emit {\(format %s\)}}
1504if {[S 81 == bz2]} {emit {\b, uses bzip2 compression}}
1505if {[S 84 == gz]} {emit {\b, uses gzip compression}}
1506}
1507if {[S 0 == <ar>]} {emit archive}
1508if {[S 0 == {!<arch>\n__________E}]} {emit {MIPS archive}
1509if {[S 20 == U]} {emit {with MIPS Ucode members}}
1510if {[S 21 == L]} {emit {with MIPSEL members}}
1511if {[S 21 == B]} {emit {with MIPSEB members}}
1512if {[S 19 == L]} {emit {and an EL hash table}}
1513if {[S 19 == B]} {emit {and an EB hash table}}
1514if {[S 22 == X]} {emit {-- out of date}}
1515}
1516if {[S 0 == -h-]} {emit {Software Tools format archive text}}
1517if {[S 0 == !<arch>]} {emit {current ar archive}
1518if {[S 8 == __.SYMDEF]} {emit {random library}}
1519switch -- [Nv I 0] 65538 {emit {- pre SR9.5}} 65539 {emit {- post SR9.5}}
1520switch -- [Nv S 0] 2 {emit {- object archive}} 3 {emit {- shared library module}} 4 {emit {- debug break-pointed module}} 5 {emit {- absolute code program module}}
1521}
1522if {[S 0 == <ar>]} {emit {System V Release 1 ar archive}}
1523if {[S 0 == <ar>]} {emit archive}
1524switch -- [Nv i 0 &0x8080ffff] 2074 {emit {ARC archive data, dynamic LZW}} 2330 {emit {ARC archive data, squashed}} 538 {emit {ARC archive data, uncompressed}} 794 {emit {ARC archive data, packed}} 1050 {emit {ARC archive data, squeezed}} 1562 {emit {ARC archive data, crunched}}
1525if {[S 0 == {\032}]} {emit {RISC OS archive \(spark format\)}}
1526if {[S 0 == {Archive\000}]} {emit {RISC OS archive \(ArcFS format\)}}
1527if {[S 0 == HPAK]} {emit {HPACK archive data}}
1528if {[S 0 == {\351,\001JAM\	}]} {emit {JAM archive,}
1529if {[S 7 x {}]} {emit {version %.4s}}
1530if {[N c 38 == 0x27]} {emit -
1531if {[S 43 x {}]} {emit {label %.11s,}}
1532if {[N i 39 x {}]} {emit {serial %08x,}}
1533if {[S 54 x {}]} {emit {fstype %.8s}}
1534}
1535}
1536if {[S 2 == -lh0-]} {emit {LHarc 1.x archive data [lh0]}}
1537if {[S 2 == -lh1-]} {emit {LHarc 1.x archive data [lh1]}}
1538if {[S 2 == -lz4-]} {emit {LHarc 1.x archive data [lz4]}}
1539if {[S 2 == -lz5-]} {emit {LHarc 1.x archive data [lz5]}}
1540if {[S 2 == -lzs-]} {emit {LHa 2.x? archive data [lzs]}}
1541if {[S 2 == {-lh\40-}]} {emit {LHa 2.x? archive data [lh ]}}
1542if {[S 2 == -lhd-]} {emit {LHa 2.x? archive data [lhd]}}
1543if {[S 2 == -lh2-]} {emit {LHa 2.x? archive data [lh2]}}
1544if {[S 2 == -lh3-]} {emit {LHa 2.x? archive data [lh3]}}
1545if {[S 2 == -lh4-]} {emit {LHa \(2.x\) archive data [lh4]}}
1546if {[S 2 == -lh5-]} {emit {LHa \(2.x\) archive data [lh5]}}
1547if {[S 2 == -lh6-]} {emit {LHa \(2.x\) archive data [lh6]}}
1548if {[S 2 == -lh7-]} {emit {LHa \(2.x\) archive data [lh7]}
1549if {[N c 20 x {}]} {emit {- header level %d}}
1550}
1551if {[S 0 == Rar!]} {emit {RAR archive data,}
1552if {[N c 44 x {}]} {emit v%0x,}
1553switch -- [Nv c 35] 0 {emit {os: MS-DOS}} 1 {emit {os: OS/2}} 2 {emit {os: Win32}} 3 {emit {os: Unix}}
1554}
1555if {[S 0 == SQSH]} {emit {squished archive data \(Acorn RISCOS\)}}
1556if {[S 0 == {UC2\x1a}]} {emit {UC2 archive data}}
1557if {[S 0 == {PK\003\004}]} {emit {Zip archive data}
1558switch -- [Nv c 4] 9 {emit {\b, at least v0.9 to extract}} 10 {emit {\b, at least v1.0 to extract}} 11 {emit {\b, at least v1.1 to extract}} 20 {emit {\b, at least v2.0 to extract}}
1559}
1560if {[N i 20 == 0xfdc4a7dc]} {emit {Zoo archive data}
1561if {[N c 4 > 0x30]} {emit {\b, v%c.}
1562if {[N c 6 > 0x2f]} {emit {\b%c}
1563if {[N c 7 > 0x2f]} {emit {\b%c}}
1564}
1565}
1566if {[N c 32 > 0x0]} {emit {\b, modify: v%d}
1567if {[N c 33 x {}]} {emit {\b.%d+}}
1568}
1569if {[N i 42 == 0xfdc4a7dc]} {emit {\b,}
1570if {[N c 70 > 0x0]} {emit {extract: v%d}
1571if {[N c 71 x {}]} {emit {\b.%d+}}
1572}
1573}
1574}
1575if {[S 10 == {\#\ This\ is\ a\ shell\ archive}]} {emit {shell archive text}}
1576if {[S 0 == {\0\ \ \ \ \ \ \ \ \ \ \ \0\0}]} {emit {LBR archive data}}
1577if {[S 2 == -pm0-]} {emit {PMarc archive data [pm0]}}
1578if {[S 2 == -pm1-]} {emit {PMarc archive data [pm1]}}
1579if {[S 2 == -pm2-]} {emit {PMarc archive data [pm2]}}
1580if {[S 2 == -pms-]} {emit {PMarc SFX archive \(CP/M, DOS\)}}
1581if {[S 5 == -pc1-]} {emit {PopCom compressed executable \(CP/M\)}}
1582if {[S 4 == {gtktalog\ }]} {emit {GTKtalog catalog data,}
1583if {[S 13 == 3]} {emit {version 3}
1584if {[N S 14 == 0x677a]} {emit {\(gzipped\)}}
1585if {[N S 14 != 0x677a]} {emit {\(not gzipped\)}}
1586}
1587if {[S 13 > 3]} {emit {version %s}}
1588}
1589if {[S 0 == {PAR\0}]} {emit {PARity archive data}
1590if {[N s 48 == 0x0]} {emit {- Index file}}
1591if {[N s 48 > 0x0]} {emit {- file number %d}}
1592}
1593if {[S 0 == d8:announce]} {emit {BitTorrent file}}
1594if {[S 0 == {PK00PK\003\004}]} {emit {Zip archive data}}
1595if {[S 7 == **ACE**]} {emit {ACE compressed archive}
1596if {[N c 15 > 0x0]} {emit {version %d}}
1597switch -- [Nv c 16] 0 {emit {\b, from MS-DOS}} 1 {emit {\b, from OS/2}} 2 {emit {\b, from Win/32}} 3 {emit {\b, from Unix}} 4 {emit {\b, from MacOS}} 5 {emit {\b, from WinNT}} 6 {emit {\b, from Primos}} 7 {emit {\b, from AppleGS}} 8 {emit {\b, from Atari}} 9 {emit {\b, from Vax/VMS}} 10 {emit {\b, from Amiga}} 11 {emit {\b, from Next}}
1598if {[N c 14 x {}]} {emit {\b, version %d to extract}}
1599if {[N s 5 & 0x80]} {emit {\b, multiple volumes,}
1600if {[N c 17 x {}]} {emit {\b \(part %d\),}}
1601}
1602if {[N s 5 & 0x2]} {emit {\b, contains comment}}
1603if {[N s 5 & 0x200]} {emit {\b, sfx}}
1604if {[N s 5 & 0x400]} {emit {\b, small dictionary}}
1605if {[N s 5 & 0x800]} {emit {\b, multi-volume}}
1606if {[N s 5 & 0x1000]} {emit {\b, contains AV-String}}
1607if {[N s 5 & 0x2000]} {emit {\b, with recovery record}}
1608if {[N s 5 & 0x4000]} {emit {\b, locked}}
1609if {[N s 5 & 0x8000]} {emit {\b, solid}}
1610}
1611if {[S 26 == sfArk]} {emit {sfArk compressed Soundfont}
1612if {[S 21 == 2]} {if {[S 1 x {}]} {emit {Version %s}}
1613if {[S 42 x {}]} {emit {: %s}}
1614}
1615}
1616if {[S 0 == {Packed\ File\ }]} {emit {Personal		NetWare Packed File}
1617if {[S 12 x {}]} {emit {\b, was \"%.12s\"}}
1618}
1619if {[S 0 == *STA]} {emit Aster*x
1620if {[S 7 == WORD]} {emit {Words Document}}
1621if {[S 7 == GRAP]} {emit Graphic}
1622if {[S 7 == SPRE]} {emit Spreadsheet}
1623if {[S 7 == MACR]} {emit Macro}
1624}
1625if {[S 0 == 2278]} {emit {Aster*x Version 2}
1626switch -- [Nv c 29] 54 {emit {Words Document}} 53 {emit Graphic} 50 {emit Spreadsheet} 56 {emit Macro}
1627}
1628if {[S 0 == {\000\004\036\212\200}]} {emit {3b2 core file}
1629if {[S 364 x {}]} {emit {of '%s'}}
1630}
1631if {[S 0 == .snd]} {emit {Sun/NeXT audio data:}
1632switch -- [Nv I 12] 1 {emit {8-bit ISDN mu-law,}} 2 {emit {8-bit linear PCM [REF-PCM],}} 3 {emit {16-bit linear PCM,}} 4 {emit {24-bit linear PCM,}} 5 {emit {32-bit linear PCM,}} 6 {emit {32-bit IEEE floating point,}} 7 {emit {64-bit IEEE floating point,}} 8 {emit {Fragmented sample data,}} 10 {emit {DSP program,}} 11 {emit {8-bit fixed point,}} 12 {emit {16-bit fixed point,}} 13 {emit {24-bit fixed point,}} 14 {emit {32-bit fixed point,}} 18 {emit {16-bit linear with emphasis,}} 19 {emit {16-bit linear compressed,}} 20 {emit {16-bit linear with emphasis and compression,}} 21 {emit {Music kit DSP commands,}} 23 {emit {8-bit ISDN mu-law compressed \(CCITT G.721 ADPCM voice data encoding\),}} 24 {emit {compressed \(8-bit CCITT G.722 ADPCM\)}} 25 {emit {compressed \(3-bit CCITT G.723.3 ADPCM\),}} 26 {emit {compressed \(5-bit CCITT G.723.5 ADPCM\),}} 27 {emit {8-bit A-law \(CCITT G.711\),}}
1633switch -- [Nv I 20] 1 {emit mono,} 2 {emit stereo,} 4 {emit quad,}
1634if {[N I 16 > 0x0]} {emit {%d Hz}}
1635}
1636if {[S 0 == MThd]} {emit {Standard MIDI data}
1637if {[N S 8 x {}]} {emit {\(format %d\)}}
1638if {[N S 10 x {}]} {emit {using %d track}}
1639if {[N S 10 > 0x1]} {emit {\bs}}
1640if {[N S 12 x {} &0x7fff]} {emit {at 1/%d}}
1641if {[N S 12 > 0x0 &0x8000]} {emit SMPTE}
1642}
1643if {[S 0 == CTMF]} {emit {Creative Music \(CMF\) data}}
1644if {[S 0 == SBI]} {emit {SoundBlaster instrument data}}
1645if {[S 0 == {Creative\ Voice\ File}]} {emit {Creative Labs voice data}
1646if {[N c 19 == 0x1a]} {emit 139 0}
1647if {[N c 23 > 0x0]} {emit {- version %d}}
1648if {[N c 22 > 0x0]} {emit {\b.%d}}
1649}
1650if {[S 0 == EMOD]} {emit {Extended MOD sound data,}
1651if {[N c 4 x {} &0xf0]} {emit {version %d}}
1652if {[N c 4 x {} &0x0f]} {emit {\b.%d,}}
1653if {[N c 45 x {}]} {emit {%d instruments}}
1654switch -- [Nv c 83] 0 {emit {\(module\)}} 1 {emit {\(song\)}}
1655}
1656if {[S 0 == .RMF]} {emit {RealMedia file}}
1657if {[S 0 == MAS_U]} {emit {ULT\(imate\) Module sound data}}
1658if {[S 44 == SCRM]} {emit {ScreamTracker III Module sound data}
1659if {[S 0 x {}]} {emit {Title: \"%s\"}}
1660}
1661if {[S 0 == {GF1PATCH110\0ID\#000002\0}]} {emit {GUS patch}}
1662if {[S 0 == {GF1PATCH100\0ID\#000002\0}]} {emit {Old GUS	patch}}
1663if {[S 0 == MAS_UTrack_V00]} {if {[S 14 > /0]} {emit {ultratracker V1.%.1s module sound data}}
1664}
1665if {[S 0 == UN05]} {emit {MikMod UNI format module sound data}}
1666if {[S 0 == {Extended\ Module:}]} {emit {Fasttracker II module sound data}
1667if {[S 17 x {}]} {emit {Title: \"%s\"}}
1668}
1669if {[S 21 == !SCREAM! c]} {emit {Screamtracker 2 module sound data}}
1670if {[S 21 == BMOD2STM]} {emit {Screamtracker 2 module sound data}}
1671if {[S 1080 == M.K.]} {emit {4-channel Protracker module sound data}
1672if {[S 0 x {}]} {emit {Title: \"%s\"}}
1673}
1674if {[S 1080 == M!K!]} {emit {4-channel Protracker module sound data}
1675if {[S 0 x {}]} {emit {Title: \"%s\"}}
1676}
1677if {[S 1080 == FLT4]} {emit {4-channel Startracker module sound data}
1678if {[S 0 x {}]} {emit {Title: \"%s\"}}
1679}
1680if {[S 1080 == FLT8]} {emit {8-channel Startracker module sound data}
1681if {[S 0 x {}]} {emit {Title: \"%s\"}}
1682}
1683if {[S 1080 == 4CHN]} {emit {4-channel Fasttracker module sound data}
1684if {[S 0 x {}]} {emit {Title: \"%s\"}}
1685}
1686if {[S 1080 == 6CHN]} {emit {6-channel Fasttracker module sound data}
1687if {[S 0 x {}]} {emit {Title: \"%s\"}}
1688}
1689if {[S 1080 == 8CHN]} {emit {8-channel Fasttracker module sound data}
1690if {[S 0 x {}]} {emit {Title: \"%s\"}}
1691}
1692if {[S 1080 == CD81]} {emit {8-channel Octalyser module sound data}
1693if {[S 0 x {}]} {emit {Title: \"%s\"}}
1694}
1695if {[S 1080 == OKTA]} {emit {8-channel Oktalyzer module sound data}
1696if {[S 0 x {}]} {emit {Title: \"%s\"}}
1697}
1698if {[S 1080 == 16CN]} {emit {16-channel Taketracker module sound data}
1699if {[S 0 x {}]} {emit {Title: \"%s\"}}
1700}
1701if {[S 1080 == 32CN]} {emit {32-channel Taketracker module sound data}
1702if {[S 0 x {}]} {emit {Title: \"%s\"}}
1703}
1704if {[S 0 == TOC]} {emit {TOC sound file}}
1705if {[S 0 == {SIDPLAY\ INFOFILE}]} {emit {Sidplay info file}}
1706if {[S 0 == PSID]} {emit {PlaySID v2.2+ \(AMIGA\) sidtune}
1707if {[N S 4 > 0x0]} {emit {w/ header v%d,}}
1708if {[N S 14 == 0x1]} {emit {single song,}}
1709if {[N S 14 > 0x1]} {emit {%d songs,}}
1710if {[N S 16 > 0x0]} {emit {default song: %d}}
1711if {[S 22 x {}]} {emit {name: \"%s\"}}
1712if {[S 54 x {}]} {emit {author: \"%s\"}}
1713if {[S 86 x {}]} {emit {copyright: \"%s\"}}
1714}
1715if {[S 0 == RSID]} {emit {RSID sidtune PlaySID compatible}
1716if {[N S 4 > 0x0]} {emit {w/ header v%d,}}
1717if {[N S 14 == 0x1]} {emit {single song,}}
1718if {[N S 14 > 0x1]} {emit {%d songs,}}
1719if {[N S 16 > 0x0]} {emit {default song: %d}}
1720if {[S 22 x {}]} {emit {name: \"%s\"}}
1721if {[S 54 x {}]} {emit {author: \"%s\"}}
1722if {[S 86 x {}]} {emit {copyright: \"%s\"}}
1723}
1724if {[S 0 == {NIST_1A\n\ \ \ 1024\n}]} {emit {NIST SPHERE file}}
1725if {[S 0 == {SOUND\ SAMPLE\ DATA\ }]} {emit {Sample Vision file}}
1726if {[S 0 == 2BIT]} {emit {Audio Visual Research file,}
1727switch -- [Nv S 12] 0 {emit mono,} -1 {emit stereo,}
1728if {[N S 14 x {}]} {emit {%d bits}}
1729switch -- [Nv S 16] 0 {emit unsigned,} -1 {emit signed,}
1730if {[N I 22 x {} &0x00ffffff]} {emit {%d Hz,}}
1731switch -- [Nv S 18] 0 {emit {no loop,}} -1 {emit loop,}
1732if {[N c 21 <= 0x7f]} {emit {note %d,}}
1733switch -- [Nv c 22] 0 {emit {replay 5.485 KHz}} 1 {emit {replay 8.084 KHz}} 2 {emit {replay 10.971 Khz}} 3 {emit {replay 16.168 Khz}} 4 {emit {replay 21.942 KHz}} 5 {emit {replay 32.336 KHz}} 6 {emit {replay 43.885 KHz}} 7 {emit {replay 47.261 KHz}}
1734}
1735if {[S 0 == _SGI_SoundTrack]} {emit {SGI SoundTrack project file}}
1736if {[S 0 == ID3]} {emit {MP3 file with ID3 version 2.}
1737if {[N c 3 < 0xff]} {emit {\b%d.}}
1738if {[N c 4 < 0xff]} {emit {\b%d tag}}
1739}
1740if {[S 0 == {NESM\x1a}]} {emit {NES Sound File}
1741if {[S 14 x {}]} {emit {\(\"%s\" by}}
1742if {[S 46 x {}]} {emit {%s, copyright}}
1743if {[S 78 x {}]} {emit {%s\),}}
1744if {[N c 5 x {}]} {emit {version %d,}}
1745if {[N c 6 x {}]} {emit {%d tracks,}}
1746if {[N c 122 == 0x1 &0x2]} {emit {dual PAL/NTSC}}
1747switch -- [Nv c 122 &0x1] 1 {emit PAL} 0 {emit NTSC}
1748}
1749if {[S 0 == IMPM]} {emit {Impulse Tracker module sound data -}
1750if {[S 4 x {}]} {emit {\"%s\"}}
1751if {[N s 40 != 0x0]} {emit {compatible w/ITv%x}}
1752if {[N s 42 != 0x0]} {emit {created w/ITv%x}}
1753}
1754if {[S 60 == IM10]} {emit {Imago Orpheus module sound data -}
1755if {[S 0 x {}]} {emit {\"%s\"}}
1756}
1757if {[S 0 == IMPS]} {emit {Impulse Tracker Sample}
1758if {[N c 18 & 0x2]} {emit {16 bit}}
1759if {[N c 18 ^ 0x2]} {emit {8 bit}}
1760if {[N c 18 & 0x4]} {emit stereo}
1761if {[N c 18 ^ 0x4]} {emit mono}
1762}
1763if {[S 0 == IMPI]} {emit {Impulse Tracker Instrument}
1764if {[N s 28 != 0x0]} {emit ITv%x}
1765if {[N c 30 != 0x0]} {emit {%d samples}}
1766}
1767if {[S 0 == LM8953]} {emit {Yamaha TX Wave}
1768switch -- [Nv c 22] 73 {emit looped} -55 {emit non-looped}
1769switch -- [Nv c 23] 1 {emit 33kHz} 2 {emit 50kHz} 3 {emit 16kHz}
1770}
1771if {[S 76 == SCRS]} {emit {Scream Tracker Sample}
1772switch -- [Nv c 0] 1 {emit sample} 2 {emit {adlib melody}}
1773if {[N c 0 > 0x2]} {emit {adlib drum}}
1774if {[N c 31 & 0x2]} {emit stereo}
1775if {[N c 31 ^ 0x2]} {emit mono}
1776if {[N c 31 & 0x4]} {emit {16bit little endian}}
1777if {[N c 31 ^ 0x4]} {emit 8bit}
1778switch -- [Nv c 30] 0 {emit unpacked} 1 {emit packed}
1779}
1780if {[S 0 == MMD0]} {emit {MED music file, version 0}}
1781if {[S 0 == MMD1]} {emit {OctaMED Pro music file, version 1}}
1782if {[S 0 == MMD3]} {emit {OctaMED Soundstudio music file, version 3}}
1783if {[S 0 == OctaMEDCmpr]} {emit {OctaMED Soundstudio compressed file}}
1784if {[S 0 == MED]} {emit MED_Song}
1785if {[S 0 == SymM]} {emit {Symphonie SymMOD music file}}
1786if {[S 0 == THX]} {emit {AHX version}
1787switch -- [Nv c 3] 0 {emit {1 module data}} 1 {emit {2 module data}}
1788}
1789if {[S 0 == OKTASONG]} {emit {Oktalyzer module data}}
1790if {[S 0 == {DIGI\ Booster\ module\0}]} {emit %s
1791if {[N c 20 > 0x0]} {emit %c
1792if {[N c 21 > 0x0]} {emit {\b%c}
1793if {[N c 22 > 0x0]} {emit {\b%c}
1794if {[N c 23 > 0x0]} {emit {\b%c}}
1795}
1796}
1797}
1798if {[S 610 x {}]} {emit {\b, \"%s\"}}
1799}
1800if {[S 0 == DBM0]} {emit {DIGI Booster Pro Module}
1801if {[N c 4 > 0x0]} {emit V%X.
1802if {[N c 5 x {}]} {emit {\b%02X}}
1803}
1804if {[S 16 x {}]} {emit {\b, \"%s\"}}
1805}
1806if {[S 0 == FTMN]} {emit {FaceTheMusic module}
1807if {[S 16 > {\0d}]} {emit {\b, \"%s\"}}
1808}
1809if {[S 0 == {AMShdr\32}]} {emit {Velvet Studio AMS Module v2.2}}
1810if {[S 0 == Extreme]} {emit {Extreme Tracker AMS Module v1.3}}
1811if {[S 0 == DDMF]} {emit {Xtracker DMF Module}
1812if {[N c 4 x {}]} {emit v%i}
1813if {[S 13 x {}]} {emit {Title: \"%s\"}}
1814if {[S 43 x {}]} {emit {Composer: \"%s\"}}
1815}
1816if {[S 0 == {DSM\32}]} {emit {Dynamic Studio Module DSM}}
1817if {[S 0 == SONG]} {emit {DigiTrekker DTM Module}}
1818if {[S 0 == DMDL]} {emit {DigiTrakker MDL Module}}
1819if {[S 0 == {PSM\32}]} {emit {Protracker Studio PSM Module}}
1820if {[S 44 == PTMF]} {emit {Poly Tracker PTM Module}
1821if {[S 0 > {\32}]} {emit {Title: \"%s\"}}
1822}
1823if {[S 0 == MT20]} {emit {MadTracker 2.0 Module MT2}}
1824if {[S 0 == {RAD\40by\40REALiTY!!}]} {emit {RAD Adlib Tracker Module RAD}}
1825if {[S 0 == RTMM]} {emit {RTM Module}}
1826if {[S 1062 == MaDoKaN96]} {emit {XMS Adlib Module}
1827if {[S 0 x {}]} {emit {Composer: \"%s\"}}
1828}
1829if {[S 0 == AMF]} {emit {AMF Module}
1830if {[S 4 x {}]} {emit {Title: \"%s\"}}
1831}
1832if {[S 0 == MODINFO1]} {emit {Open Cubic Player Module Inforation MDZ}}
1833if {[S 0 == {Extended\40Instrument:}]} {emit {Fast Tracker II Instrument}}
1834if {[S 0 == {\210NOA\015\012\032}]} {emit {NOA Nancy Codec Movie file}}
1835if {[S 0 == MMMD]} {emit {Yamaha SMAF file}}
1836if {[S 0 == {\001Sharp\040JisakuMelody}]} {emit {SHARP Cell-Phone ringing Melody}
1837if {[S 20 == Ver01.00]} {emit {Ver. 1.00}
1838if {[N c 32 x {}]} {emit {, %d tracks}}
1839}
1840}
1841if {[S 0 == fLaC]} {emit {FLAC audio bitstream data}
1842if {[N c 4 > 0x0 &0x7f]} {emit {\b, unknown version}}
1843if {[N c 4 == 0x0 &0x7f]} {emit {\b}
1844switch -- [Nv S 20 &0x1f0] 48 {emit {\b, 4 bit}} 80 {emit {\b, 6 bit}} 112 {emit {\b, 8 bit}} 176 {emit {\b, 12 bit}} 240 {emit {\b, 16 bit}} 368 {emit {\b, 24 bit}}
1845switch -- [Nv c 20 &0xe] 0 {emit {\b, mono}} 2 {emit {\b, stereo}} 4 {emit {\b, 3 channels}} 6 {emit {\b, 4 channels}} 8 {emit {\b, 5 channels}} 10 {emit {\b, 6 channels}} 12 {emit {\b, 7 channels}} 14 {emit {\b, 8 channels}}
1846switch -- [Nv I 17 &0xfffff0] 705600 {emit {\b, 44.1 kHz}} 768000 {emit {\b, 48 kHz}} 512000 {emit {\b, 32 kHz}} 352800 {emit {\b, 22.05 kHz}} 384000 {emit {\b, 24 kHz}} 256000 {emit {\b, 16 kHz}} 176400 {emit {\b, 11.025 kHz}} 192000 {emit {\b, 12 kHz}} 128000 {emit {\b, 8 kHz}} 1536000 {emit {\b, 96 kHz}} 1024000 {emit {\b, 64 kHz}}
1847if {[N c 21 > 0x0 &0xf]} {emit {\b, >4G samples}}
1848if {[N c 21 == 0x0 &0xf]} {emit {\b}
1849if {[N I 22 > 0x0]} {emit {\b, %u samples}}
1850if {[N I 22 == 0x0]} {emit {\b, length unknown}}
1851}
1852}
1853}
1854if {[S 0 == VBOX]} {emit {VBOX voice message data}}
1855if {[S 8 == RB40]} {emit {RBS Song file}
1856if {[S 29 == ReBorn]} {emit {created by ReBorn}}
1857if {[S 37 == Propellerhead]} {emit {created by ReBirth}}
1858}
1859if {[S 0 == {A\#S\#C\#S\#S\#L\#V\#3}]} {emit {Synthesizer Generator or Kimwitu data}}
1860if {[S 0 == {A\#S\#C\#S\#S\#L\#HUB}]} {emit {Kimwitu++ data}}
1861if {[S 0 == TFMX-SONG]} {emit {TFMX module sound data}}
1862if {[S 0 == {MAC\	X/Monkey}]} {emit audio,
1863if {[N s 4 > 0x0]} {emit {version %d,}}
1864if {[N s 6 > 0x0]} {emit {compression level %d,}}
1865if {[N s 8 > 0x0]} {emit {flags %x,}}
1866if {[N s 10 > 0x0]} {emit {channels %d,}}
1867if {[N i 12 > 0x0]} {emit {samplerate %d,}}
1868if {[N i 24 > 0x0]} {emit {frames %d}}
1869}
1870if {[S 0 == bFLT]} {emit {BFLT executable}
1871if {[N I 4 x {}]} {emit {- version %ld}}
1872if {[N I 4 == 0x4]} {if {[N I 36 == 0x1 &0x1]} {emit ram}
1873if {[N I 36 == 0x2 &0x2]} {emit gotpic}
1874if {[N I 36 == 0x4 &0x4]} {emit gzip}
1875if {[N I 36 == 0x8 &0x8]} {emit gzdata}
1876}
1877}
1878if {[S 0 == BLENDER]} {emit Blender3D,
1879if {[S 7 == _]} {emit {saved as 32-bits}}
1880if {[S 7 == -]} {emit {saved as 64-bits}}
1881if {[S 8 == v]} {emit {little endian}}
1882if {[S 8 == V]} {emit {big endian}}
1883if {[N c 9 x {}]} {emit {with version %c.}}
1884if {[N c 10 x {}]} {emit {\b%c}}
1885if {[N c 11 x {}]} {emit {\b%c}}
1886}
1887if {[S 0 == !<bout>]} {emit {b.out archive}
1888if {[S 8 == __.SYMDEF]} {emit {random library}}
1889}
1890switch -- [Nv I 0 &077777777] 196875 {emit {sparc demand paged}
1891if {[N c 0 & 0x80]} {if {[N I 20 < 0x1000]} {emit {shared library}}
1892if {[N I 20 == 0x1000]} {emit {dynamically linked executable}}
1893if {[N I 20 > 0x1000]} {emit {dynamically linked executable}}
1894}
1895if {[N c 0 ^ 0x80]} {emit executable}
1896if {[N I 16 > 0x0]} {emit {not stripped}}
1897if {[N I 36 == 0xb4100001]} {emit {\(uses shared libs\)}}
1898} 196872 {emit {sparc pure}
1899if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1900if {[N c 0 ^ 0x80]} {emit executable}
1901if {[N I 16 > 0x0]} {emit {not stripped}}
1902if {[N I 36 == 0xb4100001]} {emit {\(uses shared libs\)}}
1903} 196871 {emit sparc
1904if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1905if {[N c 0 ^ 0x80]} {emit executable}
1906if {[N I 16 > 0x0]} {emit {not stripped}}
1907if {[N I 36 == 0xb4100001]} {emit {\(uses shared libs\)}}
1908} 196875 {emit {sparc demand paged}
1909if {[N c 0 & 0x80]} {if {[N I 20 < 0x1000]} {emit {shared library}}
1910if {[N I 20 == 0x1000]} {emit {dynamically linked executable}}
1911if {[N I 20 > 0x1000]} {emit {dynamically linked executable}}
1912}
1913if {[N c 0 ^ 0x80]} {emit executable}
1914if {[N I 16 > 0x0]} {emit {not stripped}}
1915} 196872 {emit {sparc pure}
1916if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1917if {[N c 0 ^ 0x80]} {emit executable}
1918if {[N I 16 > 0x0]} {emit {not stripped}}
1919} 196871 {emit sparc
1920if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1921if {[N c 0 ^ 0x80]} {emit executable}
1922if {[N I 16 > 0x0]} {emit {not stripped}}
1923} 131339 {emit {mc68020 demand paged}
1924if {[N c 0 & 0x80]} {if {[N I 20 < 0x1000]} {emit {shared library}}
1925if {[N I 20 == 0x1000]} {emit {dynamically linked executable}}
1926if {[N I 20 > 0x1000]} {emit {dynamically linked executable}}
1927}
1928if {[N I 16 > 0x0]} {emit {not stripped}}
1929} 131336 {emit {mc68020 pure}
1930if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1931if {[N c 0 ^ 0x80]} {emit executable}
1932if {[N I 16 > 0x0]} {emit {not stripped}}
1933} 131335 {emit mc68020
1934if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1935if {[N c 0 ^ 0x80]} {emit executable}
1936if {[N I 16 > 0x0]} {emit {not stripped}}
1937} 65803 {emit {mc68010 demand paged}
1938if {[N c 0 & 0x80]} {if {[N I 20 < 0x1000]} {emit {shared library}}
1939if {[N I 20 == 0x1000]} {emit {dynamically linked executable}}
1940if {[N I 20 > 0x1000]} {emit {dynamically linked executable}}
1941}
1942if {[N I 16 > 0x0]} {emit {not stripped}}
1943} 65800 {emit {mc68010 pure}
1944if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1945if {[N c 0 ^ 0x80]} {emit executable}
1946if {[N I 16 > 0x0]} {emit {not stripped}}
1947} 65799 {emit mc68010
1948if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
1949if {[N c 0 ^ 0x80]} {emit executable}
1950if {[N I 16 > 0x0]} {emit {not stripped}}
1951}
1952if {[S 0 == cscope]} {emit {cscope reference data}
1953if {[S 7 x {}]} {emit {version %.2s}}
1954if {[S 7 > 14]} {emit 218 1}
1955}
1956switch -- [Nv I 91392] 302072064 {emit {D64 Image}} 302072192 {emit {D71 Image}}
1957if {[N I 399360 == 0x28034400]} {emit {D81 Image}}
1958if {[S 0 == {C64\40CARTRIDGE}]} {emit {CCS C64 Emultar Cartridge Image}}
1959if {[S 0 == GCR-1541]} {emit {GCR Image}
1960if {[N c 8 x {}]} {emit {version: $i}}
1961if {[N c 9 x {}]} {emit {tracks: %i}}
1962}
1963if {[S 9 == PSUR]} {emit {ARC archive \(c64\)}}
1964if {[S 2 == -LH1-]} {emit {LHA archive \(c64\)}}
1965if {[S 0 == C64File]} {emit {PC64 Emulator file}
1966if {[S 8 x {}]} {emit {\"%s\"}}
1967}
1968if {[S 0 == C64Image]} {emit {PC64 Freezer Image}}
1969if {[S 0 == {CBM\144\0\0}]} {emit {Power 64 C64 Emulator Snapshot}}
1970if {[S 0 == {\101\103\061\060\061}]} {emit AutoCAD
1971if {[S 5 == {\062\000\000\000\000}]} {emit {DWG ver. R13}}
1972if {[S 5 == {\064\000\000\000\000}]} {emit {DWG ver. R14}}
1973}
1974if {[S 0 == {\010\011\376}]} {emit Microstation
1975if {[S 3 == {\002}]} {if {[S 30 == {\372\104}]} {emit {DGN File}}
1976if {[S 30 == {\172\104}]} {emit {DGN File}}
1977if {[S 30 == {\026\105}]} {emit {DGN File}}
1978}
1979if {[S 4 == {\030\000\000}]} {emit {CIT File}}
1980}
1981if {[S 0 == AC1012]} {emit {AutoCad \(release 12\)}}
1982if {[S 0 == AC1014]} {emit {AutoCad \(release 14\)}}
1983if {[S 0 == {\#\040xmcd} b]} {emit {CDDB\(tm\) format CD text data}}
1984if {[S 0 == {\\1cw\ }]} {emit {ChiWriter file}
1985if {[S 5 x {}]} {emit {version %s}}
1986}
1987if {[S 0 == {\\1cw}]} {emit {ChiWriter file}}
1988if {[S 0 == {\{title}]} {emit {Chord text file}}
1989if {[S 0 == RuneCT]} {emit {Citrus locale declaration for LC_CTYPE}}
1990if {[S 514 == {\377\377\377\377\000}]} {emit {Claris clip art?}
1991if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0}]} {emit yes.}
1992}
1993if {[S 514 == {\377\377\377\377\001}]} {emit {Claris clip art?}
1994if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0}]} {emit yes.}
1995}
1996if {[S 0 == {\002\000\210\003\102\117\102\117\000\001\206}]} {emit {Claris works document}}
1997if {[S 0 == {\020\341\000\000\010\010}]} {emit {Claris Works pallete files .plt}}
1998if {[S 0 == {\002\271\262\000\040\002\000\164}]} {emit {Claris works dictionary}}
1999if {[S 0 == GRG]} {emit {Gringotts data file}
2000if {[S 3 == 1]} {emit {v.1, MCRYPT S2K, SERPENT crypt, SHA-256 hash, ZLib lvl.9}}
2001if {[S 3 == 2]} {emit {v.2, MCRYPT S2K,}
2002switch -- [Nv c 8 &0x70] 0 {emit {RIJNDAEL-128 crypt,}} 16 {emit {SERPENT crypt,}} 32 {emit {TWOFISH crypt,}} 48 {emit {CAST-256 crypt,}} 64 {emit {SAFER+ crypt,}} 80 {emit {LOKI97 crypt,}} 96 {emit {3DES crypt,}} 112 {emit {RIJNDAEL-256 crypt,}}
2003switch -- [Nv c 8 &0x08] 0 {emit {SHA1 hash,}} 8 {emit {RIPEMD-160 hash,}}
2004switch -- [Nv c 8 &0x04] 0 {emit ZLib} 4 {emit BZip2}
2005switch -- [Nv c 8 &0x03] 0 {emit lvl.0} 1 {emit lvl.3} 2 {emit lvl.6} 3 {emit lvl.9}
2006}
2007if {[S 3 == 3]} {emit {v.3, OpenPGP S2K,}
2008switch -- [Nv c 8 &0x70] 0 {emit {RIJNDAEL-128 crypt,}} 16 {emit {SERPENT crypt,}} 32 {emit {TWOFISH crypt,}} 48 {emit {CAST-256 crypt,}} 64 {emit {SAFER+ crypt,}} 80 {emit {LOKI97 crypt,}} 96 {emit {3DES crypt,}} 112 {emit {RIJNDAEL-256 crypt,}}
2009switch -- [Nv c 8 &0x08] 0 {emit {SHA1 hash,}} 8 {emit {RIPEMD-160 hash,}}
2010switch -- [Nv c 8 &0x04] 0 {emit ZLib} 4 {emit BZip2}
2011switch -- [Nv c 8 &0x03] 0 {emit lvl.0} 1 {emit lvl.3} 2 {emit lvl.6} 3 {emit lvl.9}
2012}
2013if {[S 3 > 3]} {emit {v.%.1s \(unknown details\)}}
2014}
2015if {[S 0 == :]} {emit {shell archive or script for antique kernel text}}
2016if {[S 0 == {\#!\ /bin/sh} b]} {emit {Bourne shell script text executable}}
2017if {[S 0 == {\#!\ /bin/csh} b]} {emit {C shell script text executable}}
2018if {[S 0 == {\#!\ /bin/ksh} b]} {emit {Korn shell script text executable}}
2019if {[S 0 == {\#!\ /bin/tcsh} b]} {emit {Tenex C shell script text executable}}
2020if {[S 0 == {\#!\ /usr/local/tcsh} b]} {emit {Tenex C shell script text executable}}
2021if {[S 0 == {\#!\ /usr/local/bin/tcsh} b]} {emit {Tenex C shell script text executable}}
2022if {[S 0 == {\#!\ /bin/zsh} b]} {emit {Paul Falstad's zsh script text executable}}
2023if {[S 0 == {\#!\ /usr/bin/zsh} b]} {emit {Paul Falstad's zsh script text executable}}
2024if {[S 0 == {\#!\ /usr/local/bin/zsh} b]} {emit {Paul Falstad's zsh script text executable}}
2025if {[S 0 == {\#!\ /usr/local/bin/ash} b]} {emit {Neil Brown's ash script text executable}}
2026if {[S 0 == {\#!\ /usr/local/bin/ae} b]} {emit {Neil Brown's ae script text executable}}
2027if {[S 0 == {\#!\ /bin/nawk} b]} {emit {new awk script text executable}}
2028if {[S 0 == {\#!\ /usr/bin/nawk} b]} {emit {new awk script text executable}}
2029if {[S 0 == {\#!\ /usr/local/bin/nawk} b]} {emit {new awk script text executable}}
2030if {[S 0 == {\#!\ /bin/gawk} b]} {emit {GNU awk script text executable}}
2031if {[S 0 == {\#!\ /usr/bin/gawk} b]} {emit {GNU awk script text executable}}
2032if {[S 0 == {\#!\ /usr/local/bin/gawk} b]} {emit {GNU awk script text executable}}
2033if {[S 0 == {\#!\ /bin/awk} b]} {emit {awk script text executable}}
2034if {[S 0 == {\#!\ /usr/bin/awk} b]} {emit {awk script text executable}}
2035if {[S 0 == BEGIN]} {emit {awk script text}}
2036if {[S 0 == {\#!\ /bin/rc} b]} {emit {Plan 9 rc shell script text executable}}
2037if {[S 0 == {\#!\ /bin/bash} b]} {emit {Bourne-Again shell script text executable}}
2038if {[S 0 == {\#!\ /usr/local/bin/bash} b]} {emit {Bourne-Again shell script text executable}}
2039if {[S 0 == {\#!/usr/bin/env}]} {emit a
2040if {[S 15 x {}]} {emit {%s script text executable}}
2041}
2042if {[S 0 == {\#!\ /usr/bin/env}]} {emit a
2043if {[S 16 x {}]} {emit {%s script text executable}}
2044}
2045if {[S 0 == <?php c]} {emit {PHP script text}}
2046if {[S 0 == {<?\n}]} {emit {PHP script text}}
2047if {[S 0 == {<?\r}]} {emit {PHP script text}}
2048if {[S 0 == {\#!\ /usr/local/bin/php} b]} {emit {PHP script text executable}}
2049if {[S 0 == {\#!\ /usr/bin/php} b]} {emit {PHP script text executable}}
2050if {[S 0 == {Zend\x00}]} {emit {PHP script Zend Optimizer data}}
2051if {[Sx 1 0 == {$Suite}]} {emit {TTCN Abstract Test Suite}
2052if {[Sx 2 [R 1] == {$SuiteId}]} {if {[S [R 1] > {\n}]} {emit %s}
2053}
2054L 1;if {[Sx 2 [R 2] == {$SuiteId}]} {if {[S [R 1] > {\n}]} {emit %s}
2055}
2056L 1;if {[Sx 2 [R 3] == {$SuiteId}]} {if {[S [R 1] > {\n}]} {emit %s}
2057}
2058}
2059if {[S 0 == mscdocument]} {emit {Message Sequence Chart \(document\)}}
2060if {[S 0 == msc]} {emit {Message Sequence Chart \(chart\)}}
2061if {[S 0 == submsc]} {emit {Message Sequence Chart \(subchart\)}}
2062if {[S 0 == {\037\235}]} {emit {compress'd data}
2063if {[N c 2 > 0x0 &0x80]} {emit {block compressed}}
2064if {[N c 2 x {} &0x1f]} {emit {%d bits}}
2065}
2066if {[S 0 == {\037\213}]} {emit {gzip compressed data}
2067if {[N c 2 < 0x8]} {emit {\b, reserved method}}
2068if {[N c 2 > 0x8]} {emit {\b, unknown method}}
2069if {[N c 3 & 0x1]} {emit {\b, ASCII}}
2070if {[N c 3 & 0x2]} {emit {\b, continuation}}
2071if {[N c 3 & 0x4]} {emit {\b, extra field}}
2072if {[N c 3 == 0x8 &0xC]} {if {[S 10 x {}]} {emit {\b, was \"%s\"}}
2073}
2074switch -- [Nv c 9] 0 {emit {\b, from MS-DOS}} 1 {emit {\b, from Amiga}} 2 {emit {\b, from VMS}} 3 {emit {\b, from Unix}} 5 {emit {\b, from Atari}} 6 {emit {\b, from OS/2}} 7 {emit {\b, from MacOS}} 10 {emit {\b, from Tops/20}} 11 {emit {\b, from Win/32}}
2075if {[N c 3 & 0x10]} {emit {\b, comment}}
2076if {[N c 3 & 0x20]} {emit {\b, encrypted}}
2077switch -- [Nv c 8] 2 {emit {\b, max compression}} 4 {emit {\b, max speed}}
2078}
2079if {[S 0 == {\037\036}]} {emit {packed data}
2080if {[N I 2 > 0x1]} {emit {\b, %d characters originally}}
2081if {[N I 2 == 0x1]} {emit {\b, %d character originally}}
2082}
2083if {[S 0 == {\377\037}]} {emit {compacted data}}
2084if {[S 0 == BZh]} {emit {bzip2 compressed data}
2085if {[N c 3 > 0x2f]} {emit {\b, block size = %c00k}}
2086}
2087if {[S 0 == {\037\237}]} {emit {frozen file 2.1}}
2088if {[S 0 == {\037\236}]} {emit {frozen file 1.0 \(or gzip 0.5\)}}
2089if {[S 0 == {\037\240}]} {emit {SCO compress -H \(LZH\) data}}
2090if {[S 0 == BZ]} {emit {bzip compressed data}
2091if {[N c 2 x {}]} {emit {\b, version: %c}}
2092if {[S 3 == 1]} {emit {\b, compression block size 100k}}
2093if {[S 3 == 2]} {emit {\b, compression block size 200k}}
2094if {[S 3 == 3]} {emit {\b, compression block size 300k}}
2095if {[S 3 == 4]} {emit {\b, compression block size 400k}}
2096if {[S 3 == 5]} {emit {\b, compression block size 500k}}
2097if {[S 3 == 6]} {emit {\b, compression block size 600k}}
2098if {[S 3 == 7]} {emit {\b, compression block size 700k}}
2099if {[S 3 == 8]} {emit {\b, compression block size 800k}}
2100if {[S 3 == 9]} {emit {\b, compression block size 900k}}
2101}
2102if {[S 0 == {\x89\x4c\x5a\x4f\x00\x0d\x0a\x1a\x0a}]} {emit {lzop compressed data}
2103if {[N S 9 < 0x940]} {if {[N c 9 == 0x0 &0xf0]} {emit {- version 0.}}
2104if {[N S 9 x {} &0x0fff]} {emit {\b%03x,}}
2105switch -- [Nv c 13] 1 {emit LZO1X-1,} 2 {emit {LZO1X-1\(15\),}} 3 {emit LZO1X-999,}
2106switch -- [Nv c 14] 0 {emit {os: MS-DOS}} 1 {emit {os: Amiga}} 2 {emit {os: VMS}} 3 {emit {os: Unix}} 5 {emit {os: Atari}} 6 {emit {os: OS/2}} 7 {emit {os: MacOS}} 10 {emit {os: Tops/20}} 11 {emit {os: WinNT}} 14 {emit {os: Win32}}
2107}
2108if {[N S 9 > 0x939]} {switch -- [Nv c 9 &0xf0] 0 {emit {- version 0.}} 16 {emit {- version 1.}} 32 {emit {- version 2.}}
2109if {[N S 9 x {} &0x0fff]} {emit {\b%03x,}}
2110switch -- [Nv c 15] 1 {emit LZO1X-1,} 2 {emit {LZO1X-1\(15\),}} 3 {emit LZO1X-999,}
2111switch -- [Nv c 17] 0 {emit {os: MS-DOS}} 1 {emit {os: Amiga}} 2 {emit {os: VMS}} 3 {emit {os: Unix}} 5 {emit {os: Atari}} 6 {emit {os: OS/2}} 7 {emit {os: MacOS}} 10 {emit {os: Tops/20}} 11 {emit {os: WinNT}} 14 {emit {os: Win32}}
2112}
2113}
2114if {[S 0 == {\037\241}]} {emit {Quasijarus strong compressed data}}
2115if {[S 0 == XPKF]} {emit {Amiga xpkf.library compressed data}}
2116if {[S 0 == PP11]} {emit {Power Packer 1.1 compressed data}}
2117if {[S 0 == PP20]} {emit {Power Packer 2.0 compressed data,}
2118switch -- [Nv I 4] 151587081 {emit {fast compression}} 151652874 {emit {mediocre compression}} 151653131 {emit {good compression}} 151653388 {emit {very good compression}} 151653389 {emit {best compression}}
2119}
2120if {[S 0 == {7z\274\257\047\034}]} {emit {7z archive data,}
2121if {[N c 6 x {}]} {emit {version %d}}
2122if {[N c 7 x {}]} {emit {\b.%d}}
2123}
2124if {[S 2 == -afx-]} {emit {AFX compressed file data}}
2125if {[S 0 == {NES\032}]} {emit {iNES ROM dump,}
2126if {[N c 4 x {}]} {emit {%dx16k PRG}}
2127if {[N c 5 x {}]} {emit {\b, %dx8k CHR}}
2128switch -- [Nv c 6 &0x01] 1 {emit {\b, [Vert.]}} 0 {emit {\b, [Horiz.]}}
2129if {[N c 6 == 0x2 &0x02]} {emit {\b, [SRAM]}}
2130switch -- [Nv c 6 &0x04] 4 {emit {\b, [Trainer]}} 8 {emit {\b, [4-Scr]}}
2131}
2132if {[N I 260 == 0xceed6666]} {emit {Gameboy ROM:}
2133if {[S 308 x {}]} {emit {\"%.16s\"}}
2134if {[N c 326 == 0x3]} {emit {\b,[SGB]}}
2135switch -- [Nv c 327] 0 {emit {\b, [ROM ONLY]}} 1 {emit {\b, [ROM+MBC1]}} 2 {emit {\b, [ROM+MBC1+RAM]}} 3 {emit {\b, [ROM+MBC1+RAM+BATT]}} 5 {emit {\b, [ROM+MBC2]}} 6 {emit {\b, [ROM+MBC2+BATTERY]}} 8 {emit {\b, [ROM+RAM]}} 9 {emit {\b, [ROM+RAM+BATTERY]}} 11 {emit {\b, [ROM+MMM01]}} 12 {emit {\b, [ROM+MMM01+SRAM]}} 13 {emit {\b, [ROM+MMM01+SRAM+BATT]}} 15 {emit {\b, [ROM+MBC3+TIMER+BATT]}} 16 {emit {\b, [ROM+MBC3+TIMER+RAM+BATT]}} 17 {emit {\b, [ROM+MBC3]}} 18 {emit {\b, [ROM+MBC3+RAM]}} 19 {emit {\b, [ROM+MBC3+RAM+BATT]}} 25 {emit {\b, [ROM+MBC5]}} 26 {emit {\b, [ROM+MBC5+RAM]}} 27 {emit {\b, [ROM+MBC5+RAM+BATT]}} 28 {emit {\b, [ROM+MBC5+RUMBLE]}} 29 {emit {\b, [ROM+MBC5+RUMBLE+SRAM]}} 30 {emit {\b, [ROM+MBC5+RUMBLE+SRAM+BATT]}} 31 {emit {\b, [Pocket Camera]}} -3 {emit {\b, [Bandai TAMA5]}} -2 {emit {\b, [Hudson HuC-3]}} -1 {emit {\b, [Hudson HuC-1]}}
2136switch -- [Nv c 328] 0 {emit {\b, ROM: 256Kbit}} 1 {emit {\b, ROM: 512Kbit}} 2 {emit {\b, ROM: 1Mbit}} 3 {emit {\b, ROM: 2Mbit}} 4 {emit {\b, ROM: 4Mbit}} 5 {emit {\b, ROM: 8Mbit}} 6 {emit {\b, ROM: 16Mbit}} 82 {emit {\b, ROM: 9Mbit}} 83 {emit {\b, ROM: 10Mbit}} 84 {emit {\b, ROM: 12Mbit}}
2137switch -- [Nv c 329] 1 {emit {\b, RAM: 16Kbit}} 2 {emit {\b, RAM: 64Kbit}} 3 {emit {\b, RAM: 128Kbit}} 4 {emit {\b, RAM: 1Mbit}}
2138}
2139if {[S 256 == SEGA]} {emit {Sega MegaDrive/Genesis raw ROM dump}
2140if {[S 288 x {}]} {emit {Name: \"%.16s\"}}
2141if {[S 272 x {}]} {emit %.16s}
2142if {[S 432 == RA]} {emit {with SRAM}}
2143}
2144if {[S 640 == EAGN]} {emit {Super MagicDrive ROM dump}
2145if {[N c 0 x {}]} {emit {%dx16k blocks}}
2146if {[N c 2 == 0x0]} {emit {\b, last in series or standalone}}
2147if {[N c 2 > 0x0]} {emit {\b, split ROM}}
2148if {[N c 8 == 0xaa]} {emit 298 3}
2149if {[N c 9 == 0xbb]} {emit 298 4}
2150}
2151if {[S 640 == EAMG]} {emit {Super MagicDrive ROM dump}
2152if {[N c 0 x {}]} {emit {%dx16k blocks}}
2153if {[N c 2 x {}]} {emit {\b, last in series or standalone}}
2154if {[N c 8 == 0xaa]} {emit 299 2}
2155if {[N c 9 == 0xbb]} {emit 299 3}
2156}
2157if {[S 0 == LCDi]} {emit {Dream Animator file}}
2158if {[S 0 == {PS-X\ EXE}]} {emit {Sony Playstation executable}
2159if {[S 113 x {}]} {emit {\(%s\)}}
2160}
2161if {[S 0 == XBEH]} {emit {XBE, Microsoft Xbox executable}
2162if {[Nx 2 i 4 == 0x0]} {if {[Nx 3 i [R 2] == 0x0]} {if {[N i [R 2] == 0x0]} {emit {\b, not signed}}
2163}
2164}
2165if {[Nx 2 i 4 > 0x0]} {if {[Nx 3 i [R 2] > 0x0]} {if {[N i [R 2] > 0x0]} {emit {\b, signed}}
2166}
2167}
2168if {[N i 260 == 0x10000]} {if {[N i [I 280 Q -65376] == 0x80000007 &0x80000007]} {emit {\b, all regions}}
2169if {[N i [I 280 Q -65376] != 0x80000007 &0x80000007]} {if {[N i [I 280 Q -65376] > 0x0]} {emit {\(regions:}
2170if {[N i [I 280 Q -65376] & 0x1]} {emit NA}
2171if {[N i [I 280 Q -65376] & 0x2]} {emit Japan}
2172if {[N i [I 280 Q -65376] & 0x4]} {emit Rest_of_World}
2173if {[N i [I 280 Q -65376] & 0x80000000]} {emit Manufacturer}
2174}
2175if {[N i [I 280 Q -65376] > 0x0]} {emit {\b\)}}
2176}
2177}
2178}
2179if {[S 0 == XIP0]} {emit {XIP, Microsoft Xbox data}}
2180if {[S 0 == XTF0]} {emit {XTF, Microsoft Xbox data}}
2181if {[S 0 == Glul]} {emit {Glulx game data}
2182if {[S 8 == IFRS]} {emit {\b, Blorb Interactive Fiction}
2183if {[S 24 == Exec]} {emit {with executable chunk}}
2184}
2185if {[S 8 == IFZS]} {emit {\b, Z-machine or Glulx saved game file \(Quetzal\)}}
2186}
2187switch -- [Nv I 24] 60011 {emit {dump format, 4.1 BSD or earlier}} 60012 {emit {dump format, 4.2 or 4.3 BSD without IDC}} 60013 {emit {dump format, 4.2 or 4.3 BSD \(IDC compatible\)}} 60014 {emit {dump format, Convex Storage Manager by-reference dump}} 60012 {emit {new-fs dump file \(big endian\),}
2188if {[N S 4 x {}]} {emit {Previous dump %s,}}
2189if {[N S 8 x {}]} {emit {This dump %s,}}
2190if {[N I 12 > 0x0]} {emit {Volume %ld,}}
2191if {[N I 692 == 0x0]} {emit {Level zero, type:}}
2192if {[N I 692 > 0x0]} {emit {Level %d, type:}}
2193switch -- [Nv I 0] 1 {emit {tape header,}} 2 {emit {beginning of file record,}} 3 {emit {map of inodes on tape,}} 4 {emit {continuation of file record,}} 5 {emit {end of volume,}} 6 {emit {map of inodes deleted,}} 7 {emit {end of medium \(for floppy\),}}
2194if {[S 676 x {}]} {emit {Label %s,}}
2195if {[S 696 x {}]} {emit {Filesystem %s,}}
2196if {[S 760 x {}]} {emit {Device %s,}}
2197if {[S 824 x {}]} {emit {Host %s,}}
2198if {[N I 888 > 0x0]} {emit {Flags %x}}
2199} 60011 {emit {old-fs dump file \(big endian\),}
2200if {[N I 12 > 0x0]} {emit {Volume %ld,}}
2201if {[N I 692 == 0x0]} {emit {Level zero, type:}}
2202if {[N I 692 > 0x0]} {emit {Level %d, type:}}
2203switch -- [Nv I 0] 1 {emit {tape header,}} 2 {emit {beginning of file record,}} 3 {emit {map of inodes on tape,}} 4 {emit {continuation of file record,}} 5 {emit {end of volume,}} 6 {emit {map of inodes deleted,}} 7 {emit {end of medium \(for floppy\),}}
2204if {[S 676 x {}]} {emit {Label %s,}}
2205if {[S 696 x {}]} {emit {Filesystem %s,}}
2206if {[S 760 x {}]} {emit {Device %s,}}
2207if {[S 824 x {}]} {emit {Host %s,}}
2208if {[N I 888 > 0x0]} {emit {Flags %x}}
2209}
2210if {[S 0 == !_TAG]} {emit {Exuberant Ctags tag file text}}
2211if {[S 0 == GDBM]} {emit {GNU dbm 2.x database}}
2212switch -- [Nv Q 12] 398689 {emit {Berkeley DB}
2213if {[N Q 16 > 0x0]} {emit {\(Hash, version %d, native byte-order\)}}
2214} 340322 {emit {Berkeley DB}
2215if {[N Q 16 > 0x0]} {emit {\(Btree, version %d, native byte-order\)}}
2216} 270931 {emit {Berkeley DB}
2217if {[N Q 16 > 0x0]} {emit {\(Queue, version %d, native byte-order\)}}
2218} 264584 {emit {Berkeley DB}
2219if {[N Q 16 > 0x0]} {emit {\(Log, version %d, native byte-order\)}}
2220}
2221switch -- [Nv I 12] 398689 {emit {Berkeley DB}
2222if {[N I 16 > 0x0]} {emit {\(Hash, version %d, big-endian\)}}
2223} 340322 {emit {Berkeley DB}
2224if {[N I 16 > 0x0]} {emit {\(Btree, version %d, big-endian\)}}
2225} 270931 {emit {Berkeley DB}
2226if {[N I 16 > 0x0]} {emit {\(Queue, version %d, big-endian\)}}
2227} 264584 {emit {Berkeley DB}
2228if {[N I 16 > 0x0]} {emit {\(Log, version %d, big-endian\)}}
2229}
2230switch -- [Nv i 12] 398689 {emit {Berkeley DB}
2231if {[N i 16 > 0x0]} {emit {\(Hash, version %d, little-endian\)}}
2232} 340322 {emit {Berkeley DB}
2233if {[N i 16 > 0x0]} {emit {\(Btree, version %d, little-endian\)}}
2234} 270931 {emit {Berkeley DB}
2235if {[N i 16 > 0x0]} {emit {\(Queue, version %d, little-endian\)}}
2236} 264584 {emit {Berkeley DB}
2237if {[N i 16 > 0x0]} {emit {\(Log, version %d, little-endian\)}}
2238}
2239if {[S 0 == RRD]} {emit {RRDTool DB}
2240if {[S 4 x {}]} {emit {version %s}}
2241}
2242if {[S 0 == {root\0}]} {emit {ROOT file}
2243if {[N I 4 x {}]} {emit {Version %d}}
2244if {[N I 33 x {}]} {emit {\(Compression: %d\)}}
2245}
2246if {[S 4 == {Standard\ Jet\ DB}]} {emit {Microsoft Access Database}}
2247if {[S 0 == {TDB\ file}]} {emit {TDB database}
2248if {[N i 32 == 0x2601196d]} {emit {version 6, little-endian}
2249if {[N i 36 x {}]} {emit {hash size %d bytes}}
2250}
2251}
2252if {[S 2 == ICE]} {emit {ICE authority data}}
2253if {[S 10 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2254if {[S 11 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2255if {[S 12 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2256if {[S 13 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2257if {[S 14 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2258if {[S 15 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2259if {[S 16 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2260if {[S 17 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2261if {[S 18 == MIT-MAGIC-COOKIE-1]} {emit {X11 Xauthority data}}
2262if {[S 0 == {<list>\n<protocol\ bbn-m}]} {emit {Diamond Multimedia Document}}
2263if {[S 0 == {diff\ }]} {emit {'diff' output text}}
2264if {[S 0 == {***\ }]} {emit {'diff' output text}}
2265if {[S 0 == {Only\ in\ }]} {emit {'diff' output text}}
2266if {[S 0 == {Common\ subdirectories:\ }]} {emit {'diff' output text}}
2267if {[S 0 == {!<arch>\n________64E}]} {emit {Alpha archive}
2268if {[S 22 == X]} {emit {-- out of date}}
2269}
2270if {[S 0 == {\377\377\177}]} {emit ddis/ddif}
2271if {[S 0 == {\377\377\174}]} {emit {ddis/dots archive}}
2272if {[S 0 == {\377\377\176}]} {emit {ddis/dtif table data}}
2273if {[S 0 == {\033c\033}]} {emit {LN03 output}}
2274if {[S 0 == {!<PDF>!\n}]} {emit {profiling data file}}
2275switch -- [Nv i 24] 60012 {emit {new-fs dump file \(little endian\),}
2276if {[N s 4 x {}]} {emit {This dump %s,}}
2277if {[N s 8 x {}]} {emit {Previous dump %s,}}
2278if {[N i 12 > 0x0]} {emit {Volume %ld,}}
2279if {[N i 692 == 0x0]} {emit {Level zero, type:}}
2280if {[N i 692 > 0x0]} {emit {Level %d, type:}}
2281switch -- [Nv i 0] 1 {emit {tape header,}} 2 {emit {beginning of file record,}} 3 {emit {map of inodes on tape,}} 4 {emit {continuation of file record,}} 5 {emit {end of volume,}} 6 {emit {map of inodes deleted,}} 7 {emit {end of medium \(for floppy\),}}
2282if {[S 676 x {}]} {emit {Label %s,}}
2283if {[S 696 x {}]} {emit {Filesystem %s,}}
2284if {[S 760 x {}]} {emit {Device %s,}}
2285if {[S 824 x {}]} {emit {Host %s,}}
2286if {[N i 888 > 0x0]} {emit {Flags %x}}
2287} 60011 {emit {old-fs dump file \(little endian\),}
2288if {[N i 12 > 0x0]} {emit {Volume %ld,}}
2289if {[N i 692 == 0x0]} {emit {Level zero, type:}}
2290if {[N i 692 > 0x0]} {emit {Level %d, type:}}
2291switch -- [Nv i 0] 1 {emit {tape header,}} 2 {emit {beginning of file record,}} 3 {emit {map of inodes on tape,}} 4 {emit {continuation of file record,}} 5 {emit {end of volume,}} 6 {emit {map of inodes deleted,}} 7 {emit {end of medium \(for floppy\),}}
2292if {[S 676 x {}]} {emit {Label %s,}}
2293if {[S 696 x {}]} {emit {Filesystem %s,}}
2294if {[S 760 x {}]} {emit {Device %s,}}
2295if {[S 824 x {}]} {emit {Host %s,}}
2296if {[N i 888 > 0x0]} {emit {Flags %x}}
2297}
2298switch -- [Nv c 0] -86 {emit {}
2299if {[N c 1 < 0x4]} {emit {Dyalog APL}
2300switch -- [Nv c 1] 0 {emit {incomplete workspace}} 1 {emit {component file}} 2 {emit {external variable}} 3 {emit workspace}
2301if {[N c 2 x {}]} {emit {version %d}}
2302if {[N c 3 x {}]} {emit .%d}
2303}
2304} 3 {emit {DBase 3 data file}
2305if {[N i 4 == 0x0]} {emit {\(no records\)}}
2306if {[N i 4 > 0x0]} {emit {\(%ld records\)}}
2307} -125 {emit {DBase 3 data file with memo\(s\)}
2308if {[N i 4 == 0x0]} {emit {\(no records\)}}
2309if {[N i 4 > 0x0]} {emit {\(%ld records\)}}
2310} 38 {emit {Sendmail frozen configuration}
2311if {[S 16 x {}]} {emit {- version %s}}
2312} -16 {emit {SysEx File -}
2313switch -- [Nv c 1] 1 {emit Sequential} 2 {emit IDP} 3 {emit OctavePlateau} 4 {emit Moog} 5 {emit Passport} 6 {emit Lexicon} 7 {emit Kurzweil} 8 {emit Fender} 9 {emit Gulbransen} 10 {emit AKG} 11 {emit Voyce} 12 {emit Waveframe} 13 {emit ADA} 14 {emit Garfield} 15 {emit Ensoniq} 16 {emit Oberheim} 17 {emit Apple} 18 {emit GreyMatter} 20 {emit PalmTree} 21 {emit JLCooper} 22 {emit Lowrey} 23 {emit AdamsSmith} 24 {emit E-mu} 25 {emit Harmony} 26 {emit ART} 27 {emit Baldwin} 28 {emit Eventide} 29 {emit Inventronics} 31 {emit Clarity} 33 {emit SIEL} 34 {emit Synthaxe} 36 {emit Hohner} 37 {emit Twister} 38 {emit Solton} 39 {emit Jellinghaus} 40 {emit Southworth} 41 {emit PPG} 42 {emit JEN} 43 {emit SSL} 44 {emit AudioVertrieb} 47 {emit ELKA
2314if {[N c 3 == 0x9]} {emit EK-44}
2315} 48 {emit Dynacord} 51 {emit Clavia} 57 {emit Soundcraft} 62 {emit Waldorf
2316if {[N c 3 == 0x7f]} {emit {Microwave I}}
2317} 64 {emit Kawai
2318switch -- [Nv c 3] 32 {emit K1} 34 {emit K4}
2319} 65 {emit Roland
2320switch -- [Nv c 3] 20 {emit D-50} 43 {emit U-220} 2 {emit TR-707}
2321} 66 {emit Korg
2322if {[N c 3 == 0x19]} {emit M1}
2323} 67 {emit Yamaha} 68 {emit Casio} 70 {emit Kamiya} 71 {emit Akai} 72 {emit Victor} 73 {emit Mesosha} 75 {emit Fujitsu} 76 {emit Sony} 78 {emit Teac} 80 {emit Matsushita} 81 {emit Fostex} 82 {emit Zoom} 84 {emit Matsushita} 87 {emit {Acoustic tech. lab.}}
2324switch -- [Nv I 1 &0xffffff00] 29696 {emit {Ta Horng}} 29952 {emit e-Tek} 30208 {emit E-Voice} 30464 {emit Midisoft} 30720 {emit Q-Sound} 30976 {emit Westrex} 31232 {emit Nvidia*} 31488 {emit ESS} 31744 {emit Mediatrix} 32000 {emit Brooktree} 32256 {emit Otari} 32512 {emit {Key Electronics}} 65536 {emit Shure} 65792 {emit AuraSound} 66048 {emit Crystal} 66304 {emit Rockwell} 66560 {emit {Silicon Graphics}} 66816 {emit Midiman} 67072 {emit PreSonus} 67584 {emit Topaz} 67840 {emit {Cast Lightning}} 68096 {emit Microsoft} 68352 {emit {Sonic Foundry}} 68608 {emit {Line 6}} 68864 {emit {Beatnik Inc.}} 69120 {emit {Van Koerving}} 69376 {emit {Altech Systems}} 69632 {emit {S & S Research}} 69888 {emit {VLSI Technology}} 70144 {emit Chromatic} 70400 {emit Sapphire} 70656 {emit IDRC} 70912 {emit {Justonic Tuning}} 71168 {emit TorComp} 71424 {emit {Newtek Inc.}} 71680 {emit {Sound Sculpture}} 71936 {emit {Walker Technical}} 72192 {emit {Digital Harmony}} 72448 {emit InVision} 72704 {emit T-Square} 72960 {emit Nemesys} 73216 {emit DBX} 73472 {emit Syndyne} 73728 {emit {Bitheadz	}} 73984 {emit Cakewalk} 74240 {emit Staccato} 74496 {emit {National Semicon.}} 74752 {emit {Boom Theory}} 75008 {emit {Virtual DSP Corp}} 75264 {emit Antares} 75520 {emit {Angel Software}} 75776 {emit {St Louis Music}} 76032 {emit {Lyrrus dba G-VOX}} 76288 {emit {Ashley Audio}} 76544 {emit Vari-Lite} 76800 {emit {Summit Audio}} 77056 {emit {Aureal Semicon.}} 77312 {emit SeaSound} 77568 {emit {U.S. Robotics}} 77824 {emit Aurisis} 78080 {emit {Nearfield Multimedia}} 78336 {emit {FM7 Inc.}} 78592 {emit {Swivel Systems}} 78848 {emit Hyperactive} 79104 {emit MidiLite} 79360 {emit Radical} 79616 {emit {Roger Linn}} 79872 {emit Helicon} 80128 {emit Event} 80384 {emit {Sonic Network}} 80640 {emit {Realtime Music}} 80896 {emit {Apogee Digital}} 2108160 {emit {Medeli Electronics}} 2108416 {emit {Charlie Lab}} 2108672 {emit {Blue Chip Music}} 2108928 {emit {BEE OH Corp}} 2109184 {emit {LG Semicon America}} 2109440 {emit TESI} 2109696 {emit EMAGIC} 2109952 {emit Behringer} 2110208 {emit {Access Music}} 2110464 {emit Synoptic} 2110720 {emit {Hanmesoft Corp}} 2110976 {emit Terratec} 2111232 {emit {Proel SpA}} 2111488 {emit {IBK MIDI}} 2111744 {emit IRCAM} 2112000 {emit {Propellerhead Software}} 2112256 {emit {Red Sound Systems}} 2112512 {emit {Electron ESI AB}} 2112768 {emit {Sintefex Audio}} 2113024 {emit {Music and More}} 2113280 {emit Amsaro} 2113536 {emit {CDS Advanced Technology}} 2113792 {emit {Touched by Sound}} 2114048 {emit {DSP Arts}} 2114304 {emit {Phil Rees Music}} 2114560 {emit {Stamer Musikanlagen GmbH}} 2114816 {emit Soundart} 2115072 {emit {C-Mexx Software}} 2115328 {emit {Klavis Tech.}} 2115584 {emit {Noteheads AB}}
2325} -128 {emit {8086 relocatable \(Microsoft\)}}
2326if {[S 0 == {@CT\ }]} {emit {T602 document data,}
2327if {[S 4 == 0]} {emit Kamenicky}
2328if {[S 4 == 1]} {emit {CP 852}}
2329if {[S 4 == 2]} {emit KOI8-CS}
2330if {[S 4 > 2]} {emit {unknown encoding}}
2331}
2332if {[S 0 == VimCrypt~]} {emit {Vim encrypted file data}}
2333if {[S 0 == {\177ELF}]} {emit ELF
2334switch -- [Nv c 4] 0 {emit {invalid class}} 1 {emit 32-bit
2335switch -- [Nv s 18] 8 {emit {}
2336if {[N i 36 & 0x20]} {emit N32}
2337} 10 {emit {}
2338if {[N i 36 & 0x20]} {emit N32}
2339}
2340switch -- [Nv S 18] 8 {emit {}
2341if {[N I 36 & 0x20]} {emit N32}
2342} 10 {emit {}
2343if {[N I 36 & 0x20]} {emit N32}
2344}
2345} 2 {emit 64-bit}
2346switch -- [Nv c 5] 0 {emit {invalid byte order}} 1 {emit LSB
2347switch -- [Nv s 18] 8 {emit {}
2348switch -- [Nv c 4] 1 {emit {}
2349switch -- [Nv i 36 &0xf0000000] 0 {emit MIPS-I} 268435456 {emit MIPS-II} 536870912 {emit MIPS-III} 805306368 {emit MIPS-IV} 1073741824 {emit MIPS-V} 1610612736 {emit MIPS32} 1879048192 {emit MIPS64} -2147483648 {emit {MIPS32 rel2}} -1879048192 {emit {MIPS64 rel2}}
2350} 2 {emit {}
2351switch -- [Nv i 48 &0xf0000000] 0 {emit MIPS-I} 268435456 {emit MIPS-II} 536870912 {emit MIPS-III} 805306368 {emit MIPS-IV} 1073741824 {emit MIPS-V} 1610612736 {emit MIPS32} 1879048192 {emit MIPS64} -2147483648 {emit {MIPS32 rel2}} -1879048192 {emit {MIPS64 rel2}}
2352}
2353} 0 {emit {no machine,}} 1 {emit {AT&T WE32100 - invalid byte order,}} 2 {emit {SPARC - invalid byte order,}} 3 {emit {Intel 80386,}} 4 {emit Motorola
2354if {[N i 36 & 0x1000000]} {emit {68000 - invalid byte order,}}
2355if {[N i 36 & 0x810000]} {emit {CPU32 - invalid byte order,}}
2356if {[N i 36 == 0x0]} {emit {68020 - invalid byte order,}}
2357} 5 {emit {Motorola 88000 - invalid byte order,}} 6 {emit {Intel 80486,}} 7 {emit {Intel 80860,}} 8 {emit MIPS,} 9 {emit {Amdahl - invalid byte order,}} 10 {emit {MIPS \(deprecated\),}} 11 {emit {RS6000 - invalid byte order,}} 15 {emit {PA-RISC - invalid byte order,}
2358if {[N s 50 == 0x214]} {emit 2.0}
2359if {[N s 48 & 0x8]} {emit {\(LP64\),}}
2360} 16 {emit nCUBE,} 17 {emit {Fujitsu VPP500,}} 18 {emit SPARC32PLUS,} 20 {emit PowerPC,} 22 {emit {IBM S/390,}} 36 {emit {NEC V800,}} 37 {emit {Fujitsu FR20,}} 38 {emit {TRW RH-32,}} 39 {emit {Motorola RCE,}} 40 {emit ARM,} 41 {emit Alpha,} -23664 {emit {IBM S/390 \(obsolete\),}} 42 {emit {Hitachi SH,}} 43 {emit {SPARC V9 - invalid byte order,}} 44 {emit {Siemens Tricore Embedded Processor,}} 45 {emit {Argonaut RISC Core, Argonaut Technologies Inc.,}} 46 {emit {Hitachi H8/300,}} 47 {emit {Hitachi H8/300H,}} 48 {emit {Hitachi H8S,}} 49 {emit {Hitachi H8/500,}} 50 {emit {IA-64 \(Intel 64 bit architecture\)}} 51 {emit {Stanford MIPS-X,}} 52 {emit {Motorola Coldfire,}} 53 {emit {Motorola M68HC12,}} 62 {emit {AMD x86-64,}} 75 {emit {Digital VAX,}} 88 {emit {Renesas M32R,}} 97 {emit {NatSemi 32k,}} -28634 {emit {Alpha \(unofficial\),}}
2361switch -- [Nv s 16] 0 {emit {no file type,}} 1 {emit relocatable,} 2 {emit executable,} 3 {emit {shared object,}} 4 {emit {core file}}
2362if {[N s 16 & 0xff00]} {emit processor-specific,}
2363switch -- [Nv i 20] 0 {emit {invalid version}} 1 {emit {version 1}}
2364if {[N i 36 == 0x1]} {emit {MathCoPro/FPU/MAU Required}}
2365} 2 {emit MSB
2366switch -- [Nv S 18] 8 {emit {}
2367switch -- [Nv c 4] 1 {emit {}
2368switch -- [Nv I 36 &0xf0000000] 0 {emit MIPS-I} 268435456 {emit MIPS-II} 536870912 {emit MIPS-III} 805306368 {emit MIPS-IV} 1073741824 {emit MIPS-V} 1610612736 {emit MIPS32} 1879048192 {emit MIPS64} -2147483648 {emit {MIPS32 rel2}} -1879048192 {emit {MIPS64 rel2}}
2369} 2 {emit {}
2370switch -- [Nv I 48 &0xf0000000] 0 {emit MIPS-I} 268435456 {emit MIPS-II} 536870912 {emit MIPS-III} 805306368 {emit MIPS-IV} 1073741824 {emit MIPS-V} 1610612736 {emit MIPS32} 1879048192 {emit MIPS64} -2147483648 {emit {MIPS32 rel2}} -1879048192 {emit {MIPS64 rel2}}
2371}
2372} 0 {emit {no machine,}} 1 {emit {AT&T WE32100,}} 2 {emit SPARC,} 3 {emit {Intel 80386 - invalid byte order,}} 4 {emit Motorola
2373if {[N I 36 & 0x1000000]} {emit 68000,}
2374if {[N I 36 & 0x810000]} {emit CPU32,}
2375if {[N I 36 == 0x0]} {emit 68020,}
2376} 5 {emit {Motorola 88000,}} 6 {emit {Intel 80486 - invalid byte order,}} 7 {emit {Intel 80860,}} 8 {emit MIPS,} 9 {emit Amdahl,} 10 {emit {MIPS \(deprecated\),}} 11 {emit RS6000,} 15 {emit PA-RISC
2377if {[N S 50 == 0x214]} {emit 2.0}
2378if {[N S 48 & 0x8]} {emit {\(LP64\)}}
2379} 16 {emit nCUBE,} 17 {emit {Fujitsu VPP500,}} 18 {emit SPARC32PLUS,
2380if {[N I 36 & 0x100 &0xffff00]} {emit {V8+ Required,}}
2381if {[N I 36 & 0x200 &0xffff00]} {emit {Sun UltraSPARC1 Extensions Required,}}
2382if {[N I 36 & 0x400 &0xffff00]} {emit {HaL R1 Extensions Required,}}
2383if {[N I 36 & 0x800 &0xffff00]} {emit {Sun UltraSPARC3 Extensions Required,}}
2384} 20 {emit {PowerPC or cisco 4500,}} 21 {emit {cisco 7500,}} 22 {emit {IBM S/390,}} 24 {emit {cisco SVIP,}} 25 {emit {cisco 7200,}} 36 {emit {NEC V800 or cisco 12000,}} 37 {emit {Fujitsu FR20,}} 38 {emit {TRW RH-32,}} 39 {emit {Motorola RCE,}} 40 {emit ARM,} 41 {emit Alpha,} 42 {emit {Hitachi SH,}} 43 {emit {SPARC V9,}} 44 {emit {Siemens Tricore Embedded Processor,}} 45 {emit {Argonaut RISC Core, Argonaut Technologies Inc.,}} 46 {emit {Hitachi H8/300,}} 47 {emit {Hitachi H8/300H,}} 48 {emit {Hitachi H8S,}} 49 {emit {Hitachi H8/500,}} 50 {emit {Intel Merced Processor,}} 51 {emit {Stanford MIPS-X,}} 52 {emit {Motorola Coldfire,}} 53 {emit {Motorola M68HC12,}} 73 {emit {Cray NV1,}} 75 {emit {Digital VAX,}} 88 {emit {Renesas M32R,}} 97 {emit {NatSemi 32k,}} -28634 {emit {Alpha \(unofficial\),}} -23664 {emit {IBM S/390 \(obsolete\),}}
2385switch -- [Nv S 16] 0 {emit {no file type,}} 1 {emit relocatable,} 2 {emit executable,} 3 {emit {shared object,}} 4 {emit {core file,}}
2386if {[N S 16 & 0xff00]} {emit processor-specific,}
2387switch -- [Nv I 20] 0 {emit {invalid version}} 1 {emit {version 1}}
2388if {[N I 36 == 0x1]} {emit {MathCoPro/FPU/MAU Required}}
2389}
2390if {[N c 4 < 0x80]} {if {[S 8 x {}]} {emit {\(%s\)}}
2391}
2392if {[S 8 == {\0}]} {switch -- [Nv c 7] 0 {emit {\(SYSV\)}} 1 {emit {\(HP-UX\)}} 2 {emit {\(NetBSD\)}} 3 {emit {\(GNU/Linux\)}} 4 {emit {\(GNU/Hurd\)}} 5 {emit {\(86Open\)}} 6 {emit {\(Solaris\)}} 7 {emit {\(Monterey\)}} 8 {emit {\(IRIX\)}} 9 {emit {\(FreeBSD\)}} 10 {emit {\(Tru64\)}} 11 {emit {\(Novell Modesto\)}} 12 {emit {\(OpenBSD\)}} 97 {emit {\(ARM\)}} -1 {emit {\(embedded\)}}
2393}
2394}
2395if {[N i 4 == 0x1000006d]} {emit {{7 lelong {} == 8 0x1000007f Word} {8 lelong {} == 8 0x10000088 Sheet} {9 lelong {} == 8 0x1000007d Sketch} {10 lelong {} == 8 0x10000085 TextEd}}}
2396if {[S 0 == FCS1.0]} {emit {Flow Cytometry Standard \(FCS\) data, version 1.0}}
2397if {[S 0 == FCS2.0]} {emit {Flow Cytometry Standard \(FCS\) data, version 2.0}}
2398if {[S 0 == FCS3.0]} {emit {Flow Cytometry Standard \(FCS\) data, version 3.0}}
2399if {[S 0 == {\366\366\366\366}]} {emit {PC formatted floppy with no filesystem}}
2400if {[N S 508 == 0xdabe]} {emit {Sun disk label}
2401if {[S 0 x {}]} {emit '%s
2402if {[S 31 x {}]} {emit {\b%s}
2403if {[S 63 x {}]} {emit {\b%s}
2404if {[S 95 x {}]} {emit {\b%s}}
2405}
2406}
2407}
2408if {[S 0 x {}]} {emit {\b'}}
2409if {[N Y 476 > 0x0]} {emit {%d rpm,}}
2410if {[N Y 478 > 0x0]} {emit {%d phys cys,}}
2411if {[N Y 480 > 0x0]} {emit {%d alts/cyl,}}
2412if {[N Y 486 > 0x0]} {emit {%d interleave,}}
2413if {[N Y 488 > 0x0]} {emit {%d data cyls,}}
2414if {[N Y 490 > 0x0]} {emit {%d alt cyls,}}
2415if {[N Y 492 > 0x0]} {emit {%d heads/partition,}}
2416if {[N Y 494 > 0x0]} {emit {%d sectors/track,}}
2417if {[N Q 500 > 0x0]} {emit {start cyl %ld,}}
2418if {[N Q 504 x {}]} {emit {%ld blocks}}
2419if {[N I 512 == 0x30107 &077777777]} {emit {\b, boot block present}}
2420}
2421if {[S 0 == {DOSEMU\0}]} {if {[N s 638 == 0xaa55]} {emit {DOS Emulator image}}
2422}
2423if {[N s 510 == 0xaa55]} {emit {x86 boot sector}
2424if {[S 2 == OSBS]} {emit {\b, OS/BS MBR}}
2425if {[S 140 == {Invalid\ partition\ table}]} {emit {\b, MS-DOS MBR}}
2426if {[S 157 == {Invalid\ partition\ table$}]} {if {[S 181 == {No\ Operating\ System$}]} {if {[S 201 == {Operating\ System\ load\ error$}]} {emit {\b, DR-DOS MBR, Version 7.01 to 7.03}}
2427}
2428}
2429if {[S 157 == {Invalid\ partition\ table$}]} {if {[S 181 == {No\ operating\ system$}]} {if {[S 201 == {Operating\ system\ load\ error$}]} {emit {\b, DR-DOS MBR, Version 7.01 to 7.03}}
2430}
2431}
2432if {[S 342 == {Invalid\ partition\ table$}]} {if {[S 366 == {No\ operating\ system$}]} {if {[S 386 == {Operating\ system\ load\ error$}]} {emit {\b, DR-DOS MBR, version 7.01 to 7.03}}
2433}
2434}
2435if {[S 295 == {NEWLDR\0}]} {if {[S 302 == {Bad\ PT\ $}]} {if {[S 310 == {No\ OS\ $}]} {if {[S 317 == {OS\ load\ err$}]} {if {[S 329 == {Moved\ or\ missing\ IBMBIO.LDR\n\r}]} {if {[S 358 == {Press\ any\ key\ to\ continue.\n\r$}]} {if {[S 387 == {Copyright\ (c)\ 1984,1998}]} {if {[S 411 == {Caldera\ Inc.\0}]} {emit {\b, DR-DOS MBR \(IBMBIO.LDR\)}}
2436}
2437}
2438}
2439}
2440}
2441}
2442}
2443if {[S 271 == {Ung\201ltige\ Partitionstabelle}]} {emit {\b, MS-DOS MBR, german version 4.10.1998, 4.10.2222}}
2444if {[S 139 == {Ung\201ltige\ Partitionstabelle}]} {emit {\b, MS-DOS MBR, german version 5.00 to 4.00.950}}
2445if {[S 300 == {Invalid\ partition\ table\0}]} {if {[S 324 == {Error\ loading\ operating\ system\0}]} {if {[S 355 == {Missing\ operating\ system\0}]} {emit {\b, Microsoft Windows XP MBR}}
2446}
2447}
2448if {[S 300 == {Ung\201ltige\ Partitionstabelle}]} {if {[S 328 == {Fehler\ beim\ Laden\ }]} {if {[S 346 == {des\ Betriebssystems}]} {if {[S 366 == {Betriebssystem\ nicht\ vorhanden}]} {emit {\b, Microsoft Windows XP MBR \(german\)}}
2449}
2450}
2451}
2452if {[S 325 == {Default:\ F}]} {emit {\b, FREE-DOS MBR}}
2453if {[S 64 == {no\ active\ partition\ found}]} {if {[S 96 == {read\ error\ while\ reading\ drive}]} {emit {\b, FREE-DOS Beta9 MBR}}
2454}
2455if {[S 43 == {SMART\ BTMGRFAT12\ \ \ }]} {if {[S 430 == {SBMK\ Bad!\r}]} {if {[S 3 == SBM]} {emit {\b, Smart Boot Manager}
2456if {[S 6 x {}]} {emit {\b, version %s}}
2457}
2458}
2459}
2460if {[S 382 == XOSLLOADXCF]} {emit {\b, EXtended Operating System Loader}}
2461if {[S 6 == LILO]} {emit {\b, LInux i386 boot LOader}
2462if {[S 120 == LILO]} {emit {\b, version 22.3.4 SuSe}}
2463if {[S 172 == LILO]} {emit {\b, version 22.5.8 Debian}}
2464}
2465if {[S 402 == {Geom\0Hard\ Disk\0Read\0\ Error\0}]} {if {[S 394 == stage1]} {emit {\b, GRand Unified Bootloader \(0.5.95\)}}
2466}
2467if {[S 380 == {Geom\0Hard\ Disk\0Read\0\ Error\0}]} {if {[S 374 == {GRUB\ \0}]} {emit {\b, GRand Unified Bootloader}}
2468}
2469if {[S 382 == {Geom\0Hard\ Disk\0Read\0\ Error\0}]} {if {[S 376 == {GRUB\ \0}]} {emit {\b, GRand Unified Bootloader \(0.93\)}}
2470}
2471if {[S 383 == {Geom\0Hard\ Disk\0Read\0\ Error\0}]} {if {[S 377 == {GRUB\ \0}]} {emit {\b, GRand Unified Bootloader \(0.94\)}}
2472}
2473if {[S 480 == {Boot\ failed\r}]} {if {[S 495 == {LDLINUX\ SYS}]} {emit {\b, SYSLINUX bootloader \(2.06\)}}
2474}
2475if {[S 395 == {chksum\0\ ERROR!\0}]} {emit {\b, Gujin bootloader}}
2476if {[S 185 == {FDBOOT\ Version\ }]} {if {[S 204 == {\rNo\ Systemdisk.\ }]} {if {[S 220 == {Booting\ from\ harddisk.\n\r}]} {emit 349 21 0 0}
2477if {[S 245 == {Cannot\ load\ from\ harddisk.\n\r}]} {if {[S 273 == {Insert\ Systemdisk\ }]} {if {[S 291 == {and\ press\ any\ key.\n\r}]} {emit {\b, FDBOOT harddisk Bootloader}
2478if {[S 200 x {}]} {emit {\b, version %-3s}}
2479}
2480}
2481}
2482}
2483}
2484if {[S 242 == {Bootsector\ from\ C.H.\ Hochst\204}]} {if {[S 278 == {No\ Systemdisk.\ }]} {if {[S 293 == {Booting\ from\ harddisk.\n\r}]} {emit 349 22 0 0}
2485if {[S 441 == {Cannot\ load\ from\ harddisk.\n\r}]} {if {[S 469 == {Insert\ Systemdisk\ }]} {if {[S 487 == {and\ press\ any\ key.\n\r}]} {emit {\b, WinImage harddisk Bootloader}
2486if {[S 209 x {}]} {emit {\b, version %-4.4s}}
2487}
2488}
2489}
2490}
2491}
2492if {[N c [I 1 c 2] == 0xe]} {if {[N c [I 1 c 3] == 0x1f]} {if {[N c [I 1 c 4] == 0xbe]} {if {[N c [I 1 c 5] == 0x77]} {emit 349 23 0 0 0}
2493if {[N c [I 1 c 6] == 0x7c]} {if {[N c [I 1 c 7] == 0xac]} {if {[N c [I 1 c 8] == 0x22]} {if {[N c [I 1 c 9] == 0xc0]} {if {[N c [I 1 c 10] == 0x74]} {if {[N c [I 1 c 11] == 0xb]} {if {[N c [I 1 c 12] == 0x56]} {emit 349 23 0 0 1 0 0 0 0 0 0}
2494if {[N c [I 1 c 13] == 0xb4]} {emit {\b, mkdosfs boot message display}}
2495}
2496}
2497}
2498}
2499}
2500}
2501}
2502}
2503}
2504if {[S 430 == {NTLDR\ is\ missing\xFF\r\n}]} {if {[S 449 == {Disk\ error\xFF\r\n}]} {if {[S 462 == {Press\ any\ key\ to\ restart\r}]} {emit {\b, Microsoft Windows XP Bootloader}
2505if {[N c 417 < 0x7e]} {if {[S 417 > {\ }]} {emit %-.5s
2506if {[N c 422 < 0x7e]} {if {[S 422 > {\ }]} {emit {\b%-.3s}}
2507}
2508if {[S 425 > {\ }]} {emit {\b.%-.3s}}
2509}
2510}
2511if {[N c 368 < 0x7e]} {if {[S 368 > {\ }]} {emit %-.5s
2512if {[N c 373 < 0x7e]} {if {[S 373 > {\ }]} {emit {\b%-.3s}}
2513}
2514if {[S 376 > {\ }]} {emit {\b.%-.3s}}
2515}
2516}
2517}
2518}
2519}
2520if {[S 430 == {NTLDR\ nicht\ gefunden\xFF\r\n}]} {if {[S 453 == {Datentr\204gerfehler\xFF\r\n}]} {if {[S 473 == {Neustart\ mit\ beliebiger\ Taste\r}]} {emit {\b, Microsoft Windows XP Bootloader \(german\)}
2521if {[N c 417 < 0x7e]} {if {[S 417 > {\ }]} {emit %-.5s
2522if {[N c 422 < 0x7e]} {if {[S 422 > {\ }]} {emit {\b%-.3s}}
2523}
2524if {[S 425 > {\ }]} {emit {\b.%-.3s}}
2525}
2526}
2527if {[N c 368 < 0x7e]} {if {[S 368 > {\ }]} {emit %-.5s
2528if {[N c 373 < 0x7e]} {if {[S 373 > {\ }]} {emit {\b%-.3s}}
2529}
2530if {[S 376 > {\ }]} {emit {\b.%-.3s}}
2531}
2532}
2533}
2534}
2535}
2536if {[S 430 == {NTLDR\ fehlt\xFF\r\n}]} {if {[S 444 == {Datentr\204gerfehler\xFF\r\n}]} {if {[S 464 == {Neustart\ mit\ beliebiger\ Taste\r}]} {emit {\b, Microsoft Windows XP Bootloader \(2.german\)}
2537if {[N c 417 < 0x7e]} {if {[S 417 > {\ }]} {emit %-.5s
2538if {[N c 422 < 0x7e]} {if {[S 422 > {\ }]} {emit {\b%-.3s}}
2539}
2540if {[S 425 > {\ }]} {emit {\b.%-.3s}}
2541}
2542}
2543}
2544}
2545}
2546if {[S 430 == {NTLDR\ fehlt\xFF\r\n}]} {if {[S 444 == {Medienfehler\xFF\r\n}]} {if {[S 459 == {Neustart:\ Taste\ dr\201cken\r}]} {emit {\b, Microsoft Windows XP Bootloader \(3.german\)}
2547if {[N c 368 < 0x7e]} {if {[S 368 > {\ }]} {emit %-.5s
2548if {[N c 373 < 0x7e]} {if {[S 373 > {\ }]} {emit {\b%-.3s}}
2549}
2550if {[S 376 > {\ }]} {emit {\b.%-.3s}}
2551}
2552}
2553if {[N c 417 < 0x7e]} {if {[S 417 > {\ }]} {emit %-.5s
2554if {[N c 422 < 0x7e]} {if {[S 422 > {\ }]} {emit {\b%-.3s}}
2555}
2556if {[S 425 > {\ }]} {emit {\b.%-.3s}}
2557}
2558}
2559}
2560}
2561}
2562if {[S 430 == {Datentr\204ger\ entfernen\xFF\r\n}]} {if {[S 454 == {Medienfehler\xFF\r\n}]} {if {[S 469 == {Neustart:\ Taste\ dr\201cken\r}]} {emit {\b, Microsoft Windows XP Bootloader \(4.german\)}
2563if {[N c 368 < 0x7e]} {if {[S 368 > {\ }]} {emit %-.5s
2564if {[N c 373 < 0x7e]} {if {[S 373 > {\ }]} {emit {\b%-.3s}}
2565}
2566if {[S 376 > {\ }]} {emit {\b.%-.3s}}
2567}
2568}
2569}
2570}
2571}
2572if {[S 389 == {Fehler\ beim\ Lesen\ }]} {if {[S 407 == {des\ Datentr\204gers}]} {if {[S 426 == {NTLDR\ fehlt}]} {if {[S 440 == {NTLDR\ ist\ komprimiert}]} {if {[S 464 == {Neustart\ mit\ Strg+Alt+Entf\r}]} {emit {\b, Microsoft Windows XP Bootloader NTFS \(german\)}}
2573}
2574}
2575}
2576}
2577if {[S 313 == {A\ disk\ read\ error\ occurred.\r}]} {if {[S 345 == {A\ kernel\ file\ is\ missing\ }]} {if {[S 370 == {from\ the\ disk.\r}]} {if {[S 484 == {NTLDR\ is\ compressed}]} {if {[S 429 == {Insert\ a\ system\ diskette\ }]} {if {[S 454 == {and\ restart\r\nthe\ system.\r}]} {emit {\b, Microsoft Windows XP Bootloader NTFS}}
2578}
2579}
2580}
2581}
2582}
2583if {[S 472 == {IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS}]} {if {[S 497 == {WINBOOT\ SYS}]} {emit 349 31 0}
2584if {[S 389 == {Invalid\ system\ disk\xFF\r\n}]} {if {[S 411 == {Disk\ I/O\ error}]} {if {[S 428 == {Replace\ the\ disk,\ and\ }]} {if {[S 455 == {press\ any\ key}]} {emit {\b, Microsoft Windows 98 Bootloader}}
2585}
2586}
2587}
2588if {[S 390 == {Invalid\ system\ disk\xFF\r\n}]} {if {[S 412 == {Disk\ I/O\ error\xFF\r\n}]} {if {[S 429 == {Replace\ the\ disk,\ and\ }]} {if {[S 451 == {then\ press\ any\ key\r}]} {emit {\b, Microsoft Windows 98 Bootloader}}
2589}
2590}
2591}
2592if {[S 388 == {Ungueltiges\ System\ \xFF\r\n}]} {if {[S 410 == {E/A-Fehler\ \ \ \ \xFF\r\n}]} {if {[S 427 == {Datentraeger\ wechseln\ und\ }]} {if {[S 453 == {Taste\ druecken\r}]} {emit {\b, Microsoft Windows 95/98/ME Bootloader \(german\)}}
2593}
2594}
2595}
2596if {[S 390 == {Ungueltiges\ System\ \xFF\r\n}]} {if {[S 412 == {E/A-Fehler\ \ \ \ \xFF\r\n}]} {if {[S 429 == {Datentraeger\ wechseln\ und\ }]} {if {[S 455 == {Taste\ druecken\r}]} {emit {\b, Microsoft Windows 95/98/ME Bootloader \(German\)}}
2597}
2598}
2599}
2600if {[S 389 == {Ungueltiges\ System\ \xFF\r\n}]} {if {[S 411 == {E/A-Fehler\ \ \ \ \xFF\r\n}]} {if {[S 428 == {Datentraeger\ wechseln\ und\ }]} {if {[S 454 == {Taste\ druecken\r}]} {emit {\b, Microsoft Windows 95/98/ME Bootloader \(GERMAN\)}}
2601}
2602}
2603}
2604}
2605if {[S 479 == {IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS}]} {if {[S 416 == {Kein\ System\ oder\ }]} {if {[S 433 == Laufwerksfehler]} {if {[S 450 == {Wechseln\ und\ Taste\ dr\201cken}]} {emit {\b, Microsoft DOS Bootloader \(german\)}}
2606}
2607}
2608}
2609if {[S 486 == {IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS}]} {if {[S 416 == {Non-System\ disk\ or\ }]} {if {[S 435 == {disk\ error\r}]} {if {[S 447 == {Replace\ and\ press\ any\ key\ }]} {if {[S 473 == {when\ ready\r}]} {emit {\b, Microsoft DOS Bootloader}}
2610}
2611}
2612}
2613}
2614if {[S 480 == {IO\ \ \ \ \ \ SYSMSDOS\ \ \ SYS}]} {if {[S 393 == {Non-System\ disk\ or\ }]} {if {[S 412 == {disk\ error\r}]} {if {[S 424 == {Replace\ and\ press\ any\ key\ }]} {if {[S 450 == {when\ ready\r}]} {emit {\b, Microsoft DOS bootloader}}
2615}
2616}
2617}
2618}
2619if {[S 54 == SYS]} {if {[S 324 == VASKK]} {if {[S 495 == {NEWLDR\0}]} {emit {\b, DR-DOS Bootloader \(LOADER.SYS\)}}
2620}
2621}
2622if {[S 70 == {IBMBIO\ \ COM}]} {if {[S 472 == {Cannot\ load\ DOS!\ }]} {if {[S 489 == {Any\ key\ to\ retry}]} {emit {\b, DR-DOS Bootloader}}
2623}
2624if {[S 471 == {Cannot\ load\ DOS\ }]} {emit 349 36 1}
2625if {[S 487 == {press\ key\ to\ retry}]} {emit {\b, Open-DOS Bootloader}}
2626}
2627if {[S 444 == {KERNEL\ \ SYS}]} {if {[S 314 == {BOOT\ error!}]} {emit {\b, FREE-DOS Bootloader}}
2628}
2629if {[S 499 == {KERNEL\ \ SYS}]} {if {[S 305 == {BOOT\ err!\0}]} {emit {\b, Free-DOS Bootloader}}
2630}
2631if {[S 449 == {KERNEL\ \ SYS}]} {if {[S 319 == {BOOT\ error!}]} {emit {\b, FREE-DOS 5.0 Bootloader}}
2632}
2633if {[S 124 == {FreeDOS\0}]} {if {[S 331 == {\ err\0}]} {emit {\b, FREE-DOS BETa 9 Bootloader}
2634if {[S 497 > {\ }]} {emit %-.6s
2635if {[S 503 > {\ }]} {emit {\b%-.1s}}
2636if {[S 504 > {\ }]} {emit {\b%-.1s}}
2637}
2638if {[S 505 > {\ }]} {emit {\b.%-.3s}}
2639}
2640if {[S 333 == {\ err\0}]} {emit {\b, FREE-DOS BEta 9 Bootloader}
2641if {[S 497 > {\ }]} {emit %-.6s
2642if {[S 503 > {\ }]} {emit {\b%-.1s}}
2643if {[S 504 > {\ }]} {emit {\b%-.1s}}
2644}
2645if {[S 505 > {\ }]} {emit {\b.%-.3s}}
2646}
2647if {[S 334 == {\ err\0}]} {emit {\b, FREE-DOS Beta 9 Bootloader}
2648if {[S 497 > {\ }]} {emit %-.6s
2649if {[S 503 > {\ }]} {emit {\b%-.1s}}
2650if {[S 504 > {\ }]} {emit {\b%-.1s}}
2651}
2652if {[S 505 > {\ }]} {emit {\b.%-.3s}}
2653}
2654}
2655if {[S 0 == {\0\0\0\0}]} {emit {\b, extended partition table}}
2656if {[N i 0 == 0x9000eb &0x009000EB]} {emit 349 42}
2657if {[N i 0 == 0xe9 &0x000000E9]} {if {[N c 1 > 0x25]} {emit {\b, code offset 0x%x}
2658if {[N s 11 < 0x801]} {if {[N s 11 > 0x1f]} {if {[S 3 x {}]} {emit {\b, OEM-ID \"%8.8s\"}}
2659if {[N s 11 > 0x200]} {emit {\b, Bytes/sector %u}}
2660if {[N s 11 < 0x200]} {emit {\b, Bytes/sector %u}}
2661if {[N c 13 > 0x1]} {emit {\b, sectors/cluster %u}}
2662if {[N s 14 > 0x20]} {emit {\b, reserved sectors %u}}
2663if {[N s 14 < 0x1]} {emit {\b, reserved sectors %u}}
2664if {[N c 16 > 0x2]} {emit {\b, FATs %u}}
2665if {[N c 16 == 0x1]} {emit {\b, FAT  %u}}
2666if {[N c 16 > 0x0]} {emit 349 43 0 0 0 8}
2667if {[N s 17 > 0x0]} {emit {\b, root entries %u}}
2668if {[N s 19 > 0x0]} {emit {\b, sectors %u \(volumes <=32 MB\)}}
2669if {[N c 21 > 0xf0]} {emit {\b, Media descriptor 0x%x}}
2670if {[N c 21 < 0xf0]} {emit {\b, Media descriptor 0x%x}}
2671if {[N s 22 > 0x0]} {emit {\b, sectors/FAT %u}}
2672if {[N c 26 > 0x2]} {emit {\b, heads %u}}
2673if {[N c 26 == 0x1]} {emit {\b, heads %u}}
2674if {[N i 28 > 0x0]} {emit {\b, hidden sectors %u}}
2675if {[N i 32 > 0x0]} {emit {\b, sectors %u \(volumes > 32 MB\)}}
2676if {[N i 82 > 0x0 &0xCCABBEB9]} {if {[N c 36 > 0x80]} {emit {\b, physical drive 0x%x}}
2677if {[N c 36 > 0x0 &0x7F]} {emit {\b, physical drive 0x%x}}
2678if {[N c 37 > 0x0]} {emit {\b, reserved 0x%x}}
2679if {[N c 38 > 0x29]} {emit {\b, dos < 4.0 BootSector \(0x%x\)}}
2680if {[N c 38 < 0x29]} {emit {\b, dos < 4.0 BootSector \(0x%x\)}}
2681if {[N c 38 == 0x29]} {if {[N i 39 x {}]} {emit {\b, serial number 0x%x}}
2682if {[S 43 < {NO\ NAME}]} {emit {\b, label: \"%11.11s\"}}
2683if {[S 43 > {NO\ NAME}]} {emit {\b, label: \"%11.11s\"}}
2684if {[S 43 == {NO\ NAME}]} {emit {\b, unlabeled}}
2685}
2686if {[S 54 == FAT1]} {emit {\b, FAT}
2687if {[S 54 == FAT12]} {emit {\b \(12 bit\)}}
2688if {[S 54 == FAT16]} {emit {\b \(16 bit\)}}
2689}
2690}
2691if {[S 82 == FAT32]} {emit {\b, FAT \(32 bit\)}
2692if {[N i 36 x {}]} {emit {\b, sectors/FAT %u}}
2693if {[N s 40 > 0x0]} {emit {\b, extension flags %u}}
2694if {[N s 42 > 0x0]} {emit {\b, fsVersion %u}}
2695if {[N i 44 > 0x2]} {emit {\b, rootdir cluster %u}}
2696if {[N s 48 > 0x1]} {emit {\b, infoSector %u}}
2697if {[N s 48 < 0x1]} {emit {\b, infoSector %u}}
2698if {[N s 50 > 0x6]} {emit {\b, Backup boot sector %u}}
2699if {[N s 50 < 0x6]} {emit {\b, Backup boot sector %u}}
2700if {[N i 54 > 0x0]} {emit {\b, reserved1 0x%x}}
2701if {[N i 58 > 0x0]} {emit {\b, reserved2 0x%x}}
2702if {[N i 62 > 0x0]} {emit {\b, reserved3 0x%x}}
2703if {[N c 64 > 0x80]} {emit {\b, physical drive 0x%x}}
2704if {[N c 64 > 0x0 &0x7F]} {emit {\b, physical drive 0x%x}}
2705if {[N c 65 > 0x0]} {emit {\b, reserved 0x%x}}
2706if {[N c 66 > 0x29]} {emit {\b, dos < 4.0 BootSector \(0x%x\)}}
2707if {[N c 66 < 0x29]} {emit {\b, dos < 4.0 BootSector \(0x%x\)}}
2708if {[N c 66 == 0x29]} {if {[N i 67 x {}]} {emit {\b, serial number 0x%x}}
2709if {[S 71 < {NO\ NAME}]} {emit {\b, label: \"%11.11s\"}}
2710}
2711if {[S 71 > {NO\ NAME}]} {emit {\b, label: \"%11.11s\"}}
2712if {[S 71 == {NO\ NAME}]} {emit {\b, unlabeled}}
2713}
2714}
2715}
2716}
2717}
2718if {[N i 512 == 0x82564557]} {emit {\b, BSD disklabel}}
2719}
2720if {[S 0 == FATX]} {emit {FATX filesystem data}}
2721switch -- [Nv s 1040] 4991 {emit {Minix filesystem}} 5007 {emit {Minix filesystem, 30 char names}} 9320 {emit {Minix filesystem, version 2}} 9336 {emit {Minix filesystem, version 2, 30 char names}}
2722if {[N S 1040 == 0x137f]} {emit {Minix filesystem \(big endian\),}
2723if {[N S 1026 != 0x0]} {emit {\b, %d zones}}
2724if {[S 30 == minix]} {emit {\b, bootable}}
2725}
2726if {[S 0 == {-rom1fs-\0}]} {emit {romfs filesystem, version 1}
2727if {[N I 8 x {}]} {emit {%d bytes,}}
2728if {[S 16 x {}]} {emit {named %s.}}
2729}
2730if {[S 395 == OS/2]} {emit {OS/2 Boot Manager}}
2731if {[N i 9564 == 0x11954]} {emit {Unix Fast File system \(little-endian\),}
2732if {[S 8404 x {}]} {emit {last mounted on %s,}}
2733if {[N s 8224 x {}]} {emit {last written at %s,}}
2734if {[N c 8401 x {}]} {emit {clean flag %d,}}
2735if {[N i 8228 x {}]} {emit {number of blocks %d,}}
2736if {[N i 8232 x {}]} {emit {number of data blocks %d,}}
2737if {[N i 8236 x {}]} {emit {number of cylinder groups %d,}}
2738if {[N i 8240 x {}]} {emit {block size %d,}}
2739if {[N i 8244 x {}]} {emit {fragment size %d,}}
2740if {[N i 8252 x {}]} {emit {minimum percentage of free blocks %d,}}
2741if {[N i 8256 x {}]} {emit {rotational delay %dms,}}
2742if {[N i 8260 x {}]} {emit {disk rotational speed %drps,}}
2743switch -- [Nv i 8320] 0 {emit {TIME optimization}} 1 {emit {SPACE optimization}}
2744}
2745if {[N I 9564 == 0x11954]} {emit {Unix Fast File system \(big-endian\),}
2746if {[N Q 7168 == 0x4c41424c]} {emit {Apple UFS Volume}
2747if {[S 7186 x {}]} {emit {named %s,}}
2748if {[N I 7176 x {}]} {emit {volume label version %d,}}
2749if {[N S 7180 x {}]} {emit {created on %s,}}
2750}
2751if {[S 8404 x {}]} {emit {last mounted on %s,}}
2752if {[N S 8224 x {}]} {emit {last written at %s,}}
2753if {[N c 8401 x {}]} {emit {clean flag %d,}}
2754if {[N I 8228 x {}]} {emit {number of blocks %d,}}
2755if {[N I 8232 x {}]} {emit {number of data blocks %d,}}
2756if {[N I 8236 x {}]} {emit {number of cylinder groups %d,}}
2757if {[N I 8240 x {}]} {emit {block size %d,}}
2758if {[N I 8244 x {}]} {emit {fragment size %d,}}
2759if {[N I 8252 x {}]} {emit {minimum percentage of free blocks %d,}}
2760if {[N I 8256 x {}]} {emit {rotational delay %dms,}}
2761if {[N I 8260 x {}]} {emit {disk rotational speed %drps,}}
2762switch -- [Nv I 8320] 0 {emit {TIME optimization}} 1 {emit {SPACE optimization}}
2763}
2764if {[N s 1080 == 0xef53]} {emit Linux
2765if {[N i 1100 x {}]} {emit {rev %d}}
2766if {[N s 1086 x {}]} {emit {\b.%d}}
2767if {[N i 1116 ^ 0x4]} {emit {ext2 filesystem data}
2768if {[N s 1082 ^ 0x1]} {emit {\(mounted or unclean\)}}
2769}
2770if {[N i 1116 & 0x4]} {emit {ext3 filesystem data}
2771if {[N i 1120 & 0x4]} {emit {\(needs journal recovery\)}}
2772}
2773if {[N s 1082 & 0x2]} {emit {\(errors\)}}
2774if {[N i 1120 & 0x1]} {emit {\(compressed\)}}
2775if {[N i 1124 & 0x2]} {emit {\(large files\)}}
2776}
2777if {[N I 2048 == 0x46fc2700]} {emit {Atari-ST Minix kernel image}
2778if {[S 19 == {\240\5\371\5\0\011\0\2\0}]} {emit {\b, 720k floppy}}
2779if {[S 19 == {\320\2\370\5\0\011\0\1\0}]} {emit {\b, 360k floppy}}
2780}
2781if {[S 19 == {\320\2\360\3\0\011\0\1\0}]} {emit {DOS floppy 360k}
2782if {[N s 510 == 0xaa55]} {emit {\b, x86 hard disk boot sector}}
2783}
2784if {[S 19 == {\240\5\371\3\0\011\0\2\0}]} {emit {DOS floppy 720k}
2785if {[N s 510 == 0xaa55]} {emit {\b, x86 hard disk boot sector}}
2786}
2787if {[S 19 == {\100\013\360\011\0\022\0\2\0}]} {emit {DOS floppy 1440k}
2788if {[N s 510 == 0xaa55]} {emit {\b, x86 hard disk boot sector}}
2789}
2790if {[S 19 == {\240\5\371\5\0\011\0\2\0}]} {emit {DOS floppy 720k, IBM}
2791if {[N s 510 == 0xaa55]} {emit {\b, x86 hard disk boot sector}}
2792}
2793if {[S 19 == {\100\013\371\5\0\011\0\2\0}]} {emit {DOS floppy 1440k, mkdosfs}
2794if {[N s 510 == 0xaa55]} {emit {\b, x86 hard disk boot sector}}
2795}
2796if {[S 19 == {\320\2\370\5\0\011\0\1\0}]} {emit {Atari-ST floppy 360k}}
2797if {[S 19 == {\240\5\371\5\0\011\0\2\0}]} {emit {Atari-ST floppy 720k}}
2798if {[S 32769 == CD001]} {emit {ISO 9660 CD-ROM filesystem data}
2799if {[S 32808 x {}]} {emit '%s'}
2800if {[S 34816 == {\000CD001\001EL\ TORITO\ SPECIFICATION}]} {emit {\(bootable\)}}
2801}
2802if {[S 37633 == CD001]} {emit {ISO 9660 CD-ROM filesystem data \(raw 2352 byte sectors\)}}
2803if {[S 32776 == CDROM]} {emit {High Sierra CD-ROM filesystem data}}
2804if {[S 65588 == ReIsErFs]} {emit {ReiserFS V3.5}}
2805if {[S 65588 == ReIsEr2Fs]} {emit {ReiserFS V3.6}
2806if {[N s 65580 x {}]} {emit {block size %d}}
2807if {[N s 65586 & 0x2]} {emit {\(mounted or unclean\)}}
2808if {[N i 65536 x {}]} {emit {num blocks %d}}
2809switch -- [Nv i 65600] 1 {emit {tea hash}} 2 {emit {yura hash}} 3 {emit {r5 hash}}
2810}
2811if {[S 0 == ESTFBINR]} {emit {EST flat binary}}
2812if {[S 0 == {VoIP\ Startup\ and}]} {emit {Aculab VoIP firmware}
2813if {[S 35 x {}]} {emit {format %s}}
2814}
2815if {[S 0 == sqsh]} {emit {Squashfs filesystem, big endian,}
2816if {[N S 28 x {}]} {emit {version %d.}}
2817if {[N S 30 x {}]} {emit {\b%d,}}
2818if {[N I 8 x {}]} {emit {%d bytes,}}
2819if {[N I 4 x {}]} {emit {%d inodes,}}
2820if {[N S 28 < 0x2]} {if {[N S 32 x {}]} {emit {blocksize: %d bytes,}}
2821}
2822if {[N S 28 > 0x1]} {if {[N I 51 x {}]} {emit {blocksize: %d bytes,}}
2823}
2824if {[N S 39 x {}]} {emit {created: %s}}
2825}
2826if {[S 0 == hsqs]} {emit {Squashfs filesystem, little endian,}
2827if {[N s 28 x {}]} {emit {version %d.}}
2828if {[N s 30 x {}]} {emit {\b%d,}}
2829if {[N i 8 x {}]} {emit {%d bytes,}}
2830if {[N i 4 x {}]} {emit {%d inodes,}}
2831if {[N s 28 < 0x2]} {if {[N s 32 x {}]} {emit {blocksize: %d bytes,}}
2832}
2833if {[N s 28 > 0x1]} {if {[N i 51 x {}]} {emit {blocksize: %d bytes,}}
2834}
2835if {[N s 39 x {}]} {emit {created: %s}}
2836}
2837if {[S 0 == FWS]} {emit {Macromedia Flash data,}
2838if {[N c 3 x {}]} {emit {version %d}}
2839}
2840if {[S 0 == CWS]} {emit {Macromedia Flash data \(compressed\),}
2841if {[N c 3 x {}]} {emit {version %d}}
2842}
2843if {[S 0 == {AGD4\xbe\xb8\xbb\xcb\x00}]} {emit {Macromedia Freehand 9 Document}}
2844if {[S 0 == FONT]} {emit {ASCII vfont text}}
2845if {[S 0 == %!PS-AdobeFont-1.]} {emit {PostScript Type 1 font text}
2846if {[S 20 x {}]} {emit {\(%s\)}}
2847}
2848if {[S 6 == %!PS-AdobeFont-1.]} {emit {PostScript Type 1 font program data}}
2849if {[S 0 == {STARTFONT\040}]} {emit {X11 BDF font text}}
2850if {[S 0 == {\001fcp}]} {emit {X11 Portable Compiled Font data}
2851switch -- [Nv c 12] 2 {emit {\b, LSB first}} 10 {emit {\b, MSB first}}
2852}
2853if {[S 0 == {D1.0\015}]} {emit {X11 Speedo font data}}
2854if {[S 0 == flf]} {emit {FIGlet font}
2855if {[S 3 > 2a]} {emit {version %-2.2s}}
2856}
2857if {[S 0 == flc]} {emit {FIGlet controlfile}
2858if {[S 3 > 2a]} {emit {version %-2.2s}}
2859}
2860switch -- [Nv I 7] 4540225 {emit {DOS code page font data}} 5654852 {emit {DOS code page font data \(from Linux?\)}}
2861if {[S 4098 == DOSFONT]} {emit {DOSFONT2 encrypted font data}}
2862if {[S 0 == PFR1]} {emit {PFR1 font}
2863if {[S 102 > 0]} {emit {\b: %s}}
2864}
2865if {[S 0 == {\000\001\000\000\000}]} {emit {TrueType font data}}
2866if {[S 0 == {\007\001\001\000Copyright\ (c)\ 199}]} {emit {Adobe Multiple Master font}}
2867if {[S 0 == {\012\001\001\000Copyright\ (c)\ 199}]} {emit {Adobe Multiple Master font}}
2868if {[S 0 == OTTO]} {emit {OpenType font data}}
2869if {[S 0 == <MakerFile]} {emit {FrameMaker document}
2870if {[S 11 == 5.5]} {emit {\(5.5}}
2871if {[S 11 == 5.0]} {emit {\(5.0}}
2872if {[S 11 == 4.0]} {emit {\(4.0}}
2873if {[S 11 == 3.0]} {emit {\(3.0}}
2874if {[S 11 == 2.0]} {emit {\(2.0}}
2875if {[S 11 == 1.0]} {emit {\(1.0}}
2876if {[N c 14 x {}]} {emit {%c\)}}
2877}
2878if {[S 0 == <MIFFile]} {emit {FrameMaker MIF \(ASCII\) file}
2879if {[S 9 == 4.0]} {emit {\(4.0\)}}
2880if {[S 9 == 3.0]} {emit {\(3.0\)}}
2881if {[S 9 == 2.0]} {emit {\(2.0\)}}
2882if {[S 9 == 1.0]} {emit {\(1.x\)}}
2883}
2884if {[S 0 == <MakerDictionary]} {emit {FrameMaker Dictionary text}
2885if {[S 17 == 3.0]} {emit {\(3.0\)}}
2886if {[S 17 == 2.0]} {emit {\(2.0\)}}
2887if {[S 17 == 1.0]} {emit {\(1.x\)}}
2888}
2889if {[S 0 == <MakerScreenFont]} {emit {FrameMaker Font file}
2890if {[S 17 == 1.01]} {emit {\(%s\)}}
2891}
2892if {[S 0 == <MML]} {emit {FrameMaker MML file}}
2893if {[S 0 == <BookFile]} {emit {FrameMaker Book file}
2894if {[S 10 == 3.0]} {emit {\(3.0}}
2895if {[S 10 == 2.0]} {emit {\(2.0}}
2896if {[S 10 == 1.0]} {emit {\(1.0}}
2897if {[N c 13 x {}]} {emit {%c\)}}
2898}
2899if {[S 0 == <Maker]} {emit {Intermediate Print File	FrameMaker IPL file}}
2900switch -- [Nv i 0 &0377777777] 8782087 {emit FreeBSD/i386
2901if {[N i 20 < 0x1000]} {if {[N c 3 & 0x80 &0xC0]} {emit {shared library}}
2902switch -- [Nv c 3 &0xC0] 64 {emit {PIC object}} 0 {emit object}
2903}
2904if {[N i 20 > 0xfff]} {switch -- [Nv c 3 &0x80] -128 {emit {dynamically linked executable}} 0 {emit executable}
2905}
2906if {[N i 16 > 0x0]} {emit {not stripped}}
2907} 8782088 {emit {FreeBSD/i386 pure}
2908if {[N i 20 < 0x1000]} {if {[N c 3 & 0x80 &0xC0]} {emit {shared library}}
2909switch -- [Nv c 3 &0xC0] 64 {emit {PIC object}} 0 {emit object}
2910}
2911if {[N i 20 > 0xfff]} {switch -- [Nv c 3 &0x80] -128 {emit {dynamically linked executable}} 0 {emit executable}
2912}
2913if {[N i 16 > 0x0]} {emit {not stripped}}
2914} 8782091 {emit {FreeBSD/i386 demand paged}
2915if {[N i 20 < 0x1000]} {if {[N c 3 & 0x80 &0xC0]} {emit {shared library}}
2916switch -- [Nv c 3 &0xC0] 64 {emit {PIC object}} 0 {emit object}
2917}
2918if {[N i 20 > 0xfff]} {switch -- [Nv c 3 &0x80] -128 {emit {dynamically linked executable}} 0 {emit executable}
2919}
2920if {[N i 16 > 0x0]} {emit {not stripped}}
2921} 8782028 {emit {FreeBSD/i386 compact demand paged}
2922if {[N i 20 < 0x1000]} {if {[N c 3 & 0x80 &0xC0]} {emit {shared library}}
2923switch -- [Nv c 3 &0xC0] 64 {emit {PIC object}} 0 {emit object}
2924}
2925if {[N i 20 > 0xfff]} {switch -- [Nv c 3 &0x80] -128 {emit {dynamically linked executable}} 0 {emit executable}
2926}
2927if {[N i 16 > 0x0]} {emit {not stripped}}
2928}
2929if {[S 7 == {\357\020\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0}]} {emit {FreeBSD/i386 a.out core file}
2930if {[S 1039 x {}]} {emit {from '%s'}}
2931}
2932if {[S 0 == SCRSHOT_]} {emit {scrshot\(1\) screenshot,}
2933if {[N c 8 x {}]} {emit {version %d,}}
2934if {[N c 9 == 0x2]} {emit {%d bytes in header,}
2935if {[N c 10 x {}]} {emit {%d chars wide by}}
2936if {[N c 11 x {}]} {emit {%d chars high}}
2937}
2938}
2939if {[S 1 == WAD]} {emit {DOOM data,}
2940if {[S 0 == I]} {emit {main wad}}
2941if {[S 0 == P]} {emit {patch wad}}
2942if {[N c 0 x {}]} {emit {unknown junk}}
2943}
2944if {[S 0 == IDP2]} {emit {Quake II 3D Model file,}
2945if {[N Q 20 x {}]} {emit {%lu skin\(s\),}}
2946if {[N Q 8 x {}]} {emit {\(%lu x}}
2947if {[N Q 12 x {}]} {emit {%lu\),}}
2948if {[N Q 40 x {}]} {emit {%lu frame\(s\),}}
2949if {[N Q 16 x {}]} {emit {Frame size %lu bytes,}}
2950if {[N Q 24 x {}]} {emit {%lu vertices/frame,}}
2951if {[N Q 28 x {}]} {emit {%lu texture coordinates,}}
2952if {[N Q 32 x {}]} {emit {%lu triangles/frame}}
2953}
2954if {[S 0 == IBSP]} {emit Quake
2955switch -- [Nv Q 4] 38 {emit {II Map file \(BSP\)}} 46 {emit {III Map file \(BSP\)}}
2956}
2957if {[S 0 == IDS2]} {emit {Quake II SP2 sprite file}}
2958if {[S 0 == IWAD]} {emit {DOOM or DOOM ][ world}}
2959if {[S 0 == PWAD]} {emit {DOOM or DOOM ][ extension world}}
2960if {[S 0 == {\xcb\x1dBoom\xe6\xff\x03\x01}]} {emit {Boom or linuxdoom demo}}
2961if {[S 24 == {LxD\ 203}]} {emit {Linuxdoom save}
2962if {[S 0 x {}]} {emit {, name=%s}}
2963if {[S 44 x {}]} {emit {, world=%s}}
2964}
2965if {[S 0 == PACK]} {emit {Quake I or II world or extension}}
2966if {[S 0 == {5\x0aIntroduction}]} {emit {Quake I save: start Introduction}}
2967if {[S 0 == {5\x0athe_Slipgate_Complex}]} {emit {Quake I save: e1m1 The slipgate complex}}
2968if {[S 0 == {5\x0aCastle_of_the_Damned}]} {emit {Quake I save: e1m2 Castle of the damned}}
2969if {[S 0 == {5\x0athe_Necropolis}]} {emit {Quake I save: e1m3 The necropolis}}
2970if {[S 0 == {5\x0athe_Grisly_Grotto}]} {emit {Quake I save: e1m4 The grisly grotto}}
2971if {[S 0 == {5\x0aZiggurat_Vertigo}]} {emit {Quake I save: e1m8 Ziggurat vertigo \(secret\)}}
2972if {[S 0 == {5\x0aGloom_Keep}]} {emit {Quake I save: e1m5 Gloom keep}}
2973if {[S 0 == {5\x0aThe_Door_To_Chthon}]} {emit {Quake I save: e1m6 The door to Chthon}}
2974if {[S 0 == {5\x0aThe_House_of_Chthon}]} {emit {Quake I save: e1m7 The house of Chthon}}
2975if {[S 0 == {5\x0athe_Installation}]} {emit {Quake I save: e2m1 The installation}}
2976if {[S 0 == {5\x0athe_Ogre_Citadel}]} {emit {Quake I save: e2m2 The ogre citadel}}
2977if {[S 0 == {5\x0athe_Crypt_of_Decay}]} {emit {Quake I save: e2m3 The crypt of decay \(dopefish lives!\)}}
2978if {[S 0 == {5\x0aUnderearth}]} {emit {Quake I save: e2m7 Underearth \(secret\)}}
2979if {[S 0 == {5\x0athe_Ebon_Fortress}]} {emit {Quake I save: e2m4 The ebon fortress}}
2980if {[S 0 == {5\x0athe_Wizard's_Manse}]} {emit {Quake I save: e2m5 The wizard's manse}}
2981if {[S 0 == {5\x0athe_Dismal_Oubliette}]} {emit {Quake I save: e2m6 The dismal oubliette}}
2982if {[S 0 == {5\x0aTermination_Central}]} {emit {Quake I save: e3m1 Termination central}}
2983if {[S 0 == {5\x0aVaults_of_Zin}]} {emit {Quake I save: e3m2 Vaults of Zin}}
2984if {[S 0 == {5\x0athe_Tomb_of_Terror}]} {emit {Quake I save: e3m3 The tomb of terror}}
2985if {[S 0 == {5\x0aSatan's_Dark_Delight}]} {emit {Quake I save: e3m4 Satan's dark delight}}
2986if {[S 0 == {5\x0athe_Haunted_Halls}]} {emit {Quake I save: e3m7 The haunted halls \(secret\)}}
2987if {[S 0 == {5\x0aWind_Tunnels}]} {emit {Quake I save: e3m5 Wind tunnels}}
2988if {[S 0 == {5\x0aChambers_of_Torment}]} {emit {Quake I save: e3m6 Chambers of torment}}
2989if {[S 0 == {5\x0athe_Sewage_System}]} {emit {Quake I save: e4m1 The sewage system}}
2990if {[S 0 == {5\x0aThe_Tower_of_Despair}]} {emit {Quake I save: e4m2 The tower of despair}}
2991if {[S 0 == {5\x0aThe_Elder_God_Shrine}]} {emit {Quake I save: e4m3 The elder god shrine}}
2992if {[S 0 == {5\x0athe_Palace_of_Hate}]} {emit {Quake I save: e4m4 The palace of hate}}
2993if {[S 0 == {5\x0aHell's_Atrium}]} {emit {Quake I save: e4m5 Hell's atrium}}
2994if {[S 0 == {5\x0athe_Nameless_City}]} {emit {Quake I save: e4m8 The nameless city \(secret\)}}
2995if {[S 0 == {5\x0aThe_Pain_Maze}]} {emit {Quake I save: e4m6 The pain maze}}
2996if {[S 0 == {5\x0aAzure_Agony}]} {emit {Quake I save: e4m7 Azure agony}}
2997if {[S 0 == {5\x0aShub-Niggurath's_Pit}]} {emit {Quake I save: end Shub-Niggurath's pit}}
2998if {[S 0 == {5\x0aPlace_of_Two_Deaths}]} {emit {Quake I save: dm1 Place of two deaths}}
2999if {[S 0 == {5\x0aClaustrophobopolis}]} {emit {Quake I save: dm2 Claustrophobopolis}}
3000if {[S 0 == {5\x0aThe_Abandoned_Base}]} {emit {Quake I save: dm3 The abandoned base}}
3001if {[S 0 == {5\x0aThe_Bad_Place}]} {emit {Quake I save: dm4 The bad place}}
3002if {[S 0 == {5\x0aThe_Cistern}]} {emit {Quake I save: dm5 The cistern}}
3003if {[S 0 == {5\x0aThe_Dark_Zone}]} {emit {Quake I save: dm6 The dark zone}}
3004if {[S 0 == {5\x0aCommand_HQ}]} {emit {Quake I save: start Command HQ}}
3005if {[S 0 == {5\x0aThe_Pumping_Station}]} {emit {Quake I save: hip1m1 The pumping station}}
3006if {[S 0 == {5\x0aStorage_Facility}]} {emit {Quake I save: hip1m2 Storage facility}}
3007if {[S 0 == {5\x0aMilitary_Complex}]} {emit {Quake I save: hip1m5 Military complex \(secret\)}}
3008if {[S 0 == {5\x0athe_Lost_Mine}]} {emit {Quake I save: hip1m3 The lost mine}}
3009if {[S 0 == {5\x0aResearch_Facility}]} {emit {Quake I save: hip1m4 Research facility}}
3010if {[S 0 == {5\x0aAncient_Realms}]} {emit {Quake I save: hip2m1 Ancient realms}}
3011if {[S 0 == {5\x0aThe_Gremlin's_Domain}]} {emit {Quake I save: hip2m6 The gremlin's domain \(secret\)}}
3012if {[S 0 == {5\x0aThe_Black_Cathedral}]} {emit {Quake I save: hip2m2 The black cathedral}}
3013if {[S 0 == {5\x0aThe_Catacombs}]} {emit {Quake I save: hip2m3 The catacombs}}
3014if {[S 0 == {5\x0athe_Crypt__}]} {emit {Quake I save: hip2m4 The crypt}}
3015if {[S 0 == {5\x0aMortum's_Keep}]} {emit {Quake I save: hip2m5 Mortum's keep}}
3016if {[S 0 == {5\x0aTur_Torment}]} {emit {Quake I save: hip3m1 Tur torment}}
3017if {[S 0 == {5\x0aPandemonium}]} {emit {Quake I save: hip3m2 Pandemonium}}
3018if {[S 0 == {5\x0aLimbo}]} {emit {Quake I save: hip3m3 Limbo}}
3019if {[S 0 == {5\x0athe_Edge_of_Oblivion}]} {emit {Quake I save: hipdm1 The edge of oblivion \(secret\)}}
3020if {[S 0 == {5\x0aThe_Gauntlet}]} {emit {Quake I save: hip3m4 The gauntlet}}
3021if {[S 0 == {5\x0aArmagon's_Lair}]} {emit {Quake I save: hipend Armagon's lair}}
3022if {[S 0 == {5\x0aThe_Academy}]} {emit {Quake I save: start The academy}}
3023if {[S 0 == {5\x0aThe_Lab}]} {emit {Quake I save: d1 The lab}}
3024if {[S 0 == {5\x0aArea_33}]} {emit {Quake I save: d1b Area 33}}
3025if {[S 0 == {5\x0aSECRET_MISSIONS}]} {emit {Quake I save: d3b Secret missions}}
3026if {[S 0 == {5\x0aThe_Hospital}]} {emit {Quake I save: d10 The hospital \(secret\)}}
3027if {[S 0 == {5\x0aThe_Genetics_Lab}]} {emit {Quake I save: d11 The genetics lab \(secret\)}}
3028if {[S 0 == {5\x0aBACK_2_MALICE}]} {emit {Quake I save: d4b Back to Malice}}
3029if {[S 0 == {5\x0aArea44}]} {emit {Quake I save: d1c Area 44}}
3030if {[S 0 == {5\x0aTakahiro_Towers}]} {emit {Quake I save: d2 Takahiro towers}}
3031if {[S 0 == {5\x0aA_Rat's_Life}]} {emit {Quake I save: d3 A rat's life}}
3032if {[S 0 == {5\x0aInto_The_Flood}]} {emit {Quake I save: d4 Into the flood}}
3033if {[S 0 == {5\x0aThe_Flood}]} {emit {Quake I save: d5 The flood}}
3034if {[S 0 == {5\x0aNuclear_Plant}]} {emit {Quake I save: d6 Nuclear plant}}
3035if {[S 0 == {5\x0aThe_Incinerator_Plant}]} {emit {Quake I save: d7 The incinerator plant}}
3036if {[S 0 == {5\x0aThe_Foundry}]} {emit {Quake I save: d7b The foundry}}
3037if {[S 0 == {5\x0aThe_Underwater_Base}]} {emit {Quake I save: d8 The underwater base}}
3038if {[S 0 == {5\x0aTakahiro_Base}]} {emit {Quake I save: d9 Takahiro base}}
3039if {[S 0 == {5\x0aTakahiro_Laboratories}]} {emit {Quake I save: d12 Takahiro laboratories}}
3040if {[S 0 == {5\x0aStayin'_Alive}]} {emit {Quake I save: d13 Stayin' alive}}
3041if {[S 0 == {5\x0aB.O.S.S._HQ}]} {emit {Quake I save: d14 B.O.S.S. HQ}}
3042if {[S 0 == {5\x0aSHOWDOWN!}]} {emit {Quake I save: d15 Showdown!}}
3043if {[S 0 == {5\x0aThe_Seventh_Precinct}]} {emit {Quake I save: ddm1 The seventh precinct}}
3044if {[S 0 == {5\x0aSub_Station}]} {emit {Quake I save: ddm2 Sub station}}
3045if {[S 0 == {5\x0aCrazy_Eights!}]} {emit {Quake I save: ddm3 Crazy eights!}}
3046if {[S 0 == {5\x0aEast_Side_Invertationa}]} {emit {Quake I save: ddm4 East side invertationa}}
3047if {[S 0 == {5\x0aSlaughterhouse}]} {emit {Quake I save: ddm5 Slaughterhouse}}
3048if {[S 0 == {5\x0aDOMINO}]} {emit {Quake I save: ddm6 Domino}}
3049if {[S 0 == {5\x0aSANDRA'S_LADDER}]} {emit {Quake I save: ddm7 Sandra's ladder}}
3050if {[S 0 == MComprHD]} {emit {MAME CHD compressed hard disk image,}
3051if {[N I 12 x {}]} {emit {version %lu}}
3052}
3053if {[S 0 == gpch]} {emit {GCC precompiled header}
3054if {[N c 5 x {}]} {emit {\(version %c}}
3055if {[N c 6 x {}]} {emit {\b%c}}
3056if {[N c 7 x {}]} {emit {\b%c\)}}
3057switch -- [Nv c 4] 67 {emit {for C}} 111 {emit {for Objective C}} 43 {emit {for C++}} 79 {emit {for Objective C++}}
3058}
3059if {[S 0 == {GIMP\ Gradient}]} {emit {GIMP gradient data}}
3060if {[S 0 == {gimp\ xcf}]} {emit {GIMP XCF image data,}
3061if {[S 9 == file]} {emit {version 0,}}
3062if {[S 9 == v]} {emit version
3063if {[S 10 x {}]} {emit %s,}
3064}
3065if {[N I 14 x {}]} {emit {%lu x}}
3066if {[N I 18 x {}]} {emit %lu,}
3067switch -- [Nv I 22] 0 {emit {RGB Color}} 1 {emit Greyscale} 2 {emit {Indexed Color}}
3068if {[N I 22 > 0x2]} {emit {Unknown Image Type.}}
3069}
3070if {[S 20 == GPAT]} {emit {GIMP pattern data,}
3071if {[S 24 x {}]} {emit %s}
3072}
3073if {[S 20 == GIMP]} {emit {GIMP brush data}}
3074if {[S 0 == {\336\22\4\225}]} {emit {GNU message catalog \(little endian\),}
3075if {[N i 4 x {}]} {emit {revision %d,}}
3076if {[N i 8 x {}]} {emit {%d messages}}
3077}
3078if {[S 0 == {\225\4\22\336}]} {emit {GNU message catalog \(big endian\),}
3079if {[N I 4 x {}]} {emit {revision %d,}}
3080if {[N I 8 x {}]} {emit {%d messages}}
3081}
3082if {[S 0 == *nazgul*]} {emit {Nazgul style compiled message catalog}
3083if {[N i 8 > 0x0]} {emit {\b, version %ld}}
3084}
3085if {[S 0 == {\001gpg}]} {emit {GPG key trust database}
3086if {[N c 4 x {}]} {emit {version %d}}
3087}
3088if {[S 39 == <gmr:Workbook]} {emit {Gnumeric spreadsheet}}
3089if {[S 0 == {\0LOCATE}]} {emit {GNU findutils locate database data}
3090if {[S 7 x {}]} {emit {\b, format %s}}
3091if {[S 7 == 02]} {emit {\b \(frcode\)}}
3092}
3093if {[S 0 == {\000\000\0001\000\000\0000\000\000\0000\000\000\0002\000\000\0000\000\000\0000\000\000\0003}]} {emit {old ACE/gr binary file}
3094if {[N c 39 > 0x0]} {emit {- version %c}}
3095}
3096if {[S 0 == {\#\ xvgr\ parameter\ file}]} {emit {ACE/gr ascii file}}
3097if {[S 0 == {\#\ xmgr\ parameter\ file}]} {emit {ACE/gr ascii file}}
3098if {[S 0 == {\#\ ACE/gr\ parameter\ file}]} {emit {ACE/gr ascii file}}
3099if {[S 0 == {\#\ Grace\ project\ file}]} {emit {Grace project file}
3100if {[S 23 == {@version\ }]} {emit {\(version}
3101if {[N c 32 > 0x0]} {emit %c}
3102if {[S 33 x {}]} {emit {\b.%.2s}}
3103if {[S 35 x {}]} {emit {\b.%.2s\)}}
3104}
3105}
3106if {[S 0 == {\#\ ACE/gr\ fit\ description\ }]} {emit {ACE/gr fit description file}}
3107if {[S 0 == {\211HDF\r\n\032}]} {emit {Hierarchical Data Format \(version 5\) data}}
3108if {[S 0 == Bitmapfile]} {emit {HP Bitmapfile}}
3109if {[S 0 == IMGfile]} {emit {CIS 	compimg HP Bitmapfile}}
3110if {[S 0 == msgcat01]} {emit {HP NLS message catalog,}
3111if {[N Q 8 > 0x0]} {emit {%d messages}}
3112}
3113if {[S 0 == HPHP48-]} {emit {HP48 binary}
3114if {[N c 7 > 0x0]} {emit {- Rev %c}}
3115switch -- [Nv S 8] 4393 {emit {\(ADR\)}} 13097 {emit {\(REAL\)}} 21801 {emit {\(LREAL\)}} 30505 {emit {\(COMPLX\)}} -25303 {emit {\(LCOMPLX\)}} -16599 {emit {\(CHAR\)}} -6103 {emit {\(ARRAY\)}} 2602 {emit {\(LNKARRAY\)}} 11306 {emit {\(STRING\)}} 20010 {emit {\(HXS\)}} 29738 {emit {\(LIST\)}} -27094 {emit {\(DIR\)}} -18390 {emit {\(ALG\)}} -9686 {emit {\(UNIT\)}} -982 {emit {\(TAGGED\)}} 7723 {emit {\(GROB\)}} 16427 {emit {\(LIB\)}} 25131 {emit {\(BACKUP\)}} -30677 {emit {\(LIBDATA\)}} -25299 {emit {\(PROG\)}} -13267 {emit {\(CODE\)}} 18478 {emit {\(GNAME\)}} 27950 {emit {\(LNAME\)}} -28114 {emit {\(XLIB\)}}
3116}
3117if {[S 0 == %%HP:]} {emit {HP48 text}
3118if {[S 6 == T(0)]} {emit {- T\(0\)}}
3119if {[S 6 == T(1)]} {emit {- T\(1\)}}
3120if {[S 6 == T(2)]} {emit {- T\(2\)}}
3121if {[S 6 == T(3)]} {emit {- T\(3\)}}
3122if {[S 10 == A(D)]} {emit {A\(D\)}}
3123if {[S 10 == A(R)]} {emit {A\(R\)}}
3124if {[S 10 == A(G)]} {emit {A\(G\)}}
3125if {[S 14 == F(.)]} {emit {F\(.\);}}
3126if {[S 14 == F(,)]} {emit {F\(,\);}}
3127}
3128if {[S 16 == HP-UX]} {if {[N I 0 == 0x2]} {if {[N I 12 == 0x3c]} {switch -- [Nv I 76] 256 {emit {}
3129if {[N I 88 == 0x44]} {if {[N I 160 == 0x1]} {if {[N I 172 == 0x4]} {if {[N I 176 == 0x1]} {if {[N I 180 == 0x4]} {emit {core file}
3130if {[S 144 x {}]} {emit {from '%s'}}
3131switch -- [Nv I 196] 3 {emit {- received SIGQUIT}} 4 {emit {- received SIGILL}} 5 {emit {- received SIGTRAP}} 6 {emit {- received SIGABRT}} 7 {emit {- received SIGEMT}} 8 {emit {- received SIGFPE}} 10 {emit {- received SIGBUS}} 11 {emit {- received SIGSEGV}} 12 {emit {- received SIGSYS}} 33 {emit {- received SIGXCPU}} 34 {emit {- received SIGXFSZ}}
3132}
3133}
3134}
3135}
3136}
3137} 1 {emit {}
3138if {[N I 88 == 0x4]} {if {[N I 92 == 0x1]} {if {[N I 96 == 0x100]} {if {[N I 108 == 0x44]} {if {[N I 180 == 0x4]} {emit {core file}
3139if {[S 164 x {}]} {emit {from '%s'}}
3140switch -- [Nv I 196] 3 {emit {- received SIGQUIT}} 4 {emit {- received SIGILL}} 5 {emit {- received SIGTRAP}} 6 {emit {- received SIGABRT}} 7 {emit {- received SIGEMT}} 8 {emit {- received SIGFPE}} 10 {emit {- received SIGBUS}} 11 {emit {- received SIGSEGV}} 12 {emit {- received SIGSYS}} 33 {emit {- received SIGXCPU}} 34 {emit {- received SIGXFSZ}}
3141}
3142}
3143}
3144}
3145}
3146}
3147}
3148}
3149}
3150if {[S 36 == HP-UX]} {if {[N I 0 == 0x1]} {if {[N I 12 == 0x4]} {if {[N I 16 == 0x1]} {if {[N I 20 == 0x2]} {if {[N I 32 == 0x3c]} {if {[N I 96 == 0x100]} {if {[N I 108 == 0x44]} {if {[N I 180 == 0x4]} {emit {core file}
3151if {[S 164 x {}]} {emit {from '%s'}}
3152switch -- [Nv I 196] 3 {emit {- received SIGQUIT}} 4 {emit {- received SIGILL}} 5 {emit {- received SIGTRAP}} 6 {emit {- received SIGABRT}} 7 {emit {- received SIGEMT}} 8 {emit {- received SIGFPE}} 10 {emit {- received SIGBUS}} 11 {emit {- received SIGSEGV}} 12 {emit {- received SIGSYS}} 33 {emit {- received SIGXCPU}} 34 {emit {- received SIGXFSZ}}
3153}
3154}
3155}
3156}
3157}
3158}
3159}
3160}
3161}
3162if {[S 100 == HP-UX]} {if {[N I 0 == 0x100]} {if {[N I 12 == 0x44]} {if {[N I 84 == 0x2]} {if {[N I 96 == 0x3c]} {if {[N I 160 == 0x1]} {if {[N I 172 == 0x4]} {if {[N I 176 == 0x1]} {if {[N I 180 == 0x4]} {emit {core file}
3163if {[S 68 x {}]} {emit {from '%s'}}
3164switch -- [Nv I 196] 3 {emit {- received SIGQUIT}} 4 {emit {- received SIGILL}} 5 {emit {- received SIGTRAP}} 6 {emit {- received SIGABRT}} 7 {emit {- received SIGEMT}} 8 {emit {- received SIGFPE}} 10 {emit {- received SIGBUS}} 11 {emit {- received SIGSEGV}} 12 {emit {- received SIGSYS}} 33 {emit {- received SIGXCPU}} 34 {emit {- received SIGXFSZ}}
3165}
3166}
3167}
3168}
3169}
3170}
3171}
3172}
3173}
3174if {[S 120 == HP-UX]} {switch -- [Nv I 0] 1 {emit {}
3175if {[N I 12 == 0x4]} {if {[N I 16 == 0x1]} {if {[N I 20 == 0x100]} {if {[N I 32 == 0x44]} {if {[N I 104 == 0x2]} {if {[N I 116 == 0x3c]} {if {[N I 180 == 0x4]} {emit {core file}
3176if {[S 88 x {}]} {emit {from '%s'}}
3177switch -- [Nv I 196] 3 {emit {- received SIGQUIT}} 4 {emit {- received SIGILL}} 5 {emit {- received SIGTRAP}} 6 {emit {- received SIGABRT}} 7 {emit {- received SIGEMT}} 8 {emit {- received SIGFPE}} 10 {emit {- received SIGBUS}} 11 {emit {- received SIGSEGV}} 12 {emit {- received SIGSYS}} 33 {emit {- received SIGXCPU}} 34 {emit {- received SIGXFSZ}}
3178}
3179}
3180}
3181}
3182}
3183}
3184}
3185} 256 {emit {}
3186if {[N I 12 == 0x44]} {if {[N I 84 == 0x1]} {if {[N I 96 == 0x4]} {if {[N I 100 == 0x1]} {if {[N I 104 == 0x2]} {if {[N I 116 == 0x2c]} {if {[N I 180 == 0x4]} {emit {core file}
3187if {[S 68 x {}]} {emit {from '%s'}}
3188switch -- [Nv I 196] 3 {emit {- received SIGQUIT}} 4 {emit {- received SIGILL}} 5 {emit {- received SIGTRAP}} 6 {emit {- received SIGABRT}} 7 {emit {- received SIGEMT}} 8 {emit {- received SIGFPE}} 10 {emit {- received SIGBUS}} 11 {emit {- received SIGSEGV}} 12 {emit {- received SIGSYS}} 33 {emit {- received SIGXCPU}} 34 {emit {- received SIGXFSZ}}
3189}
3190}
3191}
3192}
3193}
3194}
3195}
3196}
3197}
3198if {[S 0 == HPHP49-]} {emit {HP49 binary}}
3199if {[S 0 == 0xabcdef]} {emit {AIX message catalog}}
3200if {[S 0 == <aiaff>]} {emit archive}
3201if {[S 0 == <bigaf>]} {emit {archive \(big format\)}}
3202if {[S 0 == FORM]} {emit {IFF data}
3203if {[S 8 == AIFF]} {emit {\b, AIFF audio}}
3204if {[S 8 == AIFC]} {emit {\b, AIFF-C compressed audio}}
3205if {[S 8 == 8SVX]} {emit {\b, 8SVX 8-bit sampled sound voice}}
3206if {[S 8 == SAMP]} {emit {\b, SAMP sampled audio}}
3207if {[S 8 == DTYP]} {emit {\b, DTYP datatype description}}
3208if {[S 8 == PTCH]} {emit {\b, PTCH binary patch}}
3209if {[S 8 == ILBMBMHD]} {emit {\b, ILBM interleaved image}
3210if {[N S 20 x {}]} {emit {\b, %d x}}
3211if {[N S 22 x {}]} {emit %d}
3212}
3213if {[S 8 == RGBN]} {emit {\b, RGBN 12-bit RGB image}}
3214if {[S 8 == RGB8]} {emit {\b, RGB8 24-bit RGB image}}
3215if {[S 8 == DR2D]} {emit {\b, DR2D 2-D object}}
3216if {[S 8 == TDDD]} {emit {\b, TDDD 3-D rendering}}
3217if {[S 8 == FTXT]} {emit {\b, FTXT formatted text}}
3218if {[S 8 == CTLG]} {emit {\b, CTLG message catalog}}
3219if {[S 8 == PREF]} {emit {\b, PREF preferences}}
3220}
3221switch -- [Nv I 1 &0xfff7ffff] 16842752 {emit {Targa image data - Map}
3222if {[N c 2 == 0x8 &8]} {emit {- RLE}}
3223if {[N s 12 > 0x0]} {emit {%hd x}}
3224if {[N s 14 > 0x0]} {emit %hd}
3225} 131072 {emit {Targa image data - RGB}
3226if {[N c 2 == 0x8 &8]} {emit {- RLE}}
3227if {[N s 12 > 0x0]} {emit {%hd x}}
3228if {[N s 14 > 0x0]} {emit %hd}
3229} 196608 {emit {Targa image data - Mono}
3230if {[N c 2 == 0x8 &8]} {emit {- RLE}}
3231if {[N s 12 > 0x0]} {emit {%hd x}}
3232if {[N s 14 > 0x0]} {emit %hd}
3233}
3234if {[S 0 == P1]} {emit {Netpbm PBM image text}}
3235if {[S 0 == P2]} {emit {Netpbm PGM image text}}
3236if {[S 0 == P3]} {emit {Netpbm PPM image text}}
3237if {[S 0 == P4]} {emit {Netpbm PBM \"rawbits\" image data}}
3238if {[S 0 == P5]} {emit {Netpbm PGM \"rawbits\" image data}}
3239if {[S 0 == P6]} {emit {Netpbm PPM \"rawbits\" image data}}
3240if {[S 0 == P7]} {emit {Netpbm PAM image file}}
3241if {[S 0 == {\117\072}]} {emit {Solitaire Image Recorder format}
3242if {[S 4 == {\013}]} {emit {MGI Type 11}}
3243if {[S 4 == {\021}]} {emit {MGI Type 17}}
3244}
3245if {[S 0 == .MDA]} {emit {MicroDesign data}
3246switch -- [Nv c 21] 48 {emit {version 2}} 51 {emit {version 3}}
3247}
3248if {[S 0 == .MDP]} {emit {MicroDesign page data}
3249switch -- [Nv c 21] 48 {emit {version 2}} 51 {emit {version 3}}
3250}
3251if {[S 0 == IIN1]} {emit {NIFF image data}}
3252if {[S 0 == {MM\x00\x2a}]} {emit {TIFF image data, big-endian}}
3253if {[S 0 == {II\x2a\x00}]} {emit {TIFF image data, little-endian}}
3254if {[S 0 == {\x89PNG}]} {emit {PNG image data,}
3255if {[N I 4 != 0xd0a1a0a]} {emit CORRUPTED,}
3256if {[N I 4 == 0xd0a1a0a]} {if {[N I 16 x {}]} {emit {%ld x}}
3257if {[N I 20 x {}]} {emit %ld,}
3258if {[N c 24 x {}]} {emit %d-bit}
3259switch -- [Nv c 25] 0 {emit grayscale,} 2 {emit {\b/color RGB,}} 3 {emit colormap,} 4 {emit gray+alpha,} 6 {emit {\b/color RGBA,}}
3260switch -- [Nv c 28] 0 {emit non-interlaced} 1 {emit interlaced}
3261}
3262}
3263if {[S 1 == PNG]} {emit {PNG image data, CORRUPTED}}
3264if {[S 0 == GIF8]} {emit {GIF image data}
3265if {[S 4 == 7a]} {emit {\b, version 8%s,}}
3266if {[S 4 == 9a]} {emit {\b, version 8%s,}}
3267if {[N s 6 > 0x0]} {emit {%hd x}}
3268if {[N s 8 > 0x0]} {emit %hd}
3269}
3270if {[S 0 == {\361\0\100\273}]} {emit {CMU window manager raster image data}
3271if {[N i 4 > 0x0]} {emit {%d x}}
3272if {[N i 8 > 0x0]} {emit %d,}
3273if {[N i 12 > 0x0]} {emit %d-bit}
3274}
3275if {[S 0 == id=ImageMagick]} {emit {MIFF image data}}
3276if {[S 0 == {\#FIG}]} {emit {FIG image text}
3277if {[S 5 x {}]} {emit {\b, version %.3s}}
3278}
3279if {[S 0 == ARF_BEGARF]} {emit {PHIGS clear text archive}}
3280if {[S 0 == {@(\#)SunPHIGS}]} {emit SunPHIGS
3281if {[S 40 == SunBin]} {emit binary}
3282if {[S 32 == archive]} {emit archive}
3283}
3284if {[S 0 == GKSM]} {emit {GKS Metafile}
3285if {[S 24 == SunGKS]} {emit {\b, SunGKS}}
3286}
3287if {[S 0 == BEGMF]} {emit {clear text Computer Graphics Metafile}}
3288if {[N S 0 == 0x20 &0xffe0]} {emit {binary Computer Graphics Metafile}}
3289if {[S 0 == yz]} {emit {MGR bitmap, modern format, 8-bit aligned}}
3290if {[S 0 == zz]} {emit {MGR bitmap, old format, 1-bit deep, 16-bit aligned}}
3291if {[S 0 == xz]} {emit {MGR bitmap, old format, 1-bit deep, 32-bit aligned}}
3292if {[S 0 == yx]} {emit {MGR bitmap, modern format, squeezed}}
3293if {[S 0 == {%bitmap\0}]} {emit {FBM image data}
3294switch -- [Nv Q 30] 49 {emit {\b, mono}} 51 {emit {\b, color}}
3295}
3296if {[S 1 == {PC\ Research,\ Inc}]} {emit {group 3 fax data}
3297switch -- [Nv c 29] 0 {emit {\b, normal resolution \(204x98 DPI\)}} 1 {emit {\b, fine resolution \(204x196 DPI\)}}
3298}
3299if {[S 0 == Sfff]} {emit {structured fax file}}
3300if {[S 0 == BM]} {emit {PC bitmap data}
3301switch -- [Nv s 14] 12 {emit {\b, OS/2 1.x format}
3302if {[N s 18 x {}]} {emit {\b, %d x}}
3303if {[N s 20 x {}]} {emit %d}
3304} 64 {emit {\b, OS/2 2.x format}
3305if {[N s 18 x {}]} {emit {\b, %d x}}
3306if {[N s 20 x {}]} {emit %d}
3307} 40 {emit {\b, Windows 3.x format}
3308if {[N i 18 x {}]} {emit {\b, %d x}}
3309if {[N i 22 x {}]} {emit {%d x}}
3310if {[N s 28 x {}]} {emit %d}
3311}
3312}
3313if {[S 0 == {/*\ XPM\ */}]} {emit {X pixmap image text}}
3314if {[S 0 == {Imagefile\ version-}]} {emit {iff image data}
3315if {[S 10 x {}]} {emit %s}
3316}
3317if {[S 0 == IT01]} {emit {FIT image data}
3318if {[N I 4 x {}]} {emit {\b, %d x}}
3319if {[N I 8 x {}]} {emit {%d x}}
3320if {[N I 12 x {}]} {emit %d}
3321}
3322if {[S 0 == IT02]} {emit {FIT image data}
3323if {[N I 4 x {}]} {emit {\b, %d x}}
3324if {[N I 8 x {}]} {emit {%d x}}
3325if {[N I 12 x {}]} {emit %d}
3326}
3327if {[S 2048 == PCD_IPI]} {emit {Kodak Photo CD image pack file}
3328switch -- [Nv c 3586 &0x03] 0 {emit {, landscape mode}} 1 {emit {, portrait mode}} 2 {emit {, landscape mode}} 3 {emit {, portrait mode}}
3329}
3330if {[S 0 == PCD_OPA]} {emit {Kodak Photo CD overview pack file}}
3331if {[S 0 == {SIMPLE\ \ =}]} {emit {FITS image data}
3332if {[S 109 == 8]} {emit {\b, 8-bit, character or unsigned binary integer}}
3333if {[S 108 == 16]} {emit {\b, 16-bit, two's complement binary integer}}
3334if {[S 107 == {\ 32}]} {emit {\b, 32-bit, two's complement binary integer}}
3335if {[S 107 == -32]} {emit {\b, 32-bit, floating point, single precision}}
3336if {[S 107 == -64]} {emit {\b, 64-bit, floating point, double precision}}
3337}
3338if {[S 0 == {This\ is\ a\ BitMap\ file}]} {emit {Lisp Machine bit-array-file}}
3339if {[S 0 == !!]} {emit {Bennet Yee's \"face\" format}}
3340if {[S 1536 == {Visio\ (TM)\ Drawing}]} {emit %s}
3341if {[S 0 == {\%TGIF\ x}]} {emit {Tgif file version %s}}
3342if {[S 128 == DICM]} {emit {DICOM medical imaging data}}
3343switch -- [Nv I 4] 7 {emit {XWD X Window Dump image data}
3344if {[S 100 x {}]} {emit {\b, \"%s\"}}
3345if {[N I 16 x {}]} {emit {\b, %dx}}
3346if {[N I 20 x {}]} {emit {\b%dx}}
3347if {[N I 12 x {}]} {emit {\b%d}}
3348} 2097152000 {emit GLF_BINARY_LSB_FIRST} 125 {emit GLF_BINARY_MSB_FIRST} 268435456 {emit GLS_BINARY_LSB_FIRST} 16 {emit GLS_BINARY_MSB_FIRST} 19195 {emit {QDOS executable}
3349if {[S 9 x {} p]} {emit '%s'}
3350}
3351if {[S 0 == NJPL1I00]} {emit {PDS \(JPL\) image data}}
3352if {[S 2 == NJPL1I]} {emit {PDS \(JPL\) image data}}
3353if {[S 0 == CCSD3ZF]} {emit {PDS \(CCSD\) image data}}
3354if {[S 2 == CCSD3Z]} {emit {PDS \(CCSD\) image data}}
3355if {[S 0 == PDS_]} {emit {PDS image data}}
3356if {[S 0 == LBLSIZE=]} {emit {PDS \(VICAR\) image data}}
3357if {[S 0 == pM85]} {emit {Atari ST STAD bitmap image data \(hor\)}
3358switch -- [Nv c 5] 0 {emit {\(white background\)}} -1 {emit {\(black background\)}}
3359}
3360if {[S 0 == pM86]} {emit {Atari ST STAD bitmap image data \(vert\)}
3361switch -- [Nv c 5] 0 {emit {\(white background\)}} -1 {emit {\(black background\)}}
3362}
3363if {[S 0 == {\x37\x00\x00\x10\x42\x00\x00\x10\x00\x00\x00\x00\x39\x64\x39\x47}]} {emit {EPOC MBM image file}}
3364if {[S 0 == 8BPS]} {emit {Adobe Photoshop Image}}
3365if {[S 0 == {P7\ 332}]} {emit {XV thumbnail image data}}
3366if {[S 0 == NITF]} {emit {National Imagery Transmission Format}
3367if {[S 25 x {}]} {emit {dated %.14s}}
3368}
3369if {[S 0 == {\0\nSMJPEG}]} {emit SMJPEG
3370if {[N I 8 x {}]} {emit {%d.x data}}
3371if {[S 16 == _SND]} {emit {\b,}
3372if {[N S 24 > 0x0]} {emit {%d Hz}}
3373switch -- [Nv c 26] 8 {emit 8-bit} 16 {emit 16-bit}
3374if {[S 28 == NONE]} {emit uncompressed}
3375if {[N c 27 == 0x1]} {emit mono}
3376if {[N c 28 == 0x2]} {emit stereo}
3377if {[S 32 == _VID]} {emit {\b,}
3378if {[N I 40 > 0x0]} {emit {%d frames}}
3379if {[N S 44 > 0x0]} {emit {\(%d x}}
3380if {[N S 46 > 0x0]} {emit {%d\)}}
3381}
3382}
3383if {[S 16 == _VID]} {emit {\b,}
3384if {[N I 24 > 0x0]} {emit {%d frames}}
3385if {[N S 28 > 0x0]} {emit {\(%d x}}
3386if {[N S 30 > 0x0]} {emit {%d\)}}
3387}
3388}
3389if {[S 0 == {Paint\ Shop\ Pro\ Image\ File}]} {emit {Paint Shop Pro Image File}}
3390if {[S 0 == {P7\ 332}]} {emit {XV \"thumbnail file\" \(icon\) data}}
3391if {[S 0 == KiSS]} {emit KISS/GS
3392switch -- [Nv c 4] 16 {emit color
3393if {[N c 5 x {}]} {emit {%d bit}}
3394if {[N s 8 x {}]} {emit {%d colors}}
3395if {[N s 10 x {}]} {emit {%d groups}}
3396} 32 {emit cell
3397if {[N c 5 x {}]} {emit {%d bit}}
3398if {[N s 8 x {}]} {emit {%d x}}
3399if {[N s 10 x {}]} {emit %d}
3400if {[N s 12 x {}]} {emit +%d}
3401if {[N s 14 x {}]} {emit +%d}
3402}
3403}
3404if {[S 0 == {C\253\221g\230\0\0\0}]} {emit {Webshots Desktop .wbz file}}
3405if {[S 0 == CKD_P370]} {emit {Hercules CKD DASD image file}
3406if {[N Q 8 x {}]} {emit {\b, %d heads per cylinder}}
3407if {[N Q 12 x {}]} {emit {\b, track size %d bytes}}
3408if {[N c 16 x {}]} {emit {\b, device type 33%2.2X}}
3409}
3410if {[S 0 == CKD_C370]} {emit {Hercules compressed CKD DASD image file}
3411if {[N Q 8 x {}]} {emit {\b, %d heads per cylinder}}
3412if {[N Q 12 x {}]} {emit {\b, track size %d bytes}}
3413if {[N c 16 x {}]} {emit {\b, device type 33%2.2X}}
3414}
3415if {[S 0 == CKD_S370]} {emit {Hercules CKD DASD shadow file}
3416if {[N Q 8 x {}]} {emit {\b, %d heads per cylinder}}
3417if {[N Q 12 x {}]} {emit {\b, track size %d bytes}}
3418if {[N c 16 x {}]} {emit {\b, device type 33%2.2X}}
3419}
3420if {[S 0 == {\146\031\0\0}]} {emit {Squeak image data}}
3421if {[S 0 == {'From\040Squeak}]} {emit {Squeak program text}}
3422if {[S 0 == PaRtImAgE-VoLuMe]} {emit PartImage
3423if {[S 32 == 0.6.1]} {emit {file version %s}
3424if {[N i 96 > 0xffffffff]} {emit {volume %ld}}
3425if {[S 512 x {}]} {emit {type %s}}
3426if {[S 5120 x {}]} {emit {device %s,}}
3427if {[S 5632 x {}]} {emit {original filename %s,}}
3428switch -- [Nv i 10052] 0 {emit {not compressed}} 1 {emit {gzip compressed}} 2 {emit {bzip2 compressed}}
3429if {[N i 10052 > 0x2]} {emit {compressed with unknown algorithm}}
3430}
3431if {[S 32 > 0.6.1]} {emit {file version %s}}
3432if {[S 32 < 0.6.1]} {emit {file version %s}}
3433}
3434if {[N s 54 == 0x3039]} {emit {Bio-Rad .PIC Image File}
3435if {[N s 0 > 0x0]} {emit {%hd x}}
3436if {[N s 2 > 0x0]} {emit %hd,}
3437if {[N s 4 == 0x1]} {emit {1 image in file}}
3438if {[N s 4 > 0x1]} {emit {%hd images in file}}
3439}
3440if {[S 0 == {\000MRM}]} {emit {Minolta Dimage camera raw image data}}
3441if {[S 0 == AT&TFORM]} {emit {DjVu Image file}}
3442if {[S 0 == {CDF\001}]} {emit {NetCDF Data Format data}}
3443if {[S 0 == {\211HDF\r\n\032}]} {emit {Hierarchical Data Format \(version 5\) data}}
3444if {[S 0 == {\210OPS}]} {emit {Interleaf saved data}}
3445if {[S 0 == <!OPS]} {emit {Interleaf document text}
3446if {[S 5 == {,\ Version\ =}]} {emit {\b, version}
3447if {[S 17 x {}]} {emit %.3s}
3448}
3449}
3450if {[S 4 == pgscriptver]} {emit {IslandWrite document}}
3451if {[S 13 == DrawFile]} {emit {IslandDraw document}}
3452if {[N s 0 == 0x9600 &0xFFFC]} {emit {little endian ispell}
3453switch -- [Nv c 0] 0 {emit {hash file \(?\),}} 1 {emit {3.0 hash file,}} 2 {emit {3.1 hash file,}} 3 {emit {hash file \(?\),}}
3454switch -- [Nv s 2] 0 {emit {8-bit, no capitalization, 26 flags}} 1 {emit {7-bit, no capitalization, 26 flags}} 2 {emit {8-bit, capitalization, 26 flags}} 3 {emit {7-bit, capitalization, 26 flags}} 4 {emit {8-bit, no capitalization, 52 flags}} 5 {emit {7-bit, no capitalization, 52 flags}} 6 {emit {8-bit, capitalization, 52 flags}} 7 {emit {7-bit, capitalization, 52 flags}} 8 {emit {8-bit, no capitalization, 128 flags}} 9 {emit {7-bit, no capitalization, 128 flags}} 10 {emit {8-bit, capitalization, 128 flags}} 11 {emit {7-bit, capitalization, 128 flags}} 12 {emit {8-bit, no capitalization, 256 flags}} 13 {emit {7-bit, no capitalization, 256 flags}} 14 {emit {8-bit, capitalization, 256 flags}} 15 {emit {7-bit, capitalization, 256 flags}}
3455if {[N s 4 > 0x0]} {emit {and %d string characters}}
3456}
3457if {[N S 0 == 0x9600 &0xFFFC]} {emit {big endian ispell}
3458switch -- [Nv c 1] 0 {emit {hash file \(?\),}} 1 {emit {3.0 hash file,}} 2 {emit {3.1 hash file,}} 3 {emit {hash file \(?\),}}
3459switch -- [Nv S 2] 0 {emit {8-bit, no capitalization, 26 flags}} 1 {emit {7-bit, no capitalization, 26 flags}} 2 {emit {8-bit, capitalization, 26 flags}} 3 {emit {7-bit, capitalization, 26 flags}} 4 {emit {8-bit, no capitalization, 52 flags}} 5 {emit {7-bit, no capitalization, 52 flags}} 6 {emit {8-bit, capitalization, 52 flags}} 7 {emit {7-bit, capitalization, 52 flags}} 8 {emit {8-bit, no capitalization, 128 flags}} 9 {emit {7-bit, no capitalization, 128 flags}} 10 {emit {8-bit, capitalization, 128 flags}} 11 {emit {7-bit, capitalization, 128 flags}} 12 {emit {8-bit, no capitalization, 256 flags}} 13 {emit {7-bit, no capitalization, 256 flags}} 14 {emit {8-bit, capitalization, 256 flags}} 15 {emit {7-bit, capitalization, 256 flags}}
3460if {[N S 4 > 0x0]} {emit {and %d string characters}}
3461}
3462if {[S 0 == ISPL]} {emit ispell
3463if {[N Q 4 x {}]} {emit {hash file version %d,}}
3464if {[N Q 8 x {}]} {emit {lexletters %d,}}
3465if {[N Q 12 x {}]} {emit {lexsize %d,}}
3466if {[N Q 16 x {}]} {emit {hashsize %d,}}
3467if {[N Q 20 x {}]} {emit {stblsize %d}}
3468}
3469if {[S 0 == hsi1]} {emit {JPEG image data, HSI proprietary}}
3470if {[S 0 == {\x00\x00\x00\x0C\x6A\x50\x20\x20\x0D\x0A\x87\x0A}]} {emit {JPEG 2000 image data}}
3471if {[S 0 == KarmaRHD]} {emit {Version	Karma Data Structure Version}
3472if {[N I 16 x {}]} {emit %lu}
3473}
3474if {[S 0 == lect]} {emit {DEC SRC Virtual Paper Lectern file}}
3475if {[S 53 == yyprevious]} {emit {C program text \(from lex\)}
3476if {[S 3 x {}]} {emit {for %s}}
3477}
3478if {[S 21 == {generated\ by\ flex}]} {emit {C program text \(from flex\)}}
3479if {[S 0 == {%\{}]} {emit {lex description text}}
3480if {[S 0 == {\007\001\000}]} {emit {Linux/i386 object file}
3481if {[N i 20 > 0x1020]} {emit {\b, DLL library}}
3482}
3483if {[S 0 == {\01\03\020\04}]} {emit {Linux-8086 impure executable}
3484if {[N Q 28 != 0x0]} {emit {not stripped}}
3485}
3486if {[S 0 == {\01\03\040\04}]} {emit {Linux-8086 executable}
3487if {[N Q 28 != 0x0]} {emit {not stripped}}
3488}
3489if {[S 0 == {\243\206\001\0}]} {emit {Linux-8086 object file}}
3490if {[S 0 == {\01\03\020\20}]} {emit {Minix-386 impure executable}
3491if {[N Q 28 != 0x0]} {emit {not stripped}}
3492}
3493if {[S 0 == {\01\03\040\20}]} {emit {Minix-386 executable}
3494if {[N Q 28 != 0x0]} {emit {not stripped}}
3495}
3496if {[N i 216 == 0x111]} {emit {Linux/i386 core file}
3497if {[S 220 x {}]} {emit {of '%s'}}
3498if {[N i 200 > 0x0]} {emit {\(signal %d\)}}
3499}
3500if {[S 2 == LILO]} {emit {Linux/i386 LILO boot/chain loader}}
3501if {[S 4086 == SWAP-SPACE]} {emit {Linux/i386 swap file}}
3502if {[S 4086 == SWAPSPACE2]} {emit {Linux/i386 swap file \(new style\)}
3503if {[N Q 1024 x {}]} {emit {%d \(4K pages\)}}
3504if {[N Q 1028 x {}]} {emit {size %d pages}}
3505}
3506if {[S 514 == HdrS]} {emit {Linux kernel}
3507if {[N s 510 == 0xaa55]} {emit {x86 boot executable}
3508if {[N c 529 == 0x0]} {emit zImage,
3509if {[N c 529 == 0x1]} {emit bzImage,}
3510if {[S [I 526 s 512] x {}]} {emit {version %s,}}
3511}
3512switch -- [Nv s 498] 1 {emit RO-rootFS,} 0 {emit RW-rootFS,}
3513if {[N s 508 > 0x0]} {emit {root_dev 0x%X,}}
3514if {[N s 502 > 0x0]} {emit {swap_dev 0x%X,}}
3515if {[N s 504 > 0x0]} {emit {RAMdisksize %u KB,}}
3516switch -- [Nv s 506] -1 {emit {Normal VGA}} -2 {emit {Extended VGA}} -3 {emit {Prompt for Videomode}}
3517if {[N s 506 > 0x0]} {emit {Video mode %d}}
3518}
3519}
3520if {[S 8 == {\ A\ _text}]} {emit {Linux kernel symbol map text}}
3521if {[S 0 == Begin3]} {emit {Linux Software Map entry text}}
3522if {[S 0 == Begin4]} {emit {Linux Software Map entry text \(new format\)}}
3523if {[S 0 == {\xb8\xc0\x07\x8e\xd8\xb8\x00\x90}]} {emit Linux
3524if {[N s 497 == 0x0]} {emit {x86 boot sector}
3525switch -- [Nv I 514] 142 {emit {of a kernel from the dawn of time!}} -1869686604 {emit {version 0.99-1.1.42}} -1869686600 {emit {for memtest86}}
3526}
3527if {[N s 497 != 0x0]} {emit {x86 kernel}
3528if {[N s 504 > 0x0]} {emit {RAMdisksize=%u KB}}
3529if {[N s 502 > 0x0]} {emit swap=0x%X}
3530if {[N s 508 > 0x0]} {emit root=0x%X
3531switch -- [Nv s 498] 1 {emit {\b-ro}} 0 {emit {\b-rw}}
3532}
3533switch -- [Nv s 506] -1 {emit vga=normal} -2 {emit vga=extended} -3 {emit vga=ask}
3534if {[N s 506 > 0x0]} {emit vga=%d}
3535switch -- [Nv I 514] -1869686655 {emit {version 1.1.43-1.1.45}} 364020173 {emit {}
3536if {[N I 2702 == 0x55aa5a5a]} {emit {version 1.1.46-1.2.13,1.3.0}}
3537if {[N I 2713 == 0x55aa5a5a]} {emit {version 1.3.1,2}}
3538if {[N I 2723 == 0x55aa5a5a]} {emit {version 1.3.3-1.3.30}}
3539if {[N I 2726 == 0x55aa5a5a]} {emit {version 1.3.31-1.3.41}}
3540if {[N I 2859 == 0x55aa5a5a]} {emit {version 1.3.42-1.3.45}}
3541if {[N I 2807 == 0x55aa5a5a]} {emit {version 1.3.46-1.3.72}}
3542}
3543if {[S 514 == HdrS]} {if {[N s 518 > 0x1ff]} {switch -- [Nv c 529] 0 {emit {\b, zImage}} 1 {emit {\b, bzImage}}
3544if {[S [I 526 s 512] x {}]} {emit {\b, version %s}}
3545}
3546}
3547}
3548}
3549if {[N i 0 == 0xc30000e9 &0xFF0000FF]} {emit {Linux-Dev86 executable, headerless}
3550if {[S 5 == .]} {if {[S 4 x {}]} {emit {\b, libc version %s}}
3551}
3552}
3553if {[N i 0 == 0x4000301 &0xFF00FFFF]} {emit {Linux-8086 executable}
3554if {[N c 2 != 0x0 &0x01]} {emit {\b, unmapped zero page}}
3555if {[N c 2 == 0x0 &0x20]} {emit {\b, impure}}
3556if {[N c 2 != 0x0 &0x20]} {if {[N c 2 != 0x0 &0x10]} {emit {\b, A_EXEC}}
3557}
3558if {[N c 2 != 0x0 &0x02]} {emit {\b, A_PAL}}
3559if {[N c 2 != 0x0 &0x04]} {emit {\b, A_NSYM}}
3560if {[N c 2 != 0x0 &0x08]} {emit {\b, A_STAND}}
3561if {[N c 2 != 0x0 &0x40]} {emit {\b, A_PURE}}
3562if {[N c 2 != 0x0 &0x80]} {emit {\b, A_TOVLY}}
3563if {[N Q 28 != 0x0]} {emit {\b, not stripped}}
3564if {[S 37 == .]} {if {[S 36 x {}]} {emit {\b, libc version %s}}
3565}
3566}
3567if {[S 0 == {;;}]} {emit {Lisp/Scheme program text}}
3568if {[S 0 == {\012(}]} {emit {Emacs v18 byte-compiled Lisp data}}
3569if {[S 0 == {;ELC}]} {if {[N c 4 > 0x13]} {emit 636 0}
3570if {[N c 4 < 0x20]} {emit {Emacs/XEmacs v%d byte-compiled Lisp data}}
3571}
3572if {[S 0 == {(SYSTEM::VERSION\040'}]} {emit {CLISP byte-compiled Lisp program text}}
3573if {[S 0 == {\372\372\372\372}]} {emit {MIT scheme \(library?\)}}
3574if {[S 0 == <TeXmacs|]} {emit {TeXmacs document text}}
3575if {[S 11 == {must\ be\ converted\ with\ BinHex}]} {emit {BinHex binary text}
3576if {[S 41 x {}]} {emit {\b, version %.3s}}
3577}
3578if {[S 0 == SIT!]} {emit {StuffIt Archive \(data\)}
3579if {[S 2 x {}]} {emit {: %s}}
3580}
3581if {[S 0 == SITD]} {emit {StuffIt Deluxe \(data\)}
3582if {[S 2 x {}]} {emit {: %s}}
3583}
3584if {[S 0 == Seg]} {emit {StuffIt Deluxe Segment \(data\)}
3585if {[S 2 x {}]} {emit {: %s}}
3586}
3587if {[S 0 == StuffIt]} {emit {StuffIt Archive}}
3588if {[S 0 == APPL]} {emit {Macintosh Application \(data\)}
3589if {[S 2 x {}]} {emit {\b: %s}}
3590}
3591if {[S 0 == zsys]} {emit {Macintosh System File \(data\)}}
3592if {[S 0 == FNDR]} {emit {Macintosh Finder \(data\)}}
3593if {[S 0 == libr]} {emit {Macintosh Library \(data\)}
3594if {[S 2 x {}]} {emit {: %s}}
3595}
3596if {[S 0 == shlb]} {emit {Macintosh Shared Library \(data\)}
3597if {[S 2 x {}]} {emit {: %s}}
3598}
3599if {[S 0 == cdev]} {emit {Macintosh Control Panel \(data\)}
3600if {[S 2 x {}]} {emit {: %s}}
3601}
3602if {[S 0 == INIT]} {emit {Macintosh Extension \(data\)}
3603if {[S 2 x {}]} {emit {: %s}}
3604}
3605if {[S 0 == FFIL]} {emit {Macintosh Truetype Font \(data\)}
3606if {[S 2 x {}]} {emit {: %s}}
3607}
3608if {[S 0 == LWFN]} {emit {Macintosh Postscript Font \(data\)}
3609if {[S 2 x {}]} {emit {: %s}}
3610}
3611if {[S 0 == PACT]} {emit {Macintosh Compact Pro Archive \(data\)}
3612if {[S 2 x {}]} {emit {: %s}}
3613}
3614if {[S 0 == ttro]} {emit {Macintosh TeachText File \(data\)}
3615if {[S 2 x {}]} {emit {: %s}}
3616}
3617if {[S 0 == TEXT]} {emit {Macintosh TeachText File \(data\)}
3618if {[S 2 x {}]} {emit {: %s}}
3619}
3620if {[S 0 == PDF]} {emit {Macintosh PDF File \(data\)}
3621if {[S 2 x {}]} {emit {: %s}}
3622}
3623if {[S 102 == mBIN]} {emit {MacBinary III data with surprising version number}}
3624if {[S 0 == SAS]} {emit SAS
3625if {[S 24 == DATA]} {emit {data file}}
3626if {[S 24 == CATALOG]} {emit catalog}
3627if {[S 24 == INDEX]} {emit {data file index}}
3628if {[S 24 == VIEW]} {emit {data view}}
3629}
3630if {[S 84 == SAS]} {emit {SAS 7+}
3631if {[S 156 == DATA]} {emit {data file}}
3632if {[S 156 == CATALOG]} {emit catalog}
3633if {[S 156 == INDEX]} {emit {data file index}}
3634if {[S 156 == VIEW]} {emit {data view}}
3635}
3636if {[S 0 == {$FL2}]} {emit {SPSS System File}
3637if {[S 24 x {}]} {emit %s}
3638}
3639switch -- [Nvx 1 S 1024] -11561 {emit {Macintosh MFS data}
3640if {[N S 0 == 0x4c4b]} {emit {\(bootable\)}}
3641if {[N S 1034 & 0x8000]} {emit {\(locked\)}}
3642if {[N I 1026 x {} -0x7C25B080]} {emit {created: %s,}}
3643if {[N I 1030 > 0x0 -0x7C25B080]} {emit {last backup: %s,}}
3644if {[N I 1044 x {}]} {emit {block size: %d,}}
3645if {[N S 1042 x {}]} {emit {number of blocks: %d,}}
3646if {[S 1060 x {} p]} {emit {volume name: %s}}
3647} 18475 {emit {Macintosh HFS Extended}
3648if {[N S [R 0] x {}]} {emit {version %d data}}
3649if {[N S 0 == 0x4c4b]} {emit {\(bootable\)}}
3650if {[N I 1028 ^ 0x100]} {emit {\(mounted\)}}
3651if {[N I [R 2] & 0x200]} {emit {\(spared blocks\)}}
3652if {[N I [R 2] & 0x800]} {emit {\(unclean\)}}
3653if {[N I [R 2] & 0x8000]} {emit {\(locked\)}}
3654if {[S [R 6] x {}]} {emit {last mounted by: '%.4s',}}
3655if {[N I [R 14] x {} -0x7C25B080]} {emit {created: %s,}}
3656if {[N S [R 18] x {} -0x7C25B080]} {emit {last modified: %s,}}
3657if {[N S [R 22] > 0x0 -0x7C25B080]} {emit {last backup: %s,}}
3658if {[N S [R 26] > 0x0 -0x7C25B080]} {emit {last checked: %s,}}
3659if {[N I [R 38] x {}]} {emit {block size: %d,}}
3660if {[N I [R 42] x {}]} {emit {number of blocks: %d,}}
3661if {[N I [R 46] x {}]} {emit {free blocks: %d}}
3662}
3663switch -- [Nv S 512] 20557 {emit {Apple Partition data}
3664if {[N S 2 x {}]} {emit {block size: %d,}}
3665if {[S 560 x {}]} {emit {first type: %s,}}
3666if {[S 528 x {}]} {emit {name: %s,}}
3667if {[N I 596 x {}]} {emit {number of blocks: %d,}}
3668if {[N S 1024 == 0x504d]} {if {[S 1072 x {}]} {emit {second type: %s,}}
3669if {[S 1040 x {}]} {emit {name: %s,}}
3670if {[N I 1108 x {}]} {emit {number of blocks: %d,}}
3671if {[N S 2048 == 0x504d]} {if {[S 2096 x {}]} {emit {third type: %s,}}
3672if {[S 2064 x {}]} {emit {name: %s,}}
3673if {[N I 2132 x {}]} {emit {number of blocks: %d,}}
3674if {[N S 2560 == 0x504d]} {if {[S 2608 x {}]} {emit {fourth type: %s,}}
3675if {[S 2576 x {}]} {emit {name: %s,}}
3676if {[N I 2644 x {}]} {emit {number of blocks: %d}}
3677}
3678}
3679}
3680} 21587 {emit {Apple Old Partition data}
3681if {[N S 2 x {}]} {emit {block size: %d,}}
3682if {[S 560 x {}]} {emit {first type: %s,}}
3683if {[S 528 x {}]} {emit {name: %s,}}
3684if {[N I 596 x {}]} {emit {number of blocks: %d,}}
3685if {[N S 1024 == 0x504d]} {if {[S 1072 x {}]} {emit {second type: %s,}}
3686if {[S 1040 x {}]} {emit {name: %s,}}
3687if {[N I 1108 x {}]} {emit {number of blocks: %d,}}
3688if {[N S 2048 == 0x504d]} {if {[S 2096 x {}]} {emit {third type: %s,}}
3689if {[S 2064 x {}]} {emit {name: %s,}}
3690if {[N I 2132 x {}]} {emit {number of blocks: %d,}}
3691if {[N S 2560 == 0x504d]} {if {[S 2608 x {}]} {emit {fourth type: %s,}}
3692if {[S 2576 x {}]} {emit {name: %s,}}
3693if {[N I 2644 x {}]} {emit {number of blocks: %d}}
3694}
3695}
3696}
3697}
3698if {[S 0 == BOMStore]} {emit {Mac OS X bill of materials \(BOM\) fil}}
3699if {[S 0 == {\#\ Magic}]} {emit {magic text file for file\(1\) cmd}}
3700if {[S 0 == Relay-Version:]} {emit {old news text}}
3701if {[S 0 == {\#!\ rnews}]} {emit {batched news text}}
3702if {[S 0 == {N\#!\ rnews}]} {emit {mailed, batched news text}}
3703if {[S 0 == {Forward\ to}]} {emit {mail forwarding text}}
3704if {[S 0 == {Pipe\ to}]} {emit {mail piping text}}
3705if {[S 0 == Return-Path:]} {emit {smtp mail text}}
3706if {[S 0 == Path:]} {emit {news text}}
3707if {[S 0 == Xref:]} {emit {news text}}
3708if {[S 0 == From:]} {emit {news or mail text}}
3709if {[S 0 == Article]} {emit {saved news text}}
3710if {[S 0 == BABYL]} {emit {Emacs RMAIL text}}
3711if {[S 0 == Received:]} {emit {RFC 822 mail text}}
3712if {[S 0 == MIME-Version:]} {emit {MIME entity text}}
3713if {[S 0 == *mbx*]} {emit {MBX mail folder}}
3714if {[S 0 == {\241\002\213\015skiplist\ file\0\0\0}]} {emit {Cyrus skiplist DB}}
3715if {[S 0 == {JAM\0}]} {emit {JAM message area header file}
3716if {[N s 12 > 0x0]} {emit {\(%d messages\)}}
3717}
3718if {[S 0 == {\000MVR4\nI}]} {emit {MapleVr4 library}}
3719if {[S 0 == {\000\004\000\000}]} {emit {Maple help database}}
3720if {[S 0 == <PACKAGE=]} {emit {Maple help file}}
3721if {[S 0 == {<HELP\ NAME=}]} {emit {Maple help file}}
3722if {[S 0 == {\n\<HELP\ NAME=}]} {emit {Maple help file with extra carriage return at start \(yuck\)}}
3723if {[S 0 == {\#\ daub}]} {emit {Maple help file, old style}}
3724if {[S 0 == {\000\000\001\044\000\221}]} {emit {Maple worksheet}}
3725if {[S 0 == {WriteNow\000\002\000\001\000\000\000\000\100\000\000\000\000\000}]} {emit {Maple worksheet, but weird}}
3726if {[S 0 == {\{VERSION\ }]} {emit {Maple worksheet}
3727if {[S 9 x {}]} {emit {version %.1s. {36 string {} x 11 {} %.1s}}}
3728}
3729if {[S 0 == {\0\0\001$}]} {emit {Maple something}
3730if {[S 4 == {\000\105}]} {emit {An old revision}}
3731if {[S 4 == {\001\122}]} {emit {The latest save}}
3732}
3733if {[S 0 == {\#\n\#\#\ <SHAREFILE=}]} {emit {Maple something}}
3734if {[S 0 == {\n\#\n\#\#\ <SHAREFILE=}]} {emit {Maple something}}
3735if {[S 0 == {\#\#\ <SHAREFILE=}]} {emit {Maple something}}
3736if {[S 0 == {\#\r\#\#\ <SHAREFILE=}]} {emit {Maple something}}
3737if {[S 0 == {\r\#\r\#\#\ <SHAREFILE=}]} {emit {Maple something}}
3738if {[S 0 == {\#\ \r\#\#\ <DESCRIBE>}]} {emit {Maple something anomalous.}}
3739if {[S 0 == {\064\024\012\000\035\000\000\000}]} {emit {Mathematica version 2 notebook}}
3740if {[S 0 == {\064\024\011\000\035\000\000\000}]} {emit {Mathematica version 2 notebook}}
3741if {[S 0 == {(*^\n\n::[\011frontEndVersion\ =\ }]} {emit {Mathematica notebook}}
3742if {[S 0 == {(*^\r\r::[\011}]} {emit {Mathematica notebook version 2.x}}
3743if {[S 0 == {\(\*\^\r\n\r\n\:\:\[\011}]} {emit {Mathematica notebook version 2.x}}
3744if {[S 0 == {(*^\015}]} {emit {Mathematica notebook version 2.x}}
3745if {[S 0 == {(*^\n\r\n\r::[\011}]} {emit {Mathematica notebook version 2.x}}
3746if {[S 0 == {(*^\r::[\011}]} {emit {Mathematica notebook version 2.x}}
3747if {[S 0 == {(*^\r\n::[\011}]} {emit {Mathematica notebook version 2.x}}
3748if {[S 0 == {(*^\n\n::[\011}]} {emit {Mathematica notebook version 2.x}}
3749if {[S 0 == {(*^\n::[\011}]} {emit {Mathematica notebook version 2.x}}
3750if {[S 0 == {(*This\ is\ a\ Mathematica\ binary\ }]} {emit {Mathematica binary file}
3751if {[S 88 x {}]} {emit {from %s}}
3752}
3753if {[S 0 == {MMAPBF\000\001\000\000\000\203\000\001\000}]} {emit {Mathematica PBF \(fonts I think\)}}
3754if {[S 4 == {\ A~}]} {emit {MAthematica .ml file}}
3755if {[S 0 == (***********************]} {emit {Mathematica 3.0 notebook}}
3756if {[S 0 == (*]} {emit {Mathematica, or Pascal,  Modula-2 or 3 code text}}
3757if {[S 0 == MATLAB]} {emit {Matlab v5 mat-file}
3758switch -- [Nv Y 126] 18765 {emit {\(big endian\)}
3759if {[N S 124 x {}]} {emit {version 0x%04x}}
3760} 19785 {emit {\(little endian\)}
3761if {[N s 124 x {}]} {emit {version 0x%04x}}
3762}
3763}
3764if {[S 0 == {\0m\3}]} {emit {mcrypt 2.5 encrypted data,}
3765if {[Sx 2 4 x {}]} {emit {algorithm: %s,}
3766if {[Nx 3 s [R 1] > 0x0]} {emit {keysize: %d bytes,}
3767if {[S [R 0] x {}]} {emit {mode: %s,}}
3768}
3769}
3770}
3771if {[S 0 == {\0m\2}]} {emit {mcrypt 2.2 encrypted data,}
3772switch -- [Nv c 3] 0 {emit {algorithm: blowfish-448,}} 1 {emit {algorithm: DES,}} 2 {emit {algorithm: 3DES,}} 3 {emit {algorithm: 3-WAY,}} 4 {emit {algorithm: GOST,}} 6 {emit {algorithm: SAFER-SK64,}} 7 {emit {algorithm: SAFER-SK128,}} 8 {emit {algorithm: CAST-128,}} 9 {emit {algorithm: xTEA,}} 10 {emit {algorithm: TWOFISH-128,}} 11 {emit {algorithm: RC2,}} 12 {emit {algorithm: TWOFISH-192,}} 13 {emit {algorithm: TWOFISH-256,}} 14 {emit {algorithm: blowfish-128,}} 15 {emit {algorithm: blowfish-192,}} 16 {emit {algorithm: blowfish-256,}} 100 {emit {algorithm: RC6,}} 101 {emit {algorithm: IDEA,}}
3773switch -- [Nv c 4] 0 {emit {mode: CBC,}} 1 {emit {mode: ECB,}} 2 {emit {mode: CFB,}} 3 {emit {mode: OFB,}} 4 {emit {mode: nOFB,}}
3774switch -- [Nv c 5] 0 {emit {keymode: 8bit}} 1 {emit {keymode: 4bit}} 2 {emit {keymode: SHA-1 hash}} 3 {emit {keymode: MD5 hash}}
3775}
3776if {[S 0 == {Content-Type:\ }]} {if {[S 14 x {}]} {emit %s}
3777}
3778if {[S 0 == Content-Type:]} {if {[S 13 x {}]} {emit %s}
3779}
3780if {[S 0 == kbd!map]} {emit {kbd map file}
3781if {[N c 8 > 0x0]} {emit {Ver %d:}}
3782if {[N Y 10 > 0x0]} {emit {with %d table\(s\)}}
3783}
3784if {[S 0 == {\x43\x72\x73\x68\x44\x75\x6d\x70}]} {emit {IRIX vmcore dump of}
3785if {[S 36 x {}]} {emit '%s'}
3786}
3787if {[S 0 == SGIAUDIT]} {emit {SGI Audit file}
3788if {[N c 8 x {}]} {emit {- version %d}}
3789if {[N c 9 x {}]} {emit .%ld}
3790}
3791if {[S 0 == WNGZWZSC]} {emit {Wingz compiled script}}
3792if {[S 0 == WNGZWZSS]} {emit {Wingz spreadsheet}}
3793if {[S 0 == WNGZWZHP]} {emit {Wingz help file}}
3794if {[S 0 == {\\#Inventor}]} {emit {V	IRIS Inventor 1.0 file}}
3795if {[S 0 == {\\#Inventor}]} {emit {V2	Open Inventor 2.0 file}}
3796if {[S 0 == {glfHeadMagic();}]} {emit GLF_TEXT}
3797if {[S 0 == glsBeginGLS(]} {emit GLS_TEXT}
3798if {[S 0 == %%!!]} {emit {X-Post-It-Note text}}
3799if {[S 0 == BEGIN:VCALENDAR]} {emit {vCalendar calendar file}}
3800if {[S 0 == {\311\304}]} {emit {ID tags data}
3801if {[N Y 2 > 0x0]} {emit {version %d}}
3802}
3803if {[S 0 == {\001\001\001\001}]} {emit {MMDF mailbox}}
3804if {[S 4 == Research,]} {emit Digifax-G3-File
3805switch -- [Nv c 29] 1 {emit {, fine resolution}} 0 {emit {, normal resolution}}
3806}
3807if {[S 0 == RMD1]} {emit {raw modem data}
3808if {[S 4 x {}]} {emit {\(%s /}}
3809if {[N Y 20 > 0x0]} {emit {compression type 0x%04x\)}}
3810}
3811if {[S 0 == {PVF1\n}]} {emit {portable voice format}
3812if {[S 5 x {}]} {emit {\(binary %s\)}}
3813}
3814if {[S 0 == {PVF2\n}]} {emit {portable voice format}
3815if {[S 5 x {}]} {emit {\(ascii %s\)}}
3816}
3817if {[S 0 == S0]} {emit {Motorola S-Record; binary data in text format}}
3818switch -- [Nv I 0 &0xFFFFFFF0] 1612316672 {emit {Atari ST M68K contiguous executable}
3819if {[N I 2 x {}]} {emit {\(txt=%ld,}}
3820if {[N I 6 x {}]} {emit dat=%ld,}
3821if {[N I 10 x {}]} {emit bss=%ld,}
3822if {[N I 14 x {}]} {emit {sym=%ld\)}}
3823} 1612382208 {emit {Atari ST M68K non-contig executable}
3824if {[N I 2 x {}]} {emit {\(txt=%ld,}}
3825if {[N I 6 x {}]} {emit dat=%ld,}
3826if {[N I 10 x {}]} {emit bss=%ld,}
3827if {[N I 14 x {}]} {emit {sym=%ld\)}}
3828}
3829if {[S 0 == {@echo\ off} c]} {emit {MS-DOS batch file text}}
3830if {[S 128 == {PE\0\0}]} {emit {MS Windows PE}
3831if {[N s 150 > 0x0 &0x0100]} {emit 32-bit}
3832switch -- [Nv s 132] 0 {emit {unknown processor}} 332 {emit {Intel 80386}} 358 {emit {MIPS R4000}} 388 {emit Alpha} 616 {emit {Motorola 68000}} 496 {emit PowerPC} 656 {emit PA-RISC}
3833if {[N s 148 > 0x1b]} {switch -- [Nv s 220] 0 {emit {unknown subsystem}} 1 {emit native} 2 {emit GUI} 3 {emit console} 7 {emit POSIX}
3834}
3835if {[N s 150 == 0x0 &0x2000]} {emit executable
3836if {[N s 150 > 0x0 &0x0001]} {emit {not relocatable}}
3837if {[N s 150 > 0x0 &0x1000]} {emit {system file}}
3838}
3839if {[N s 150 > 0x0 &0x2000]} {emit DLL
3840if {[N s 150 > 0x0 &0x0001]} {emit {not relocatable}}
3841if {[N s 150 > 0x0 &0x1000]} {emit {system file}}
3842}
3843}
3844if {[S 0 == MZ]} {emit {MS-DOS executable \(EXE\)}
3845if {[S 24 == @]} {emit {\b, OS/2 or MS Windows}
3846if {[S 231 == {LH/2\ Self-Extract}]} {emit {\b, %s}}
3847if {[S 233 == PKSFX2]} {emit {\b, %s}}
3848if {[S 122 == {Windows\ self-extracting\ ZIP}]} {emit {\b, %s}}
3849}
3850if {[S 28 == {RJSX\xff\xff}]} {emit {\b, ARJ SFX}}
3851if {[S 28 == {diet\xf9\x9c}]} {emit {\b, diet compressed}}
3852if {[S 28 == LZ09]} {emit {\b, LZEXE v0.90 compressed}}
3853if {[S 28 == LZ91]} {emit {\b, LZEXE v0.91 compressed}}
3854if {[S 30 == {Copyright\ 1989-1990\ PKWARE\ Inc.}]} {emit {\b, PKSFX}}
3855if {[S 30 == {PKLITE\ Copr.}]} {emit {\b, %.6s compressed}}
3856if {[S 36 == {LHa's\ SFX}]} {emit {\b, %.15s}}
3857if {[S 36 == {LHA's\ SFX}]} {emit {\b, %.15s}}
3858if {[S 1638 == -lh5-]} {emit {\b, LHa SFX archive v2.13S}}
3859if {[S 7195 == Rar!]} {emit {\b, RAR self-extracting archive}}
3860if {[S 11696 == {PK\003\004}]} {emit {\b, PKZIP SFX archive v1.1}}
3861if {[S 13297 == {PK\003\004}]} {emit {\b, PKZIP SFX archive v1.93a}}
3862if {[S 15588 == {PK\003\004}]} {emit {\b, PKZIP2 SFX archive v1.09}}
3863if {[S 15770 == {PK\003\004}]} {emit {\b, PKZIP SFX archive v2.04g}}
3864if {[S 28374 == {PK\003\004}]} {emit {\b, PKZIP2 SFX archive v1.02}}
3865if {[S 25115 == {PK\003\004}]} {emit {\b, Info-ZIP SFX archive v5.12}}
3866if {[S 26331 == {PK\003\004}]} {emit {\b, Info-ZIP SFX archive v5.12 w/decryption}}
3867if {[S 47031 == {PK\003\004}]} {emit {\b, Info-ZIP SFX archive v5.12}}
3868if {[S 49845 == {PK\003\004}]} {emit {\b, Info-ZIP SFX archive v5.12 w/decryption}}
3869if {[S 69120 == {PK\003\004}]} {emit {\b, Info-ZIP NT SFX archive v5.12 w/decryption}}
3870if {[S 49801 == {\x79\xff\x80\xff\x76\xff}]} {emit {\b, CODEC archive v3.21}
3871if {[N s 49824 == 0x1]} {emit {\b, 1 file}}
3872if {[N s 49824 > 0x1]} {emit {\b, %u files}}
3873}
3874}
3875if {[S 0 == LZ]} {emit {MS-DOS executable \(built-in\)}}
3876if {[S 0 == regf]} {emit {Windows NT registry file}}
3877if {[S 0 == CREG]} {emit {Windows 95 registry file}}
3878if {[S 0 == {\320\317\021\340\241\261\032\341AAFB\015\000OM\006\016\053\064\001\001\001\377}]} {emit {AAF legacy file using MS Structured Storage}
3879switch -- [Nv c 30] 9 {emit {\(512B sectors\)}} 12 {emit {\(4kB sectors\)}}
3880}
3881if {[S 0 == {\320\317\021\340\241\261\032\341\001\002\001\015\000\002\000\000\006\016\053\064\003\002\001\001}]} {emit {AAF file using MS Structured Storage}
3882switch -- [Nv c 30] 9 {emit {\(512B sectors\)}} 12 {emit {\(4kB sectors\)}}
3883}
3884if {[S 2080 == {Microsoft\ Word\ 6.0\ Document}]} {emit %s}
3885if {[S 2080 == {Documento\ Microsoft\ Word\ 6}]} {emit {Spanish Microsoft Word 6 document data}}
3886if {[S 2112 == MSWordDoc]} {emit {Microsoft Word document data}}
3887if {[S 0 == PO^Q`]} {emit {Microsoft Word 6.0 Document}}
3888if {[S 0 == {\376\067\0\043}]} {emit {Microsoft Office Document}}
3889if {[S 0 == {\320\317\021\340\241\261\032\341}]} {emit {Microsoft Office Document}}
3890if {[S 0 == {\333\245-\0\0\0}]} {emit {Microsoft Office Document}}
3891if {[S 2080 == {Microsoft\ Excel\ 5.0\ Worksheet}]} {emit %s}
3892if {[S 2080 == {Foglio\ di\ lavoro\ Microsoft\ Exce}]} {emit %s}
3893if {[S 2114 == Biff5]} {emit {Microsoft Excel 5.0 Worksheet}}
3894if {[S 2121 == Biff5]} {emit {Microsoft Excel 5.0 Worksheet}}
3895if {[S 0 == {\x09\x04\x06\x00\x00\x00\x10\x00}]} {emit {Microsoft Excel Worksheet}}
3896if {[S 0 == {?_\3\0}]} {emit {MS Windows Help Data}}
3897if {[S 0 == {\161\250\000\000\001\002}]} {emit {DeIsL1.isu whatever that is}}
3898if {[S 0 == {Nullsoft\ AVS\ Preset\ }]} {emit {Winamp plug in}}
3899if {[S 0 == {HyperTerminal\ }]} {emit hyperterm
3900if {[S 15 == {1.0\ --\ HyperTerminal\ data\ file}]} {emit {MS-windows Hyperterminal}}
3901}
3902if {[S 0 == {\327\315\306\232\000\000\000\000\000\000}]} {emit {ms-windows metafont .wmf}}
3903if {[S 0 == {\003\001\001\004\070\001\000\000}]} {emit {tz3 ms-works file}}
3904if {[S 0 == {\003\002\001\004\070\001\000\000}]} {emit {tz3 ms-works file}}
3905if {[S 0 == {\003\003\001\004\070\001\000\000}]} {emit {tz3 ms-works file}}
3906if {[S 0 == {\211\000\077\003\005\000\063\237\127\065\027\266\151\064\005\045\101\233\021\002}]} {emit {PGP sig}}
3907if {[S 0 == {\211\000\077\003\005\000\063\237\127\066\027\266\151\064\005\045\101\233\021\002}]} {emit {PGP sig}}
3908if {[S 0 == {\211\000\077\003\005\000\063\237\127\067\027\266\151\064\005\045\101\233\021\002}]} {emit {PGP sig}}
3909if {[S 0 == {\211\000\077\003\005\000\063\237\127\070\027\266\151\064\005\045\101\233\021\002}]} {emit {PGP sig}}
3910if {[S 0 == {\211\000\077\003\005\000\063\237\127\071\027\266\151\064\005\045\101\233\021\002}]} {emit {PGP sig}}
3911if {[S 0 == {\211\000\225\003\005\000\062\122\207\304\100\345\042}]} {emit {PGP sig}}
3912if {[S 0 == {MDIF\032\000\010\000\000\000\372\046\100\175\001\000\001\036\001\000}]} {emit {Ms-windows special zipped file}}
3913if {[S 0 == {\164\146\115\122\012\000\000\000\001\000\000\000}]} {emit {ms-windows help cache}}
3914if {[S 0 == {\120\115\103\103}]} {emit {Ms-windows 3.1 group files}}
3915if {[S 0 == {\114\000\000\000\001\024\002\000\000\000\000\000\300\000\000\000\000\000\000\106}]} {emit {ms-Windows shortcut}}
3916if {[S 0 == {\102\101\050\000\000\000\056\000\000\000\000\000\000\000}]} {emit {Icon for ms-windows}}
3917if {[S 0 == {\000\000\001\000}]} {emit {ms-windows icon resource}
3918if {[N c 4 == 0x1]} {emit {- 1 icon}}
3919if {[N c 4 > 0x1]} {emit {- %d icons}
3920if {[N c 6 > 0x0]} {emit {\b, %dx}
3921if {[N c 7 > 0x0]} {emit {\b%d}}
3922}
3923if {[N c 8 == 0x0]} {emit {\b, 256-colors}}
3924if {[N c 8 > 0x0]} {emit {\b, %d-colors}}
3925}
3926}
3927if {[S 0 == {PK\010\010BGI}]} {emit {Borland font}
3928if {[S 4 x {}]} {emit %s}
3929}
3930if {[S 0 == {pk\010\010BGI}]} {emit {Borland device}
3931if {[S 4 x {}]} {emit %s}
3932}
3933if {[S 9 == {\000\000\000\030\001\000\000\000}]} {emit {ms-windows recycled bin info}}
3934if {[S 9 == GERBILDOC]} {emit {First Choice document}}
3935if {[S 9 == GERBILDB]} {emit {First Choice database}}
3936if {[S 9 == GERBILCLIP]} {emit {First Choice database}}
3937if {[S 0 == GERBIL]} {emit {First Choice device file}}
3938if {[S 9 == RABBITGRAPH]} {emit {RabbitGraph file}}
3939if {[S 0 == DCU1]} {emit {Borland Delphi .DCU file}}
3940if {[S 0 == !<spell>]} {emit {MKS Spell hash list \(old format\)}}
3941if {[S 0 == !<spell2>]} {emit {MKS Spell hash list}}
3942if {[S 0 == PMCC]} {emit {Windows 3.x .GRP file}}
3943if {[S 1 == RDC-meg]} {emit MegaDots
3944if {[N c 8 > 0x2f]} {emit {version %c}}
3945if {[N c 9 > 0x2f]} {emit {\b.%c file}}
3946}
3947if {[S 0 == {ITSF\003\000\000\000\x60\000\000\000\001\000\000\000}]} {emit {MS Windows HtmlHelp Data}}
3948if {[S 2 == GFA-BASIC3]} {emit {GFA-BASIC 3 data}}
3949if {[S 512 == go32stub]} {emit {DOS-executable compiled w/DJGPP}
3950if {[S 524 > 0]} {emit {\(stub v%.4s\)}
3951if {[Sx 3 2226 == djp]} {emit {[compressed w/%s}
3952if {[S [R 1] x {}]} {emit %.4s\]}
3953}
3954if {[Sx 3 2221 == UPX]} {emit {[compressed w/%s}
3955if {[S [R 1] x {}]} {emit %.4s\]}
3956}
3957if {[S 28 == pmodedj]} {emit {stubbed with %s}}
3958}
3959}
3960if {[S 0 == {MSCF\0\0\0\0}]} {emit {Microsoft Cabinet file}
3961if {[N i 8 x {}]} {emit {\b, %u bytes}}
3962if {[N s 28 == 0x1]} {emit {\b, 1 file}}
3963if {[N s 28 > 0x1]} {emit {\b, %u files}}
3964}
3965if {[S 0 == ISc(]} {emit {InstallShield Cabinet file}
3966if {[N c 5 == 0x60 &0xf0]} {emit {version 6,}}
3967if {[N c 5 != 0x60 &0xf0]} {emit {version 4/5,}}
3968if {[N i [I 12 i 40] x {}]} {emit {%u files}}
3969}
3970if {[S 0 == {MSCE\0\0\0\0}]} {emit {Microsoft WinCE install header}
3971switch -- [Nv i 20] 0 {emit {\b, architecture-independent}} 103 {emit {\b, Hitachi SH3}} 104 {emit {\b, Hitachi SH4}} 2577 {emit {\b, StrongARM}} 4000 {emit {\b, MIPS R4000}} 10003 {emit {\b, Hitachi SH3}} 10004 {emit {\b, Hitachi SH3E}} 10005 {emit {\b, Hitachi SH4}} 70001 {emit {\b, ARM 7TDMI}}
3972if {[N s 52 == 0x1]} {emit {\b, 1 file}}
3973if {[N s 52 > 0x1]} {emit {\b, %u files}}
3974if {[N s 56 == 0x1]} {emit {\b, 1 registry entry}}
3975if {[N s 56 > 0x1]} {emit {\b, %u registry entries}}
3976}
3977if {[S 0 == {Client\ UrlCache\ MMF}]} {emit {Microsoft Internet Explorer Cache File}
3978if {[S 20 x {}]} {emit {Version %s}}
3979}
3980if {[S 0 == {\xCF\xAD\x12\xFE}]} {emit {Microsoft Outlook Express DBX File}
3981switch -- [Nv c 4] -59 {emit {Message database}} -58 {emit {Folder database}} -57 {emit {Accounts informations}} 48 {emit {Offline database}}
3982}
3983if {[N i 40 == 0x464d4520]} {emit {Windows Enhanced Metafile \(EMF\) image data}
3984if {[N i 44 x {}]} {emit {version 0x%x.}}
3985if {[N i 64 > 0x0]} {emit {Description available at offset 0x%x}
3986if {[N i 60 > 0x0]} {emit {\(length 0x%x\)}}
3987}
3988}
3989if {[S 0 == {HWB\000\377\001\000\000\000}]} {emit {Microsoft Visual C .APS file}}
3990if {[S 0 == {\102\157\162\154\141\156\144\040\103\053\053\040\120\162\157}]} {emit {MSVC .ide}}
3991if {[S 0 == {\000\000\000\000\040\000\000\000\377}]} {emit {MSVC .res}}
3992if {[S 0 == {\377\003\000\377\001\000\020\020\350}]} {emit {MSVC .res}}
3993if {[S 0 == {\377\003\000\377\001\000\060\020\350}]} {emit {MSVC .res}}
3994if {[S 0 == {\360\015\000\000}]} {emit {Microsoft Visual C library}}
3995if {[S 0 == {\360\075\000\000}]} {emit {Microsoft Visual C library}}
3996if {[S 0 == {\360\175\000\000}]} {emit {Microsoft Visual C library}}
3997if {[S 0 == {DTJPCH0\000\022\103\006\200}]} {emit {Microsoft Visual C .pch}}
3998if {[S 0 == {Microsoft\ C/C++\ }]} {emit {MSVC program database}
3999if {[S 18 == {program\ database\ }]} {emit 810 0}
4000if {[S 33 x {}]} {emit {ver %s}}
4001}
4002if {[S 0 == {\000\002\000\007\000}]} {emit {MSVC .sbr}
4003if {[S 5 x {}]} {emit %s}
4004}
4005if {[S 0 == {\002\000\002\001}]} {emit {MSVC .bsc}}
4006if {[S 0 == {1.00\ .0000.0000\000\003}]} {emit {MSVC .wsp version 1.0000.0000}}
4007if {[S 0 == RSRC]} {emit {National Instruments,}
4008if {[S 8 == LV]} {emit {LabVIEW File,}
4009if {[S 10 == SB]} {emit {Code Resource File, data}}
4010if {[S 10 == IN]} {emit {Virtual Instrument Program, data}}
4011if {[S 10 == AR]} {emit {VI Library, data}}
4012}
4013if {[S 8 == LMNULBVW]} {emit {Portable File Names, data}}
4014if {[S 8 == rsc]} {emit {Resources File, data}}
4015}
4016if {[S 0 == VMAP]} {emit {National Instruments, VXI File, data}}
4017switch -- [Nv I 0 &0377777777] 8782091 {emit {a.out NetBSD/i386 demand paged}
4018if {[N c 0 & 0x80]} {if {[N i 20 < 0x1000]} {emit {shared library}}
4019if {[N i 20 == 0x1000]} {emit {dynamically linked executable}}
4020if {[N i 20 > 0x1000]} {emit {dynamically linked executable}}
4021}
4022if {[N c 0 ^ 0x80]} {emit executable}
4023if {[N i 16 > 0x0]} {emit {not stripped}}
4024} 8782088 {emit {a.out NetBSD/i386 pure}
4025if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4026if {[N c 0 ^ 0x80]} {emit executable}
4027if {[N i 16 > 0x0]} {emit {not stripped}}
4028} 8782087 {emit {a.out NetBSD/i386}
4029if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4030if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4031if {[N i 20 != 0x0]} {emit executable}
4032if {[N i 20 == 0x0]} {emit {object file}}
4033}
4034if {[N i 16 > 0x0]} {emit {not stripped}}
4035} 8782151 {emit {a.out NetBSD/i386 core}
4036if {[S 12 x {}]} {emit {from '%s'}}
4037if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4038} 8847627 {emit {a.out NetBSD/m68k demand paged}
4039if {[N c 0 & 0x80]} {if {[N I 20 < 0x2000]} {emit {shared library}}
4040if {[N I 20 == 0x2000]} {emit {dynamically linked executable}}
4041if {[N I 20 > 0x2000]} {emit {dynamically linked executable}}
4042}
4043if {[N c 0 ^ 0x80]} {emit executable}
4044if {[N I 16 > 0x0]} {emit {not stripped}}
4045} 8847624 {emit {a.out NetBSD/m68k pure}
4046if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4047if {[N c 0 ^ 0x80]} {emit executable}
4048if {[N I 16 > 0x0]} {emit {not stripped}}
4049} 8847623 {emit {a.out NetBSD/m68k}
4050if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4051if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4052if {[N I 20 != 0x0]} {emit executable}
4053if {[N I 20 == 0x0]} {emit {object file}}
4054}
4055if {[N I 16 > 0x0]} {emit {not stripped}}
4056} 8847687 {emit {a.out NetBSD/m68k core}
4057if {[S 12 x {}]} {emit {from '%s'}}
4058if {[N I 32 != 0x0]} {emit {\(signal %d\)}}
4059} 8913163 {emit {a.out NetBSD/m68k4k demand paged}
4060if {[N c 0 & 0x80]} {if {[N I 20 < 0x1000]} {emit {shared library}}
4061if {[N I 20 == 0x1000]} {emit {dynamically linked executable}}
4062if {[N I 20 > 0x1000]} {emit {dynamically linked executable}}
4063}
4064if {[N c 0 ^ 0x80]} {emit executable}
4065if {[N I 16 > 0x0]} {emit {not stripped}}
4066} 8913160 {emit {a.out NetBSD/m68k4k pure}
4067if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4068if {[N c 0 ^ 0x80]} {emit executable}
4069if {[N I 16 > 0x0]} {emit {not stripped}}
4070} 8913159 {emit {a.out NetBSD/m68k4k}
4071if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4072if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4073if {[N I 20 != 0x0]} {emit executable}
4074if {[N I 20 == 0x0]} {emit {object file}}
4075}
4076if {[N I 16 > 0x0]} {emit {not stripped}}
4077} 8913223 {emit {a.out NetBSD/m68k4k core}
4078if {[S 12 x {}]} {emit {from '%s'}}
4079if {[N I 32 != 0x0]} {emit {\(signal %d\)}}
4080} 8978699 {emit {a.out NetBSD/ns32532 demand paged}
4081if {[N c 0 & 0x80]} {if {[N i 20 < 0x1000]} {emit {shared library}}
4082if {[N i 20 == 0x1000]} {emit {dynamically linked executable}}
4083if {[N i 20 > 0x1000]} {emit {dynamically linked executable}}
4084}
4085if {[N c 0 ^ 0x80]} {emit executable}
4086if {[N i 16 > 0x0]} {emit {not stripped}}
4087} 8978696 {emit {a.out NetBSD/ns32532 pure}
4088if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4089if {[N c 0 ^ 0x80]} {emit executable}
4090if {[N i 16 > 0x0]} {emit {not stripped}}
4091} 8978695 {emit {a.out NetBSD/ns32532}
4092if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4093if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4094if {[N i 20 != 0x0]} {emit executable}
4095if {[N i 20 == 0x0]} {emit {object file}}
4096}
4097if {[N i 16 > 0x0]} {emit {not stripped}}
4098} 8978759 {emit {a.out NetBSD/ns32532 core}
4099if {[S 12 x {}]} {emit {from '%s'}}
4100if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4101} 9765191 {emit {a.out NetBSD/powerpc core}
4102if {[S 12 x {}]} {emit {from '%s'}}
4103} 9044235 {emit {a.out NetBSD/sparc demand paged}
4104if {[N c 0 & 0x80]} {if {[N I 20 < 0x2000]} {emit {shared library}}
4105if {[N I 20 == 0x2000]} {emit {dynamically linked executable}}
4106if {[N I 20 > 0x2000]} {emit {dynamically linked executable}}
4107}
4108if {[N c 0 ^ 0x80]} {emit executable}
4109if {[N I 16 > 0x0]} {emit {not stripped}}
4110} 9044232 {emit {a.out NetBSD/sparc pure}
4111if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4112if {[N c 0 ^ 0x80]} {emit executable}
4113if {[N I 16 > 0x0]} {emit {not stripped}}
4114} 9044231 {emit {a.out NetBSD/sparc}
4115if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4116if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4117if {[N I 20 != 0x0]} {emit executable}
4118if {[N I 20 == 0x0]} {emit {object file}}
4119}
4120if {[N I 16 > 0x0]} {emit {not stripped}}
4121} 9044295 {emit {a.out NetBSD/sparc core}
4122if {[S 12 x {}]} {emit {from '%s'}}
4123if {[N I 32 != 0x0]} {emit {\(signal %d\)}}
4124} 9109771 {emit {a.out NetBSD/pmax demand paged}
4125if {[N c 0 & 0x80]} {if {[N i 20 < 0x1000]} {emit {shared library}}
4126if {[N i 20 == 0x1000]} {emit {dynamically linked executable}}
4127if {[N i 20 > 0x1000]} {emit {dynamically linked executable}}
4128}
4129if {[N c 0 ^ 0x80]} {emit executable}
4130if {[N i 16 > 0x0]} {emit {not stripped}}
4131} 9109768 {emit {a.out NetBSD/pmax pure}
4132if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4133if {[N c 0 ^ 0x80]} {emit executable}
4134if {[N i 16 > 0x0]} {emit {not stripped}}
4135} 9109767 {emit {a.out NetBSD/pmax}
4136if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4137if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4138if {[N i 20 != 0x0]} {emit executable}
4139if {[N i 20 == 0x0]} {emit {object file}}
4140}
4141if {[N i 16 > 0x0]} {emit {not stripped}}
4142} 9109831 {emit {a.out NetBSD/pmax core}
4143if {[S 12 x {}]} {emit {from '%s'}}
4144if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4145} 9175307 {emit {a.out NetBSD/vax 1k demand paged}
4146if {[N c 0 & 0x80]} {if {[N i 20 < 0x1000]} {emit {shared library}}
4147if {[N i 20 == 0x1000]} {emit {dynamically linked executable}}
4148if {[N i 20 > 0x1000]} {emit {dynamically linked executable}}
4149}
4150if {[N c 0 ^ 0x80]} {emit executable}
4151if {[N i 16 > 0x0]} {emit {not stripped}}
4152} 9175304 {emit {a.out NetBSD/vax 1k pure}
4153if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4154if {[N c 0 ^ 0x80]} {emit executable}
4155if {[N i 16 > 0x0]} {emit {not stripped}}
4156} 9175303 {emit {a.out NetBSD/vax 1k}
4157if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4158if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4159if {[N i 20 != 0x0]} {emit executable}
4160if {[N i 20 == 0x0]} {emit {object file}}
4161}
4162if {[N i 16 > 0x0]} {emit {not stripped}}
4163} 9175367 {emit {a.out NetBSD/vax 1k core}
4164if {[S 12 x {}]} {emit {from '%s'}}
4165if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4166} 9830667 {emit {a.out NetBSD/vax 4k demand paged}
4167if {[N c 0 & 0x80]} {if {[N i 20 < 0x1000]} {emit {shared library}}
4168if {[N i 20 == 0x1000]} {emit {dynamically linked executable}}
4169if {[N i 20 > 0x1000]} {emit {dynamically linked executable}}
4170}
4171if {[N c 0 ^ 0x80]} {emit executable}
4172if {[N i 16 > 0x0]} {emit {not stripped}}
4173} 9830664 {emit {a.out NetBSD/vax 4k pure}
4174if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4175if {[N c 0 ^ 0x80]} {emit executable}
4176if {[N i 16 > 0x0]} {emit {not stripped}}
4177} 9830663 {emit {a.out NetBSD/vax 4k}
4178if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4179if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4180if {[N i 20 != 0x0]} {emit executable}
4181if {[N i 20 == 0x0]} {emit {object file}}
4182}
4183if {[N i 16 > 0x0]} {emit {not stripped}}
4184} 9830727 {emit {a.out NetBSD/vax 4k core}
4185if {[S 12 x {}]} {emit {from '%s'}}
4186if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4187} 9240903 {emit {a.out NetBSD/alpha core}
4188if {[S 12 x {}]} {emit {from '%s'}}
4189if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4190} 9306379 {emit {a.out NetBSD/mips demand paged}
4191if {[N c 0 & 0x80]} {if {[N I 20 < 0x2000]} {emit {shared library}}
4192if {[N I 20 == 0x2000]} {emit {dynamically linked executable}}
4193if {[N I 20 > 0x2000]} {emit {dynamically linked executable}}
4194}
4195if {[N c 0 ^ 0x80]} {emit executable}
4196if {[N I 16 > 0x0]} {emit {not stripped}}
4197} 9306376 {emit {a.out NetBSD/mips pure}
4198if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4199if {[N c 0 ^ 0x80]} {emit executable}
4200if {[N I 16 > 0x0]} {emit {not stripped}}
4201} 9306375 {emit {a.out NetBSD/mips}
4202if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4203if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4204if {[N I 20 != 0x0]} {emit executable}
4205if {[N I 20 == 0x0]} {emit {object file}}
4206}
4207if {[N I 16 > 0x0]} {emit {not stripped}}
4208} 9306439 {emit {a.out NetBSD/mips core}
4209if {[S 12 x {}]} {emit {from '%s'}}
4210if {[N I 32 != 0x0]} {emit {\(signal %d\)}}
4211} 9371915 {emit {a.out NetBSD/arm32 demand paged}
4212if {[N c 0 & 0x80]} {if {[N i 20 < 0x1000]} {emit {shared library}}
4213if {[N i 20 == 0x1000]} {emit {dynamically linked executable}}
4214if {[N i 20 > 0x1000]} {emit {dynamically linked executable}}
4215}
4216if {[N c 0 ^ 0x80]} {emit executable}
4217if {[N i 16 > 0x0]} {emit {not stripped}}
4218} 9371912 {emit {a.out NetBSD/arm32 pure}
4219if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4220if {[N c 0 ^ 0x80]} {emit executable}
4221if {[N i 16 > 0x0]} {emit {not stripped}}
4222} 9371911 {emit {a.out NetBSD/arm32}
4223if {[N c 0 & 0x80]} {emit {dynamically linked executable}}
4224if {[N c 0 ^ 0x80]} {if {[N c 0 & 0x40]} {emit {position independent}}
4225if {[N i 20 != 0x0]} {emit executable}
4226if {[N i 20 == 0x0]} {emit {object file}}
4227}
4228if {[N i 16 > 0x0]} {emit {not stripped}}
4229} 9371975 {emit {a.out NetBSD/arm core}
4230if {[S 12 x {}]} {emit {from '%s'}}
4231if {[N i 32 != 0x0]} {emit {\(signal %d\)}}
4232}
4233if {[S 0 == {\000\017\102\104\000\000\000\000\000\000\001\000\000\000\000\002\000\000\000\002\000\000\004\000}]} {emit {Netscape Address book}}
4234if {[S 0 == {\000\017\102\111}]} {emit {Netscape Communicator address book}}
4235if {[S 0 == {\#\ Netscape\ folder\ cache}]} {emit {Netscape folder cache}}
4236if {[S 0 == {\000\036\204\220\000}]} {emit {Netscape folder cache}}
4237if {[S 0 == SX961999]} {emit Net2phone}
4238if {[S 0 == {JG\004\016\0\0\0\0}]} {emit ART}
4239if {[S 0 == StartFontMetrics]} {emit {ASCII font metrics}}
4240if {[S 0 == StartFont]} {emit {ASCII font bits}}
4241switch -- [Nv I 8] 326773573 {emit {X11/NeWS bitmap font}} 326773576 {emit {X11/NeWS font family}}
4242if {[S 0 == NPFF]} {emit {NItpicker Flow File}
4243if {[N c 4 x {}]} {emit V%d.}
4244if {[N c 5 x {}]} {emit %d}
4245if {[N S 6 x {}]} {emit {started: %s}}
4246if {[N S 10 x {}]} {emit {stopped: %s}}
4247if {[N I 14 x {}]} {emit {Bytes: %u}}
4248if {[N I 18 x {}]} {emit {Bytes1: %u}}
4249if {[N I 22 x {}]} {emit {Flows: %u}}
4250if {[N I 26 x {}]} {emit {Pkts: %u}}
4251}
4252if {[S 0 == Caml1999]} {emit {Objective caml}
4253if {[S 8 == X]} {emit {exec file}}
4254if {[S 8 == I]} {emit {interface file \(.cmi\)}}
4255if {[S 8 == O]} {emit {object file \(.cmo\)}}
4256if {[S 8 == A]} {emit {library file \(.cma\)}}
4257if {[S 8 == Y]} {emit {native object file \(.cmx\)}}
4258if {[S 8 == Z]} {emit {native library file \(.cmxa\)}}
4259if {[S 8 == M]} {emit {abstract syntax tree implementation file}}
4260if {[S 8 == N]} {emit {abstract syntax tree interface file}}
4261if {[S 9 x {}]} {emit {\(Version %3.3s\).}}
4262}
4263if {[S 0 == Octave-1-L]} {emit {Octave binary data \(little endian\)}}
4264if {[S 0 == Octave-1-B]} {emit {Octave binary data \(big endian\)}}
4265if {[S 0 == {\177OLF}]} {emit OLF
4266switch -- [Nv c 4] 0 {emit {invalid class}} 1 {emit 32-bit} 2 {emit 64-bit}
4267switch -- [Nv c 7] 0 {emit {invalid os}} 1 {emit OpenBSD} 2 {emit NetBSD} 3 {emit FreeBSD} 4 {emit 4.4BSD} 5 {emit Linux} 6 {emit SVR4} 7 {emit esix} 8 {emit Solaris} 9 {emit Irix} 10 {emit SCO} 11 {emit Dell} 12 {emit NCR}
4268switch -- [Nv c 5] 0 {emit {invalid byte order}} 1 {emit LSB
4269switch -- [Nv s 16] 0 {emit {no file type,}} 1 {emit relocatable,} 2 {emit executable,} 3 {emit {shared object,}} 4 {emit {core file}
4270if {[S [I 56 Q 204] x {}]} {emit {of '%s'}}
4271if {[N i [I 56 Q 16] > 0x0]} {emit {\(signal %d\),}}
4272}
4273if {[N s 16 & 0xff00]} {emit processor-specific,}
4274switch -- [Nv s 18] 0 {emit {no machine,}} 1 {emit {AT&T WE32100 - invalid byte order,}} 2 {emit {SPARC - invalid byte order,}} 3 {emit {Intel 80386,}} 4 {emit {Motorola 68000 - invalid byte order,}} 5 {emit {Motorola 88000 - invalid byte order,}} 6 {emit {Intel 80486,}} 7 {emit {Intel 80860,}} 8 {emit {MIPS R3000_BE - invalid byte order,}} 9 {emit {Amdahl - invalid byte order,}} 10 {emit {MIPS R3000_LE,}} 11 {emit {RS6000 - invalid byte order,}} 15 {emit {PA-RISC - invalid byte order,}} 16 {emit nCUBE,} 17 {emit VPP500,} 18 {emit SPARC32PLUS,} 20 {emit PowerPC,} -28634 {emit Alpha,}
4275switch -- [Nv i 20] 0 {emit {invalid version}} 1 {emit {version 1}}
4276if {[N i 36 == 0x1]} {emit {MathCoPro/FPU/MAU Required}}
4277} 2 {emit MSB
4278switch -- [Nv S 16] 0 {emit {no file type,}} 1 {emit relocatable,} 2 {emit executable,} 3 {emit {shared object,}} 4 {emit {core file,}
4279if {[S [I 56 Q 204] x {}]} {emit {of '%s'}}
4280if {[N I [I 56 Q 16] > 0x0]} {emit {\(signal %d\),}}
4281}
4282if {[N S 16 & 0xff00]} {emit processor-specific,}
4283switch -- [Nv S 18] 0 {emit {no machine,}} 1 {emit {AT&T WE32100,}} 2 {emit SPARC,} 3 {emit {Intel 80386 - invalid byte order,}} 4 {emit {Motorola 68000,}} 5 {emit {Motorola 88000,}} 6 {emit {Intel 80486 - invalid byte order,}} 7 {emit {Intel 80860,}} 8 {emit {MIPS R3000_BE,}} 9 {emit Amdahl,} 10 {emit {MIPS R3000_LE - invalid byte order,}} 11 {emit RS6000,} 15 {emit PA-RISC,} 16 {emit nCUBE,} 17 {emit VPP500,} 18 {emit SPARC32PLUS,} 20 {emit {PowerPC or cisco 4500,}} 21 {emit {cisco 7500,}} 24 {emit {cisco SVIP,}} 25 {emit {cisco 7200,}} 36 {emit {cisco 12000,}} -28634 {emit Alpha,}
4284switch -- [Nv I 20] 0 {emit {invalid version}} 1 {emit {version 1}}
4285if {[N I 36 == 0x1]} {emit {MathCoPro/FPU/MAU Required}}
4286}
4287if {[S 8 x {}]} {emit {\(%s\)}}
4288}
4289if {[S 1 == InternetShortcut]} {emit {MS Windows 95 Internet shortcut text}
4290if {[S 24 > {\	}]} {emit {\(URL=<%s>\)}}
4291}
4292if {[S 0 == {HSP\x01\x9b\x00}]} {emit {OS/2 INF}
4293if {[S 107 > 0]} {emit {\(%s\)}}
4294}
4295if {[S 0 == {HSP\x10\x9b\x00}]} {emit {OS/2 HLP}
4296if {[S 107 > 0]} {emit {\(%s\)}}
4297}
4298if {[S 0 == {\xff\xff\xff\xff\x14\0\0\0}]} {emit {OS/2 INI}}
4299switch -- [Nv I 60] 1634758764 {emit {PalmOS application}
4300if {[S 0 x {}]} {emit {\"%s\"}}
4301} 1413830772 {emit {AportisDoc file}
4302if {[S 0 x {}]} {emit {\"%s\"}}
4303} 1212236619 {emit {HackMaster hack}
4304if {[S 0 x {}]} {emit {\"%s\"}}
4305}
4306if {[S 60 == BVokBDIC]} {emit {BDicty PalmOS document}
4307if {[S 0 x {}]} {emit {\"%s\"}}
4308}
4309if {[S 60 == DB99DBOS]} {emit {DB PalmOS document}
4310if {[S 0 x {}]} {emit {\"%s\"}}
4311}
4312if {[S 60 == vIMGView]} {emit {FireViewer/ImageViewer PalmOS document}
4313if {[S 0 x {}]} {emit {\"%s\"}}
4314}
4315if {[S 60 == PmDBPmDB]} {emit {HanDBase PalmOS document}
4316if {[S 0 x {}]} {emit {\"%s\"}}
4317}
4318if {[S 60 == InfoINDB]} {emit {InfoView PalmOS document}
4319if {[S 0 x {}]} {emit {\"%s\"}}
4320}
4321if {[S 60 == ToGoToGo]} {emit {iSilo PalmOS document}
4322if {[S 0 x {}]} {emit {\"%s\"}}
4323}
4324if {[S 60 == JfDbJBas]} {emit {JFile PalmOS document}
4325if {[S 0 x {}]} {emit {\"%s\"}}
4326}
4327if {[S 60 == JfDbJFil]} {emit {JFile Pro PalmOS document}
4328if {[S 0 x {}]} {emit {\"%s\"}}
4329}
4330if {[S 60 == DATALSdb]} {emit {List PalmOS document}
4331if {[S 0 x {}]} {emit {\"%s\"}}
4332}
4333if {[S 60 == Mdb1Mdb1]} {emit {MobileDB PalmOS document}
4334if {[S 0 x {}]} {emit {\"%s\"}}
4335}
4336if {[S 60 == PNRdPPrs]} {emit {PeanutPress PalmOS document}
4337if {[S 0 x {}]} {emit {\"%s\"}}
4338}
4339if {[S 60 == DataPlkr]} {emit {Plucker PalmOS document}
4340if {[S 0 x {}]} {emit {\"%s\"}}
4341}
4342if {[S 60 == DataSprd]} {emit {QuickSheet PalmOS document}
4343if {[S 0 x {}]} {emit {\"%s\"}}
4344}
4345if {[S 60 == SM01SMem]} {emit {SuperMemo PalmOS document}
4346if {[S 0 x {}]} {emit {\"%s\"}}
4347}
4348if {[S 60 == DataTlPt]} {emit {TealDoc PalmOS document}
4349if {[S 0 x {}]} {emit {\"%s\"}}
4350}
4351if {[S 60 == InfoTlIf]} {emit {TealInfo PalmOS document}
4352if {[S 0 x {}]} {emit {\"%s\"}}
4353}
4354if {[S 60 == DataTlMl]} {emit {TealMeal PalmOS document}
4355if {[S 0 x {}]} {emit {\"%s\"}}
4356}
4357if {[S 60 == DataTlPt]} {emit {TealPaint PalmOS document}
4358if {[S 0 x {}]} {emit {\"%s\"}}
4359}
4360if {[S 60 == dataTDBP]} {emit {ThinkDB PalmOS document}
4361if {[S 0 x {}]} {emit {\"%s\"}}
4362}
4363if {[S 60 == TdatTide]} {emit {Tides PalmOS document}
4364if {[S 0 x {}]} {emit {\"%s\"}}
4365}
4366if {[S 60 == ToRaTRPW]} {emit {TomeRaider PalmOS document}
4367if {[S 0 x {}]} {emit {\"%s\"}}
4368}
4369if {[S 60 == zTXT]} {emit {A GutenPalm zTXT e-book}
4370if {[S 0 x {}]} {emit {\"%s\"}}
4371switch -- [Nv c [I 78 I 0]] 0 {emit {}
4372if {[N c [I 78 I 1] x {}]} {emit {\(v0.%02d\)}}
4373} 1 {emit {}
4374if {[N c [I 78 I 1] x {}]} {emit {\(v1.%02d\)}
4375if {[N S [I 78 I 10] > 0x0]} {if {[N S [I 78 I 10] < 0x2]} {emit {- 1 bookmark}}
4376if {[N S [I 78 I 10] > 0x1]} {emit {- %d bookmarks}}
4377}
4378if {[N S [I 78 I 14] > 0x0]} {if {[N S [I 78 I 14] < 0x2]} {emit {- 1 annotation}}
4379if {[N S [I 78 I 14] > 0x1]} {emit {- %d annotations}}
4380}
4381}
4382}
4383if {[N c [I 78 I 0] > 0x1]} {emit {\(v%d.}
4384if {[N c [I 78 I 1] x {}]} {emit {%02d\)}}
4385}
4386}
4387if {[S 60 == libr]} {emit {Palm OS dynamic library data}
4388if {[S 0 x {}]} {emit {\"%s\"}}
4389}
4390if {[S 60 == ptch]} {emit {Palm OS operating system patch data}
4391if {[S 0 x {}]} {emit {\"%s\"}}
4392}
4393if {[S 60 == BOOKMOBI]} {emit {Mobipocket E-book}
4394if {[S 0 x {}]} {emit {\"%s\"}}
4395}
4396if {[N S 0 == 0xace &0xfff]} {emit PARIX
4397switch -- [Nv c 0 &0xf0] -128 {emit T800} -112 {emit T9000}
4398switch -- [Nv c 19 &0x02] 2 {emit executable} 0 {emit object}
4399if {[N c 19 == 0x0 &0x0c]} {emit {not stripped}}
4400}
4401if {[S 0 == %PDF-]} {emit {PDF document}
4402if {[N c 5 x {}]} {emit {\b, version %c}}
4403if {[N c 7 x {}]} {emit {\b.%c}}
4404}
4405if {[S 0 == {\#!\ /bin/perl} b]} {emit {perl script text executable}}
4406if {[S 0 == {eval\ \"exec\ /bin/perl}]} {emit {perl script text}}
4407if {[S 0 == {\#!\ /usr/bin/perl} b]} {emit {perl script text executable}}
4408if {[S 0 == {eval\ \"exec\ /usr/bin/perl}]} {emit {perl script text}}
4409if {[S 0 == {\#!\ /usr/local/bin/perl} b]} {emit {perl script text}}
4410if {[S 0 == {eval\ \"exec\ /usr/local/bin/perl}]} {emit {perl script text executable}}
4411if {[S 0 == {eval\ '(exit\ $?0)'\ &&\ eval\ 'exec}]} {emit {perl script text}}
4412if {[S 0 == package]} {emit {Perl5 module source text}}
4413if {[S 0 == perl-store]} {emit {perl Storable\(v0.6\) data}
4414if {[N c 4 > 0x0]} {emit {\(net-order %d\)}
4415if {[N c 4 & 0x1]} {emit {\(network-ordered\)}}
4416switch -- [Nv c 4] 3 {emit {\(major 1\)}} 2 {emit {\(major 1\)}}
4417}
4418}
4419if {[S 0 == pst0]} {emit {perl Storable\(v0.7\) data}
4420if {[N c 4 > 0x0]} {if {[N c 4 & 0x1]} {emit {\(network-ordered\)}}
4421switch -- [Nv c 4] 5 {emit {\(major 2\)}} 4 {emit {\(major 2\)}}
4422if {[N c 5 > 0x0]} {emit {\(minor %d\)}}
4423}
4424}
4425if {[S 0 == {-----BEGIN\040PGP}]} {emit {PGP armored data}
4426if {[S 15 == {PUBLIC\040KEY\040BLOCK-}]} {emit {public key block}}
4427if {[S 15 == MESSAGE-]} {emit message}
4428if {[S 15 == {SIGNED\040MESSAGE-}]} {emit {signed message}}
4429if {[S 15 == {PGP\040SIGNATURE-}]} {emit signature}
4430}
4431if {[S 0 == {\#\ PaCkAgE\ DaTaStReAm}]} {emit {pkg Datastream \(SVR4\)}}
4432if {[S 0 == %!]} {emit {PostScript document text}
4433if {[S 2 == PS-Adobe-]} {emit conforming
4434if {[S 11 x {}]} {emit {at level %.3s}
4435if {[S 15 == EPS]} {emit {- type %s}}
4436if {[S 15 == Query]} {emit {- type %s}}
4437if {[S 15 == ExitServer]} {emit {- type %s}}
4438}
4439}
4440}
4441if {[S 0 == {\004%!}]} {emit {PostScript document text}
4442if {[S 3 == PS-Adobe-]} {emit conforming
4443if {[S 12 x {}]} {emit {at level %.3s}
4444if {[S 16 == EPS]} {emit {- type %s}}
4445if {[S 16 == Query]} {emit {- type %s}}
4446if {[S 16 == ExitServer]} {emit {- type %s}}
4447}
4448}
4449}
4450if {[S 0 == {\033%-12345X%!PS}]} {emit {PostScript document}}
4451if {[S 0 == *PPD-Adobe:]} {emit {PPD file}
4452if {[S 13 x {}]} {emit {\b, ve}}
4453}
4454if {[S 0 == {\033%-12345X@PJL}]} {emit {HP Printer Job Language data}}
4455if {[Sx 1 0 == {\033%-12345X@PJL}]} {emit {HP Printer Job Language data}
4456if {[Sx 2 [R 0] x {}]} {emit {%s			}
4457if {[Sx 3 [R 0] x {}]} {emit {%s			}
4458if {[Sx 4 [R 0] x {}]} {emit {%s		}
4459if {[S [R 0] x {}]} {emit {%s		}}
4460}
4461}
4462}
4463}
4464if {[S 0 == {\033E\033}]} {emit {HP PCL printer data}
4465if {[S 3 == {\&l0A}]} {emit {- default page size}}
4466if {[S 3 == {\&l1A}]} {emit {- US executive page size}}
4467if {[S 3 == {\&l2A}]} {emit {- US letter page size}}
4468if {[S 3 == {\&l3A}]} {emit {- US legal page size}}
4469if {[S 3 == {\&l26A}]} {emit {- A4 page size}}
4470if {[S 3 == {\&l80A}]} {emit {- Monarch envelope size}}
4471if {[S 3 == {\&l81A}]} {emit {- No. 10 envelope size}}
4472if {[S 3 == {\&l90A}]} {emit {- Intl. DL envelope size}}
4473if {[S 3 == {\&l91A}]} {emit {- Intl. C5 envelope size}}
4474if {[S 3 == {\&l100A}]} {emit {- Intl. B5 envelope size}}
4475if {[S 3 == {\&l-81A}]} {emit {- No. 10 envelope size \(landscape\)}}
4476if {[S 3 == {\&l-90A}]} {emit {- Intl. DL envelope size \(landscape\)}}
4477}
4478if {[S 0 == @document(]} {emit {Imagen printer}
4479if {[S 10 == {language\ impress}]} {emit {\(imPRESS data\)}}
4480if {[S 10 == {language\ daisy}]} {emit {\(daisywheel text\)}}
4481if {[S 10 == {language\ diablo}]} {emit {\(daisywheel text\)}}
4482if {[S 10 == {language\ printer}]} {emit {\(line printer emulation\)}}
4483if {[S 10 == {language\ tektronix}]} {emit {\(Tektronix 4014 emulation\)}}
4484}
4485if {[S 0 == Rast]} {emit {RST-format raster font data}
4486if {[S 45 > 0]} {emit {face %s}}
4487}
4488if {[S 0 == {\033[K\002\0\0\017\033(a\001\0\001\033(g}]} {emit {Canon Bubble Jet BJC formatted data}}
4489if {[S 0 == {\x1B\x40\x1B\x28\x52\x08\x00\x00REMOTE1P}]} {emit {Epson Stylus Color 460 data}}
4490if {[S 0 == JZJZ]} {if {[S 18 == ZZ]} {emit {Zenographics ZjStream printer data \(big-endian\)}}
4491}
4492if {[S 0 == ZJZJ]} {if {[S 18 == ZZ]} {emit {Zenographics ZjStream printer data \(little-endian\)}}
4493}
4494if {[S 0 == OAK]} {if {[N c 7 == 0x0]} {emit 888 0}
4495if {[N c 11 == 0x0]} {emit {Oak Technologies printer stream}}
4496}
4497if {[S 0 == %!VMF]} {emit {SunClock's Vector Map Format data}}
4498if {[S 0 == {\xbe\xefABCDEFGH}]} {emit {HP LaserJet 1000 series downloadable firmware}}
4499if {[S 0 == {\x1b\x01@EJL}]} {emit {Epson ESC/Page language printer data}}
4500if {[S 0 == {FTNCHEK_\ P}]} {emit {project file for ftnchek}
4501if {[S 10 == 1]} {emit {version 2.7}}
4502if {[S 10 == 2]} {emit {version 2.8 to 2.10}}
4503if {[S 10 == 3]} {emit {version 2.11 or later}}
4504}
4505if {[N I 0 == 0x56000000 &0xff00ffff]} {emit {ps database}
4506if {[S 1 x {}]} {emit {version %s}}
4507if {[S 4 x {}]} {emit {from kernel %s}}
4508}
4509if {[S 0 == {\"\"\"}]} {emit {a python script text executable}}
4510if {[S 0 == {/1\ :pserver:}]} {emit {cvs password text file}}
4511if {[S 0 == RIFF]} {emit {RIFF \(little-endian\) data}
4512if {[S 8 == PAL]} {emit {\b, palette}
4513if {[N s 16 x {}]} {emit {\b, version %d}}
4514if {[N s 18 x {}]} {emit {\b, %d entries}}
4515}
4516if {[S 8 == RDIB]} {emit {\b, device-independent bitmap}
4517if {[S 16 == BM]} {switch -- [Nv s 30] 12 {emit {\b, OS/2 1.x format}
4518if {[N s 34 x {}]} {emit {\b, %d x}}
4519if {[N s 36 x {}]} {emit %d}
4520} 64 {emit {\b, OS/2 2.x format}
4521if {[N s 34 x {}]} {emit {\b, %d x}}
4522if {[N s 36 x {}]} {emit %d}
4523} 40 {emit {\b, Windows 3.x format}
4524if {[N i 34 x {}]} {emit {\b, %d x}}
4525if {[N i 38 x {}]} {emit {%d x}}
4526if {[N s 44 x {}]} {emit %d}
4527}
4528}
4529}
4530if {[S 8 == RMID]} {emit {\b, MIDI}}
4531if {[S 8 == RMMP]} {emit {\b, multimedia movie}}
4532if {[S 8 == WAVE]} {emit {\b, WAVE audio}
4533switch -- [Nv s 20] 1 {emit {\b, Microsoft PCM}
4534if {[N s 34 > 0x0]} {emit {\b, %d bit}}
4535} 2 {emit {\b, Microsoft ADPCM}} 6 {emit {\b, ITU G.711 A-law}} 7 {emit {\b, ITU G.711 mu-law}} 17 {emit {\b, IMA ADPCM}} 20 {emit {\b, ITU G.723 ADPCM \(Yamaha\)}} 49 {emit {\b, GSM 6.10}} 64 {emit {\b, ITU G.721 ADPCM}} 80 {emit {\b, MPEG}} 85 {emit {\b, MPEG Layer 3}}
4536switch -- [Nv s 22] 1 {emit {\b, mono}} 2 {emit {\b, stereo}}
4537if {[N s 22 > 0x2]} {emit {\b, %d channels}}
4538if {[N i 24 > 0x0]} {emit {%d Hz}}
4539}
4540if {[S 8 == CDRA]} {emit {\b, Corel Draw Picture}}
4541if {[S 8 == {AVI\040}]} {emit {\b, AVI}
4542if {[S 12 == LIST]} {if {[Sx 4 20 == hdrlavih]} {if {[N i [R 36] x {}]} {emit {\b, %lu x}}
4543if {[N i [R 40] x {}]} {emit %lu,}
4544if {[N i [R 4] > 0xf4240]} {emit {<1 fps,}}
4545switch -- [Nvx 5 i [R 4]] 1000000 {emit {1.00 fps,}} 500000 {emit {2.00 fps,}} 333333 {emit {3.00 fps,}} 250000 {emit {4.00 fps,}} 200000 {emit {5.00 fps,}} 166667 {emit {6.00 fps,}} 142857 {emit {7.00 fps,}} 125000 {emit {8.00 fps,}} 111111 {emit {9.00 fps,}} 100000 {emit {10.00 fps,}} 83333 {emit {12.00 fps,}} 66667 {emit {15.00 fps,}} 50000 {emit {20.00 fps,}} 41708 {emit {23.98 fps,}} 41667 {emit {24.00 fps,}} 40000 {emit {25.00 fps,}} 33367 {emit {29.97 fps,}} 33333 {emit {30.00 fps,}}
4546L 4;if {[Nx 5 i [R 4] < 0x18a92]} {if {[Nx 6 i [R -4] > 0x182c2]} {if {[N i [R -4] != 0x186a0]} {emit {~10 fps,}}
4547}
4548}
4549L 4;if {[Nx 5 i [R 4] < 0x14842]} {if {[Nx 6 i [R -4] > 0x142d5]} {if {[N i [R -4] != 0x14585]} {emit {~12 fps,}}
4550}
4551}
4552L 4;if {[Nx 5 i [R 4] < 0x1062a]} {if {[Nx 6 i [R -4] > 0x102b1]} {if {[N i [R -4] != 0x1046b]} {emit {~15 fps,}}
4553}
4554}
4555L 4;if {[Nx 5 i [R 4] < 0xa371]} {if {[Nx 6 i [R -4] > 0xa216]} {if {[Nx 7 i [R -4] != 0xa2ec]} {if {[N i [R -4] != 0xa2c3]} {emit {~24 fps,}}
4556}
4557}
4558}
4559L 4;if {[Nx 5 i [R 4] < 0x9ce1]} {if {[Nx 6 i [R -4] > 0x9ba1]} {if {[N i [R -4] != 0x9c40]} {emit {~25 fps,}}
4560}
4561}
4562L 4;if {[Nx 5 i [R 4] < 0x82a5]} {if {[Nx 6 i [R -4] > 0x81c7]} {if {[Nx 7 i [R -4] != 0x8257]} {if {[N i [R -4] != 0x8235]} {emit {~30 fps,}}
4563}
4564}
4565}
4566L 4;if {[N i [R 4] < 0x7de0]} {emit {>30 fps,}}
4567}
4568if {[S 88 == LIST]} {if {[S 96 == strlstrh]} {if {[Sx 6 108 == vids]} {emit video:
4569if {[N i [R 0] == 0x0]} {emit uncompressed}
4570if {[S [I 104 i 108] == strf]} {switch -- [Nv i [I 104 i 132]] 1 {emit {RLE 8bpp}} 0 {emit {}}
4571if {[S [I 104 i 132] == cvid c]} {emit Cinepak}
4572if {[S [I 104 i 132] == i263 c]} {emit {Intel I.263}}
4573if {[S [I 104 i 132] == iv32 c]} {emit {Indeo 3.2}}
4574if {[S [I 104 i 132] == iv41 c]} {emit {Indeo 4.1}}
4575if {[S [I 104 i 132] == iv50 c]} {emit {Indeo 5.0}}
4576if {[S [I 104 i 132] == mp42 c]} {emit {Microsoft MPEG-4 v2}}
4577if {[S [I 104 i 132] == mp43 c]} {emit {Microsoft MPEG-4 v3}}
4578if {[S [I 104 i 132] == mjpg c]} {emit {Motion JPEG}}
4579if {[S [I 104 i 132] == div3 c]} {emit {DivX 3}
4580if {[S 112 == div3 c]} {emit Low-Motion}
4581if {[S 112 == div4 c]} {emit Fast-Motion}
4582}
4583if {[S [I 104 i 132] == divx c]} {emit {DivX 4}}
4584if {[S [I 104 i 132] == dx50 c]} {emit {DivX 5}}
4585if {[S [I 104 i 132] == xvid c]} {emit XviD}
4586}
4587}
4588}
4589if {[S [I 92 i 96] == LIST]} {if {[S [I 92 i 104] == strlstrh]} {if {[S [I 92 i 116] == auds]} {emit {\b, audio:}
4590if {[S [I 92 i 172] == strf]} {switch -- [Nv s [I 92 i 180]] 1 {emit {uncompressed PCM}} 2 {emit ADPCM} 85 {emit {MPEG-1 Layer 3}} 8192 {emit {Dolby AC3}} 353 {emit DivX}
4591switch -- [Nv s [I 92 i 182]] 1 {emit {\(mono,}} 2 {emit {\(stereo,}}
4592if {[N s [I 92 i 182] > 0x2]} {emit {\(%d channels,}}
4593if {[N i [I 92 i 184] x {}]} {emit {%d Hz\)}}
4594}
4595if {[S [I 92 i 180] == strf]} {switch -- [Nv s [I 92 i 188]] 1 {emit {uncompressed PCM}} 2 {emit ADPCM} 85 {emit {MPEG-1 Layer 3}} 8192 {emit {Dolby AC3}} 353 {emit DivX}
4596switch -- [Nv s [I 92 i 190]] 1 {emit {\(mono,}} 2 {emit {\(stereo,}}
4597if {[N s [I 92 i 190] > 0x2]} {emit {\(%d channels,}}
4598if {[N i [I 92 i 192] x {}]} {emit {%d Hz\)}}
4599}
4600}
4601}
4602}
4603}
4604}
4605}
4606if {[S 8 == ACON]} {emit {\b, animated cursor}}
4607if {[S 8 == sfbk]} {emit SoundFont/Bank}
4608if {[S 8 == CDXA]} {emit {\b, wrapped MPEG-1 \(CDXA\)}}
4609if {[S 8 == 4XMV]} {emit {\b, 4X Movie file}}
4610}
4611if {[S 0 == RIFX]} {emit {RIFF \(big-endian\) data}
4612if {[S 8 == PAL]} {emit {\b, palette}
4613if {[N S 16 x {}]} {emit {\b, version %d}}
4614if {[N S 18 x {}]} {emit {\b, %d entries}}
4615}
4616if {[S 8 == RDIB]} {emit {\b, device-independent bitmap}
4617if {[S 16 == BM]} {switch -- [Nv S 30] 12 {emit {\b, OS/2 1.x format}
4618if {[N S 34 x {}]} {emit {\b, %d x}}
4619if {[N S 36 x {}]} {emit %d}
4620} 64 {emit {\b, OS/2 2.x format}
4621if {[N S 34 x {}]} {emit {\b, %d x}}
4622if {[N S 36 x {}]} {emit %d}
4623} 40 {emit {\b, Windows 3.x format}
4624if {[N I 34 x {}]} {emit {\b, %d x}}
4625if {[N I 38 x {}]} {emit {%d x}}
4626if {[N S 44 x {}]} {emit %d}
4627}
4628}
4629}
4630if {[S 8 == RMID]} {emit {\b, MIDI}}
4631if {[S 8 == RMMP]} {emit {\b, multimedia movie}}
4632if {[S 8 == WAVE]} {emit {\b, WAVE audio}
4633if {[N s 20 == 0x1]} {emit {\b, Microsoft PCM}
4634if {[N s 34 > 0x0]} {emit {\b, %d bit}}
4635}
4636switch -- [Nv S 22] 1 {emit {\b, mono}} 2 {emit {\b, stereo}}
4637if {[N S 22 > 0x2]} {emit {\b, %d channels}}
4638if {[N I 24 > 0x0]} {emit {%d Hz}}
4639}
4640if {[S 8 == CDRA]} {emit {\b, Corel Draw Picture}}
4641if {[S 8 == {AVI\040}]} {emit {\b, AVI}}
4642if {[S 8 == ACON]} {emit {\b, animated cursor}}
4643if {[S 8 == NIFF]} {emit {\b, Notation Interchange File Format}}
4644if {[S 8 == sfbk]} {emit SoundFont/Bank}
4645}
4646if {[S 0 == {\{\\rtf}]} {emit {Rich Text Format data,}
4647if {[N c 5 x {}]} {emit {version %c,}}
4648if {[S 6 == {\\ansi}]} {emit ANSI}
4649if {[S 6 == {\\mac}]} {emit {Apple Macintosh}}
4650if {[S 6 == {\\pc}]} {emit {IBM PC, code page 437}}
4651if {[S 6 == {\\pca}]} {emit {IBM PS/2, code page 850}}
4652}
4653if {[S 38 == Spreadsheet]} {emit {sc spreadsheet file}}
4654if {[S 8 == {\001s\ }]} {emit {SCCS archive data}}
4655if {[S 0 == {divert(-1)\n}]} {emit {sendmail m4 text file}}
4656if {[S 0 == PmNs]} {emit {PCP compiled namespace \(V.0\)}}
4657if {[S 0 == PmN]} {emit {PCP compiled namespace}
4658if {[S 3 x {}]} {emit {\(V.%1.1s\)}}
4659}
4660if {[N i 3 == 0x84500526]} {emit {PCP archive}
4661if {[N c 7 x {}]} {emit {\(V.%d\)}}
4662switch -- [Nv i 20] -2 {emit {temporal index}} -1 {emit metadata} 0 {emit {log volume \#0}}
4663if {[N i 20 > 0x0]} {emit {log volume \#%ld}}
4664if {[S 24 x {}]} {emit {host: %s}}
4665}
4666if {[S 0 == PCPFolio]} {emit PCP
4667if {[S 9 == Version:]} {emit {Archive Folio}}
4668if {[S 18 x {}]} {emit {\(V.%s\)}}
4669}
4670if {[S 0 == {\#pmchart}]} {emit {PCP pmchart view}
4671if {[S 9 == Version]} {emit 906 0}
4672if {[S 17 x {}]} {emit {\(V%-3.3s\)}}
4673}
4674if {[S 0 == pmview]} {emit {PCP pmview config}
4675if {[S 7 == Version]} {emit 907 0}
4676if {[S 15 x {}]} {emit {\(V%-3.3s\)}}
4677}
4678if {[S 0 == {\#pmlogger}]} {emit {PCP pmlogger config}
4679if {[S 10 == Version]} {emit 908 0}
4680if {[S 18 x {}]} {emit {\(V%1.1s\)}}
4681}
4682if {[S 0 == PcPh]} {emit {PCP Help}
4683if {[S 4 == 1]} {emit Index}
4684if {[S 4 == 2]} {emit Text}
4685if {[S 5 x {}]} {emit {\(V.%1.1s\)}}
4686}
4687if {[S 0 == {\#pmieconf-rules}]} {emit {PCP pmieconf rules}
4688if {[S 16 x {}]} {emit {\(V.%1.1s\)}}
4689}
4690if {[S 3 == pmieconf-pmie]} {emit {PCP pmie config}
4691if {[S 17 x {}]} {emit {\(V.%1.1s\)}}
4692}
4693if {[S 0 == mdbm]} {emit {mdbm file,}
4694if {[N c 5 x {}]} {emit {version %d,}}
4695if {[N c 6 x {}]} {emit {2^%d pages,}}
4696if {[N c 7 x {}]} {emit {pagesize 2^%d,}}
4697if {[N c 17 x {}]} {emit {hash %d,}}
4698if {[N c 11 x {}]} {emit {dataformat %d}}
4699}
4700if {[S 0 == //Maya]} {emit {ASCII	Alias|Wavefront Maya Ascii File,}
4701if {[S 13 x {}]} {emit {version %s}}
4702}
4703if {[S 8 == MAYAFOR4]} {emit {Alias|Wavefront Maya Binary File,}
4704if {[S 32 x {}]} {emit {version %s scene}}
4705}
4706if {[S 8 == MayaFOR4]} {emit {Alias|Wavefront Maya Binary File,}
4707if {[S 32 x {}]} {emit {version %s scene}}
4708}
4709if {[S 8 == CIMG]} {emit {Alias|Wavefront Maya Image File}}
4710if {[S 8 == DEEP]} {emit {Alias|Wavefront Maya Image File}}
4711if {[S 0 == {<!DOCTYPE\ html} cB]} {emit {HTML document text}}
4712if {[S 0 == <head cb]} {emit {HTML document text}}
4713if {[S 0 == <title cb]} {emit {HTML document text}}
4714if {[S 0 == <html cb]} {emit {HTML document text}}
4715if {[S 0 == <?xml cb]} {emit {XML document text}}
4716if {[S 0 == {<?xml\ version}]} {emit {\"	XML}}
4717if {[S 0 == {<?xml\ version=\"}]} {emit XML
4718if {[S 15 x {}]} {emit {%.3s document text}
4719if {[S 23 == <xsl:stylesheet]} {emit {\(XSL stylesheet\)}}
4720if {[S 24 == <xsl:stylesheet]} {emit {\(XSL stylesheet\)}}
4721}
4722}
4723if {[S 0 == <?xml b]} {emit {XML document text}}
4724if {[S 0 == <?xml cb]} {emit {broken XML document text}}
4725if {[S 0 == <!doctype cb]} {emit {exported SGML document text}}
4726if {[S 0 == <!subdoc cb]} {emit {exported SGML subdocument text}}
4727if {[S 0 == <!-- cb]} {emit {exported SGML document text}}
4728if {[S 0 == {\#\ HTTP\ Cookie\ File}]} {emit {Web browser cookie text}}
4729if {[S 0 == {\#\ Netscape\ HTTP\ Cookie\ File}]} {emit {Netscape cookie text}}
4730if {[S 0 == {\#\ KDE\ Cookie\ File}]} {emit {Konqueror cookie text}}
4731if {[S 0 == Draw]} {emit {RiscOS Drawfile}}
4732if {[S 0 == PACK]} {emit {RiscOS PackdDir archive}}
4733if {[S 0 == !]} {emit {Assembler source}}
4734if {[S 0 == Analog]} {emit {ADi asm listing file}}
4735if {[S 0 == .SYSTEM]} {emit {SHARC architecture file}}
4736if {[S 0 == .system]} {emit {SHARC architecture file}}
4737if {[S 0 == QL5]} {emit {QL disk dump data,}
4738if {[S 3 == A]} {emit {720 KB,}}
4739if {[S 3 == B]} {emit {1.44 MB,}}
4740if {[S 3 == C]} {emit {3.2 MB,}}
4741if {[S 4 x {}]} {emit label:%.10s}
4742}
4743if {[S 0 == {NqNqNq`\004}]} {emit {QL firmware executable \(BCPL\)}}
4744if {[S 0 == {\#\#Sketch}]} {emit {Sketch document text}}
4745if {[S 0 == {GSTIm\0\0}]} {emit {GNU SmallTalk}
4746switch -- [Nv c 7 &1] 0 {emit {LE image version}
4747if {[N c 10 x {}]} {emit %d.}
4748if {[N c 9 x {}]} {emit {\b%d.}}
4749if {[N c 8 x {}]} {emit {\b%d}}
4750} 1 {emit {BE image version}
4751if {[N c 8 x {}]} {emit %d.}
4752if {[N c 9 x {}]} {emit {\b%d.}}
4753if {[N c 10 x {}]} {emit {\b%d}}
4754}
4755}
4756if {[S 0 == RTSS]} {emit {NetMon capture file}
4757if {[N c 5 x {}]} {emit {- version %d}}
4758if {[N c 4 x {}]} {emit {\b.%d}}
4759switch -- [Nv s 6] 0 {emit {\(Unknown\)}} 1 {emit {\(Ethernet\)}} 2 {emit {\(Token Ring\)}} 3 {emit {\(FDDI\)}} 4 {emit {\(ATM\)}}
4760}
4761if {[S 0 == GMBU]} {emit {NetMon capture file}
4762if {[N c 5 x {}]} {emit {- version %d}}
4763if {[N c 4 x {}]} {emit {\b.%d}}
4764switch -- [Nv s 6] 0 {emit {\(Unknown\)}} 1 {emit {\(Ethernet\)}} 2 {emit {\(Token Ring\)}} 3 {emit {\(FDDI\)}} 4 {emit {\(ATM\)}}
4765}
4766if {[S 0 == {TRSNIFF\ data\ \ \ \ \032}]} {emit {Sniffer capture file}
4767if {[N c 33 == 0x2]} {emit {\(compressed\)}}
4768if {[N s 23 x {}]} {emit {- version %d}}
4769if {[N s 25 x {}]} {emit {\b.%d}}
4770switch -- [Nv c 32] 0 {emit {\(Token Ring\)}} 1 {emit {\(Ethernet\)}} 2 {emit {\(ARCNET\)}} 3 {emit {\(StarLAN\)}} 4 {emit {\(PC Network broadband\)}} 5 {emit {\(LocalTalk\)}} 6 {emit {\(Znet\)}} 7 {emit {\(Internetwork Analyzer\)}} 9 {emit {\(FDDI\)}} 10 {emit {\(ATM\)}}
4771}
4772if {[S 0 == {XCP\0}]} {emit {NetXRay capture file}
4773if {[S 4 x {}]} {emit {- version %s}}
4774switch -- [Nv s 44] 0 {emit {\(Ethernet\)}} 1 {emit {\(Token Ring\)}} 2 {emit {\(FDDI\)}} 3 {emit {\(WAN\)}} 8 {emit {\(ATM\)}} 9 {emit {\(802.11\)}}
4775}
4776if {[S 0 == {iptrace\ 1.0}]} {emit {\"iptrace\" capture file}}
4777if {[S 0 == {iptrace\ 2.0}]} {emit {\"iptrace\" capture file}}
4778if {[S 0 == {\x54\x52\x00\x64\x00}]} {emit {\"nettl\" capture file}}
4779if {[S 0 == {\x42\xd2\x00\x34\x12\x66\x22\x88}]} {emit {RADCOM WAN/LAN Analyzer capture file}}
4780if {[S 0 == NetS]} {emit {NetStumbler log file}
4781if {[N i 8 x {}]} {emit {\b, %d stations found}}
4782}
4783if {[S 0 == {\177ver}]} {emit {EtherPeek/AiroPeek capture file}}
4784if {[S 0 == {\x05VNF}]} {emit {Visual Networks traffic capture file}}
4785if {[S 0 == ObserverPktBuffe]} {emit {Network Instruments Observer capture file}}
4786if {[S 0 == {\xaa\xaa\xaa\xaa}]} {emit {5View capture file}}
4787if {[S 0 == {<!SQ\ DTD>}]} {emit {Compiled SGML rules file}
4788if {[S 9 x {}]} {emit {Type %s}}
4789}
4790if {[S 0 == {<!SQ\ A/E>}]} {emit {A/E SGML Document binary}
4791if {[S 9 x {}]} {emit {Type %s}}
4792}
4793if {[S 0 == {<!SQ\ STS>}]} {emit {A/E SGML binary styles file}
4794if {[S 9 x {}]} {emit {Type %s}}
4795}
4796if {[S 0 == {SQ\ BITMAP1}]} {emit {SoftQuad Raster Format text}}
4797if {[S 0 == {X\ }]} {emit {SoftQuad troff Context intermediate}
4798if {[S 2 == 495]} {emit {for AT&T 495 laser printer}}
4799if {[S 2 == hp]} {emit {for Hewlett-Packard LaserJet}}
4800if {[S 2 == impr]} {emit {for IMAGEN imPRESS}}
4801if {[S 2 == ps]} {emit {for PostScript}}
4802}
4803if {[S 0 == spec]} {emit SPEC
4804if {[S 4 == .cpu]} {emit CPU
4805if {[S 8 < :]} {emit {\b%.4s}}
4806if {[S 12 == .]} {emit {raw result text}}
4807}
4808}
4809if {[S 17 == version=SPECjbb]} {emit SPECjbb
4810if {[S 32 < :]} {emit {\b%.4s}
4811if {[S 37 < :]} {emit {v%.4s raw result text}}
4812}
4813}
4814if {[S 0 == {BEGIN\040SPECWEB}]} {emit SPECweb
4815if {[S 13 < :]} {emit {\b%.2s}
4816if {[S 15 == _SSL]} {emit {\b_SSL}
4817if {[S 20 < :]} {emit {v%.4s raw result text}}
4818}
4819if {[S 16 < :]} {emit {v%.4s raw result text}}
4820}
4821}
4822if {[S 0 == {PLUS3DOS\032}]} {emit {Spectrum +3 data}
4823switch -- [Nv c 15] 0 {emit {- BASIC program}} 1 {emit {- number array}} 2 {emit {- character array}} 3 {emit {- memory block}
4824if {[N I 16 == 0x1b0040]} {emit {\(screen\)}}
4825} 4 {emit {- Tasword document}}
4826if {[S 15 == TAPEFILE]} {emit {- ZXT tapefile}}
4827}
4828if {[S 0 == {\023\000\000}]} {emit {Spectrum .TAP data}
4829if {[S 4 x {}]} {emit {\"%-10.10s\"}}
4830switch -- [Nv c 3] 0 {emit {- BASIC program}} 1 {emit {- number array}} 2 {emit {- character array}} 3 {emit {- memory block}
4831if {[N I 14 == 0x1b0040]} {emit {\(screen\)}}
4832}
4833}
4834if {[S 0 == {ZXTape!\x1a}]} {emit {Spectrum .TZX data}
4835if {[N c 8 x {}]} {emit {version %d}}
4836if {[N c 9 x {}]} {emit .%d}
4837}
4838if {[S 0 == RZX!]} {emit {Spectrum .RZX data}
4839if {[N c 4 x {}]} {emit {version %d}}
4840if {[N c 5 x {}]} {emit .%d}
4841}
4842if {[S 0 == {MV\ -\ CPCEMU\ Disk-Fil}]} {emit {Amstrad/Spectrum .DSK data}}
4843if {[S 0 == {MV\ -\ CPC\ format\ Dis}]} {emit {Amstrad/Spectrum DU54 .DSK data}}
4844if {[S 0 == {EXTENDED\ CPC\ DSK\ Fil}]} {emit {Amstrad/Spectrum Extended .DSK data}}
4845if {[S 0 == {\376bin}]} {emit {MySQL replication log}}
4846if {[S 0 == {\#SUNPC_CONFIG}]} {emit {SunPC 4.0 Properties Values}}
4847if {[S 0 == snoop]} {emit {Snoop capture file}
4848if {[N I 8 > 0x0]} {emit {- version %ld}}
4849switch -- [Nv I 12] 0 {emit {\(IEEE 802.3\)}} 1 {emit {\(IEEE 802.4\)}} 2 {emit {\(IEEE 802.5\)}} 3 {emit {\(IEEE 802.6\)}} 4 {emit {\(Ethernet\)}} 5 {emit {\(HDLC\)}} 6 {emit {\(Character synchronous\)}} 7 {emit {\(IBM channel-to-channel adapter\)}} 8 {emit {\(FDDI\)}} 9 {emit {\(Unknown\)}}
4850}
4851if {[S 36 == acspMSFT]} {emit {Microsoft ICM Color Profile}}
4852if {[S 36 == acsp]} {emit {Kodak Color Management System, ICC Profile}}
4853if {[S 0 == {Cobalt\ Networks\ Inc.\nFirmware\ v}]} {emit {Paged COBALT boot rom}
4854if {[S 38 x {}]} {emit V%.4s}
4855}
4856if {[S 0 == CRfs]} {emit {COBALT boot rom data \(Flat boot rom or file system\)}}
4857if {[S 0 == T707]} {emit {Roland TR-707 Data}}
4858if {[S 0 == {\#!teapot\012xdr}]} {emit {teapot work sheet \(XDR format\)}}
4859if {[S 0 == {\032\001}]} {emit {Compiled terminfo entry}}
4860if {[S 0 == {\367\002}]} {emit {TeX DVI file}
4861if {[S 16 x {}]} {emit {\(%s\)}}
4862}
4863if {[S 0 == {\367\203}]} {emit {TeX generic font data}}
4864if {[S 0 == {\367\131}]} {emit {TeX packed font data}
4865if {[S 3 x {}]} {emit {\(%s\)}}
4866}
4867if {[S 0 == {\367\312}]} {emit {TeX virtual font data}}
4868if {[S 0 == {This\ is\ TeX,}]} {emit {TeX transcript text}}
4869if {[S 0 == {This\ is\ METAFONT,}]} {emit {METAFONT transcript text}}
4870if {[S 2 == {\000\021}]} {emit {TeX font metric data}
4871if {[S 33 x {}]} {emit {\(%s\)}}
4872}
4873if {[S 2 == {\000\022}]} {emit {TeX font metric data}
4874if {[S 33 x {}]} {emit {\(%s\)}}
4875}
4876if {[S 0 == {\\input\ texinfo}]} {emit {Texinfo source text}}
4877if {[S 0 == {This\ is\ Info\ file}]} {emit {GNU Info text}}
4878if {[S 0 == {\\input}]} {emit {TeX document text}}
4879if {[S 0 == {\\section}]} {emit {LaTeX document text}}
4880if {[S 0 == {\\setlength}]} {emit {LaTeX document text}}
4881if {[S 0 == {\\documentstyle}]} {emit {LaTeX document text}}
4882if {[S 0 == {\\chapter}]} {emit {LaTeX document text}}
4883if {[S 0 == {\\documentclass}]} {emit {LaTeX 2e document text}}
4884if {[S 0 == {\\relax}]} {emit {LaTeX auxiliary file}}
4885if {[S 0 == {\\contentsline}]} {emit {LaTeX  table of contents}}
4886if {[S 0 == {%\ -*-latex-*-}]} {emit {LaTeX document text}}
4887if {[S 0 == {\\ifx}]} {emit {TeX document text}}
4888if {[S 0 == {\\indexentry}]} {emit {LaTeX raw index file}}
4889if {[S 0 == {\\begin\{theindex\}}]} {emit {LaTeX sorted index}}
4890if {[S 0 == {\\glossaryentry}]} {emit {LaTeX raw glossary}}
4891if {[S 0 == {\\begin\{theglossary\}}]} {emit {LaTeX sorted glossary}}
4892if {[S 0 == {This\ is\ makeindex}]} {emit {Makeindex log file}}
4893if {[S 0 == {@article\{} c]} {emit {BibTeX text file}}
4894if {[S 0 == {@book\{} c]} {emit {BibTeX text file}}
4895if {[S 0 == {@inbook\{} c]} {emit {BibTeX text file}}
4896if {[S 0 == {@incollection\{} c]} {emit {BibTeX text file}}
4897if {[S 0 == {@inproceedings\{} c]} {emit {BibTeX text file}}
4898if {[S 0 == {@manual\{} c]} {emit {BibTeX text file}}
4899if {[S 0 == {@misc\{} c]} {emit {BibTeX text file}}
4900if {[S 0 == {@preamble\{} c]} {emit {BibTeX text file}}
4901if {[S 0 == {@phdthesis\{} c]} {emit {BibTeX text file}}
4902if {[S 0 == {@techreport\{} c]} {emit {BibTeX text file}}
4903if {[S 0 == {@unpublished\{} c]} {emit {BibTeX text file}}
4904if {[S 73 == {%%%\ \ BibTeX-file\{}]} {emit {BibTex text file \(with full header\)}}
4905if {[S 73 == {%%%\ \ @BibTeX-style-file\{}]} {emit {BibTeX style text file \(with full header\)}}
4906if {[S 0 == {%\ BibTeX\ standard\ bibliography\ }]} {emit {BibTeX standard bibliography style text file}}
4907if {[S 0 == {%\ BibTeX\ `}]} {emit {BibTeX custom bibliography style text file}}
4908if {[S 0 == {@c\ @mapfile\{}]} {emit {TeX font aliases text file}}
4909if {[S 0 == {%TGIF\ 4}]} {emit {tgif version 4 object file}}
4910if {[S 0 == **TI80**]} {emit {TI-80 Graphing Calculator File.}}
4911if {[S 0 == **TI81**]} {emit {TI-81 Graphing Calculator File.}}
4912if {[S 0 == **TI73**]} {emit {TI-73 Graphing Calculator}
4913switch -- [Nv c 59] 0 {emit {\(real number\)}} 1 {emit {\(list\)}} 2 {emit {\(matrix\)}} 3 {emit {\(equation\)}} 4 {emit {\(string\)}} 5 {emit {\(program\)}} 6 {emit {\(assembly program\)}} 7 {emit {\(picture\)}} 8 {emit {\(gdb\)}} 12 {emit {\(complex number\)}} 15 {emit {\(window settings\)}} 16 {emit {\(zoom\)}} 17 {emit {\(table setup\)}} 19 {emit {\(backup\)}}
4914}
4915if {[S 0 == **TI82**]} {emit {TI-82 Graphing Calculator}
4916switch -- [Nv c 59] 0 {emit {\(real\)}} 1 {emit {\(list\)}} 2 {emit {\(matrix\)}} 3 {emit {\(Y-variable\)}} 5 {emit {\(program\)}} 6 {emit {\(protected prgm\)}} 7 {emit {\(picture\)}} 8 {emit {\(gdb\)}} 11 {emit {\(window settings\)}} 12 {emit {\(window settings\)}} 13 {emit {\(table setup\)}} 14 {emit {\(screenshot\)}} 15 {emit {\(backup\)}}
4917}
4918if {[S 0 == **TI83**]} {emit {TI-83 Graphing Calculator}
4919switch -- [Nv c 59] 0 {emit {\(real\)}} 1 {emit {\(list\)}} 2 {emit {\(matrix\)}} 3 {emit {\(Y-variable\)}} 4 {emit {\(string\)}} 5 {emit {\(program\)}} 6 {emit {\(protected prgm\)}} 7 {emit {\(picture\)}} 8 {emit {\(gdb\)}} 11 {emit {\(window settings\)}} 12 {emit {\(window settings\)}} 13 {emit {\(table setup\)}} 14 {emit {\(screenshot\)}} 19 {emit {\(backup\)}}
4920}
4921if {[S 0 == **TI83F*]} {emit {TI-83+ Graphing Calculator}
4922switch -- [Nv c 59] 0 {emit {\(real number\)}} 1 {emit {\(list\)}} 2 {emit {\(matrix\)}} 3 {emit {\(equation\)}} 4 {emit {\(string\)}} 5 {emit {\(program\)}} 6 {emit {\(assembly program\)}} 7 {emit {\(picture\)}} 8 {emit {\(gdb\)}} 12 {emit {\(complex number\)}} 15 {emit {\(window settings\)}} 16 {emit {\(zoom\)}} 17 {emit {\(table setup\)}} 19 {emit {\(backup\)}} 21 {emit {\(application variable\)}} 23 {emit {\(group of variable\)}}
4923}
4924if {[S 0 == **TI85**]} {emit {TI-85 Graphing Calculator}
4925switch -- [Nv c 59] 0 {emit {\(real number\)}} 1 {emit {\(complex number\)}} 2 {emit {\(real vector\)}} 3 {emit {\(complex vector\)}} 4 {emit {\(real list\)}} 5 {emit {\(complex list\)}} 6 {emit {\(real matrix\)}} 7 {emit {\(complex matrix\)}} 8 {emit {\(real constant\)}} 9 {emit {\(complex constant\)}} 10 {emit {\(equation\)}} 12 {emit {\(string\)}} 13 {emit {\(function GDB\)}} 14 {emit {\(polar GDB\)}} 15 {emit {\(parametric GDB\)}} 16 {emit {\(diffeq GDB\)}} 17 {emit {\(picture\)}} 18 {emit {\(program\)}} 19 {emit {\(range\)}} 23 {emit {\(window settings\)}} 24 {emit {\(window settings\)}} 25 {emit {\(window settings\)}} 26 {emit {\(window settings\)}} 27 {emit {\(zoom\)}} 29 {emit {\(backup\)}} 30 {emit {\(unknown\)}} 42 {emit {\(equation\)}}
4926if {[S 50 == ZS4]} {emit {- ZShell Version 4 File.}}
4927if {[S 50 == ZS3]} {emit {- ZShell Version 3 File.}}
4928}
4929if {[S 0 == **TI86**]} {emit {TI-86 Graphing Calculator}
4930switch -- [Nv c 59] 0 {emit {\(real number\)}} 1 {emit {\(complex number\)}} 2 {emit {\(real vector\)}} 3 {emit {\(complex vector\)}} 4 {emit {\(real list\)}} 5 {emit {\(complex list\)}} 6 {emit {\(real matrix\)}} 7 {emit {\(complex matrix\)}} 8 {emit {\(real constant\)}} 9 {emit {\(complex constant\)}} 10 {emit {\(equation\)}} 12 {emit {\(string\)}} 13 {emit {\(function GDB\)}} 14 {emit {\(polar GDB\)}} 15 {emit {\(parametric GDB\)}} 16 {emit {\(diffeq GDB\)}} 17 {emit {\(picture\)}} 18 {emit {\(program\)}} 19 {emit {\(range\)}} 23 {emit {\(window settings\)}} 24 {emit {\(window settings\)}} 25 {emit {\(window settings\)}} 26 {emit {\(window settings\)}} 27 {emit {\(zoom\)}} 29 {emit {\(backup\)}} 30 {emit {\(unknown\)}} 42 {emit {\(equation\)}}
4931}
4932if {[S 0 == **TI89**]} {emit {TI-89 Graphing Calculator}
4933switch -- [Nv c 72] 0 {emit {\(expression\)}} 4 {emit {\(list\)}} 6 {emit {\(matrix\)}} 10 {emit {\(data\)}} 11 {emit {\(text\)}} 12 {emit {\(string\)}} 13 {emit {\(graphic data base\)}} 14 {emit {\(figure\)}} 16 {emit {\(picture\)}} 18 {emit {\(program\)}} 19 {emit {\(function\)}} 20 {emit {\(macro\)}} 28 {emit {\(zipped\)}} 33 {emit {\(assembler\)}}
4934}
4935if {[S 0 == **TI92**]} {emit {TI-92 Graphing Calculator}
4936switch -- [Nv c 72] 0 {emit {\(expression\)}} 4 {emit {\(list\)}} 6 {emit {\(matrix\)}} 10 {emit {\(data\)}} 11 {emit {\(text\)}} 12 {emit {\(string\)}} 13 {emit {\(graphic data base\)}} 14 {emit {\(figure\)}} 16 {emit {\(picture\)}} 18 {emit {\(program\)}} 19 {emit {\(function\)}} 20 {emit {\(macro\)}} 29 {emit {\(backup\)}}
4937}
4938if {[S 0 == **TI92P*]} {emit {TI-92+/V200 Graphing Calculator}
4939switch -- [Nv c 72] 0 {emit {\(expression\)}} 4 {emit {\(list\)}} 6 {emit {\(matrix\)}} 10 {emit {\(data\)}} 11 {emit {\(text\)}} 12 {emit {\(string\)}} 13 {emit {\(graphic data base\)}} 14 {emit {\(figure\)}} 16 {emit {\(picture\)}} 18 {emit {\(program\)}} 19 {emit {\(function\)}} 20 {emit {\(macro\)}} 28 {emit {\(zipped\)}} 33 {emit {\(assembler\)}}
4940}
4941if {[S 22 == Advanced]} {emit {TI-XX Graphing Calculator \(FLASH\)}}
4942if {[S 0 == **TIFL**]} {emit {TI-XX Graphing Calculator \(FLASH\)}
4943if {[N c 8 > 0x0]} {emit {- Revision %d}
4944if {[N c 9 x {}]} {emit {\b.%d,}}
4945}
4946if {[N c 12 > 0x0]} {emit {Revision date %02x}
4947if {[N c 13 x {}]} {emit {\b/%02x}}
4948if {[N S 14 x {}]} {emit {\b/%04x,}}
4949}
4950if {[S 17 > /0]} {emit {name: '%s',}}
4951switch -- [Nv c 48] 116 {emit {device: TI-73,}} 115 {emit {device: TI-83+,}} -104 {emit {device: TI-89,}} -120 {emit {device: TI-92+,}}
4952switch -- [Nv c 49] 35 {emit {type: OS upgrade,}} 36 {emit {type: application,}} 37 {emit {type: certificate,}} 62 {emit {type: license,}}
4953if {[N i 74 > 0x0]} {emit {size: %ld bytes}}
4954}
4955if {[S 0 == VTI]} {emit {Virtual TI skin}
4956if {[S 3 == v]} {emit {- Version}
4957if {[N c 4 > 0x0]} {emit {\b %c}}
4958if {[N c 6 x {}]} {emit {\b.%c}}
4959}
4960}
4961if {[S 0 == TiEmu]} {emit {TiEmu skin}
4962if {[S 6 == v]} {emit {- Version}
4963if {[N c 7 > 0x0]} {emit {\b %c}}
4964if {[N c 9 x {}]} {emit {\b.%c}}
4965if {[N c 10 x {}]} {emit {\b%c}}
4966}
4967}
4968if {[S 0 == TZif]} {emit {timezone data}}
4969if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0}]} {emit {old timezone data}}
4970if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\2\0}]} {emit {old timezone data}}
4971if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\3\0}]} {emit {old timezone data}}
4972if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0}]} {emit {old timezone data}}
4973if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0}]} {emit {old timezone data}}
4974if {[S 0 == {\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\6\0}]} {emit {old timezone data}}
4975if {[S 0 == {.\\\"}]} {emit {troff or preprocessor input text}}
4976if {[S 0 == {'\\\"}]} {emit {troff or preprocessor input text}}
4977if {[S 0 == {'.\\\"}]} {emit {troff or preprocessor input text}}
4978if {[S 0 == {\\\"}]} {emit {troff or preprocessor input text}}
4979if {[S 0 == ''']} {emit {troff or preprocessor input text}}
4980if {[S 0 == {x\ T}]} {emit {ditroff output text}
4981if {[S 4 == cat]} {emit {for the C/A/T phototypesetter}}
4982if {[S 4 == ps]} {emit {for PostScript}}
4983if {[S 4 == dvi]} {emit {for DVI}}
4984if {[S 4 == ascii]} {emit {for ASCII}}
4985if {[S 4 == lj4]} {emit {for LaserJet 4}}
4986if {[S 4 == latin1]} {emit {for ISO 8859-1 \(Latin 1\)}}
4987if {[S 4 == X75]} {emit {for xditview at 75dpi}
4988if {[S 7 == -12]} {emit {\(12pt\)}}
4989}
4990if {[S 4 == X100]} {emit {for xditview at 100dpi}
4991if {[S 8 == -12]} {emit {\(12pt\)}}
4992}
4993}
4994if {[S 0 == {\100\357}]} {emit {very old \(C/A/T\) troff output data}}
4995if {[S 0 == {\0\0\1\236\0\0\0\0\0\0\0\0\0\0\0\0}]} {emit {BEA TUXEDO DES mask data}}
4996if {[S 0 == Interpress/Xerox]} {emit {Xerox InterPress data}
4997if {[S 16 == /]} {emit {\(version}
4998if {[S 17 x {}]} {emit {%s\)}}
4999}
5000}
5001if {[S 0 == {begin\040}]} {emit {uuencoded or xxencoded text}}
5002if {[S 0 == {xbtoa\ Begin}]} {emit {btoa'd text}}
5003if {[S 0 == {$\012ship}]} {emit {ship'd binary text}}
5004if {[S 0 == {Decode\ the\ following\ with\ bdeco}]} {emit {bencoded News text}}
5005if {[S 11 == {must\ be\ converted\ with\ BinHex}]} {emit {BinHex binary text}
5006if {[S 41 x {}]} {emit {\b, version %.3s}}
5007}
5008if {[N S 6 == 0x107]} {emit {unicos \(cray\) executable}}
5009if {[S 596 == {\130\337\377\377}]} {emit {Ultrix core file}
5010if {[S 600 x {}]} {emit {from '%s'}}
5011}
5012if {[S 0 == Joy!peffpwpc]} {emit {header for PowerPC PEF executable}}
5013if {[S 0 == avaobj]} {emit {AVR assembler object code}
5014if {[S 7 x {}]} {emit {version '%s'}}
5015}
5016if {[S 0 == gmon]} {emit {GNU prof performance data}
5017if {[N Q 4 x {}]} {emit {- version %ld}}
5018}
5019if {[S 0 == {\xc0HRB}]} {emit {Harbour HRB file}
5020if {[N Y 4 x {}]} {emit {version %d}}
5021}
5022if {[S 0 == {\#!\ /}]} {emit a
5023if {[S 3 x {}]} {emit {%s script text executable}}
5024}
5025if {[S 0 == {\#!\	/}]} {emit a
5026if {[S 3 x {}]} {emit {%s script text executable}}
5027}
5028if {[S 0 == {\#!/}]} {emit a
5029if {[S 2 x {}]} {emit {%s script text executable}}
5030}
5031if {[S 0 == {\#!\ }]} {emit {script text executable}
5032if {[S 3 x {}]} {emit {for %s}}
5033}
5034if {[S 0 == LBLSIZE=]} {emit {VICAR image data}
5035if {[S 32 == BYTE]} {emit {\b, 8 bits  = VAX byte}}
5036if {[S 32 == HALF]} {emit {\b, 16 bits = VAX word     = Fortran INTEGER*2}}
5037if {[S 32 == FULL]} {emit {\b, 32 bits = VAX longword = Fortran INTEGER*4}}
5038if {[S 32 == REAL]} {emit {\b, 32 bits = VAX longword = Fortran REAL*4}}
5039if {[S 32 == DOUB]} {emit {\b, 64 bits = VAX quadword = Fortran REAL*8}}
5040if {[S 32 == COMPLEX]} {emit {\b, 64 bits = VAX quadword = Fortran COMPLEX*8}}
5041}
5042if {[S 43 == SFDU_LABEL]} {emit {VICAR label file}}
5043if {[S 0 == {\211\277\036\203}]} {emit {Virtutech CRAFF}
5044if {[N I 4 x {}]} {emit v%d}
5045switch -- [Nv I 20] 0 {emit uncompressed} 1 {emit bzipp2ed} 2 {emit gzipped}
5046if {[N I 24 == 0x0]} {emit {not clean}}
5047}
5048if {[S 0 == {\xb0\0\x30\0}]} {emit {VMS VAX executable}
5049if {[S 44032 == {PK\003\004}]} {emit {\b, Info-ZIP SFX archive v5.12 w/decryption}}
5050}
5051if {[S 0 == OggS]} {emit {Ogg data}
5052if {[N c 4 != 0x0]} {emit {UNKNOWN REVISION %u}}
5053if {[N c 4 == 0x0]} {if {[S 28 == fLaC]} {emit {\b, FLAC audio}}
5054if {[S 28 == {\x80theora}]} {emit {\b, Theora video}}
5055if {[S 28 == {Speex\ \ \ }]} {emit {\b, Speex audio}}
5056if {[S 28 == {\x01video\0\0\0}]} {emit {\b, OGM video}
5057if {[S 37 == div3 c]} {emit {\(DivX 3\)}}
5058if {[S 37 == divx c]} {emit {\(DivX 4\)}}
5059if {[S 37 == dx50 c]} {emit {\(DivX 5\)}}
5060if {[S 37 == xvid c]} {emit {\(XviD\)}}
5061}
5062if {[S 28 == {\x01vorbis}]} {emit {\b, Vorbis audio,}
5063if {[N i 35 != 0x0]} {emit {UNKNOWN VERSION %lu,}}
5064if {[N i 35 == 0x0]} {switch -- [Nv c 39] 1 {emit mono,} 2 {emit stereo,}
5065if {[N c 39 > 0x2]} {emit {%u channels,}}
5066if {[N i 40 x {}]} {emit {%lu Hz}}
5067if {[S 48 < {\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff}]} {emit {\b,}
5068if {[N i 52 != 0xffffffff]} {if {[N i 52 != 0x0]} {if {[N i 52 != 0xfffffc18]} {if {[N i 52 x {}]} {emit <%lu}
5069}
5070}
5071}
5072if {[N i 48 != 0xffffffff]} {if {[N i 48 x {}]} {emit ~%lu}
5073}
5074if {[N i 44 != 0xffffffff]} {if {[N i 44 != 0xfffffc18]} {if {[N i 44 != 0x0]} {if {[N i 44 x {}]} {emit >%lu}
5075}
5076}
5077}
5078if {[S 48 < {\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff}]} {emit bps}
5079}
5080}
5081if {[S [I 84 c 85] == {\x03vorbis}]} {if {[S [I 84 c 96] == {Xiphophorus\ libVorbis\ I} c]} {emit {\b, created by: Xiphophorus libVorbis I}
5082if {[S [I 84 c 120] > 00000000]} {if {[S [I 84 c 120] < 20000508]} {emit {\(<beta1, prepublic\)}}
5083if {[S [I 84 c 120] == 20000508]} {emit {\(1.0 beta 1 or beta 2\)}}
5084if {[S [I 84 c 120] > 20000508]} {if {[S [I 84 c 120] < 20001031]} {emit {\(beta2-3\)}}
5085}
5086if {[S [I 84 c 120] == 20001031]} {emit {\(1.0 beta 3\)}}
5087if {[S [I 84 c 120] > 20001031]} {if {[S [I 84 c 120] < 20010225]} {emit {\(beta3-4\)}}
5088}
5089if {[S [I 84 c 120] == 20010225]} {emit {\(1.0 beta 4\)}}
5090if {[S [I 84 c 120] > 20010225]} {if {[S [I 84 c 120] < 20010615]} {emit {\(beta4-RC1\)}}
5091}
5092if {[S [I 84 c 120] == 20010615]} {emit {\(1.0 RC1\)}}
5093if {[S [I 84 c 120] == 20010813]} {emit {\(1.0 RC2\)}}
5094if {[S [I 84 c 120] == 20010816]} {emit {\(RC2 - Garf tuned v1\)}}
5095if {[S [I 84 c 120] == 20011014]} {emit {\(RC2 - Garf tuned v2\)}}
5096if {[S [I 84 c 120] == 20011217]} {emit {\(1.0 RC3\)}}
5097if {[S [I 84 c 120] == 20011231]} {emit {\(1.0 RC3\)}}
5098if {[S [I 84 c 120] > 20011231]} {emit {\(pre-1.0 CVS\)}}
5099}
5100}
5101if {[S [I 84 c 96] == {Xiph.Org\ libVorbis\ I} c]} {emit {\b, created by: Xiph.Org libVorbis I}
5102if {[S [I 84 c 117] > 00000000]} {if {[S [I 84 c 117] < 20020717]} {emit {\(pre-1.0 CVS\)}}
5103if {[S [I 84 c 117] == 20020717]} {emit {\(1.0\)}}
5104if {[S [I 84 c 117] == 20030909]} {emit {\(1.0.1\)}}
5105if {[S [I 84 c 117] == 20040629]} {emit {\(1.1.0 RC1\)}}
5106}
5107}
5108}
5109}
5110}
5111}
5112if {[N i 2 == 0x472b2c4e]} {emit {VXL data file,}
5113if {[N s 0 > 0x0]} {emit {schema version no %d}}
5114}
5115if {[S 2 == {\040\040\040\040\040\040\040\040\040\040\040ML4D\040\'92}]} {emit {Smith Corona PWP}
5116switch -- [Nv c 24] 2 {emit {\b, single spaced}} 3 {emit {\b, 1.5 spaced}} 4 {emit {\b, double spaced}}
5117switch -- [Nv c 25] 66 {emit {\b, letter}} 84 {emit {\b, legal}}
5118if {[N c 26 == 0x46]} {emit {\b, A4}}
5119}
5120if {[S 0 == {\377WPC\020\000\000\000\022\012\001\001\000\000\000\000}]} {emit {\(WP\) loadable text}
5121switch -- [Nv c 15] 0 {emit {Optimized for Intel}} 1 {emit {Optimized for Non-Intel}}
5122}
5123if {[S 1 == WPC]} {emit {\(Corel/WP\)}
5124switch -- [Nv Y 8] 257 {emit {WordPerfect macro}} 258 {emit {WordPerfect help file}} 259 {emit {WordPerfect keyboard file}} 266 {emit {WordPerfect document}} 267 {emit {WordPerfect dictionary}} 268 {emit {WordPerfect thesaurus}} 269 {emit {WordPerfect block}} 270 {emit {WordPerfect rectangular block}} 271 {emit {WordPerfect column block}} 272 {emit {WordPerfect printer data}} 275 {emit {WordPerfect printer data}} 276 {emit {WordPerfect driver resource data}} 279 {emit {WordPerfect hyphenation code}} 280 {emit {WordPerfect hyphenation data}} 281 {emit {WordPerfect macro resource data}} 283 {emit {WordPerfect hyphenation lex}} 285 {emit {WordPerfect wordlist}} 286 {emit {WordPerfect equation resource data}} 289 {emit {WordPerfect spell rules}} 290 {emit {WordPerfect dictionary rules}} 295 {emit {WordPerfect spell rules \(Microlytics\)}} 299 {emit {WordPerfect settings file}} 301 {emit {WordPerfect 4.2 document}} 325 {emit {WordPerfect dialog file}} 332 {emit {WordPerfect button bar}} 513 {emit {Shell macro}} 522 {emit {Shell definition}} 769 {emit {Notebook macro}} 770 {emit {Notebook help file}} 771 {emit {Notebook keyboard file}} 778 {emit {Notebook definition}} 1026 {emit {Calculator help file}} 1538 {emit {Calendar help file}} 1546 {emit {Calendar data file}} 1793 {emit {Editor macro}} 1794 {emit {Editor help file}} 1795 {emit {Editor keyboard file}} 1817 {emit {Editor macro resource file}} 2049 {emit {Macro editor macro}} 2050 {emit {Macro editor help file}} 2051 {emit {Macro editor keyboard file}} 2305 {emit {PlanPerfect macro}} 2306 {emit {PlanPerfect help file}} 2307 {emit {PlanPerfect keyboard file}} 2314 {emit {PlanPerfect worksheet}} 2319 {emit {PlanPerfect printer definition}} 2322 {emit {PlanPerfect graphic definition}} 2323 {emit {PlanPerfect data}} 2324 {emit {PlanPerfect temporary printer}} 2329 {emit {PlanPerfect macro resource data}} 2818 {emit {help file}} 2821 {emit {distribution list}} 2826 {emit {out box}} 2827 {emit {in box}} 2836 {emit {users archived mailbox}} 2837 {emit {archived message database}} 2838 {emit {archived attachments}} 3083 {emit {Printer temporary file}} 3330 {emit {Scheduler help file}} 3338 {emit {Scheduler in file}} 3339 {emit {Scheduler out file}} 3594 {emit {GroupWise settings file}} 3601 {emit {GroupWise directory services}} 3627 {emit {GroupWise settings file}} 4362 {emit {Terminal resource data}} 4363 {emit {Terminal resource data}} 4395 {emit {Terminal resource data}} 4619 {emit {GUI loadable text}} 4620 {emit {graphics resource data}} 4621 {emit {printer settings file}} 4622 {emit {port definition file}} 4623 {emit {print queue parameters}} 4624 {emit {compressed file}} 5130 {emit {Network service msg file}} 5131 {emit {Network service msg file}} 5132 {emit {Async gateway login msg}} 5134 {emit {GroupWise message file}} 7956 {emit {GroupWise admin domain database}} 7957 {emit {GroupWise admin host database}} 7959 {emit {GroupWise admin remote host database}} 7960 {emit {GroupWise admin ADS deferment data file}} 8458 {emit {IntelliTAG \(SGML\) compiled DTD}}
5125if {[N c 8 == 0xb]} {emit Mail}
5126switch -- [Nv Q 8] 18219264 {emit {WordPerfect graphic image \(1.0\)}} 18219520 {emit {WordPerfect graphic image \(2.0\)}}
5127}
5128if {[S 0 == {HWP\ Document\ File}]} {emit {Hangul \(Korean\) Word Processor File}}
5129if {[S 0 == CSBK]} {emit {Ted Neslson's CosmicBook hypertext file}}
5130if {[S 0 == %XDELTA%]} {emit {XDelta binary patch file 0.14}}
5131if {[S 0 == %XDZ000%]} {emit {XDelta binary patch file 0.18}}
5132if {[S 0 == %XDZ001%]} {emit {XDelta binary patch file 0.20}}
5133if {[S 0 == %XDZ002%]} {emit {XDelta binary patch file 1.0}}
5134if {[S 0 == %XDZ003%]} {emit {XDelta binary patch file 1.0.4}}
5135if {[S 0 == %XDZ004%]} {emit {XDelta binary patch file 1.1}}
5136if {[S 0 == core]} {emit {core file \(Xenix\)}}
5137if {[S 0 == {\x55\x7A\x6E\x61}]} {emit {xo65 object,}
5138if {[N s 4 x {}]} {emit {version %d,}}
5139switch -- [Nv s 6 &0x0001] 1 {emit {with debug info}} 0 {emit {no debug info}}
5140}
5141if {[S 0 == {\x6E\x61\x55\x7A}]} {emit {xo65 library,}
5142if {[N s 4 x {}]} {emit {version %d}}
5143}
5144if {[S 0 == {\x01\x00\x6F\x36\x35}]} {emit o65
5145switch -- [Nv s 6 &0x1000] 0 {emit executable,} 4096 {emit object,}
5146if {[N c 5 x {}]} {emit {version %d,}}
5147switch -- [Nv s 6 &0x8000] -32768 {emit 65816,} 0 {emit 6502,}
5148switch -- [Nv s 6 &0x2000] 8192 {emit {32 bit,}} 0 {emit {16 bit,}}
5149switch -- [Nv s 6 &0x4000] 16384 {emit {page reloc,}} 0 {emit {byte reloc,}}
5150switch -- [Nv s 6 &0x0003] 0 {emit {alignment 1}} 1 {emit {alignment 2}} 2 {emit {alignment 4}} 3 {emit {alignment 256}}
5151}
5152if {[S 1 == mkx]} {emit {Compiled XKB Keymap: lsb,}
5153if {[N c 0 > 0x0]} {emit {version %d}}
5154if {[N c 0 == 0x0]} {emit obsolete}
5155}
5156if {[S 0 == xkm]} {emit {Compiled XKB Keymap: msb,}
5157if {[N c 3 > 0x0]} {emit {version %d}}
5158if {[N c 0 == 0x0]} {emit obsolete}
5159}
5160if {[S 0 == xFSdump0]} {emit {xfsdump archive}
5161if {[N Q 8 x {}]} {emit {\(version %d\)}}
5162}
5163if {[S 0 == {ZyXEL\002}]} {emit {ZyXEL voice data}
5164if {[N c 10 == 0x0]} {emit {- CELP encoding}}
5165switch -- [Nv c 10 &0x0B] 1 {emit {- ADPCM2 encoding}} 2 {emit {- ADPCM3 encoding}} 3 {emit {- ADPCM4 encoding}} 8 {emit {- New ADPCM3 encoding}}
5166if {[N c 10 == 0x4 &0x04]} {emit {with resync}}
5167}
5168
5169result
5170
5171return {}
5172}
5173
5174## -- ** END GENERATED CODE ** --
5175## -- Do not edit before this line !
5176##
5177
5178# ### ### ### ######### ######### #########
5179## Ready for use.
5180# EOF
5181