Annotation of qemu/roms/ipxe/src/include/coff.h, revision 1.1

1.1     ! root        1: #ifndef COFF_H
        !             2: #define COFF_H
        !             3: /* Based on the elf.h file
        !             4:  * Changed accordingly to support COFF file support
        !             5:  */
        !             6: 
        !             7: 
        !             8: /* Values for f_flags. */
        !             9: #define F_RELFLG       0x0001  /* If set, not reloc. info. Clear for executables */
        !            10: #define F_EXEC         0x0002  /* No unresolved symbols. Executable file ! */
        !            11: #define F_LNNO         0x0004  /* If set, line information numbers removed  */
        !            12: #define F_LSYMS                0x0008  /* If set, local symbols removed  */
        !            13: #define F_AR32WR       0x0100  /* Indicates little endian file */
        !            14: 
        !            15: /* Values for e_machine (architecute). */
        !            16: #define EM_E1          0x17a   /* Magic number for Hyperstone. Big endian format */
        !            17: 
        !            18: /* Values for f_flags. */
        !            19: #define        O_MAGIC         0x017c  /* Optional's header magic number for Hyperstone */
        !            20: 
        !            21: /* Values for s_flags. */
        !            22: #define S_TYPE_TEXT    0x0020  /* If set, the section contains only executable */
        !            23: #define S_TYPE_DATA    0x0040  /* If set, the section contains only initialized data */
        !            24: #define S_TYPE_BSS     0x0080  /* If set, the section is BSS no data stored */
        !            25: 
        !            26: 
        !            27: typedef struct
        !            28: {
        !            29:        unsigned short  f_magic;        /* magic number                         */
        !            30:        unsigned short  f_nscns;        /* number of sections           */
        !            31:        unsigned long   f_timdat;       /* time & date stamp            */
        !            32:        unsigned long   f_symptr;       /* file pointer to symtab       */
        !            33:        unsigned long   f_nsyms;        /* number of symtab entries     */
        !            34:        unsigned short  f_opthdr;       /* sizeof(optional hdr)         */
        !            35:        unsigned short  f_flags;        /* flags                                        */
        !            36: }
        !            37: COFF_filehdr;
        !            38: 
        !            39: /*
        !            40:  * Optional header.
        !            41:  */
        !            42: typedef struct 
        !            43: {
        !            44:   unsigned short       magic;          /* type of file                         */
        !            45:   unsigned short       vstamp;         /* version stamp                        */
        !            46:   unsigned long                tsize;          /* text size in bytes, padded to FW bdry*/
        !            47:   unsigned long                dsize;          /* initialized data "  "                */
        !            48:   unsigned long                bsize;          /* uninitialized data "   "             */
        !            49:   unsigned long                entry;          /* entry pt.                            */
        !            50:   unsigned long                text_start;     /* base of text used for this file */
        !            51:   unsigned long        data_start;     /* base of data used for this file */
        !            52: }      
        !            53: COFF_opthdr;
        !            54: 
        !            55: /*
        !            56:  * Section header.
        !            57:  */
        !            58: typedef struct 
        !            59: {
        !            60:        char                            s_name[8];      /* section name                 */
        !            61:        unsigned long           s_paddr;        /* physical address, aliased s_nlib */
        !            62:        unsigned long           s_vaddr;        /* virtual address              */
        !            63:        unsigned long           s_size;         /* section size                 */
        !            64:        unsigned long           s_scnptr;       /* file ptr to raw data for section */
        !            65:        unsigned long           s_relptr;       /* file ptr to relocation       */
        !            66:        unsigned long           s_lnnoptr;      /* file ptr to line numbers     */
        !            67:        unsigned short          s_nreloc;       /* number of relocation entries */
        !            68:        unsigned short          s_nlnno;        /* number of line number entries*/
        !            69:        unsigned long           s_flags;        /* flags                        */
        !            70: }
        !            71: COFF_scnhdr;
        !            72: 
        !            73: #endif /* COFF_H */

unix.superglobalmegacorp.com

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