46 lines
1.1 KiB
C
46 lines
1.1 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1996-2000 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
eflags.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
Bit positions for the various flag bits inside EFLAGS
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Barry Bond (barrybo) creation-date 25-January-2000
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _EFLAGS_INCLUDED
|
||
|
#define _EFLAGS_INCLUDED
|
||
|
|
||
|
#define FLAG_CF (1<<0) // carry
|
||
|
// bit 1 is always 1
|
||
|
#define FLAG_PF (1<<2) // parity
|
||
|
// bit 3 is always 0
|
||
|
#define FLAG_AUX (1<<4) // aux carry
|
||
|
// bit 5 is always 0
|
||
|
#define FLAG_ZF (1<<6) // zero
|
||
|
#define FLAG_SF (1<<7) // sign
|
||
|
#define FLAG_TF (1<<8) // trap
|
||
|
#define FLAG_IF (1<<9) // interrupt enable
|
||
|
#define FLAG_DF (1<<10) // direction
|
||
|
#define FLAG_OF (1<<11) // overflow
|
||
|
#define FLAG_IOPL (3<<12) // IOPL = 3
|
||
|
#define FLAG_NT (1<<14) // nested task
|
||
|
// bit 15 is 0
|
||
|
#define FLAG_RF (1<<16) // resume flag
|
||
|
#define FLAG_VM (1<<17) // virtual mode
|
||
|
#define FLAG_AC (1<<18) // alignment check
|
||
|
#define FLAG_ID (1<<21) // ID bit (CPUID present if this can be toggled)
|
||
|
|
||
|
#endif //_EFLAGS_INCLUDED
|