xref: /dragonfly/contrib/file/magic/Magdir/hp (revision 9ddb8543)
1#------------------------------------------------------------------------------
2# hp:  file(1) magic for Hewlett Packard machines (see also "printer")
3#
4# XXX - somebody should figure out whether any byte order needs to be
5# applied to the "TML" stuff; I'm assuming the Apollo stuff is
6# big-endian as it was mostly 68K-based.
7#
8# I think the 500 series was the old stack-based machines, running a
9# UNIX environment atop the "SUN kernel"; dunno whether it was
10# big-endian or little-endian.
11#
12# Daniel Quinlan (quinlan@yggdrasil.com): hp200 machines are 68010 based;
13# hp300 are 68020+68881 based; hp400 are also 68k.  The following basic
14# HP magic is useful for reference, but using "long" magic is a better
15# practice in order to avoid collisions.
16#
17# Guy Harris (guy@netapp.com): some additions to this list came from
18# HP-UX 10.0's "/usr/include/sys/unistd.h" (68030, 68040, PA-RISC 1.1,
19# 1.2, and 2.0).  The 1.2 and 2.0 stuff isn't in the HP-UX 10.0
20# "/etc/magic", though, except for the "archive file relocatable library"
21# stuff, and the 68030 and 68040 stuff isn't there at all - are they not
22# used in executables, or have they just not yet updated "/etc/magic"
23# completely?
24#
25# 0	beshort		200		hp200 (68010) BSD binary
26# 0	beshort		300		hp300 (68020+68881) BSD binary
27# 0	beshort		0x20c		hp200/300 HP-UX binary
28# 0	beshort		0x20d		hp400 (68030) HP-UX binary
29# 0	beshort		0x20e		hp400 (68040?) HP-UX binary
30# 0	beshort		0x20b		PA-RISC1.0 HP-UX binary
31# 0	beshort		0x210		PA-RISC1.1 HP-UX binary
32# 0	beshort		0x211		PA-RISC1.2 HP-UX binary
33# 0	beshort		0x214		PA-RISC2.0 HP-UX binary
34
35#
36# The "misc" stuff needs a byte order; the archives look suspiciously
37# like the old 177545 archives (0xff65 = 0177545).
38#
39#### Old Apollo stuff
400	beshort		0627		Apollo m68k COFF executable
41>18	beshort		^040000		not stripped
42>22	beshort		>0		- version %ld
430	beshort		0624		apollo a88k COFF executable
44>18	beshort		^040000		not stripped
45>22	beshort		>0		- version %ld
460       long            01203604016     TML 0123 byte-order format
470       long            01702407010     TML 1032 byte-order format
480       long            01003405017     TML 2301 byte-order format
490       long            01602007412     TML 3210 byte-order format
50#### PA-RISC 1.1
510	belong 		0x02100106	PA-RISC1.1 relocatable object
520	belong 		0x02100107	PA-RISC1.1 executable
53>168	belong		&0x00000004	dynamically linked
54>(144)	belong		0x054ef630	dynamically linked
55>96	belong		>0		- not stripped
56
570	belong 		0x02100108	PA-RISC1.1 shared executable
58>168	belong&0x4	0x4		dynamically linked
59>(144)	belong		0x054ef630	dynamically linked
60>96	belong		>0		- not stripped
61
620	belong 		0x0210010b	PA-RISC1.1 demand-load executable
63>168	belong&0x4	0x4		dynamically linked
64>(144)	belong		0x054ef630	dynamically linked
65>96	belong		>0		- not stripped
66
670	belong 		0x0210010e	PA-RISC1.1 shared library
68>96	belong		>0		- not stripped
69
700	belong 		0x0210010d	PA-RISC1.1 dynamic load library
71>96	belong		>0		- not stripped
72
73#### PA-RISC 2.0
740	belong		0x02140106	PA-RISC2.0 relocatable object
75
760       belong		0x02140107	PA-RISC2.0 executable
77>168	belong		&0x00000004	dynamically linked
78>(144)	belong		0x054ef630	dynamically linked
79>96	belong		>0		- not stripped
80
810       belong		0x02140108	PA-RISC2.0 shared executable
82>168	belong		&0x00000004	dynamically linked
83>(144)	belong		0x054ef630	dynamically linked
84>96	belong		>0		- not stripped
85
860       belong		0x0214010b	PA-RISC2.0 demand-load executable
87>168	belong		&0x00000004	dynamically linked
88>(144)	belong		0x054ef630	dynamically linked
89>96	belong		>0		- not stripped
90
910       belong		0x0214010e	PA-RISC2.0 shared library
92>96	belong		>0		- not stripped
93
940       belong		0x0214010d	PA-RISC2.0 dynamic load library
95>96	belong		>0		- not stripped
96
97#### 800
980	belong 		0x020b0106	PA-RISC1.0 relocatable object
99
1000	belong 		0x020b0107	PA-RISC1.0 executable
101>168	belong&0x4	0x4		dynamically linked
102>(144)	belong		0x054ef630	dynamically linked
103>96	belong		>0		- not stripped
104
1050	belong 		0x020b0108	PA-RISC1.0 shared executable
106>168	belong&0x4	0x4		dynamically linked
107>(144)	belong		0x054ef630	dynamically linked
108>96	belong		>0		- not stripped
109
1100	belong 		0x020b010b	PA-RISC1.0 demand-load executable
111>168	belong&0x4	0x4		dynamically linked
112>(144)	belong		0x054ef630	dynamically linked
113>96	belong		>0		- not stripped
114
1150	belong 		0x020b010e	PA-RISC1.0 shared library
116>96	belong		>0		- not stripped
117
1180	belong 		0x020b010d	PA-RISC1.0 dynamic load library
119>96	belong		>0		- not stripped
120
1210	belong		0x213c6172	archive file
122>68	belong 		0x020b0619	- PA-RISC1.0 relocatable library
123>68	belong	 	0x02100619	- PA-RISC1.1 relocatable library
124>68	belong 		0x02110619	- PA-RISC1.2 relocatable library
125>68	belong 		0x02140619	- PA-RISC2.0 relocatable library
126
127#### 500
1280	long		0x02080106	HP s500 relocatable executable
129>16	long		>0		- version %ld
130
1310	long		0x02080107	HP s500 executable
132>16	long		>0		- version %ld
133
1340	long		0x02080108	HP s500 pure executable
135>16	long		>0		- version %ld
136
137#### 200
1380	belong 		0x020c0108	HP s200 pure executable
139>4	beshort		>0		- version %ld
140>8	belong		&0x80000000	save fp regs
141>8	belong		&0x40000000	dynamically linked
142>8	belong		&0x20000000	debuggable
143>36	belong		>0		not stripped
144
1450	belong		0x020c0107	HP s200 executable
146>4	beshort		>0		- version %ld
147>8	belong		&0x80000000	save fp regs
148>8	belong		&0x40000000	dynamically linked
149>8	belong		&0x20000000	debuggable
150>36	belong		>0		not stripped
151
1520	belong		0x020c010b	HP s200 demand-load executable
153>4	beshort		>0		- version %ld
154>8	belong		&0x80000000	save fp regs
155>8	belong		&0x40000000	dynamically linked
156>8	belong		&0x20000000	debuggable
157>36	belong		>0		not stripped
158
1590	belong		0x020c0106	HP s200 relocatable executable
160>4	beshort		>0		- version %ld
161>6	beshort		>0		- highwater %d
162>8	belong		&0x80000000	save fp regs
163>8	belong		&0x20000000	debuggable
164>8	belong		&0x10000000	PIC
165
1660	belong 		0x020a0108	HP s200 (2.x release) pure executable
167>4	beshort		>0		- version %ld
168>36	belong		>0		not stripped
169
1700	belong		0x020a0107	HP s200 (2.x release) executable
171>4	beshort		>0		- version %ld
172>36	belong		>0		not stripped
173
1740	belong		0x020c010e	HP s200 shared library
175>4	beshort		>0		- version %ld
176>6	beshort		>0		- highwater %d
177>36	belong		>0		not stripped
178
1790	belong		0x020c010d	HP s200 dynamic load library
180>4	beshort		>0		- version %ld
181>6	beshort		>0		- highwater %d
182>36	belong		>0		not stripped
183
184#### MISC
1850	long		0x0000ff65	HP old archive
1860	long		0x020aff65	HP s200 old archive
1870	long		0x020cff65	HP s200 old archive
1880	long		0x0208ff65	HP s500 old archive
189
1900	long		0x015821a6	HP core file
191
1920	long		0x4da7eee8	HP-WINDOWS font
193>8	byte		>0		- version %ld
1940	string		Bitmapfile	HP Bitmapfile
195
1960	string		IMGfile	CIS 	compimg HP Bitmapfile
197# XXX - see "lif"
198#0	short		0x8000		lif file
1990	long		0x020c010c	compiled Lisp
200
2010	string		msgcat01	HP NLS message catalog,
202>8	long		>0		%d messages
203
204# Summary: HP-48/49 calculator
205# Created by: phk@data.fls.dk
206# Modified by (1): AMAKAWA Shuhei <sa264@cam.ac.uk>
207# Modified by (2): Samuel Thibault <samuel.thibault@ens-lyon.org> (HP49 support)
2080	string		HPHP		HP
209>4	string		48		48 binary
210>4	string		49		49 binary
211>7	byte		>64		- Rev %c
212>8	leshort		0x2911		(ADR)
213>8	leshort		0x2933		(REAL)
214>8	leshort		0x2955		(LREAL)
215>8	leshort		0x2977		(COMPLX)
216>8	leshort		0x299d		(LCOMPLX)
217>8	leshort		0x29bf		(CHAR)
218>8	leshort		0x29e8		(ARRAY)
219>8	leshort		0x2a0a		(LNKARRAY)
220>8	leshort		0x2a2c		(STRING)
221>8	leshort		0x2a4e		(HXS)
222>8	leshort		0x2a74		(LIST)
223>8	leshort		0x2a96		(DIR)
224>8	leshort		0x2ab8		(ALG)
225>8	leshort		0x2ada		(UNIT)
226>8	leshort		0x2afc		(TAGGED)
227>8	leshort		0x2b1e		(GROB)
228>8	leshort		0x2b40		(LIB)
229>8	leshort		0x2b62		(BACKUP)
230>8	leshort		0x2b88		(LIBDATA)
231>8	leshort		0x2d9d		(PROG)
232>8	leshort		0x2dcc		(CODE)
233>8	leshort		0x2e48		(GNAME)
234>8	leshort		0x2e6d		(LNAME)
235>8	leshort		0x2e92		(XLIB)
236
2370	string		%%HP:		HP text
238>6	string		T(0)		- T(0)
239>6	string		T(1)		- T(1)
240>6	string		T(2)		- T(2)
241>6	string		T(3)		- T(3)
242>10	string		A(D)		A(D)
243>10	string		A(R)		A(R)
244>10	string		A(G)		A(G)
245>14	string		F(.)		F(.);
246>14	string		F(,)		F(,);
247
248
249# Summary: HP-38/39 calculator
250# Created by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2510	string		HP3
252>3	string		8		HP 38
253>3	string		9		HP 39
254>4	string		Bin		binary
255>4	string		Asc		ASCII
256>7	string		A		(Directory List)
257>7	string		B		(Zaplet)
258>7	string		C		(Note)
259>7	string		D		(Program)
260>7	string		E		(Variable)
261>7	string		F		(List)
262>7	string		G		(Matrix)
263>7	string		H		(Library)
264>7	string		I		(Target List)
265>7	string		J		(ASCII Vector specification)
266>7	string		K		(wildcard)
267
268# Summary: HP-38/39 calculator
269# Created by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2700	string		HP3
271>3	string		8		HP 38
272>3	string		9		HP 39
273>4	string		Bin		binary
274>4	string		Asc		ASCII
275>7	string		A		(Directory List)
276>7	string		B		(Zaplet)
277>7	string		C		(Note)
278>7	string		D		(Program)
279>7	string		E		(Variable)
280>7	string		F		(List)
281>7	string		G		(Matrix)
282>7	string		H		(Library)
283>7	string		I		(Target List)
284>7	string		J		(ASCII Vector specification)
285>7	string		K		(wildcard)
286
287# hpBSD magic numbers
2880	beshort		200		hp200 (68010) BSD
289>2	beshort		0407		impure binary
290>2	beshort		0410		read-only binary
291>2	beshort		0413		demand paged binary
2920	beshort		300		hp300 (68020+68881) BSD
293>2	beshort		0407		impure binary
294>2	beshort		0410		read-only binary
295>2	beshort		0413		demand paged binary
296#
297# From David Gero <dgero@nortelnetworks.com>
298# HP-UX 10.20 core file format from /usr/include/sys/core.h
299# Unfortunately, HP-UX uses corehead blocks without specifying the order
300# There are four we care about:
301#     CORE_KERNEL, which starts with the string "HP-UX"
302#     CORE_EXEC, which contains the name of the command
303#     CORE_PROC, which contains the signal number that caused the core dump
304#     CORE_FORMAT, which contains the version of the core file format (== 1)
305# The only observed order in real core files is KERNEL, EXEC, FORMAT, PROC
306# but we include all 6 variations of the order of the first 3, and
307# assume that PROC will always be last
308# Order 1: KERNEL, EXEC, FORMAT, PROC
3090x10		string	HP-UX
310>0		belong	2
311>>0xC		belong	0x3C
312>>>0x4C		belong	0x100
313>>>>0x58	belong	0x44
314>>>>>0xA0	belong	1
315>>>>>>0xAC	belong	4
316>>>>>>>0xB0	belong	1
317>>>>>>>>0xB4	belong	4		core file
318>>>>>>>>>0x90	string	>\0		from '%s'
319>>>>>>>>>0xC4	belong	3		- received SIGQUIT
320>>>>>>>>>0xC4	belong	4		- received SIGILL
321>>>>>>>>>0xC4	belong	5		- received SIGTRAP
322>>>>>>>>>0xC4	belong	6		- received SIGABRT
323>>>>>>>>>0xC4	belong	7		- received SIGEMT
324>>>>>>>>>0xC4	belong	8		- received SIGFPE
325>>>>>>>>>0xC4	belong	10		- received SIGBUS
326>>>>>>>>>0xC4	belong	11		- received SIGSEGV
327>>>>>>>>>0xC4	belong	12		- received SIGSYS
328>>>>>>>>>0xC4	belong	33		- received SIGXCPU
329>>>>>>>>>0xC4	belong	34		- received SIGXFSZ
330# Order 2: KERNEL, FORMAT, EXEC, PROC
331>>>0x4C		belong	1
332>>>>0x58	belong	4
333>>>>>0x5C	belong	1
334>>>>>>0x60	belong	0x100
335>>>>>>>0x6C	belong	0x44
336>>>>>>>>0xB4	belong	4		core file
337>>>>>>>>>0xA4	string	>\0		from '%s'
338>>>>>>>>>0xC4	belong	3		- received SIGQUIT
339>>>>>>>>>0xC4	belong	4		- received SIGILL
340>>>>>>>>>0xC4	belong	5		- received SIGTRAP
341>>>>>>>>>0xC4	belong	6		- received SIGABRT
342>>>>>>>>>0xC4	belong	7		- received SIGEMT
343>>>>>>>>>0xC4	belong	8		- received SIGFPE
344>>>>>>>>>0xC4	belong	10		- received SIGBUS
345>>>>>>>>>0xC4	belong	11		- received SIGSEGV
346>>>>>>>>>0xC4	belong	12		- received SIGSYS
347>>>>>>>>>0xC4	belong	33		- received SIGXCPU
348>>>>>>>>>0xC4	belong	34		- received SIGXFSZ
349# Order 3: FORMAT, KERNEL, EXEC, PROC
3500x24		string	HP-UX
351>0		belong	1
352>>0xC		belong	4
353>>>0x10		belong	1
354>>>>0x14	belong	2
355>>>>>0x20	belong	0x3C
356>>>>>>0x60	belong	0x100
357>>>>>>>0x6C	belong	0x44
358>>>>>>>>0xB4	belong	4		core file
359>>>>>>>>>0xA4	string	>\0		from '%s'
360>>>>>>>>>0xC4	belong	3		- received SIGQUIT
361>>>>>>>>>0xC4	belong	4		- received SIGILL
362>>>>>>>>>0xC4	belong	5		- received SIGTRAP
363>>>>>>>>>0xC4	belong	6		- received SIGABRT
364>>>>>>>>>0xC4	belong	7		- received SIGEMT
365>>>>>>>>>0xC4	belong	8		- received SIGFPE
366>>>>>>>>>0xC4	belong	10		- received SIGBUS
367>>>>>>>>>0xC4	belong	11		- received SIGSEGV
368>>>>>>>>>0xC4	belong	12		- received SIGSYS
369>>>>>>>>>0xC4	belong	33		- received SIGXCPU
370>>>>>>>>>0xC4	belong	34		- received SIGXFSZ
371# Order 4: EXEC, KERNEL, FORMAT, PROC
3720x64		string	HP-UX
373>0		belong	0x100
374>>0xC		belong	0x44
375>>>0x54		belong	2
376>>>>0x60	belong	0x3C
377>>>>>0xA0	belong	1
378>>>>>>0xAC	belong	4
379>>>>>>>0xB0	belong	1
380>>>>>>>>0xB4	belong	4		core file
381>>>>>>>>>0x44	string	>\0		from '%s'
382>>>>>>>>>0xC4	belong	3		- received SIGQUIT
383>>>>>>>>>0xC4	belong	4		- received SIGILL
384>>>>>>>>>0xC4	belong	5		- received SIGTRAP
385>>>>>>>>>0xC4	belong	6		- received SIGABRT
386>>>>>>>>>0xC4	belong	7		- received SIGEMT
387>>>>>>>>>0xC4	belong	8		- received SIGFPE
388>>>>>>>>>0xC4	belong	10		- received SIGBUS
389>>>>>>>>>0xC4	belong	11		- received SIGSEGV
390>>>>>>>>>0xC4	belong	12		- received SIGSYS
391>>>>>>>>>0xC4	belong	33		- received SIGXCPU
392>>>>>>>>>0xC4	belong	34		- received SIGXFSZ
393# Order 5: FORMAT, EXEC, KERNEL, PROC
3940x78		string	HP-UX
395>0		belong	1
396>>0xC		belong	4
397>>>0x10		belong	1
398>>>>0x14	belong	0x100
399>>>>>0x20	belong	0x44
400>>>>>>0x68	belong	2
401>>>>>>>0x74	belong	0x3C
402>>>>>>>>0xB4	belong	4		core file
403>>>>>>>>>0x58	string	>\0		from '%s'
404>>>>>>>>>0xC4	belong	3		- received SIGQUIT
405>>>>>>>>>0xC4	belong	4		- received SIGILL
406>>>>>>>>>0xC4	belong	5		- received SIGTRAP
407>>>>>>>>>0xC4	belong	6		- received SIGABRT
408>>>>>>>>>0xC4	belong	7		- received SIGEMT
409>>>>>>>>>0xC4	belong	8		- received SIGFPE
410>>>>>>>>>0xC4	belong	10		- received SIGBUS
411>>>>>>>>>0xC4	belong	11		- received SIGSEGV
412>>>>>>>>>0xC4	belong	12		- received SIGSYS
413>>>>>>>>>0xC4	belong	33		- received SIGXCPU
414>>>>>>>>>0xC4	belong	34		- received SIGXFSZ
415# Order 6: EXEC, FORMAT, KERNEL, PROC
416>0		belong	0x100
417>>0xC		belong	0x44
418>>>0x54		belong	1
419>>>>0x60	belong	4
420>>>>>0x64	belong	1
421>>>>>>0x68	belong	2
422>>>>>>>0x74	belong	0x2C
423>>>>>>>>0xB4	belong	4		core file
424>>>>>>>>>0x44	string	>\0		from '%s'
425>>>>>>>>>0xC4	belong	3		- received SIGQUIT
426>>>>>>>>>0xC4	belong	4		- received SIGILL
427>>>>>>>>>0xC4	belong	5		- received SIGTRAP
428>>>>>>>>>0xC4	belong	6		- received SIGABRT
429>>>>>>>>>0xC4	belong	7		- received SIGEMT
430>>>>>>>>>0xC4	belong	8		- received SIGFPE
431>>>>>>>>>0xC4	belong	10		- received SIGBUS
432>>>>>>>>>0xC4	belong	11		- received SIGSEGV
433>>>>>>>>>0xC4	belong	12		- received SIGSYS
434>>>>>>>>>0xC4	belong	33		- received SIGXCPU
435>>>>>>>>>0xC4	belong	34		- received SIGXFSZ
436
437
438