|
|
1.1 ! root 1: /* @(#)filehdr.h 2.3 1/19/83 */ ! 2: ! 3: struct filehdr { ! 4: unsigned short f_magic; /* magic number */ ! 5: unsigned short f_nscns; /* number of sections */ ! 6: long f_timdat; /* time & date stamp */ ! 7: long f_symptr; /* file pointer to symtab */ ! 8: long f_nsyms; /* number of symtab entries */ ! 9: unsigned short f_opthdr; /* sizeof(optional hdr) */ ! 10: unsigned short f_flags; /* flags */ ! 11: }; ! 12: ! 13: ! 14: /* ! 15: * Bits for f_flags: ! 16: * ! 17: * F_RELFLG relocation info stripped from file ! 18: * F_EXEC file is executable (i.e. no unresolved ! 19: * externel references) ! 20: * F_LNNO line nunbers stripped from file ! 21: * F_LSYMS local symbols stripped from file ! 22: * F_MINMAL this is a minimal object file (".m") output of fextract ! 23: * F_UPDATE this is a fully bound update file, output of ogen ! 24: * F_SWABD this file has had its bytes swabbed (in names) ! 25: * F_AR16WR this file has the byte ordering of an AR16WR (e.g. 11/70) machine ! 26: * (it was created there, or was produced by conv) ! 27: * F_AR32WR this file has the byte ordering of an AR32WR machine(e.g. vax) ! 28: * F_AR32W this file has the byte ordering of an AR32W machine (e.g. 3b,maxi) ! 29: * F_PATCH file contains "patch" list in optional header ! 30: * F_NODF (minimal file only) no decision functions for ! 31: * replaced functions ! 32: */ ! 33: ! 34: #define F_RELFLG 0000001 ! 35: #define F_EXEC 0000002 ! 36: #define F_LNNO 0000004 ! 37: #define F_LSYMS 0000010 ! 38: #define F_MINMAL 0000020 ! 39: #define F_UPDATE 0000040 ! 40: #define F_SWABD 0000100 ! 41: #define F_AR16WR 0000200 ! 42: #define F_AR32WR 0000400 ! 43: #define F_AR32W 0001000 ! 44: #define F_PATCH 0002000 ! 45: #define F_NODF 0002000 ! 46: ! 47: ! 48: /* ! 49: * Magic Numbers ! 50: */ ! 51: ! 52: /* Basic-16 */ ! 53: ! 54: #define B16MAGIC 0502 ! 55: #define BTVMAGIC 0503 ! 56: ! 57: /* x86 */ ! 58: ! 59: #define X86MAGIC 0510 ! 60: #define XTVMAGIC 0511 ! 61: ! 62: /* n3b */ ! 63: /* ! 64: * NOTE: For New 3B, the old values of magic numbers ! 65: * will be in the optional header in the structure ! 66: * "aouthdr" (identical to old 3B aouthdr). ! 67: */ ! 68: #define N3BMAGIC 0550 ! 69: #define NTVMAGIC 0551 ! 70: ! 71: /* XL */ ! 72: #define XLMAGIC 0540 ! 73: ! 74: /* MAC-32 3b-5 */ ! 75: ! 76: #define FBOMAGIC 0560 ! 77: #define RBOMAGIC 0562 ! 78: #define MTVMAGIC 0561 ! 79: ! 80: ! 81: /* VAX 11/780 and VAX 11/750 */ ! 82: ! 83: /* writeable text segments */ ! 84: #define VAXWRMAGIC 0570 ! 85: /* readonly sharable text segments */ ! 86: #define VAXROMAGIC 0575 ! 87: ! 88: ! 89: /* Motorola 68000 */ ! 90: #define MC68MAGIC 0520 ! 91: #define MC68TVMAGIC 0521 ! 92: #define M68MAGIC 0210 ! 93: #define M68TVMAGIC 0211 ! 94: ! 95: ! 96: /* IBM 370 */ ! 97: #define U370WRMAGIC 0530 /* writeble text segments */ ! 98: #define U370ROMAGIC 0535 /* readonly sharable text segments */ ! 99: ! 100: #define FILHDR struct filehdr ! 101: #define FILHSZ sizeof(FILHDR)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.