Annotation of coherent/a/usr/include/a.out.h, revision 1.1

1.1     ! root        1: /* (-lgl
        !             2:  *     COHERENT Version 4.0
        !             3:  *     Copyright (c) 1982, 1992 by Mark Williams Company.
        !             4:  *     All rights reserved. May not be copied without permission.
        !             5:  -lgl) */
        !             6: /* COFF excerpted from Intel 386 Architecture BCS Supplement, draft 3/3/90 */
        !             7: 
        !             8: struct filehdr {
        !             9:        unsigned short  f_magic;        /* I386MAGIC */
        !            10:        unsigned short  f_nscns;                /* unused by system */
        !            11:        long    f_timdat;                       /* unused by system */
        !            12:        long    f_symptr;                       /* unused by system */
        !            13:        long    f_nsyms;                        /* unused by system */
        !            14:        unsigned short  f_opthdr;       /* sizeof(opthdr) */
        !            15:        unsigned short  f_flags;                /* unused by system */
        !            16: };
        !            17: 
        !            18: #define        I286MAGIC       0x152
        !            19: #define        I386MAGIC       0x14C
        !            20: 
        !            21: #define        F_RELFLG        00001
        !            22: #define        F_EXEC          00002
        !            23: #define        F_LNNO          00004
        !            24: #define        F_LSYMS         00008
        !            25: #define        F_SWABD         00100
        !            26: #define        F_AR16WR        00200
        !            27: #define        F_AR12WR        00400
        !            28: 
        !            29: struct aouthdr {
        !            30:        short   magic;                  /* [ONZ]_MAGIC */
        !            31:        short   vstamp;                         /* unused by system */
        !            32:        long    tsize;                          /* unused by system */
        !            33:        long    dsize;                          /* unused by system */
        !            34:        long    bsize;                          /* unused by system */
        !            35:        long    entry;                  /* address to start execution */
        !            36:        long    tstart;                         /* unused by system */
        !            37:        long    dstart;                         /* unused by system */
        !            38: };
        !            39: 
        !            40: #define        O_MAGIC         0407
        !            41: #define        N_MAGIC         0410
        !            42: #define        I_MAGIC         0411
        !            43: #define        Z_MAGIC         0413
        !            44: 
        !            45: struct scnhdr {
        !            46:        char    s_name[8];                      /* unused by system */
        !            47:        long    s_paddr;                        /* unused by system */
        !            48:        long    s_vaddr;                /* offset of section - memory(bytes)*/
        !            49:        long    s_size;                 /* section size (bytes) */
        !            50:        long    s_scnptr;               /* offset of section - file (bytes) */
        !            51:                                        /* if zero -> BSS segment */
        !            52:        long    s_relptr;                       /* unused by system */
        !            53:        long    s_lnnoptr;                      /* unused by system */
        !            54:        unsigned short s_nreloc;                /* unused by system */
        !            55:        unsigned short s_lnno;                  /* unused by system */
        !            56:        long    s_flags;                /* see below */
        !            57: };
        !            58: 
        !            59: #define        STYP_REG        0x000
        !            60: #define        STYP_DSECT      0x001
        !            61: #define        STYP_NOLOAD     0x002
        !            62: #define        STYP_GROUP      0x004
        !            63: #define        STYP_PAD        0x008
        !            64: #define        STYP_COPY       0x010
        !            65: #define        STYP_TEXT       0x020
        !            66: #define        STYP_DATA       0x040
        !            67: #define        STYP_BSS        0x080
        !            68: #define        STYP_INFO       0x200
        !            69: #define        STYP_OVER       0x400                   /* not supported */
        !            70: #define        STYP_LIB        0x800                   /* not supported */
        !            71: 
        !            72:        /* exechdr corresponds to the least commmon denominator
        !            73:         * of the COFF format and the <l.out> format 286 Coherent used
        !            74:         */ 
        !            75: 
        !            76: struct xecseg {
        !            77:        unsigned        mbase;
        !            78:        unsigned        size;
        !            79:        unsigned        fbase;
        !            80: };
        !            81: 
        !            82: struct xechdr {
        !            83:        unsigned        magic;
        !            84:        unsigned        entry;
        !            85:        unsigned        initsp;
        !            86:        struct  xecseg segs[NUSEG+1];           /* text, data, bss, stack */ 
        !            87: };
        !            88: 
        !            89: #define        XMAGIC(a, b)    ((a<< 16) | b)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.