📄 coff.h
字号:
#ifndef COFF_H#define COFF_H/* Based on the elf.h file * Changed accordingly to support COFF file support *//* Values for f_flags. */#define F_RELFLG 0x0001 /* If set, not reloc. info. Clear for executables */#define F_EXEC 0x0002 /* No unresolved symbols. Executable file ! */#define F_LNNO 0x0004 /* If set, line information numbers removed */#define F_LSYMS 0x0008 /* If set, local symbols removed */#define F_AR32WR 0x0100 /* Indicates little endian file *//* Values for e_machine (architecute). */#define EM_E1 0x17a /* Magic number for Hyperstone. Big endian format *//* Values for f_flags. */#define O_MAGIC 0x017c /* Optional's header magic number for Hyperstone *//* Values for s_flags. */#define S_TYPE_TEXT 0x0020 /* If set, the section contains only executable */#define S_TYPE_DATA 0x0040 /* If set, the section contains only initialized data */#define S_TYPE_BSS 0x0080 /* If set, the section is BSS no data stored */typedef struct{ unsigned short f_magic; /* magic number */ unsigned short f_nscns; /* number of sections */ unsigned long f_timdat; /* time & date stamp */ unsigned long f_symptr; /* file pointer to symtab */ unsigned long f_nsyms; /* number of symtab entries */ unsigned short f_opthdr; /* sizeof(optional hdr) */ unsigned short f_flags; /* flags */}COFF_filehdr;/* * Optional header. */typedef struct { unsigned short magic; /* type of file */ unsigned short vstamp; /* version stamp */ unsigned long tsize; /* text size in bytes, padded to FW bdry*/ unsigned long dsize; /* initialized data " " */ unsigned long bsize; /* uninitialized data " " */ unsigned long entry; /* entry pt. */ unsigned long text_start; /* base of text used for this file */ unsigned long data_start; /* base of data used for this file */} COFF_opthdr;/* * Section header. */typedef struct { char s_name[8]; /* section name */ unsigned long s_paddr; /* physical address, aliased s_nlib */ unsigned long s_vaddr; /* virtual address */ unsigned long s_size; /* section size */ unsigned long s_scnptr; /* file ptr to raw data for section */ unsigned long s_relptr; /* file ptr to relocation */ unsigned long s_lnnoptr; /* file ptr to line numbers */ unsigned short s_nreloc; /* number of relocation entries */ unsigned short s_nlnno; /* number of line number entries*/ unsigned long s_flags; /* flags */}COFF_scnhdr;#endif /* COFF_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -