summaryrefslogtreecommitdiff
path: root/magic/Magdir/mach
diff options
context:
space:
mode:
Diffstat (limited to 'magic/Magdir/mach')
-rw-r--r--magic/Magdir/mach208
1 files changed, 208 insertions, 0 deletions
diff --git a/magic/Magdir/mach b/magic/Magdir/mach
new file mode 100644
index 0000000..a9128a1
--- /dev/null
+++ b/magic/Magdir/mach
@@ -0,0 +1,208 @@
+
+#------------------------------------------------------------
+# $File: mach,v 1.14 2013/01/04 23:35:53 christos Exp $
+# Mach has two magic numbers, 0xcafebabe and 0xfeedface.
+# Unfortunately the first, cafebabe, is shared with
+# Java ByteCode, so they are both handled in the file "cafebabe".
+# The "feedface" ones are handled herein.
+#------------------------------------------------------------
+
+0 name mach-o-be
+>0 byte 0xcf 64-bit
+# if set, it's for the 64-bit version of the architecture
+# yes, this is separate from the low-order magic number bit
+# it's also separate from the "64-bit libraries" bit in the
+# upper 8 bits of the CPU subtype
+>4 belong&0x01000000 0
+#
+# 32-bit ABIs.
+#
+# 1 vax
+>>4 belong&0x00ffffff 1
+>>>8 belong&0x00ffffff 0 vax
+>>>8 belong&0x00ffffff 1 vax11/780
+>>>8 belong&0x00ffffff 2 vax11/785
+>>>8 belong&0x00ffffff 3 vax11/750
+>>>8 belong&0x00ffffff 4 vax11/730
+>>>8 belong&0x00ffffff 5 uvaxI
+>>>8 belong&0x00ffffff 6 uvaxII
+>>>8 belong&0x00ffffff 7 vax8200
+>>>8 belong&0x00ffffff 8 vax8500
+>>>8 belong&0x00ffffff 9 vax8600
+>>>8 belong&0x00ffffff 10 vax8650
+>>>8 belong&0x00ffffff 11 vax8800
+>>>8 belong&0x00ffffff 12 uvaxIII
+>>>8 belong&0x00ffffff >12 vax subarchitecture=%ld
+>>4 belong&0x00ffffff 2 romp
+>>4 belong&0x00ffffff 3 architecture=3
+>>4 belong&0x00ffffff 4 ns32032
+>>4 belong&0x00ffffff 5 ns32332
+>>4 belong&0x00ffffff 6 m68k
+# 7 x86
+>>4 belong&0x00ffffff 7
+>>>8 belong&0x0000000f 3 i386
+>>>8 belong&0x0000000f 4 i486
+>>>>8 belong&0x00fffff0 0
+>>>>8 belong&0x00fffff0 0x80 \bsx
+>>>8 belong&0x0000000f 5 i586
+>>>8 belong&0x0000000f 6
+>>>>8 belong&0x00fffff0 0 p6
+>>>>8 belong&0x00fffff0 0x10 pentium_pro
+>>>>8 belong&0x00fffff0 0x20 pentium_2_m0x20
+>>>>8 belong&0x00fffff0 0x30 pentium_2_m3
+>>>>8 belong&0x00fffff0 0x40 pentium_2_m0x40
+>>>>8 belong&0x00fffff0 0x50 pentium_2_m5
+>>>>8 belong&0x00fffff0 >0x50 pentium_2_m0x%lx
+>>>8 belong&0x0000000f 7 celeron
+>>>>8 belong&0x00fffff0 0x00 \b_m0x%lx
+>>>>8 belong&0x00fffff0 0x10 \b_m0x%lx
+>>>>8 belong&0x00fffff0 0x20 \b_m0x%lx
+>>>>8 belong&0x00fffff0 0x30 \b_m0x%lx
+>>>>8 belong&0x00fffff0 0x40 \b_m0x%lx
+>>>>8 belong&0x00fffff0 0x50 \b_m0x%lx
+>>>>8 belong&0x00fffff0 0x60
+>>>>8 belong&0x00fffff0 0x70 \b_mobile
+>>>>8 belong&0x00fffff0 >0x70 \b_m0x%lx
+>>>8 belong&0x0000000f 8 pentium_3
+>>>>8 belong&0x00fffff0 0x00
+>>>>8 belong&0x00fffff0 0x10 \b_m
+>>>>8 belong&0x00fffff0 0x20 \b_xeon
+>>>>8 belong&0x00fffff0 >0x20 \b_m0x%lx
+>>>8 belong&0x0000000f 9 pentiumM
+>>>>8 belong&0x00fffff0 0x00
+>>>>8 belong&0x00fffff0 >0x00 \b_m0x%lx
+>>>8 belong&0x0000000f 10 pentium_4
+>>>>8 belong&0x00fffff0 0x00
+>>>>8 belong&0x00fffff0 0x10 \b_m
+>>>>8 belong&0x00fffff0 >0x10 \b_m0x%lx
+>>>8 belong&0x0000000f 11 itanium
+>>>>8 belong&0x00fffff0 0x00
+>>>>8 belong&0x00fffff0 0x10 \b_2
+>>>>8 belong&0x00fffff0 >0x10 \b_m0x%lx
+>>>8 belong&0x0000000f 12 xeon
+>>>>8 belong&0x00fffff0 0x00
+>>>>8 belong&0x00fffff0 0x10 \b_mp
+>>>>8 belong&0x00fffff0 >0x10 \b_m0x%lx
+>>>8 belong&0x0000000f >12 ia32 family=%ld
+>>>>8 belong&0x00fffff0 0x00
+>>>>8 belong&0x00fffff0 >0x00 model=%lx
+>>4 belong&0x00ffffff 8 mips
+>>>8 belong&0x00ffffff 1 R2300
+>>>8 belong&0x00ffffff 2 R2600
+>>>8 belong&0x00ffffff 3 R2800
+>>>8 belong&0x00ffffff 4 R2000a
+>>>8 belong&0x00ffffff 5 R2000
+>>>8 belong&0x00ffffff 6 R3000a
+>>>8 belong&0x00ffffff 7 R3000
+>>>8 belong&0x00ffffff >7 subarchitecture=%ld
+>>4 belong&0x00ffffff 9 ns32532
+>>4 belong&0x00ffffff 10 mc98000
+>>4 belong&0x00ffffff 11 hppa
+>>>8 belong&0x00ffffff 0 7100
+>>>8 belong&0x00ffffff 1 7100LC
+>>>8 belong&0x00ffffff >1 subarchitecture=%ld
+>>4 belong&0x00ffffff 12 arm
+>>>8 belong&0x00ffffff 0
+>>>8 belong&0x00ffffff 1 subarchitecture=%ld
+>>>8 belong&0x00ffffff 2 subarchitecture=%ld
+>>>8 belong&0x00ffffff 3 subarchitecture=%ld
+>>>8 belong&0x00ffffff 4 subarchitecture=%ld
+>>>8 belong&0x00ffffff 5 \b_v4t
+>>>8 belong&0x00ffffff 6 \b_v6
+>>>8 belong&0x00ffffff 7 \b_v5tej
+>>>8 belong&0x00ffffff 8 \b_xscale
+>>>8 belong&0x00ffffff 9 \b_v7
+>>>8 belong&0x00ffffff 10 \b_v7f
+>>>8 belong&0x00ffffff 11 subarchitecture=%ld
+>>>8 belong&0x00ffffff 12 \b_v7k
+>>>8 belong&0x00ffffff >12 subarchitecture=%ld
+# 13 m88k
+>>4 belong&0x00ffffff 13
+>>>8 belong&0x00ffffff 0 mc88000
+>>>8 belong&0x00ffffff 1 mc88100
+>>>8 belong&0x00ffffff 2 mc88110
+>>>8 belong&0x00ffffff >2 mc88000 subarchitecture=%ld
+>>4 belong&0x00ffffff 14 sparc
+>>4 belong&0x00ffffff 15 i860g
+>>4 belong&0x00ffffff 16 alpha
+>>4 belong&0x00ffffff 17 rs6000
+>>4 belong&0x00ffffff 18 ppc
+>>>8 belong&0x00ffffff 0
+>>>8 belong&0x00ffffff 1 \b_601
+>>>8 belong&0x00ffffff 2 \b_602
+>>>8 belong&0x00ffffff 3 \b_603
+>>>8 belong&0x00ffffff 4 \b_603e
+>>>8 belong&0x00ffffff 5 \b_603ev
+>>>8 belong&0x00ffffff 6 \b_604
+>>>8 belong&0x00ffffff 7 \b_604e
+>>>8 belong&0x00ffffff 8 \b_620
+>>>8 belong&0x00ffffff 9 \b_650
+>>>8 belong&0x00ffffff 10 \b_7400
+>>>8 belong&0x00ffffff 11 \b_7450
+>>>8 belong&0x00ffffff 100 \b_970
+>>>8 belong&0x00ffffff >100 subarchitecture=%ld
+>>4 belong&0x00ffffff >18 architecture=%ld
+>4 belong&0x01000000 0x01000000
+#
+# 64-bit ABIs.
+#
+>>4 belong&0x00ffffff 0 64-bit architecture=%ld
+>>4 belong&0x00ffffff 1 64-bit architecture=%ld
+>>4 belong&0x00ffffff 2 64-bit architecture=%ld
+>>4 belong&0x00ffffff 3 64-bit architecture=%ld
+>>4 belong&0x00ffffff 4 64-bit architecture=%ld
+>>4 belong&0x00ffffff 5 64-bit architecture=%ld
+>>4 belong&0x00ffffff 6 64-bit architecture=%ld
+>>4 belong&0x00ffffff 7 x86_64
+>>>8 belong&0x00ffffff 0 subarchitecture=%ld
+>>>8 belong&0x00ffffff 1 subarchitecture=%ld
+>>>8 belong&0x00ffffff 2 subarchitecture=%ld
+>>>8 belong&0x00ffffff 3
+>>>8 belong&0x00ffffff 4 \b_arch1
+>>>8 belong&0x00ffffff >4 subarchitecture=%ld
+>>4 belong&0x00ffffff 8 64-bit architecture=%ld
+>>4 belong&0x00ffffff 9 64-bit architecture=%ld
+>>4 belong&0x00ffffff 10 64-bit architecture=%ld
+>>4 belong&0x00ffffff 11 64-bit architecture=%ld
+>>4 belong&0x00ffffff 12 64-bit architecture=%ld
+>>4 belong&0x00ffffff 13 64-bit architecture=%ld
+>>4 belong&0x00ffffff 14 64-bit architecture=%ld
+>>4 belong&0x00ffffff 15 64-bit architecture=%ld
+>>4 belong&0x00ffffff 16 64-bit architecture=%ld
+>>4 belong&0x00ffffff 17 64-bit architecture=%ld
+>>4 belong&0x00ffffff 18 ppc64
+>>>8 belong&0x00ffffff 0
+>>>8 belong&0x00ffffff 1 \b_601
+>>>8 belong&0x00ffffff 2 \b_602
+>>>8 belong&0x00ffffff 3 \b_603
+>>>8 belong&0x00ffffff 4 \b_603e
+>>>8 belong&0x00ffffff 5 \b_603ev
+>>>8 belong&0x00ffffff 6 \b_604
+>>>8 belong&0x00ffffff 7 \b_604e
+>>>8 belong&0x00ffffff 8 \b_620
+>>>8 belong&0x00ffffff 9 \b_650
+>>>8 belong&0x00ffffff 10 \b_7400
+>>>8 belong&0x00ffffff 11 \b_7450
+>>>8 belong&0x00ffffff 100 \b_970
+>>>8 belong&0x00ffffff >100 subarchitecture=%ld
+>>4 belong&0x00ffffff >18 64-bit architecture=%ld
+>12 belong 1 object
+>12 belong 2 executable
+>12 belong 3 fixed virtual memory shared library
+>12 belong 4 core
+>12 belong 5 preload executable
+>12 belong 6 dynamically linked shared library
+>12 belong 7 dynamic linker
+>12 belong 8 bundle
+>12 belong 9 dynamically linked shared library stub
+>12 belong 10 dSYM companion file
+>12 belong 11 kext bundle
+>12 belong >11
+>>12 belong x filetype=%ld
+
+#
+0 lelong&0xfffffffe 0xfeedface Mach-O
+>0 use \^mach-o-be
+
+0 belong&0xfffffffe 0xfeedface Mach-O
+>0 use mach-o-be