00001 ;++ 00002 ; 00003 ; Copyright (c) 1989 Microsoft Corporation 00004 ; 00005 ; Module Name: 00006 ; 00007 ; cpu.inc 00008 ; 00009 ; Abstract: 00010 ; 00011 ; This module contains the assembly structures and definitions 00012 ; for INTEL 80x86 CPU specifiec information. This include file 00013 ; is mainly used by CPU.ASM to determine CPU type and stepping 00014 ; number. 00015 ; 00016 ; Author: 00017 ; 00018 ; Shie-Lin (shielint) 1-Oct-1991 00019 ; 00020 ; Revision History: 00021 ; 00022 ;-- 00023 00024 ; 00025 ; The following equates define the control bits of CR0 register 00026 ; 00027 00028 CR0_AM equ 40000h 00029 CR0_ET equ 00010h 00030 00031 ; 00032 ; The following equates define the control bits of EFALGS register 00033 ; 00034 00035 EFLAGS_AC equ 40000h 00036 EFLAGS_VM equ 20000h 00037 EFLAGS_RF equ 10000h 00038 EFLAGS_NF equ 4000h 00039 EFLAGS_IOPL equ 3000h 00040 EFLAGS_IF equ 200h 00041 EFLAGS_TF equ 100h 00042 EFLAGS_ID equ 200000h 00043 00044 ; 00045 ; Define the iret frame 00046 ; 00047 00048 IretFrame struc 00049 00050 IretEip dd 0 00051 IretCs dd 0 00052 IretEFlags dd 0 00053 00054 IretFrame ends 00055 00056 ; 00057 ; Misc. definitions 00058 ; 00059 00060 ADDRESS_OVERRIDE equ 67h 00061 OPERAND_OVERRIDE equ 66h