1acadec62a014477ea538ff7597a6abf906cb396
[dragonfly.git] / contrib / file / magic / Magdir / xenix
1
2 #------------------------------------------------------------------------------
3 # xenix:  file(1) magic for Microsoft Xenix
4 #
5 # "Middle model" stuff, and "Xenix 8086 relocatable or 80286 small
6 # model" lifted from "magic.xenix", with comment "derived empirically;
7 # treat as folklore until proven"
8 #
9 # "small model", "large model", "huge model" stuff lifted from XXX
10 #
11 # XXX - "x.out" collides with PDP-11 archives
12 #
13 0       string          core            core file (Xenix)
14 0       byte            0x80            8086 relocatable (Microsoft)
15 0       leshort         0xff65          x.out
16 >2      string          __.SYMDEF        randomized
17 >0      byte            x               archive
18 0       leshort         0x206           Microsoft a.out
19 >8      leshort         1               Middle model
20 >0x1e   leshort         &0x10           overlay
21 >0x1e   leshort         &0x2            separate
22 >0x1e   leshort         &0x4            pure
23 >0x1e   leshort         &0x800          segmented
24 >0x1e   leshort         &0x400          standalone
25 >0x1e   leshort         &0x8            fixed-stack
26 >0x1c   byte            &0x80           byte-swapped
27 >0x1c   byte            &0x40           word-swapped
28 >0x10   lelong          >0              not-stripped
29 >0x1e   leshort         ^0xc000         pre-SysV
30 >0x1e   leshort         &0x4000         V2.3
31 >0x1e   leshort         &0x8000         V3.0
32 >0x1c   byte            &0x4            86
33 >0x1c   byte            &0xb            186
34 >0x1c   byte            &0x9            286
35 >0x1c   byte            &0xa            386
36 >0x1f   byte            <0x040          small model
37 >0x1f   byte            =0x048          large model     
38 >0x1f   byte            =0x049          huge model 
39 >0x1e   leshort         &0x1            executable
40 >0x1e   leshort         ^0x1            object file
41 >0x1e   leshort         &0x40           Large Text
42 >0x1e   leshort         &0x20           Large Data
43 >0x1e   leshort         &0x120          Huge Objects Enabled
44 >0x10   lelong          >0              not stripped
45
46 0       leshort         0x140           old Microsoft 8086 x.out
47 >0x3    byte            &0x4            separate
48 >0x3    byte            &0x2            pure
49 >0      byte            &0x1            executable
50 >0      byte            ^0x1            relocatable
51 >0x14   lelong          >0              not stripped
52
53 0       lelong          0x206           b.out
54 >0x1e   leshort         &0x10           overlay
55 >0x1e   leshort         &0x2            separate
56 >0x1e   leshort         &0x4            pure
57 >0x1e   leshort         &0x800          segmented
58 >0x1e   leshort         &0x400          standalone
59 >0x1e   leshort         &0x1            executable
60 >0x1e   leshort         ^0x1            object file
61 >0x1e   leshort         &0x4000         V2.3
62 >0x1e   leshort         &0x8000         V3.0
63 >0x1c   byte            &0x4            86
64 >0x1c   byte            &0xb            186
65 >0x1c   byte            &0x9            286
66 >0x1c   byte            &0x29           286
67 >0x1c   byte            &0xa            386
68 >0x1e   leshort         &0x4            Large Text
69 >0x1e   leshort         &0x2            Large Data
70 >0x1e   leshort         &0x102          Huge Objects Enabled
71
72 0       leshort         0x580           XENIX 8086 relocatable or 80286 small model