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