hp 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  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. # HP-PA is big-endian, so it (and "800", which is *also* HP-PA-based; I
  9. # assume "HPPA-RISC1.1" really means "HP-PA Version 1.1", which first
  10. # showed up in the 700 series, although later 800 series machines are,
  11. # I think, based on the PA7100 which implements HP-PA 1.1) are flagged
  12. # as big-endian.
  13. #
  14. # I think the 500 series was the old stack-based machines, running a
  15. # UNIX environment atop the "SUN kernel"; dunno whether it was
  16. # big-endian or little-endian.
  17. #
  18. # Daniel Quinlan (quinlan@yggdrasil.com): hp200 machines are 68010 based;
  19. # hp300 are 68020+68881 based; hp400 are also 68k. The following basic
  20. # HP magic is useful for reference, but using "long" magic is a better
  21. # practice in order to avoid collisions.
  22. #
  23. # 0 beshort 200 hp200 (68010) BSD binary
  24. # 0 beshort 300 hp300 (68020+68881) BSD binary
  25. # 0 beshort 0x20c hp200/300 HP-UX binary
  26. # 0 beshort 0x20b hp800 HP-UX binary
  27. #
  28. # The "misc" stuff needs a byte order; the archives look suspiciously
  29. # like the old 177545 archives (0xff65 = 0177545).
  30. #
  31. #### Old Apollo stuff
  32. 0 beshort 0627 Apollo m68k COFF executable
  33. >18 beshort ^040000 not stripped
  34. >22 beshort >0 - version %ld
  35. 0 beshort 0624 apollo a88k COFF executable
  36. >18 beshort ^040000 not stripped
  37. >22 beshort >0 - version %ld
  38. 0 long 01203604016 TML 0123 byte-order format
  39. 0 long 01702407010 TML 1032 byte-order format
  40. 0 long 01003405017 TML 2301 byte-order format
  41. 0 long 01602007412 TML 3210 byte-order format
  42. #### HPPA
  43. 0 belong 0x02100106 HPPA-RISC1.1 relocatable object
  44. 0 belong 0x02100107 HPPA-RISC1.1 executable
  45. >(144) belong 0x054ef630 dynamically linked
  46. >96 belong >0 - not stripped
  47. 0 belong 0x02100108 HPPA-RISC1.1 shared executable
  48. >(144) belong 0x054ef630 dynamically linked
  49. >96 belong >0 - not stripped
  50. 0 belong 0x0210010b HPPA-RISC1.1 demand-load executable
  51. >(144) belong 0x054ef630 dynamically linked
  52. >96 belong >0 - not stripped
  53. 0 belong 0x0210010e HPPA-RISC1.1 shared library
  54. >96 belong >0 - not stripped
  55. 0 belong 0x0210010d HPPA-RISC1.1 dynamic load library
  56. >96 belong >0 - not stripped
  57. #### 800
  58. 0 belong 0x020b0106 HP s800 relocatable object
  59. 0 belong 0x020b0107 HP s800 executable
  60. >(144) belong 0x054ef630 dynamically linked
  61. >96 belong >0 - not stripped
  62. 0 belong 0x020b0108 HP s800 shared executable
  63. >(144) belong 0x054ef630 dynamically linked
  64. >96 belong >0 - not stripped
  65. 0 belong 0x020b010b HP s800 demand-load executable
  66. >(144) belong 0x054ef630 dynamically linked
  67. >96 belong >0 - not stripped
  68. 0 belong 0x020b010e HP s800 shared library
  69. >96 belong >0 - not stripped
  70. 0 belong 0x020b010d HP s800 dynamic load library
  71. >96 belong >0 - not stripped
  72. 0 belong 0x213c6172 archive file
  73. >68 belong 0x020b0619 - HP s800 relocatable library
  74. #### 500
  75. 0 long 0x02080106 HP s500 relocatable executable
  76. >16 long >0 - version %ld
  77. 0 long 0x02080107 HP s500 executable
  78. >16 long >0 - version %ld
  79. 0 long 0x02080108 HP s500 pure executable
  80. >16 long >0 - version %ld
  81. #### 200
  82. 0 belong 0x020c0108 HP s200 pure executable
  83. >4 beshort >0 - version %ld
  84. >8 belong &0x80000000 save fp regs
  85. >8 belong &0x40000000 dynamically linked
  86. >8 belong &0x20000000 debuggable
  87. >36 belong >0 not stripped
  88. 0 belong 0x020c0107 HP s200 executable
  89. >4 beshort >0 - version %ld
  90. >8 belong &0x80000000 save fp regs
  91. >8 belong &0x40000000 dynamically linked
  92. >8 belong &0x20000000 debuggable
  93. >36 belong >0 not stripped
  94. 0 belong 0x020c010b HP s200 demand-load executable
  95. >4 beshort >0 - version %ld
  96. >8 belong &0x80000000 save fp regs
  97. >8 belong &0x40000000 dynamically linked
  98. >8 belong &0x20000000 debuggable
  99. >36 belong >0 not stripped
  100. 0 belong 0x020c0106 HP s200 relocatable executable
  101. >4 beshort >0 - version %ld
  102. >6 beshort >0 - highwater %d
  103. >8 belong &0x80000000 save fp regs
  104. >8 belong &0x20000000 debuggable
  105. >8 belong &0x10000000 PIC
  106. 0 belong 0x020a0108 HP s200 (2.x release) pure executable
  107. >4 beshort >0 - version %ld
  108. >36 belong >0 not stripped
  109. 0 belong 0x020a0107 HP s200 (2.x release) executable
  110. >4 beshort >0 - version %ld
  111. >36 belong >0 not stripped
  112. 0 belong 0x020c010e HP s200 shared library
  113. >4 beshort >0 - version %ld
  114. >6 beshort >0 - highwater %d
  115. >36 belong >0 not stripped
  116. 0 belong 0x020c010d HP s200 dynamic load library
  117. >4 beshort >0 - version %ld
  118. >6 beshort >0 - highwater %d
  119. >36 belong >0 not stripped
  120. #### MISC
  121. 0 long 0x0000ff65 HP old archive
  122. 0 long 0x020aff65 HP s200 old archive
  123. 0 long 0x020cff65 HP s200 old archive
  124. 0 long 0x0208ff65 HP s500 old archive
  125. 0 long 0x015821a6 HP core file
  126. 0 long 0x4da7eee8 HP-WINDOWS font
  127. >8 byte >0 - version %ld
  128. 0 string Bitmapfile HP Bitmapfile
  129. 0 string IMGfile CIS compimg HP Bitmapfile
  130. # XXX - see "lif"
  131. 0 short 0x8000 lif file
  132. 0 long 0x020c010c compiled Lisp
  133. 0 string msgcat01 HP NLS message catalog,
  134. >8 long >0 %d messages
  135. # addendum to /etc/magic with HP-48sx file-types by phk@data.fls.dk 1jan92
  136. 0 string HPHP48- HP48 binary
  137. >7 byte >0 - Rev %c
  138. >8 short 0x1129 (ADR)
  139. >8 short 0x3329 (REAL)
  140. >8 short 0x5529 (LREAL)
  141. >8 short 0x7729 (COMPLX)
  142. >8 short 0x9d29 (LCOMPLX)
  143. >8 short 0xbf29 (CHAR)
  144. >8 short 0xe829 (ARRAY)
  145. >8 short 0x0a2a (LNKARRAY)
  146. >8 short 0x2c2a (STRING)
  147. >8 short 0x4e2a (HXS)
  148. >8 short 0x742a (LIST)
  149. >8 short 0x962a (DIR)
  150. >8 short 0xb82a (ALG)
  151. >8 short 0xda2a (UNIT)
  152. >8 short 0xfc2a (TAGGED)
  153. >8 short 0x1e2b (GROB)
  154. >8 short 0x402b (LIB)
  155. >8 short 0x622b (BACKUP)
  156. >8 short 0x882b (LIBDATA)
  157. >8 short 0x9d2d (PROG)
  158. >8 short 0xcc2d (CODE)
  159. >8 short 0x482e (GNAME)
  160. >8 short 0x6d2e (LNAME)
  161. >8 short 0x922e (XLIB)
  162. 0 string %%HP: HP48 text
  163. >6 string T(0) - T(0)
  164. >6 string T(1) - T(1)
  165. >6 string T(2) - T(2)
  166. >6 string T(3) - T(3)
  167. >10 string A(D) A(D)
  168. >10 string A(R) A(R)
  169. >10 string A(G) A(G)
  170. >14 string F(.) F(.);
  171. >14 string F(,) F(,);
  172. # hpBSD magic numbers
  173. 0 beshort 200 hp200 (68010) BSD
  174. >2 beshort 0407 impure binary
  175. >2 beshort 0410 read-only binary
  176. >2 beshort 0413 demand paged binary
  177. 0 beshort 300 hp300 (68020+68881) BSD
  178. >2 beshort 0407 impure binary
  179. >2 beshort 0410 read-only binary
  180. >2 beshort 0413 demand paged binary