+++ /dev/null
-#include <wdm.h>
-
-#include <windef.h>
-#include <winerror.h>
-#include <wingdi.h>
-#define NT_BUILD_ENVIRONMENT
-#include <winddi.h>
-
-#include <ddkmapi.h>
-
-/* Prototypes */
-VOID DxGetVersionNumber(PVOID lpvInBuffer, LPDDGETVERSIONNUMBER lpvOutBuffer);
-VOID DxCloseHandle(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxOpenDirectDraw(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxOpenSurface(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxOpenVideoPort(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxGetKernelCaps(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxGetFieldNumber(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxSetFieldNumber(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxSetSkipPattern(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxGetSurfaceState(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxSetSurfaceState(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxLock(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxFlipOverlay(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxFlipVideoPort(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxGetCurrentAutoflip(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxGetPreviousAutoflip(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxRegisterEvent(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxUnregisterEvent(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxGetPolarity(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxOpenVpCatureDevice(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxAddVpCaptureBuffer(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-VOID DxFlushVpCaptureBuffs(PVOID lpvInBuffer, PVOID lpvOutBuffer);
-
-/* Internal driver table being use as looking up table for correct size of structs */
-DWORD tblCheckInBuffer [] =
-{
- /* DD_DXAPI_GETVERSIONNUMBER */
- 0,
- /* DD_DXAPI_CLOSEHANDLE */
- sizeof(DDCLOSEHANDLE),
- 0, // DD_DXAPI_OPENDIRECTDRAW
- 0, // DD_DXAPI_OPENSURFACE
- 0, // DD_DXAPI_OPENVIDEOPORT
- /* DD_DXAPI_GETKERNELCAPS */
- sizeof(HANDLE),
- /* DD_DXAPI_GET_VP_FIELD_NUMBER */
- sizeof(DDGETFIELDNUMIN),
- 0, // DD_DXAPI_SET_VP_FIELD_NUMBER
- 0, // DD_DXAPI_SET_VP_SKIP_FIELD
- 0, // DD_DXAPI_GET_SURFACE_STATE
- 0, // DD_DXAPI_SET_SURFACE_STATE
- 0, // DD_DXAPI_LOCK
- /* DD_DXAPI_FLIP_OVERLAY */
- sizeof(DDFLIPOVERLAY),
- /* DD_DXAPI_FLIP_VP */
- sizeof(DDFLIPVIDEOPORT),
- /* DD_DXAPI_GET_CURRENT_VP_AUTOFLIP_SURFACE */
- sizeof(DDGETAUTOFLIPIN),
- /* DD_DXAPI_GET_LAST_VP_AUTOFLIP_SURFACE */
- sizeof(DDGETAUTOFLIPIN),
- /* DD_DXAPI_REGISTER_CALLBACK */
- sizeof(DDREGISTERCALLBACK),
- /* DD_DXAPI_UNREGISTER_CALLBACK */
- sizeof(DDREGISTERCALLBACK),
- /* DD_DXAPI_GET_POLARITY */
- sizeof(DDGETPOLARITYIN),
- /* DD_DXAPI_OPENVPCAPTUREDEVICE */
- sizeof(DDOPENVPCAPTUREDEVICEIN),
- /* DD_DXAPI_ADDVPCAPTUREBUFFER */
- sizeof(DDADDVPCAPTUREBUFF),
- /* DD_DXAPI_FLUSHVPCAPTUREBUFFERS */
- sizeof(HANDLE)
-};
-
-DWORD tblCheckOutBuffer [] =
-{
- /* DD_DXAPI_GETVERSIONNUMBER */
- sizeof(DDGETVERSIONNUMBER),
- /* DD_DXAPI_CLOSEHANDLE */
- sizeof(DWORD),
- 0, // DD_DXAPI_OPENDIRECTDRAW
- 0, // DD_DXAPI_OPENSURFACE
- 0, // DD_DXAPI_OPENVIDEOPORT
- /* DD_DXAPI_GETKERNELCAPS */
- sizeof(DDGETKERNELCAPSOUT),
- /* DD_DXAPI_GET_VP_FIELD_NUMBER */
- sizeof(DDGETFIELDNUMOUT),
- 0, // DD_DXAPI_SET_VP_FIELD_NUMBER
- 0, // DD_DXAPI_SET_VP_SKIP_FIELD
- 0, // DD_DXAPI_GET_SURFACE_STATE
- 0, // DD_DXAPI_SET_SURFACE_STATE
- 0, // DD_DXAPI_LOCK
- /* DD_DXAPI_FLIP_OVERLAY */
- sizeof(DWORD),
- /* DD_DXAPI_FLIP_VP */
- sizeof(DWORD),
- /* DD_DXAPI_GET_CURRENT_VP_AUTOFLIP_SURFACE */
- sizeof(DDGETAUTOFLIPOUT),
- /* DD_DXAPI_GET_LAST_VP_AUTOFLIP_SURFACE */
- sizeof(DDGETAUTOFLIPOUT),
- /* DD_DXAPI_REGISTER_CALLBACK */
- sizeof(DWORD),
- /* DD_DXAPI_UNREGISTER_CALLBACK */
- sizeof(DWORD),
- /* DD_DXAPI_GET_POLARITY */
- sizeof(DDGETPOLARITYOUT),
- /* DD_DXAPI_OPENVPCAPTUREDEVICE */
- sizeof(DDOPENVPCAPTUREDEVICEOUT),
- /* DD_DXAPI_ADDVPCAPTUREBUFFER */
- sizeof(DWORD),
- /* DD_DXAPI_FLUSHVPCAPTUREBUFFERS */
- sizeof(DWORD)
-};
-
-/* Internal driver function */
-DRVFN gDxApiEntryPoint [] =
-{
- {DD_DXAPI_GETVERSIONNUMBER - DD_FIRST_DXAPI, (PFN) DxGetVersionNumber},
- {DD_DXAPI_CLOSEHANDLE - DD_FIRST_DXAPI, (PFN) DxCloseHandle},
- {DD_DXAPI_OPENDIRECTDRAW - DD_FIRST_DXAPI, (PFN) DxOpenDirectDraw},
- {DD_DXAPI_OPENSURFACE - DD_FIRST_DXAPI, (PFN) DxOpenSurface},
- {DD_DXAPI_OPENVIDEOPORT - DD_FIRST_DXAPI, (PFN) DxOpenVideoPort},
- {DD_DXAPI_GETKERNELCAPS - DD_FIRST_DXAPI, (PFN) DxGetKernelCaps},
- {DD_DXAPI_GET_VP_FIELD_NUMBER - DD_FIRST_DXAPI, (PFN) DxGetFieldNumber},
- {DD_DXAPI_SET_VP_FIELD_NUMBER - DD_FIRST_DXAPI, (PFN) DxSetFieldNumber},
- {DD_DXAPI_SET_VP_SKIP_FIELD - DD_FIRST_DXAPI, (PFN) DxSetSkipPattern},
- {DD_DXAPI_GET_SURFACE_STATE - DD_FIRST_DXAPI, (PFN) DxGetSurfaceState},
- {DD_DXAPI_SET_SURFACE_STATE - DD_FIRST_DXAPI, (PFN) DxSetSurfaceState},
- {DD_DXAPI_LOCK - DD_FIRST_DXAPI, (PFN) DxLock},
- {DD_DXAPI_FLIP_OVERLAY - DD_FIRST_DXAPI, (PFN) DxFlipOverlay},
- {DD_DXAPI_FLIP_VP - DD_FIRST_DXAPI, (PFN) DxFlipVideoPort},
- {DD_DXAPI_GET_CURRENT_VP_AUTOFLIP_SURFACE - DD_FIRST_DXAPI, (PFN) DxGetCurrentAutoflip},
- {DD_DXAPI_GET_LAST_VP_AUTOFLIP_SURFACE - DD_FIRST_DXAPI, (PFN) DxGetPreviousAutoflip},
- {DD_DXAPI_REGISTER_CALLBACK - DD_FIRST_DXAPI, (PFN) DxRegisterEvent},
- {DD_DXAPI_UNREGISTER_CALLBACK - DD_FIRST_DXAPI, (PFN) DxUnregisterEvent},
- {DD_DXAPI_GET_POLARITY - DD_FIRST_DXAPI, (PFN) DxGetPolarity},
- {DD_DXAPI_OPENVPCAPTUREDEVICE - DD_FIRST_DXAPI, (PFN) DxOpenVpCatureDevice},
- {DD_DXAPI_ADDVPCAPTUREBUFFER - DD_FIRST_DXAPI, (PFN) DxAddVpCaptureBuffer},
- {DD_DXAPI_FLUSHVPCAPTUREBUFFERS - DD_FIRST_DXAPI, (PFN) DxFlushVpCaptureBuffs}
-};