|
|
1.1 root 1: /* @(#)filehdr.h 2.1 */
2: struct filehdr {
3: unsigned short f_magic; /* magic number */
4: unsigned short f_nscns; /* number of sections */
5: long f_timdat; /* time & date stamp */
6: long f_symptr; /* file pointer to symtab */
7: long f_nsyms; /* number of symtab entries */
8: unsigned short f_opthdr; /* sizeof(optional hdr) */
9: unsigned short f_flags; /* flags */
10: };
11:
12:
13: /*
14: * Bits for f_flags:
15: *
16: * F_RELFLG relocation info stripped from file
17: * F_EXEC file is executable (i.e. no unresolved
18: * external references)
19: * F_LNNO line nunbers stripped from file
20: * F_LSYMS local symbols stripped from file
21: * F_MINMAL this is a minimal object file (".m") output of fextract
22: * F_UPDATE this is a fully bound update file, output of ogen
23: * F_SWABD this file has had its bytes swabbed (in names)
24: * F_AR16WR this file created on AR16WR machine(e.g. 11/70)
25: * F_AR32WR this file created on AR32WR machine(e.g. vax)
26: * F_AR32W this file created on AR32W machine (e.g. 3b,maxi)
27: * F_PATCH file contains "patch" list in optional header
28: */
29:
30: #define F_RELFLG 0000001
31: #define F_EXEC 0000002
32: #define F_LNNO 0000004
33: #define F_LSYMS 0000010
34: #define F_MINMAL 0000020
35: #define F_UPDATE 0000040
36: #define F_SWABD 0000100
37: #define F_AR16WR 0000200
38: #define F_AR32WR 0000400
39: #define F_AR32W 0001000
40: #define F_PATCH 0002000
41:
42:
43: /*
44: * Magic Numbers
45: */
46:
47: /* Basic-16 */
48:
49: #define B16MAGIC 0502
50: #define BTVMAGIC 0503
51:
52: /* x86 */
53:
54: #define X86MAGIC 0510
55: #define XTVMAGIC 0511
56:
57: /* n3b */
58:
59: #define N3BMAGIC 0550
60: #define NTVMAGIC 0551
61:
62: /* MAC-80 3b-5 */
63:
64: #define M80MAGIC 0560
65: #define MTVMAGIC 0561
66:
67:
68: /* VAX 11/780 and VAX 11/750 */
69:
70: /* writeable text segments */
71: #define VAXWRMAGIC 0570
72: /* readonly sharable text segments */
73: #define VAXROMAGIC 0575
74:
75: #define FILHDR struct filehdr
76: #define FILHSZ sizeof(FILHDR)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.