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

unix.superglobalmegacorp.com

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