2 #------------------------------------------------------------------------------
3 # hp: file(1) magic for Hewlett Packard machines (see also "printer")
5 # XXX - somebody should figure out whether any byte order needs to be
6 # applied to the "TML" stuff; I'm assuming the Apollo stuff is
7 # big-endian as it was mostly 68K-based.
9 # I think the 500 series was the old stack-based machines, running a
10 # UNIX environment atop the "SUN kernel"; dunno whether it was
11 # big-endian or little-endian.
13 # Daniel Quinlan (quinlan@yggdrasil.com): hp200 machines are 68010 based;
14 # hp300 are 68020+68881 based; hp400 are also 68k. The following basic
15 # HP magic is useful for reference, but using "long" magic is a better
16 # practice in order to avoid collisions.
18 # Guy Harris (guy@netapp.com): some additions to this list came from
19 # HP-UX 10.0's "/usr/include/sys/unistd.h" (68030, 68040, PA-RISC 1.1,
20 # 1.2, and 2.0). The 1.2 and 2.0 stuff isn't in the HP-UX 10.0
21 # "/etc/magic", though, except for the "archive file relocatable library"
22 # stuff, and the 68030 and 68040 stuff isn't there at all - are they not
23 # used in executables, or have they just not yet updated "/etc/magic"
26 # 0 beshort 200 hp200 (68010) BSD binary
27 # 0 beshort 300 hp300 (68020+68881) BSD binary
28 # 0 beshort 0x20c hp200/300 HP-UX binary
29 # 0 beshort 0x20d hp400 (68030) HP-UX binary
30 # 0 beshort 0x20e hp400 (68040?) HP-UX binary
31 # 0 beshort 0x20b PA-RISC1.0 HP-UX binary
32 # 0 beshort 0x210 PA-RISC1.1 HP-UX binary
33 # 0 beshort 0x211 PA-RISC1.2 HP-UX binary
34 # 0 beshort 0x214 PA-RISC2.0 HP-UX binary
37 # The "misc" stuff needs a byte order; the archives look suspiciously
38 # like the old 177545 archives (0xff65 = 0177545).
41 0 beshort 0627 Apollo m68k COFF executable
42 >18 beshort ^040000 not stripped
43 >22 beshort >0 - version %ld
44 0 beshort 0624 apollo a88k COFF executable
45 >18 beshort ^040000 not stripped
46 >22 beshort >0 - version %ld
47 0 long 01203604016 TML 0123 byte-order format
48 0 long 01702407010 TML 1032 byte-order format
49 0 long 01003405017 TML 2301 byte-order format
50 0 long 01602007412 TML 3210 byte-order format
52 0 belong 0x02100106 PA-RISC1.1 relocatable object
53 0 belong 0x02100107 PA-RISC1.1 executable
54 >168 belong &=0x00000004 dynamically linked
55 >(144) belong 0x054ef630 dynamically linked
56 >96 belong >0 - not stripped
58 0 belong 0x02100108 PA-RISC1.1 shared executable
59 >168 belong&0x4 0x4 dynamically linked
60 >(144) belong 0x054ef630 dynamically linked
61 >96 belong >0 - not stripped
63 0 belong 0x0210010b PA-RISC1.1 demand-load executable
64 >168 belong&0x4 0x4 dynamically linked
65 >(144) belong 0x054ef630 dynamically linked
66 >96 belong >0 - not stripped
68 0 belong 0x0210010e PA-RISC1.1 shared library
69 >96 belong >0 - not stripped
71 0 belong 0x0210010d PA-RISC1.1 dynamic load library
72 >96 belong >0 - not stripped
75 0 belong 0x020b0106 PA-RISC1.0 relocatable object
77 0 belong 0x020b0107 PA-RISC1.0 executable
78 >168 belong&0x4 0x4 dynamically linked
79 >(144) belong 0x054ef630 dynamically linked
80 >96 belong >0 - not stripped
82 0 belong 0x020b0108 PA-RISC1.0 shared executable
83 >168 belong&0x4 0x4 dynamically linked
84 >(144) belong 0x054ef630 dynamically linked
85 >96 belong >0 - not stripped
87 0 belong 0x020b010b PA-RISC1.0 demand-load executable
88 >168 belong&0x4 0x4 dynamically linked
89 >(144) belong 0x054ef630 dynamically linked
90 >96 belong >0 - not stripped
92 0 belong 0x020b010e PA-RISC1.0 shared library
93 >96 belong >0 - not stripped
95 0 belong 0x020b010d PA-RISC1.0 dynamic load library
96 >96 belong >0 - not stripped
98 0 belong 0x213c6172 archive file
99 >68 belong 0x020b0619 - PA-RISC1.0 relocatable library
100 >68 belong 0x02100619 - PA-RISC1.1 relocatable library
101 >68 belong 0x02110619 - PA-RISC1.2 relocatable library
102 >68 belong 0x02140619 - PA-RISC2.0 relocatable library
105 0 long 0x02080106 HP s500 relocatable executable
106 >16 long >0 - version %ld
108 0 long 0x02080107 HP s500 executable
109 >16 long >0 - version %ld
111 0 long 0x02080108 HP s500 pure executable
112 >16 long >0 - version %ld
115 0 belong 0x020c0108 HP s200 pure executable
116 >4 beshort >0 - version %ld
117 >8 belong &0x80000000 save fp regs
118 >8 belong &0x40000000 dynamically linked
119 >8 belong &0x20000000 debuggable
120 >36 belong >0 not stripped
122 0 belong 0x020c0107 HP s200 executable
123 >4 beshort >0 - version %ld
124 >8 belong &0x80000000 save fp regs
125 >8 belong &0x40000000 dynamically linked
126 >8 belong &0x20000000 debuggable
127 >36 belong >0 not stripped
129 0 belong 0x020c010b HP s200 demand-load executable
130 >4 beshort >0 - version %ld
131 >8 belong &0x80000000 save fp regs
132 >8 belong &0x40000000 dynamically linked
133 >8 belong &0x20000000 debuggable
134 >36 belong >0 not stripped
136 0 belong 0x020c0106 HP s200 relocatable executable
137 >4 beshort >0 - version %ld
138 >6 beshort >0 - highwater %d
139 >8 belong &0x80000000 save fp regs
140 >8 belong &0x20000000 debuggable
141 >8 belong &0x10000000 PIC
143 0 belong 0x020a0108 HP s200 (2.x release) pure executable
144 >4 beshort >0 - version %ld
145 >36 belong >0 not stripped
147 0 belong 0x020a0107 HP s200 (2.x release) executable
148 >4 beshort >0 - version %ld
149 >36 belong >0 not stripped
151 0 belong 0x020c010e HP s200 shared library
152 >4 beshort >0 - version %ld
153 >6 beshort >0 - highwater %d
154 >36 belong >0 not stripped
156 0 belong 0x020c010d HP s200 dynamic load library
157 >4 beshort >0 - version %ld
158 >6 beshort >0 - highwater %d
159 >36 belong >0 not stripped
162 0 long 0x0000ff65 HP old archive
163 0 long 0x020aff65 HP s200 old archive
164 0 long 0x020cff65 HP s200 old archive
165 0 long 0x0208ff65 HP s500 old archive
167 0 long 0x015821a6 HP core file
169 0 long 0x4da7eee8 HP-WINDOWS font
170 >8 byte >0 - version %ld
171 0 string Bitmapfile HP Bitmapfile
173 0 string IMGfile CIS compimg HP Bitmapfile
175 #0 short 0x8000 lif file
176 0 long 0x020c010c compiled Lisp
178 0 string msgcat01 HP NLS message catalog,
179 >8 long >0 %d messages
181 # addendum to /etc/magic with HP-48sx file-types by phk@data.fls.dk 1jan92
182 0 string HPHP48- HP48 binary
184 >8 short 0x1129 (ADR)
185 >8 short 0x3329 (REAL)
186 >8 short 0x5529 (LREAL)
187 >8 short 0x7729 (COMPLX)
188 >8 short 0x9d29 (LCOMPLX)
189 >8 short 0xbf29 (CHAR)
190 >8 short 0xe829 (ARRAY)
191 >8 short 0x0a2a (LNKARRAY)
192 >8 short 0x2c2a (STRING)
193 >8 short 0x4e2a (HXS)
194 >8 short 0x742a (LIST)
195 >8 short 0x962a (DIR)
196 >8 short 0xb82a (ALG)
197 >8 short 0xda2a (UNIT)
198 >8 short 0xfc2a (TAGGED)
199 >8 short 0x1e2b (GROB)
200 >8 short 0x402b (LIB)
201 >8 short 0x622b (BACKUP)
202 >8 short 0x882b (LIBDATA)
203 >8 short 0x9d2d (PROG)
204 >8 short 0xcc2d (CODE)
205 >8 short 0x482e (GNAME)
206 >8 short 0x6d2e (LNAME)
207 >8 short 0x922e (XLIB)
208 0 string %%HP: HP48 text
209 >6 string T(0) - T(0)
210 >6 string T(1) - T(1)
211 >6 string T(2) - T(2)
212 >6 string T(3) - T(3)
216 >14 string F(.) F(.);
217 >14 string F(,) F(,);
219 # hpBSD magic numbers
220 0 beshort 200 hp200 (68010) BSD
221 >2 beshort 0407 impure binary
222 >2 beshort 0410 read-only binary
223 >2 beshort 0413 demand paged binary
224 0 beshort 300 hp300 (68020+68881) BSD
225 >2 beshort 0407 impure binary
226 >2 beshort 0410 read-only binary
227 >2 beshort 0413 demand paged binary