home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
warptlk3.zip
/
TOOLKIT
/
INC
/
MI.INC
< prev
next >
Wrap
Text File
|
1995-08-24
|
9KB
|
361 lines
; SCCSID = @(#)mi.inc 6.1 92/03/25
;
;
; mi.inc
; Copyright (c) IBM Corporation 1987, 1992
;
; All Rights Reserved
; For include file hierarchy, see MVDM.INC
;
F_AC EQU 00040000H
F_VM EQU 00020000H
F_RF EQU 00010000H
F_NT EQU 00004000H
F_NTCLEAR EQU ( NOT F_NT)
F_IOPL0 EQU 0
F_IOPL1 EQU 00001000H
F_IOPL2 EQU 00002000H
F_IOPL3 EQU 00003000H
F_IOPLMASK EQU 00003000H
F_IOPLSYS EQU F_IOPL3
F_IOPLclear EQU ( NOT F_IOPLMASK)
F_OVERFLOW EQU 00000800H
F_DIRECTION EQU 00000400H
F_INTERRUPT EQU 00000200H
F_TRACE EQU 00000100H
F_SIGN EQU 00000080H
F_ZERO EQU 00000040H
F_AUX EQU 00000010H
F_PARITY EQU 00000004H
F_CARRY EQU 00000001H
F_UNDEFINED EQU 0000802AH
CR0_PE EQU 00000001H
CR0_MP EQU 00000002H
CR0_EM EQU 00000004H
CR0_TS EQU 00000008H
CR0_ET EQU 00000010H
CR0_NE EQU 00000020H
CR0_WP EQU 00010000H
CR0_AM EQU 00040000H
CR0_NW EQU 20000000H
CR0_CD EQU 40000000H
CR0_PG EQU 80000000H
CR0_RESERVED EQU 1ffaffc0H
MSW_PE EQU CR0_PE
MSW_MP EQU CR0_MP
MSW_EM EQU CR0_EM
MSW_TS EQU CR0_TS
MSW_ET EQU CR0_ET
CR3_WRITETHROUGH EQU 00000008H
CR3_CACHEDISABLE EQU 00000010H
CR3_FRAME EQU 0fffff000H
CR3_RESERVED EQU 00000fe7H
DR_COUNT EQU 4H
DR6_B0 EQU 00000001H
DR6_B1 EQU 00000002H
DR6_B2 EQU 00000004H
DR6_B3 EQU 00000008H
DR6_BD EQU 00002000H
DR6_BS_BIT_INDEX EQU 0eH
DR6_BS EQU (1 SHL DR6_BS_BIT_INDEX)
DR6_BT EQU 00008000H
DR6_VALID EQU (DR6_B0 OR DR6_B1 OR DR6_B2 OR DR6_B3 OR DR6_BD OR DR6_BS OR DR6_BT)
DR6_RESERVED EQU NOT (DR6_VALID)
DR7_L0 EQU 00000001H
DR7_G0 EQU 00000002H
DR7_L1 EQU 00000004H
DR7_G1 EQU 00000008H
DR7_L2 EQU 00000010H
DR7_G2 EQU 00000020H
DR7_L3 EQU 00000040H
DR7_G3 EQU 00000080H
DR7_LE EQU 00000100H
DR7_GE EQU 00000200H
DR7_RW0 EQU 00030000H
DR7_LEN0 EQU 000c0000H
DR7_RW1 EQU 00300000H
DR7_LEN1 EQU 00c00000H
DR7_RW2 EQU 03000000H
DR7_LEN2 EQU 0c000000H
DR7_RW3 EQU 30000000H
DR7_LEN3 EQU 0c0000000H
DR7_RESERVED EQU 0000fc00H
DR7_EXECUTE EQU 0H
DR7_WRITE EQU 1H
DR7_READWRITE EQU 3H
DR7_LEN_1 EQU 0H
DR7_LEN_2 EQU 1H
DR7_LEN_4 EQU 3H
MI_ARPL EQU 63H
MI_HLT EQU 0f4H
MI_OPERANDSIZE EQU 66H
MI_ADDRESSSIZE EQU 67H
MI_TWOBYTEOP EQU 0fH
MI_POP_DS EQU 1fH
MI_POP_ES EQU 07H
MI_POP_FS EQU 0A1H
MI_POP_GS EQU 0A9H
MI_INT3 EQU 0CCH
MI_INT EQU 0CDH
MI_IRET EQU 0CFH
MI_LONG_JMP EQU 0EAH
MI_LONG_CALL EQU 9AH
MI_LONG_RET EQU 0CBH
MI_LONG_RETn EQU 0CAH
MI_NEAR_RET EQU 0C3H
MI_IN_PORT_AL EQU 0E4H
MI_IN_PORT_AX EQU 0E5H
MI_OUT_PORT_AL EQU 0E6H
MI_OUT_PORT_AX EQU 0E7H
MI_IN_DX_AL EQU 0ECH
MI_IN_DX_AX EQU 0EDH
MI_OUT_DX_AL EQU 0EEH
MI_OUT_DX_AX EQU 0EFH
MI_GROUP5 EQU 0FFH
MI_SEGES EQU 26H
MI_SEGCS EQU 2EH
MI_SEGSS EQU 36H
MI_SEGDS EQU 3EH
MI_SEGFS EQU 64H
MI_SEGGS EQU 65H
MI_ESCMASK EQU 0F8H
MI_ESC EQU 0D8H
MI_MODMASK EQU 0C0H
MI_MODSHIFT EQU 6
MI_MODNONE EQU 00H
MI_MODBYTE EQU 40H
MI_MODWORD EQU 80H
MI_MODREG EQU 0C0H
MI_REGMASK EQU 38H
MI_REGSHIFT EQU 3
MI_REGAX EQU 00H
MI_REGCX EQU 08H
MI_REGDX EQU 10H
MI_REGBX EQU 18H
MI_REG3 EQU 18H
MI_REGSP EQU 20H
MI_REGBP EQU 28H
MI_REGSI EQU 30H
MI_REGDI EQU 38H
MI_REGES EQU 00H
MI_REGCS EQU 08H
MI_REGSS EQU 10H
MI_REGDS EQU 18H
MI_REGFS EQU 20H
MI_REGGS EQU 28H
MI_RMMASK EQU 07H
MI_RMSHIFT EQU 0
MI_RMBXSI EQU 00H
MI_RMBXDI EQU 01H
MI_RMBPSI EQU 02H
MI_RMBPDI EQU 03H
MI_RMSI EQU 04H
MI_RMDI EQU 05H
MI_RMBP EQU 06H
MI_RMBX EQU 07H
MI_SIB_SSMASK EQU 0c0H
MI_SIB_SSSHIFT EQU 06H
MI_SIB_INDEXMASK EQU 38H
MI_SIB_INDEXSHIFT EQU 03H
MI_SIB_INDEXNONE EQU 20H
MI_SIB_BASEMASK EQU 07H
MI_SIB_BASESHIFT EQU 00H
MI_SIB_BASEESP EQU 04H
MI_SIB_BASENONE EQU 05H
MI_RMEDX EQU 02H
MI_RMSIB EQU 04H
MI_RMDISP EQU 05H
MI_RMEBP EQU 05H
MI_REG6 EQU 30H
MI_REGCR0 EQU 00H
MI_PUSH_AX EQU 50H
MI_PUSH_IMM EQU 68H
MI_MOV_REG_IMM EQU 0B8H
MI_MOV_REG_IMMEDIATE EQU 0B8H
MI_MOV_REG_REGMEM EQU 8BH
MI_ADD_AX_IMM EQU 05H
MI_CALL_NEAR_REL EQU 0E8H
SIZE_CALL_NEAR_REL EQU 5
MI_LMSW_OPCODE EQU 01H
MI_GET_CRx_OPCODE EQU 20H
MI_GET_DRx_OPCODE EQU 21H
MI_SET_CRx_OPCODE EQU 22H
MI_SET_DRx_OPCODE EQU 23H
MI_GET_TRx_OPCODE EQU 24H
MI_SET_TRx_OPCODE EQU 26H
MI_MOV_REG8_MEM8 EQU 8AH
MI_MOV_SEG_MEM_OPCODE EQU 8eH
w_s STRUC
lobyte DB ?
hibyte DB ?
w_s ENDS
LowByte EQU lobyte
HighByte EQU hibyte
dw_s STRUC
loword DW ?
hiword DW ?
dw_s ENDS
LowWord EQU loword
HighWord EQU hiword
FarPtr STRUC
Offst DW ?
Segmt DW ?
FarPtr ENDS
FarPtr32 STRUC
Offst32 DD ?
Segmt32 DW ?
Pad32 DW ?
FarPtr32 ENDS
retf16_s STRUC
retf16_ip DW ?
retf16_cs DW ?
retf16_s ENDS
retf32_s STRUC
retf32_eip DD ?
retf32_cs DW ?
retf32_padcs DW ?
retf32_s ENDS
iret16_s STRUC
iret16_ip DW ?
iret16_cs DW ?
iret16_flag DW ?
iret16_s ENDS
Iret_s STRUC
I_CSIP DB SIZE FarPtr DUP (?)
I_FLAGS DW ?
Iret_s ENDS
IretFrame STRUC
IretIP DW ?
IretCS DW ?
IretFLAGS DW ?
IretFrame ENDS
IretCSIP EQU <DWORD PTR IretIP>
iret32_s STRUC
iret32_eip DD ?
iret32_cs DW ?
iret32_padcs DW ?
iret32_eflag DD ?
iret32_s ENDS
Iret32_s STRUC
I32_CSEIP DB SIZE FarPtr32 DUP (?)
I32_EFLAGS DD ?
Iret32_s ENDS
I32_CS EQU <I32_CSEIP.Segmt32>
I32_EIP EQU <I32_CSEIP.Offst32>
I32_IP EQU <I32_CSEIP.Offst32.loword>
I32_FLAGS EQU <I32_EFLAGS.loword>
pltiret16_s STRUC
pltiret16_ip DW ?
pltiret16_cs DW ?
pltiret16_flag DW ?
pltiret16_sp DW ?
pltiret16_ss DW ?
pltiret16_s ENDS
PLTIret_s STRUC
PI_CSIP DB SIZE FarPtr DUP (?)
PI_FLAGS DW ?
PI_SSSP DB SIZE FarPtr DUP (?)
PLTIret_s ENDS
PLTIretFrame STRUC
PLTIretIP DW ?
PLTIretCS DW ?
PLTIretFLAGS DW ?
PLTIretSP DW ?
PLTIretSS DW ?
PLTIretFrame ENDS
PLTIretCSIP EQU DWORD PTR PLTIretIP
PLTIretSSSP EQU DWORD PTR PLTIretSP
pltiret32_s STRUC
pltiret32_eip DD ?
pltiret32_cs DW ?
pltiret32_padcs DW ?
pltiret32_eflag DD ?
pltiret32_esp DD ?
pltiret32_ss DW ?
pltiret32_padss DW ?
pltiret32_s ENDS
PLTIret32_s STRUC
PI32_CSEIP DB SIZE FarPtr32 DUP (?)
PI32_EFLAGS DD ?
PI32_SSESP DB SIZE FarPtr32 DUP (?)
PLTIret32_s ENDS
PI32_CS EQU <PI32_CSEIP.Segmt32>
PI32_EIP EQU <PI32_CSEIP.Offst32>
PI32_SS EQU <PI32_SSESP.Segmt32>
PI32_ESP EQU <PI32_SSESP.Offst32>
PI32_FLAGS EQU <WORD PTR PI32_EFLAGS>
ptr_t STRUC
ptr_flat DD ?
ptr_t ENDS
ptr_off equ <ptr_flat.Offst>
ptr_sel equ <ptr_flat.Segmt>
pusha_s STRUC
pas_di DW ?
pas_si DW ?
pas_bp DW ?
pas_sp DW ?
pas_bx DW ?
pas_dx DW ?
pas_cx DW ?
pas_ax DW ?
pusha_s ENDS
pushad_s STRUC
pads_edi DD ?
pads_esi DD ?
pads_ebp DD ?
pads_esp DD ?
pads_ebx DD ?
pads_edx DD ?
pads_ecx DD ?
pads_eax DD ?
pushad_s ENDS
pads_di EQU <WORD PTR pads_edi>
pads_si EQU <WORD PTR pads_esi>
pads_bp EQU <WORD PTR pads_ebp>
pads_sp EQU <WORD PTR pads_esp>
pads_bx EQU <WORD PTR pads_ebx>
pads_dx EQU <WORD PTR pads_edx>
pads_cx EQU <WORD PTR pads_ecx>
pads_ax EQU <WORD PTR pads_eax>