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

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