hp revision 1.1
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