![]() |
coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
Go to the source code of this file.
Data Structures | |
struct | I32_reg_t |
struct | I16_reg_t |
struct | I8_reg_t |
union | i386_general_register |
struct | i386_general_regs |
struct | i386_special_regs |
struct | i386_segment_regs |
struct | X86EMU_regs |
struct | X86EMU_sysEnv |
Macros | |
#define | R_AH gen.A.I8_reg.h_reg |
#define | R_AL gen.A.I8_reg.l_reg |
#define | R_BH gen.B.I8_reg.h_reg |
#define | R_BL gen.B.I8_reg.l_reg |
#define | R_CH gen.C.I8_reg.h_reg |
#define | R_CL gen.C.I8_reg.l_reg |
#define | R_DH gen.D.I8_reg.h_reg |
#define | R_DL gen.D.I8_reg.l_reg |
#define | R_AX gen.A.I16_reg.x_reg |
#define | R_BX gen.B.I16_reg.x_reg |
#define | R_CX gen.C.I16_reg.x_reg |
#define | R_DX gen.D.I16_reg.x_reg |
#define | R_EAX gen.A.I32_reg.e_reg |
#define | R_EBX gen.B.I32_reg.e_reg |
#define | R_ECX gen.C.I32_reg.e_reg |
#define | R_EDX gen.D.I32_reg.e_reg |
#define | R_SP spc.SP.I16_reg.x_reg |
#define | R_BP spc.BP.I16_reg.x_reg |
#define | R_SI spc.SI.I16_reg.x_reg |
#define | R_DI spc.DI.I16_reg.x_reg |
#define | R_IP spc.IP.I16_reg.x_reg |
#define | R_FLG spc.FLAGS |
#define | R_SP spc.SP.I16_reg.x_reg |
#define | R_BP spc.BP.I16_reg.x_reg |
#define | R_SI spc.SI.I16_reg.x_reg |
#define | R_DI spc.DI.I16_reg.x_reg |
#define | R_IP spc.IP.I16_reg.x_reg |
#define | R_FLG spc.FLAGS |
#define | R_ESP spc.SP.I32_reg.e_reg |
#define | R_EBP spc.BP.I32_reg.e_reg |
#define | R_ESI spc.SI.I32_reg.e_reg |
#define | R_EDI spc.DI.I32_reg.e_reg |
#define | R_EIP spc.IP.I32_reg.e_reg |
#define | R_EFLG spc.FLAGS |
#define | R_CS seg.CS |
#define | R_DS seg.DS |
#define | R_SS seg.SS |
#define | R_ES seg.ES |
#define | R_FS seg.FS |
#define | R_GS seg.GS |
#define | FB_CF 0x0001 /* CARRY flag */ |
#define | FB_PF 0x0004 /* PARITY flag */ |
#define | FB_AF 0x0010 /* AUX flag */ |
#define | FB_ZF 0x0040 /* ZERO flag */ |
#define | FB_SF 0x0080 /* SIGN flag */ |
#define | FB_TF 0x0100 /* TRAP flag */ |
#define | FB_IF 0x0200 /* INTERRUPT ENABLE flag */ |
#define | FB_DF 0x0400 /* DIR flag */ |
#define | FB_OF 0x0800 /* OVERFLOW flag */ |
#define | F_ALWAYS_ON (0x0002) /* flag bits always on */ |
#define | F_MSK (FB_CF|FB_PF|FB_AF|FB_ZF|FB_SF|FB_TF|FB_IF|FB_DF|FB_OF) |
#define | F_CF 0x0001 /* CARRY flag */ |
#define | F_PF 0x0004 /* PARITY flag */ |
#define | F_AF 0x0010 /* AUX flag */ |
#define | F_ZF 0x0040 /* ZERO flag */ |
#define | F_SF 0x0080 /* SIGN flag */ |
#define | F_TF 0x0100 /* TRAP flag */ |
#define | F_IF 0x0200 /* INTERRUPT ENABLE flag */ |
#define | F_DF 0x0400 /* DIR flag */ |
#define | F_OF 0x0800 /* OVERFLOW flag */ |
#define | TOGGLE_FLAG(flag) (M.x86.R_FLG ^= (flag)) |
#define | SET_FLAG(flag) (M.x86.R_FLG |= (flag)) |
#define | CLEAR_FLAG(flag) (M.x86.R_FLG &= ~(flag)) |
#define | ACCESS_FLAG(flag) (M.x86.R_FLG & (flag)) |
#define | CLEARALL_FLAG(m) (M.x86.R_FLG = 0) |
#define | CONDITIONAL_SET_FLAG(COND, FLAG) if (COND) SET_FLAG(FLAG); else CLEAR_FLAG(FLAG) |
#define | F_PF_CALC 0x010000 /* PARITY flag has been calced */ |
#define | F_ZF_CALC 0x020000 /* ZERO flag has been calced */ |
#define | F_SF_CALC 0x040000 /* SIGN flag has been calced */ |
#define | F_ALL_CALC 0xff0000 /* All have been calced */ |
#define | SYSMODE_SEG_DS_SS 0x00000001 |
#define | SYSMODE_SEGOVR_CS 0x00000002 |
#define | SYSMODE_SEGOVR_DS 0x00000004 |
#define | SYSMODE_SEGOVR_ES 0x00000008 |
#define | SYSMODE_SEGOVR_FS 0x00000010 |
#define | SYSMODE_SEGOVR_GS 0x00000020 |
#define | SYSMODE_SEGOVR_SS 0x00000040 |
#define | SYSMODE_PREFIX_REPE 0x00000080 |
#define | SYSMODE_PREFIX_REPNE 0x00000100 |
#define | SYSMODE_PREFIX_DATA 0x00000200 |
#define | SYSMODE_PREFIX_ADDR 0x00000400 |
#define | SYSMODE_32BIT_REP 0x00000800 |
#define | SYSMODE_INTR_PENDING 0x10000000 |
#define | SYSMODE_EXTRN_INTR 0x20000000 |
#define | SYSMODE_HALTED 0x40000000 |
#define | SYSMODE_SEGMASK |
#define | SYSMODE_CLRMASK |
#define | INTR_SYNCH 0x1 |
#define | INTR_ASYNCH 0x2 |
#define | INTR_HALTED 0x4 |
#define | M _X86EMU_env |
#define | X86_EAX M.x86.R_EAX |
#define | X86_EBX M.x86.R_EBX |
#define | X86_ECX M.x86.R_ECX |
#define | X86_EDX M.x86.R_EDX |
#define | X86_ESI M.x86.R_ESI |
#define | X86_EDI M.x86.R_EDI |
#define | X86_EBP M.x86.R_EBP |
#define | X86_EIP M.x86.R_EIP |
#define | X86_ESP M.x86.R_ESP |
#define | X86_EFLAGS M.x86.R_EFLG |
#define | X86_FLAGS M.x86.R_FLG |
#define | X86_AX M.x86.R_AX |
#define | X86_BX M.x86.R_BX |
#define | X86_CX M.x86.R_CX |
#define | X86_DX M.x86.R_DX |
#define | X86_SI M.x86.R_SI |
#define | X86_DI M.x86.R_DI |
#define | X86_BP M.x86.R_BP |
#define | X86_IP M.x86.R_IP |
#define | X86_SP M.x86.R_SP |
#define | X86_CS M.x86.R_CS |
#define | X86_DS M.x86.R_DS |
#define | X86_ES M.x86.R_ES |
#define | X86_SS M.x86.R_SS |
#define | X86_FS M.x86.R_FS |
#define | X86_GS M.x86.R_GS |
#define | X86_AL M.x86.R_AL |
#define | X86_BL M.x86.R_BL |
#define | X86_CL M.x86.R_CL |
#define | X86_DL M.x86.R_DL |
#define | X86_AH M.x86.R_AH |
#define | X86_BH M.x86.R_BH |
#define | X86_CH M.x86.R_CH |
#define | X86_DH M.x86.R_DH |
Typedefs | |
typedef struct i386_general_regs | Gen_reg_t |
Variables | |
X86EMU_sysEnv | _X86EMU_env |
#define ACCESS_FLAG | ( | flag | ) | (M.x86.R_FLG & (flag)) |
#define CLEAR_FLAG | ( | flag | ) | (M.x86.R_FLG &= ~(flag)) |
#define CLEARALL_FLAG | ( | m | ) | (M.x86.R_FLG = 0) |
#define CONDITIONAL_SET_FLAG | ( | COND, | |
FLAG | |||
) | if (COND) SET_FLAG(FLAG); else CLEAR_FLAG(FLAG) |
#define M _X86EMU_env |
#define SET_FLAG | ( | flag | ) | (M.x86.R_FLG |= (flag)) |
#define SYSMODE_CLRMASK |
#define SYSMODE_SEGMASK |
#define TOGGLE_FLAG | ( | flag | ) | (M.x86.R_FLG ^= (flag)) |
#define X86_AH M.x86.R_AH |
#define X86_AL M.x86.R_AL |
#define X86_AX M.x86.R_AX |
#define X86_BH M.x86.R_BH |
#define X86_BL M.x86.R_BL |
#define X86_BP M.x86.R_BP |
#define X86_BX M.x86.R_BX |
#define X86_CH M.x86.R_CH |
#define X86_CL M.x86.R_CL |
#define X86_CS M.x86.R_CS |
#define X86_CX M.x86.R_CX |
#define X86_DH M.x86.R_DH |
#define X86_DI M.x86.R_DI |
#define X86_DL M.x86.R_DL |
#define X86_DS M.x86.R_DS |
#define X86_DX M.x86.R_DX |
#define X86_EAX M.x86.R_EAX |
#define X86_EBP M.x86.R_EBP |
#define X86_EBX M.x86.R_EBX |
#define X86_ECX M.x86.R_ECX |
#define X86_EDI M.x86.R_EDI |
#define X86_EDX M.x86.R_EDX |
#define X86_EFLAGS M.x86.R_EFLG |
#define X86_EIP M.x86.R_EIP |
#define X86_ES M.x86.R_ES |
#define X86_ESI M.x86.R_ESI |
#define X86_ESP M.x86.R_ESP |
#define X86_FLAGS M.x86.R_FLG |
#define X86_FS M.x86.R_FS |
#define X86_GS M.x86.R_GS |
#define X86_IP M.x86.R_IP |
#define X86_SI M.x86.R_SI |
#define X86_SP M.x86.R_SP |
#define X86_SS M.x86.R_SS |
typedef struct i386_general_regs Gen_reg_t |
|
extern |