4 * Windows NT Device Driver Kit
6 * This file is part of the ReactOS DDK package.
9 * Hermes Belusca-Maito (hermes.belusca@sfr.fr)
11 * THIS SOFTWARE IS NOT COPYRIGHTED
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
41 VDDTerminateVDM(VOID
);
69 typedef VOID (WINAPI
*PFNVDD_INB
) (WORD iport
, PBYTE data
);
70 typedef VOID (WINAPI
*PFNVDD_INW
) (WORD iport
, PWORD data
);
71 typedef VOID (WINAPI
*PFNVDD_INSB
) (WORD iport
, PBYTE data
, WORD count
);
72 typedef VOID (WINAPI
*PFNVDD_INSW
) (WORD iport
, PWORD data
, WORD count
);
73 typedef VOID (WINAPI
*PFNVDD_OUTB
) (WORD iport
, BYTE data
);
74 typedef VOID (WINAPI
*PFNVDD_OUTW
) (WORD iport
, WORD data
);
75 typedef VOID (WINAPI
*PFNVDD_OUTSB
) (WORD iport
, PBYTE data
, WORD count
);
76 typedef VOID (WINAPI
*PFNVDD_OUTSW
) (WORD iport
, PWORD data
, WORD count
);
78 typedef struct _VDD_IO_HANDLERS
80 PFNVDD_INB inb_handler
;
81 PFNVDD_INW inw_handler
;
82 PFNVDD_INSB insb_handler
;
83 PFNVDD_INSW insw_handler
;
84 PFNVDD_OUTB outb_handler
;
85 PFNVDD_OUTW outw_handler
;
86 PFNVDD_OUTSB outsb_handler
;
87 PFNVDD_OUTSW outsw_handler
;
88 } VDD_IO_HANDLERS
, *PVDD_IO_HANDLERS
;
90 typedef struct _VDD_IO_PORTRANGE
94 } VDD_IO_PORTRANGE
, *PVDD_IO_PORTRANGE
;
102 IN PVDD_IO_PORTRANGE pPortRange
,
103 IN PVDD_IO_HANDLERS IOhandler
112 IN PVDD_IO_PORTRANGE pPortRange
120 typedef struct _VDD_DMA_INFO
128 } VDD_DMA_INFO
, *PVDD_DMA_INFO
;
130 #define VDD_DMA_ADDR 0x01
131 #define VDD_DMA_COUNT 0x02
132 #define VDD_DMA_PAGE 0x04
133 #define VDD_DMA_STATUS 0x08
134 #define VDD_DMA_ALL (VDD_DMA_ADDR | VDD_DMA_COUNT | VDD_DMA_PAGE | VDD_DMA_STATUS)
152 IN PVDD_DMA_INFO pDmaInfo
162 IN PVDD_DMA_INFO pDmaInfo
177 #define MSW_PE 0x0001
180 #define getMODE() ((getMSW() & MSW_PE) ? VDM_PM : VDM_V86)
183 (WINAPI
*PVDD_MEMORY_HANDLER
)
194 IN BOOLEAN ProtectedMode
203 IN BOOLEAN ProtectedMode
242 IN PVDD_MEMORY_HANDLER MemoryHandler
247 VDDDeInstallMemoryHook