49 lines
1.2 KiB
C
49 lines
1.2 KiB
C
typedef struct _vdminternalinfo {
|
|
DWORD dwLdtBase;
|
|
DWORD dwLdtLimit;
|
|
DWORD dwIntelBase;
|
|
DWORD dwReserved;
|
|
WORD wKernelSeg;
|
|
DWORD dwOffsetTHHOOK;
|
|
LPVOID vdmContext;
|
|
LPVOID lpRemoteAddress;
|
|
DWORD lpRemoteBlock;
|
|
BOOL f386;
|
|
LPVOID lpNtvdmState;
|
|
LPVOID lpVdmDbgFlags;
|
|
LPVOID lpNtCpuInfo;
|
|
LPVOID lpVdmBreakPoints;
|
|
} VDMINTERNALINFO;
|
|
typedef VDMINTERNALINFO *LPVDMINTERNALINFO;
|
|
|
|
|
|
#define MAX_VDM_BREAKPOINTS 16
|
|
#define VDM_TEMPBP 0
|
|
typedef struct _VDM_BREAKPOINT { /* VDMBP */
|
|
BYTE Flags;
|
|
BYTE Opcode;
|
|
WORD Count;
|
|
WORD Seg;
|
|
DWORD Offset;
|
|
} VDM_BREAKPOINT;
|
|
|
|
//
|
|
// Bits defined in Flags
|
|
//
|
|
#define VDMBP_SET 0x01
|
|
#define VDMBP_ENABLED 0x02
|
|
#define VDMBP_FLUSH 0x04
|
|
#define VDMBP_PENDING 0x08
|
|
#define VDMBP_V86 0x10
|
|
|
|
|
|
typedef struct _com_header {
|
|
DWORD dwBlockAddress;
|
|
DWORD dwReturnValue;
|
|
WORD wArgsPassed;
|
|
WORD wArgsSize;
|
|
WORD wBlockLength;
|
|
WORD wSuccess;
|
|
} COM_HEADER;
|
|
typedef COM_HEADER FAR *LPCOM_HEADER;
|