/* * * ctx386.h * * Context definition for win32 x86 * */ #ifndef _CTX386_h #define _CTX386_h typedef CONTEXT XBDMCTX; typedef FLOATING_SAVE_AREA XBDMFLOATSAVE; #define CONTEXT CTX86 #define _CONTEXT _CTX86 #define PCONTEXT PCTX86 #define LPCONTEXT PCONTEXT #define FLOATING_SAVE_AREA FSAVEX86 #define _FLOATING_SAVE_AREA _FSAVEX86 #define PFLOATING_SAVE_AREA PFSAVEX86 typedef struct _FLOATING_SAVE_AREA { DWORD ControlWord; DWORD StatusWord; DWORD TagWord; DWORD ErrorOffset; DWORD ErrorSelector; DWORD DataOffset; DWORD DataSelector; BYTE RegisterArea[80]; DWORD Cr0NpxState; } FLOATING_SAVE_AREA; typedef FLOATING_SAVE_AREA *PFLOATING_SAVE_AREA; typedef struct _CONTEXT { DWORD ContextFlags; DWORD Dr0; DWORD Dr1; DWORD Dr2; DWORD Dr3; DWORD Dr6; DWORD Dr7; FLOATING_SAVE_AREA FloatSave; DWORD SegGs; DWORD SegFs; DWORD SegEs; DWORD SegDs; DWORD Edi; DWORD Esi; DWORD Ebx; DWORD Edx; DWORD Ecx; DWORD Eax; DWORD Ebp; DWORD Eip; DWORD SegCs; DWORD EFlags; DWORD Esp; DWORD SegSs; BYTE ExtendedRegisters[512]; } CONTEXT, *PCONTEXT; #endif // _CTX386_h