|
|
1.1 ! root 1: /* ! 2: * static char ID_scnhdrh[] = "@(#) scnhdr.h: 1.5 1/4/84"; ! 3: */ ! 4: ! 5: struct scnhdr { ! 6: char s_name[8]; /* section name */ ! 7: long s_paddr; /* physical address */ ! 8: long s_vaddr; /* virtual address */ ! 9: long s_size; /* section size */ ! 10: long s_scnptr; /* file ptr to raw data for section */ ! 11: long s_relptr; /* file ptr to relocation */ ! 12: long s_lnnoptr; /* file ptr to line numbers */ ! 13: unsigned short s_nreloc; /* number of relocation entries */ ! 14: unsigned short s_nlnno; /* number of line number entries */ ! 15: long s_flags; /* flags */ ! 16: }; ! 17: ! 18: #define SCNHDR struct scnhdr ! 19: #define SCNHSZ sizeof(SCNHDR) ! 20: ! 21: ! 22: ! 23: ! 24: /* ! 25: * Define constants for names of "special" sections ! 26: */ ! 27: ! 28: #define _TEXT ".text" ! 29: #define _DATA ".data" ! 30: #define _BSS ".bss" ! 31: #define _TV ".tv" ! 32: ! 33: ! 34: ! 35: ! 36: /* ! 37: * The low 2 bytes of s_flags is used as a section "type" ! 38: */ ! 39: ! 40: #define STYP_REG 0x00 /* "regular" section: ! 41: allocated, relocated, loaded */ ! 42: #define STYP_DSECT 0x01 /* "dummy" section: ! 43: not allocated, relocated, ! 44: not loaded */ ! 45: #define STYP_NOLOAD 0x02 /* "noload" section: ! 46: allocated, relocated, ! 47: not loaded */ ! 48: #define STYP_GROUP 0x04 /* "grouped" section: ! 49: formed of input sections */ ! 50: #define STYP_PAD 0x08 /* "padding" section: ! 51: not allocated, not relocated, ! 52: loaded */ ! 53: #define STYP_COPY 0x10 /* "copy" section: ! 54: for decision function used ! 55: by field update; not ! 56: allocated, not relocated, ! 57: loaded; reloc & lineno ! 58: entries processed normally */ ! 59: #define STYP_INFO 0x200 /* comment section : not allocated ! 60: not relocated, not loaded */ ! 61: #define STYP_OVER 0x400 /* overlay section : relocated ! 62: not allocated or loaded */ ! 63: #define STYP_TEXT 0x20 /* section contains text only */ ! 64: #define STYP_DATA 0x40 /* section contains data only */ ! 65: #define STYP_BSS 0x80 /* section contains bss only */ ! 66: ! 67: /* ! 68: * In a minimal file or an update file, a new function ! 69: * (as compared with a replaced function) is indicated by S_NEWFCN ! 70: */ ! 71: ! 72: #define S_NEWFCN 0x100 ! 73: ! 74: /* ! 75: * In 3b Update Files (output of ogen), sections which appear in SHARED ! 76: * segments of the Pfile will have the S_SHRSEG flag set by ogen, to inform ! 77: * dufr that updating 1 copy of the proc. will update all process invocations. ! 78: */ ! 79: ! 80: #define S_SHRSEG 0x20
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.