diff --git a/reactos/dll/directx/ddraw/ddraw.rbuild b/reactos/dll/directx/ddraw/ddraw.rbuild
index f85f32d01c7..678845f8162 100644
--- a/reactos/dll/directx/ddraw/ddraw.rbuild
+++ b/reactos/dll/directx/ddraw/ddraw.rbuild
@@ -17,6 +17,7 @@
ddraw.rc
main.c
regsvr.c
+ helinterface.c
clipper.c
color.c
diff --git a/reactos/dll/directx/ddraw/gamma.c b/reactos/dll/directx/ddraw/gamma.c
index c9321daa582..9954b11a451 100644
--- a/reactos/dll/directx/ddraw/gamma.c
+++ b/reactos/dll/directx/ddraw/gamma.c
@@ -1,90 +1,90 @@
-/* $Id: gamma_main.c 21434 2006-04-01 19:12:56Z greatlrd $
- *
- * COPYRIGHT: See COPYING in the top level directory
- * PROJECT: ReactOS
- * FILE: lib/ddraw/main/gamma.c
- * PURPOSE: IDirectDrawGamma Implementation
- * PROGRAMMER: Maarten Bosma
- *
- */
-
-#include "rosdraw.h"
-
-ULONG WINAPI
-DirectDrawGammaControl_AddRef( LPDIRECTDRAWGAMMACONTROL iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawGammaImpl * This = (IDirectDrawGammaImpl*)iface;
-
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedIncrement( (PLONG) &This->ref);
- }
- return ref;
-}
-
-ULONG WINAPI
-DirectDrawGammaControl_Release( LPDIRECTDRAWGAMMACONTROL iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawGammaImpl* This = (IDirectDrawGammaImpl*)iface;
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedDecrement( (PLONG) &This->ref);
-
- if (ref == 0)
- {
- /* Add here if we need releae some memory pointer before
- * exists
- */
-
- if (This!=NULL)
- {
- HeapFree(GetProcessHeap(), 0, This);
- }
- }
- }
- return ref;
-}
-
-HRESULT WINAPI
-DirectDrawGammaControl_QueryInterface( LPDIRECTDRAWGAMMACONTROL iface,
- REFIID riid,
- LPVOID *ppObj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawGammaControl_GetGammaRamp( LPDIRECTDRAWGAMMACONTROL iface,
- DWORD dwFlags,
- LPDDGAMMARAMP lpGammaRamp)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawGammaControl_SetGammaRamp( LPDIRECTDRAWGAMMACONTROL iface,
- DWORD dwFlags,
- LPDDGAMMARAMP lpGammaRamp)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-IDirectDrawGammaControlVtbl DirectDrawGammaControl_Vtable =
-{
- DirectDrawGammaControl_QueryInterface,
- DirectDrawGammaControl_AddRef,
- DirectDrawGammaControl_Release,
- DirectDrawGammaControl_GetGammaRamp,
- DirectDrawGammaControl_SetGammaRamp
-};
+/* $Id$
+ *
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS
+ * FILE: lib/ddraw/main/gamma.c
+ * PURPOSE: IDirectDrawGamma Implementation
+ * PROGRAMMER: Maarten Bosma
+ *
+ */
+
+#include "rosdraw.h"
+
+ULONG WINAPI
+DirectDrawGammaControl_AddRef( LPDIRECTDRAWGAMMACONTROL iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawGammaImpl * This = (IDirectDrawGammaImpl*)iface;
+
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedIncrement( (PLONG) &This->ref);
+ }
+ return ref;
+}
+
+ULONG WINAPI
+DirectDrawGammaControl_Release( LPDIRECTDRAWGAMMACONTROL iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawGammaImpl* This = (IDirectDrawGammaImpl*)iface;
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedDecrement( (PLONG) &This->ref);
+
+ if (ref == 0)
+ {
+ /* Add here if we need releae some memory pointer before
+ * exists
+ */
+
+ if (This!=NULL)
+ {
+ HeapFree(GetProcessHeap(), 0, This);
+ }
+ }
+ }
+ return ref;
+}
+
+HRESULT WINAPI
+DirectDrawGammaControl_QueryInterface( LPDIRECTDRAWGAMMACONTROL iface,
+ REFIID riid,
+ LPVOID *ppObj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawGammaControl_GetGammaRamp( LPDIRECTDRAWGAMMACONTROL iface,
+ DWORD dwFlags,
+ LPDDGAMMARAMP lpGammaRamp)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawGammaControl_SetGammaRamp( LPDIRECTDRAWGAMMACONTROL iface,
+ DWORD dwFlags,
+ LPDDGAMMARAMP lpGammaRamp)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+IDirectDrawGammaControlVtbl DirectDrawGammaControl_Vtable =
+{
+ DirectDrawGammaControl_QueryInterface,
+ DirectDrawGammaControl_AddRef,
+ DirectDrawGammaControl_Release,
+ DirectDrawGammaControl_GetGammaRamp,
+ DirectDrawGammaControl_SetGammaRamp
+};
diff --git a/reactos/dll/directx/ddraw/hal/ddraw_hal.c b/reactos/dll/directx/ddraw/hal/ddraw_hal.c
index 00ef4d3b3c4..12f0e3789dc 100644
--- a/reactos/dll/directx/ddraw/hal/ddraw_hal.c
+++ b/reactos/dll/directx/ddraw/hal/ddraw_hal.c
@@ -199,29 +199,7 @@ Hal_DirectDraw_Release (LPDIRECTDRAW7 iface)
-HRESULT
-Hal_DirectDraw_SetCooperativeLevel (LPDIRECTDRAW7 iface)
-{
- IDirectDrawImpl* This = (IDirectDrawImpl*)iface;
- DDHAL_SETEXCLUSIVEMODEDATA SetExclusiveMode;
-
- if (!(This->mDDrawGlobal.lpDDCBtmp->HALDD.dwFlags & DDHAL_CB32_SETEXCLUSIVEMODE))
- {
- return DDERR_NODRIVERSUPPORT;
- }
-
- SetExclusiveMode.lpDD = &This->mDDrawGlobal;
- SetExclusiveMode.ddRVal = DDERR_NOTPALETTIZED;
- SetExclusiveMode.dwEnterExcl = This->cooperative_level;
-
- if (This->mDDrawGlobal.lpDDCBtmp->HALDD.SetExclusiveMode(&SetExclusiveMode) != DDHAL_DRIVER_HANDLED)
- {
- return DDERR_NODRIVERSUPPORT;
- }
-
- return SetExclusiveMode.ddRVal;
-}
diff --git a/reactos/dll/directx/ddraw/helinterface.c b/reactos/dll/directx/ddraw/helinterface.c
new file mode 100644
index 00000000000..48226fab3cd
--- /dev/null
+++ b/reactos/dll/directx/ddraw/helinterface.c
@@ -0,0 +1,40 @@
+#include "rosdraw.h"
+
+HRESULT Hel_DirectDraw_Initialize (LPDIRECTDRAW7 iface)
+{
+ IDirectDrawImpl* This = (IDirectDrawImpl*)iface;
+
+ This->HELMemoryAvilable = HEL_GRAPHIC_MEMORY_MAX;
+
+ This->mCallbacks.HELDD.dwFlags = DDHAL_CB32_DESTROYDRIVER;
+ This->mCallbacks.HELDD.DestroyDriver = HelDdDestroyDriver;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_CREATESURFACE;
+ This->mCallbacks.HELDD.CreateSurface = HelDdCreateSurface;
+
+ // DDHAL_CB32_
+ //This->mCallbacks.HELDD.SetColorKey = HelDdSetColorKey;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_SETMODE;
+ This->mCallbacks.HELDD.SetMode = HelDdSetMode;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_WAITFORVERTICALBLANK;
+ This->mCallbacks.HELDD.WaitForVerticalBlank = HelDdWaitForVerticalBlank;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_CANCREATESURFACE;
+ This->mCallbacks.HELDD.CanCreateSurface = HelDdCanCreateSurface;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_CREATEPALETTE;
+ This->mCallbacks.HELDD.CreatePalette = HelDdCreatePalette;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_GETSCANLINE;
+ This->mCallbacks.HELDD.GetScanLine = HelDdGetScanLine;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_SETEXCLUSIVEMODE;
+ This->mCallbacks.HELDD.SetExclusiveMode = HelDdSetExclusiveMode;
+
+ This->mCallbacks.HELDD.dwFlags += DDHAL_CB32_FLIPTOGDISURFACE;
+ This->mCallbacks.HELDD.FlipToGDISurface = HelDdFlipToGDISurface;
+
+ return DD_OK;
+}
diff --git a/reactos/dll/directx/ddraw/kernel.c b/reactos/dll/directx/ddraw/kernel.c
index a0c8ed6fe27..cb70ecfab43 100644
--- a/reactos/dll/directx/ddraw/kernel.c
+++ b/reactos/dll/directx/ddraw/kernel.c
@@ -1,168 +1,168 @@
-/* $Id: kernel_main.c 21434 2006-04-01 19:12:56Z greatlrd $
- *
- * COPYRIGHT: See COPYING in the top level directory
- * PROJECT: ReactOS
- * FILE: lib/ddraw/main/kernel.c
- * PURPOSE: IDirectDrawKernel and IDirectDrawSurfaceKernel Implementation
- * PROGRAMMER: Maarten Bosma
- *
- */
-
-#include "rosdraw.h"
-
-
-/***** IDirectDrawKernel ****/
-
-ULONG WINAPI
-DirectDrawKernel_AddRef ( LPDIRECTDRAWKERNEL iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawKernelImpl * This = (IDirectDrawKernelImpl*)iface;
-
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedIncrement( (PLONG) &This->ref);
- }
- return ref;
-}
-
-ULONG WINAPI
-DirectDrawKernel_Release ( LPDIRECTDRAWKERNEL iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawKernelImpl* This = (IDirectDrawKernelImpl*)iface;
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedDecrement( (PLONG) &This->ref);
-
- if (ref == 0)
- {
- /* Add here if we need releae some memory pointer before
- * exists
- */
-
- if (This!=NULL)
- {
- HeapFree(GetProcessHeap(), 0, This);
- }
- }
- }
- return ref;
-}
-
-HRESULT WINAPI
-DirectDrawKernel_QueryInterface ( LPDIRECTDRAWKERNEL iface,
- REFIID riid,
- LPVOID* ppvObj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawKernel_GetKernelHandle ( LPDIRECTDRAWKERNEL iface,
- ULONG* handle)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawKernel_ReleaseKernelHandle ( LPDIRECTDRAWKERNEL iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-
-ULONG WINAPI
-DDSurfaceKernel_AddRef ( LPDIRECTDRAWSURFACEKERNEL iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawSurfaceKernelImpl * This = (IDirectDrawSurfaceKernelImpl*)iface;
-
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedIncrement( (PLONG) &This->ref);
- }
- return ref;
-}
-
-ULONG WINAPI
-DDSurfaceKernel_Release ( LPDIRECTDRAWSURFACEKERNEL iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawSurfaceKernelImpl* This = (IDirectDrawSurfaceKernelImpl*)iface;
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedDecrement( (PLONG) &This->ref);
-
- if (ref == 0)
- {
- /* Add here if we need releae some memory pointer before
- * exists
- */
-
- if (This!=NULL)
- {
- HeapFree(GetProcessHeap(), 0, This);
- }
- }
- }
- return ref;
-}
-
-HRESULT WINAPI
-DDSurfaceKernel_QueryInterface ( LPDIRECTDRAWSURFACEKERNEL iface,
- REFIID riid,
- LPVOID* ppvObj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DDSurfaceKernel_GetKernelHandle ( LPDIRECTDRAWSURFACEKERNEL iface,
- ULONG* handle)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DDSurfaceKernel_ReleaseKernelHandle ( LPDIRECTDRAWSURFACEKERNEL iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-
-IDirectDrawKernelVtbl DirectDrawKernel_Vtable =
-{
- DirectDrawKernel_QueryInterface,
- DirectDrawKernel_AddRef,
- DirectDrawKernel_Release,
- DirectDrawKernel_GetKernelHandle,
- DirectDrawKernel_ReleaseKernelHandle
-};
-
-IDirectDrawSurfaceKernelVtbl DirectDrawSurfaceKernel_Vtable =
-{
- DDSurfaceKernel_QueryInterface,
- DDSurfaceKernel_AddRef,
- DDSurfaceKernel_Release,
- DDSurfaceKernel_GetKernelHandle,
- DDSurfaceKernel_ReleaseKernelHandle
-};
+/* $Id$
+ *
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS
+ * FILE: lib/ddraw/main/kernel.c
+ * PURPOSE: IDirectDrawKernel and IDirectDrawSurfaceKernel Implementation
+ * PROGRAMMER: Maarten Bosma
+ *
+ */
+
+#include "rosdraw.h"
+
+
+/***** IDirectDrawKernel ****/
+
+ULONG WINAPI
+DirectDrawKernel_AddRef ( LPDIRECTDRAWKERNEL iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawKernelImpl * This = (IDirectDrawKernelImpl*)iface;
+
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedIncrement( (PLONG) &This->ref);
+ }
+ return ref;
+}
+
+ULONG WINAPI
+DirectDrawKernel_Release ( LPDIRECTDRAWKERNEL iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawKernelImpl* This = (IDirectDrawKernelImpl*)iface;
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedDecrement( (PLONG) &This->ref);
+
+ if (ref == 0)
+ {
+ /* Add here if we need releae some memory pointer before
+ * exists
+ */
+
+ if (This!=NULL)
+ {
+ HeapFree(GetProcessHeap(), 0, This);
+ }
+ }
+ }
+ return ref;
+}
+
+HRESULT WINAPI
+DirectDrawKernel_QueryInterface ( LPDIRECTDRAWKERNEL iface,
+ REFIID riid,
+ LPVOID* ppvObj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawKernel_GetKernelHandle ( LPDIRECTDRAWKERNEL iface,
+ ULONG* handle)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawKernel_ReleaseKernelHandle ( LPDIRECTDRAWKERNEL iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+
+ULONG WINAPI
+DDSurfaceKernel_AddRef ( LPDIRECTDRAWSURFACEKERNEL iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawSurfaceKernelImpl * This = (IDirectDrawSurfaceKernelImpl*)iface;
+
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedIncrement( (PLONG) &This->ref);
+ }
+ return ref;
+}
+
+ULONG WINAPI
+DDSurfaceKernel_Release ( LPDIRECTDRAWSURFACEKERNEL iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawSurfaceKernelImpl* This = (IDirectDrawSurfaceKernelImpl*)iface;
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedDecrement( (PLONG) &This->ref);
+
+ if (ref == 0)
+ {
+ /* Add here if we need releae some memory pointer before
+ * exists
+ */
+
+ if (This!=NULL)
+ {
+ HeapFree(GetProcessHeap(), 0, This);
+ }
+ }
+ }
+ return ref;
+}
+
+HRESULT WINAPI
+DDSurfaceKernel_QueryInterface ( LPDIRECTDRAWSURFACEKERNEL iface,
+ REFIID riid,
+ LPVOID* ppvObj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DDSurfaceKernel_GetKernelHandle ( LPDIRECTDRAWSURFACEKERNEL iface,
+ ULONG* handle)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DDSurfaceKernel_ReleaseKernelHandle ( LPDIRECTDRAWSURFACEKERNEL iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+
+IDirectDrawKernelVtbl DirectDrawKernel_Vtable =
+{
+ DirectDrawKernel_QueryInterface,
+ DirectDrawKernel_AddRef,
+ DirectDrawKernel_Release,
+ DirectDrawKernel_GetKernelHandle,
+ DirectDrawKernel_ReleaseKernelHandle
+};
+
+IDirectDrawSurfaceKernelVtbl DirectDrawSurfaceKernel_Vtable =
+{
+ DDSurfaceKernel_QueryInterface,
+ DDSurfaceKernel_AddRef,
+ DDSurfaceKernel_Release,
+ DDSurfaceKernel_GetKernelHandle,
+ DDSurfaceKernel_ReleaseKernelHandle
+};
diff --git a/reactos/dll/directx/ddraw/main/ddraw_main.c b/reactos/dll/directx/ddraw/main/ddraw_main.c
index e596e9df02a..0a6fc726bff 100644
--- a/reactos/dll/directx/ddraw/main/ddraw_main.c
+++ b/reactos/dll/directx/ddraw/main/ddraw_main.c
@@ -290,6 +290,7 @@ HRESULT WINAPI Main_DirectDraw_SetCooperativeLevel (LPDIRECTDRAW7 iface, HWND hw
DX_WINDBG_trace();
IDirectDrawImpl* This = (IDirectDrawImpl*)iface;
+ DDHAL_SETEXCLUSIVEMODEDATA SetExclusiveMode;
// check the parameters
if ((This->cooperative_level == cooplevel) && ((HWND)This->mDDrawGlobal.lpExclusiveOwner->hWnd == hwnd))
@@ -313,13 +314,27 @@ HRESULT WINAPI Main_DirectDraw_SetCooperativeLevel (LPDIRECTDRAW7 iface, HWND hw
//mDDrawGlobal.lpExclusiveOwner->dwLocalFlags
This->cooperative_level = cooplevel;
-
- if (This->mDDrawGlobal.lpDDCBtmp->HALDD.dwFlags & DDHAL_CB32_SETEXCLUSIVEMODE)
+
+ SetExclusiveMode.lpDD = &This->mDDrawGlobal;
+ SetExclusiveMode.ddRVal = DDERR_NODRIVERSUPPORT;
+ SetExclusiveMode.dwEnterExcl = This->cooperative_level;
+
+ if (!(This->mDDrawGlobal.lpDDCBtmp->HALDD.dwFlags & DDHAL_CB32_SETEXCLUSIVEMODE))
{
- return Hal_DirectDraw_SetCooperativeLevel (iface);
+ SetExclusiveMode.SetExclusiveMode = This->mDDrawGlobal.lpDDCBtmp->HELDD.SetExclusiveMode;
+ }
+ else
+ {
+ SetExclusiveMode.SetExclusiveMode = This->mDDrawGlobal.lpDDCBtmp->HALDD.SetExclusiveMode;
+ }
+
+ if (SetExclusiveMode.SetExclusiveMode(&SetExclusiveMode) != DDHAL_DRIVER_HANDLED)
+ {
+ return DDERR_NODRIVERSUPPORT;
}
- return Hel_DirectDraw_SetCooperativeLevel(iface);
+ return SetExclusiveMode.ddRVal;
+
}
diff --git a/reactos/dll/directx/ddraw/main/surface_main.c b/reactos/dll/directx/ddraw/main/surface_main.c
index ce522edc5ff..88eaff5c112 100644
--- a/reactos/dll/directx/ddraw/main/surface_main.c
+++ b/reactos/dll/directx/ddraw/main/surface_main.c
@@ -496,9 +496,9 @@ HRESULT WINAPI
Main_DDrawSurface_SetClipper (LPDIRECTDRAWSURFACE7 iface,
LPDIRECTDRAWCLIPPER pDDClipper)
{
- DX_WINDBG_trace();
-
- DX_STUB;
+ /* FIXME not implment */
+ DX_WINDBG_trace();
+ DX_STUB_DD_OK;
}
HRESULT WINAPI
diff --git a/reactos/dll/directx/ddraw/palette.c b/reactos/dll/directx/ddraw/palette.c
index 61718e5a3a3..52df7a40c9a 100644
--- a/reactos/dll/directx/ddraw/palette.c
+++ b/reactos/dll/directx/ddraw/palette.c
@@ -1,112 +1,112 @@
-/* $Id: palette_main.c 21434 2006-04-01 19:12:56Z greatlrd $
- *
- * COPYRIGHT: See COPYING in the top level directory
- * PROJECT: ReactOS
- * FILE: lib/ddraw/main/palette.c
- * PURPOSE: IDirectDrawPalette Implementation
- * PROGRAMMER: Maarten Bosma
- *
- */
-
-#include "rosdraw.h"
-
-ULONG WINAPI
-DirectDrawPalette_Release( LPDIRECTDRAWPALETTE iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawPaletteImpl* This = (IDirectDrawPaletteImpl*)iface;
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedDecrement( (PLONG) &This->ref);
-
- if (ref == 0)
- {
- /* Add here if we need releae some memory pointer before
- * exists
- */
-
- if (This!=NULL)
- {
- HeapFree(GetProcessHeap(), 0, This);
- }
- }
- }
- return ref;
-}
-
-ULONG WINAPI
-DirectDrawPalette_AddRef( LPDIRECTDRAWPALETTE iface)
-{
- DX_WINDBG_trace();
-
- IDirectDrawPaletteImpl * This = (IDirectDrawPaletteImpl*)iface;
-
- ULONG ref=0;
-
- if (iface!=NULL)
- {
- ref = InterlockedIncrement( (PLONG) &This->ref);
- }
- return ref;
-}
-
-HRESULT WINAPI
-DirectDrawPalette_Initialize( LPDIRECTDRAWPALETTE iface,
- LPDIRECTDRAW ddraw,
- DWORD dwFlags,
- LPPALETTEENTRY palent)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawPalette_GetEntries( LPDIRECTDRAWPALETTE iface,
- DWORD dwFlags,
- DWORD dwStart, DWORD dwCount,
- LPPALETTEENTRY palent)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawPalette_SetEntries( LPDIRECTDRAWPALETTE iface,
- DWORD dwFlags,
- DWORD dwStart,
- DWORD dwCount,
- LPPALETTEENTRY palent)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-HRESULT WINAPI
-DirectDrawPalette_GetCaps( LPDIRECTDRAWPALETTE iface,
- LPDWORD lpdwCaps)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-DirectDrawPalette_QueryInterface( LPDIRECTDRAWPALETTE iface,
- REFIID refiid,
- LPVOID *obj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-IDirectDrawPaletteVtbl DirectDrawPalette_Vtable =
-{
- DirectDrawPalette_QueryInterface,
- DirectDrawPalette_AddRef,
- DirectDrawPalette_Release,
- DirectDrawPalette_GetCaps,
- DirectDrawPalette_GetEntries,
- DirectDrawPalette_Initialize,
- DirectDrawPalette_SetEntries
-};
+/* $Id$
+ *
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS
+ * FILE: lib/ddraw/main/palette.c
+ * PURPOSE: IDirectDrawPalette Implementation
+ * PROGRAMMER: Maarten Bosma
+ *
+ */
+
+#include "rosdraw.h"
+
+ULONG WINAPI
+DirectDrawPalette_Release( LPDIRECTDRAWPALETTE iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawPaletteImpl* This = (IDirectDrawPaletteImpl*)iface;
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedDecrement( (PLONG) &This->ref);
+
+ if (ref == 0)
+ {
+ /* Add here if we need releae some memory pointer before
+ * exists
+ */
+
+ if (This!=NULL)
+ {
+ HeapFree(GetProcessHeap(), 0, This);
+ }
+ }
+ }
+ return ref;
+}
+
+ULONG WINAPI
+DirectDrawPalette_AddRef( LPDIRECTDRAWPALETTE iface)
+{
+ DX_WINDBG_trace();
+
+ IDirectDrawPaletteImpl * This = (IDirectDrawPaletteImpl*)iface;
+
+ ULONG ref=0;
+
+ if (iface!=NULL)
+ {
+ ref = InterlockedIncrement( (PLONG) &This->ref);
+ }
+ return ref;
+}
+
+HRESULT WINAPI
+DirectDrawPalette_Initialize( LPDIRECTDRAWPALETTE iface,
+ LPDIRECTDRAW ddraw,
+ DWORD dwFlags,
+ LPPALETTEENTRY palent)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawPalette_GetEntries( LPDIRECTDRAWPALETTE iface,
+ DWORD dwFlags,
+ DWORD dwStart, DWORD dwCount,
+ LPPALETTEENTRY palent)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawPalette_SetEntries( LPDIRECTDRAWPALETTE iface,
+ DWORD dwFlags,
+ DWORD dwStart,
+ DWORD dwCount,
+ LPPALETTEENTRY palent)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+HRESULT WINAPI
+DirectDrawPalette_GetCaps( LPDIRECTDRAWPALETTE iface,
+ LPDWORD lpdwCaps)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+DirectDrawPalette_QueryInterface( LPDIRECTDRAWPALETTE iface,
+ REFIID refiid,
+ LPVOID *obj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+IDirectDrawPaletteVtbl DirectDrawPalette_Vtable =
+{
+ DirectDrawPalette_QueryInterface,
+ DirectDrawPalette_AddRef,
+ DirectDrawPalette_Release,
+ DirectDrawPalette_GetCaps,
+ DirectDrawPalette_GetEntries,
+ DirectDrawPalette_Initialize,
+ DirectDrawPalette_SetEntries
+};
diff --git a/reactos/dll/directx/ddraw/soft/ddraw_hel.c b/reactos/dll/directx/ddraw/soft/ddraw_hel.c
index 9a53f6ce9c2..490e165f419 100644
--- a/reactos/dll/directx/ddraw/soft/ddraw_hel.c
+++ b/reactos/dll/directx/ddraw/soft/ddraw_hel.c
@@ -12,25 +12,7 @@
-HRESULT Hel_DirectDraw_Initialize (LPDIRECTDRAW7 iface)
-{
- IDirectDrawImpl* This = (IDirectDrawImpl*)iface;
- This->HELMemoryAvilable = HEL_GRAPHIC_MEMORY_MAX;
-
- This->mCallbacks.HELDD.dwFlags = DDHAL_CB32_CANCREATESURFACE;
- This->mCallbacks.HELDD.CanCreateSurface = HelDdCanCreateSurface;
-
- This->mCallbacks.HELDD.dwFlags = DDHAL_CB32_CREATESURFACE;
- This->mCallbacks.HELDD.CreateSurface = HelDdCreateSurface;
-
- return DD_OK;
-}
-
-HRESULT Hel_DirectDraw_SetCooperativeLevel (LPDIRECTDRAW7 iface)
-{
- return DD_OK;
-}
VOID Hel_DirectDraw_Release (LPDIRECTDRAW7 iface)
{
diff --git a/reactos/dll/directx/ddraw/soft/surface_callbacks_hel.c b/reactos/dll/directx/ddraw/soft/surface_callbacks_hel.c
index e0961eab035..da79141e33a 100644
--- a/reactos/dll/directx/ddraw/soft/surface_callbacks_hel.c
+++ b/reactos/dll/directx/ddraw/soft/surface_callbacks_hel.c
@@ -14,132 +14,70 @@
extern DDPIXELFORMAT pixelformats[];
extern DWORD pixelformatsCount;
-DWORD CALLBACK HelDdCanCreateSurface(LPDDHAL_CANCREATESURFACEDATA pccsd)
+/*
+ * Direct Draw Callbacks
+ */
+
+DWORD CALLBACK
+HelDdDestroyDriver(LPDDHAL_DESTROYDRIVERDATA lpDestroyDriver)
{
- DWORD count;
-
- // FIXME check the HAL pixelformat table if it exists
-
- // FIXME check how big the surface in byte and report it can be create or not
- // if we got egunt with HEL memmory
-
-
- // HEL only support 16bits & 15bits Z-Buffer
- if ((pccsd->lpDDSurfaceDesc->ddsCaps.dwCaps & DDSCAPS_ZBUFFER) &&
- (pccsd->lpDDSurfaceDesc->ddsCaps.dwCaps & DDSCAPS_VIDEOMEMORY))
- {
- pccsd->ddRVal = DDERR_INVALIDPIXELFORMAT;
-
- if (DDSD_ZBUFFERBITDEPTH & pccsd->lpDDSurfaceDesc->dwFlags)
- {
- if (pccsd->lpDDSurfaceDesc->dwZBufferBitDepth == 16)
- {
- pccsd->ddRVal = DD_OK;
- }
- }
- else
- {
- if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwZBufferBitDepth == 16)
- {
- pccsd->ddRVal = DD_OK;
- }
- }
- return DDHAL_DRIVER_HANDLED;
- }
-
- // Check diffent pixel format
- if (pccsd->bIsDifferentPixelFormat)
- {
- //if(pccsd->ddpfPixelFormat.dwFlags & DDPF_FOURCC)
- if(pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFlags & 0)
- {
- switch (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFourCC)
- {
- //case FOURCC_YUV422:
- case 0:
- // FIXME check if display is 8bmp or not if it return DDERR_INVALIDPIXELFORMAT
- pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwYUVBitCount = 16;
- pccsd->ddRVal = DD_OK;
- return DDHAL_DRIVER_HANDLED;
-
- default:
- pccsd->ddRVal = DDERR_INVALIDPIXELFORMAT;
- return DDHAL_DRIVER_HANDLED;
- }
-
- }
- else if((pccsd->lpDDSurfaceDesc->ddsCaps.dwCaps & DDSCAPS_TEXTURE))
- {
- for(count=0;count< pixelformatsCount ;count++)
- {
- if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFlags != pixelformats->dwFlags)
- {
- continue;
- }
-
- if (!(pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFlags & (DDPF_YUV | DDPF_FOURCC)))
- {
- if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwRGBBitCount != pixelformats->dwRGBBitCount )
- {
- continue;
- }
- }
-
- if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFlags & DDPF_RGB)
- {
- if ((pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwRBitMask != pixelformats->dwRBitMask) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwGBitMask != pixelformats->dwGBitMask) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwBBitMask != pixelformats->dwBBitMask) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwRGBAlphaBitMask != pixelformats->dwRGBAlphaBitMask))
- {
- continue;
- }
- }
-
- if (pccsd->lpDDSurfaceDesc->dwFlags & DDPF_YUV)
- {
- if ((pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFourCC != pixelformats->dwFourCC) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwYUVBitCount != pixelformats->dwYUVBitCount) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwYBitMask != pixelformats->dwYBitMask) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwUBitMask != pixelformats->dwUBitMask) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwVBitMask != pixelformats->dwVBitMask) ||
- (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwYUVAlphaBitMask != pixelformats->dwYUVAlphaBitMask))
- {
- continue;
- }
- }
- else if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFlags & DDPF_FOURCC)
- {
-
- if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwFourCC != pixelformats->dwFourCC)
- {
- continue;
- }
- }
- if (pccsd->lpDDSurfaceDesc->dwFlags & DDPF_ZPIXELS)
- {
- if (pccsd->lpDDSurfaceDesc->ddpfPixelFormat.dwRGBZBitMask != pixelformats->dwRGBZBitMask)
- {
- continue;
- }
- }
-
- pccsd->ddRVal = DD_OK;
- return DDHAL_DRIVER_HANDLED;
- }
-
- // for did not found a pixel format
- pccsd->ddRVal = DDERR_INVALIDPIXELFORMAT;
- return DDHAL_DRIVER_HANDLED;
- }
- }
-
- // no diffent pixel format was found so we return OK
- pccsd->ddRVal = DD_OK;
- return DDHAL_DRIVER_HANDLED;
+ DX_STUB;
}
-DWORD CALLBACK HelDdCreateSurface(LPDDHAL_CREATESURFACEDATA lpCreateSurface)
+DWORD CALLBACK
+HelDdCreateSurface(LPDDHAL_CREATESURFACEDATA lpCreateSurface)
{
- DX_STUB;
+ DX_STUB;
}
+
+/*
+DWORD CALLBACK HelDdSetColorKey(LPDDHAL_SETCOLORKEYDATA lpSetColorKey)
+{
+ DX_STUB;
+}
+*/
+
+DWORD CALLBACK
+HelDdSetMode(LPDDHAL_SETMODEDATA SetMode)
+{
+ DX_STUB;
+}
+
+DWORD CALLBACK
+HelDdWaitForVerticalBlank(LPDDHAL_WAITFORVERTICALBLANKDATA lpWaitForVerticalBlank)
+{
+ DX_STUB;
+}
+
+DWORD CALLBACK
+HelDdCanCreateSurface(LPDDHAL_CANCREATESURFACEDATA lpCanCreateSurface)
+{
+ DX_STUB;
+}
+
+DWORD CALLBACK
+HelDdCreatePalette(LPDDHAL_CREATEPALETTEDATA lpCreatePalette)
+{
+ DX_STUB;
+}
+
+DWORD CALLBACK
+HelDdGetScanLine(LPDDHAL_GETSCANLINEDATA lpGetScanLine)
+{
+ DX_STUB;
+}
+
+DWORD CALLBACK
+HelDdSetExclusiveMode(LPDDHAL_SETEXCLUSIVEMODEDATA lpSetExclusiveMode)
+{
+ DX_WINDBG_trace();
+ DX_STUB_str("Not implement yet, return DD_OK for not bsod\n");
+ return DD_OK;
+}
+
+DWORD CALLBACK
+HelDdFlipToGDISurface(LPDDHAL_FLIPTOGDISURFACEDATA lpFlipToGDISurface)
+{
+ DX_STUB;
+}
+
diff --git a/reactos/dll/directx/ddraw/videoport.c b/reactos/dll/directx/ddraw/videoport.c
index 88e94897e39..f0f679b87c7 100644
--- a/reactos/dll/directx/ddraw/videoport.c
+++ b/reactos/dll/directx/ddraw/videoport.c
@@ -1,260 +1,260 @@
-/* $Id: videoport_main.c 21434 2006-04-01 19:12:56Z greatlrd $
- *
- * COPYRIGHT: See COPYING in the top level directory
- * PROJECT: ReactOS
- * FILE: lib/ddraw/main/videoport.c
- * PURPOSE: IDirectDrawVideoPort, DDVideoPortContainer and IDirectDrawVideoPortNotify Implementation
- * PROGRAMMER: Maarten Bosma
- *
- */
-
-#include "rosdraw.h"
-
-
-/************* IDirectDrawVideoPort *************/
-
-HRESULT WINAPI
-Main_DirectDrawVideoPort_QueryInterface (LPDIRECTDRAWVIDEOPORT iface, REFIID riid, LPVOID* ppvObj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-ULONG WINAPI
-Main_DirectDrawVideoPort_AddRef (LPDIRECTDRAWVIDEOPORT iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-ULONG WINAPI
-Main_DirectDrawVideoPort_Release (LPDIRECTDRAWVIDEOPORT iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-Main_DirectDrawVideoPort_Flip (LPDIRECTDRAWVIDEOPORT iface, LPDIRECTDRAWSURFACE lpDDSurface, DWORD dwFlags)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-Main_DirectDrawVideoPort_GetBandwidthInfo (LPDIRECTDRAWVIDEOPORT iface, LPDDPIXELFORMAT lpddpfFormat, DWORD dwWidth,
- DWORD dwHeight, DWORD dwFlags, LPDDVIDEOPORTBANDWIDTH lpBandwidth)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-Main_DirectDrawVideoPort_GetColorControls (LPDIRECTDRAWVIDEOPORT iface, LPDDCOLORCONTROL lpColorControl)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_GetInputFormats (LPDIRECTDRAWVIDEOPORT iface, LPDWORD lpNumFormats,
- LPDDPIXELFORMAT lpFormats, DWORD dwFlags)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_GetOutputFormats (LPDIRECTDRAWVIDEOPORT iface, LPDDPIXELFORMAT lpInputFormat,
- LPDWORD lpNumFormats, LPDDPIXELFORMAT lpFormats, DWORD dwFlags)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_GetFieldPolarity (LPDIRECTDRAWVIDEOPORT iface, LPBOOL lpbFieldPolarity)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_GetVideoLine (LPDIRECTDRAWVIDEOPORT This, LPDWORD lpdwLine)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_GetVideoSignalStatus (LPDIRECTDRAWVIDEOPORT iface, LPDWORD lpdwStatus)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_SetColorControls (LPDIRECTDRAWVIDEOPORT iface, LPDDCOLORCONTROL lpColorControl)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_SetTargetSurface (LPDIRECTDRAWVIDEOPORT iface, LPDIRECTDRAWSURFACE lpDDSurface,
- DWORD dwFlags)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_StartVideo (LPDIRECTDRAWVIDEOPORT iface, LPDDVIDEOPORTINFO dwFlags)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_StopVideo (LPDIRECTDRAWVIDEOPORT iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_UpdateVideo (LPDIRECTDRAWVIDEOPORT iface, LPDDVIDEOPORTINFO dwFlags)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DirectDrawVideoPort_WaitForSync (LPDIRECTDRAWVIDEOPORT iface, DWORD dwFlags, DWORD dwLine,
- DWORD dwTimeout)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-/************* IDDVideoPortContainer *************/
-
-HRESULT WINAPI Main_DDVideoPortContainer_QueryInterface (LPDDVIDEOPORTCONTAINER iface, REFIID riid, LPVOID* ppvObj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-ULONG WINAPI Main_DDVideoPortContainer_AddRef (LPDDVIDEOPORTCONTAINER iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-ULONG WINAPI Main_DDVideoPortContainer_Release (LPDDVIDEOPORTCONTAINER iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DDVideoPortContainer_CreateVideoPort (LPDDVIDEOPORTCONTAINER iface, DWORD dwFlags, LPDDVIDEOPORTDESC pPortDesc,
- LPDIRECTDRAWVIDEOPORT* DDVideoPort, IUnknown* pUnkOuter)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-Main_DDVideoPortContainer_EnumVideoPorts (LPDDVIDEOPORTCONTAINER iface,
- DWORD dwFlags,
- LPDDVIDEOPORTCAPS pCaps,
- LPVOID pContext,
- LPDDENUMVIDEOCALLBACK pEnumVideoCallback)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-Main_DDVideoPortContainer_GetVideoPortConnectInfo (LPDDVIDEOPORTCONTAINER iface,
- DWORD PortId, DWORD* pNumEntries,
- LPDDVIDEOPORTCONNECT pConnectInfo)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI
-Main_DDVideoPortContainer_QueryVideoPortStatus (LPDDVIDEOPORTCONTAINER iface,
- DWORD PortId,
- LPDDVIDEOPORTSTATUS pStatus)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-/************* IDirectDrawVideoPortNotify *************/
-
-HRESULT WINAPI
-Main_DDVideoPortNotify_QueryInterface (LPDIRECTDRAWVIDEOPORTNOTIFY iface, REFIID
- riid, LPVOID* ppvObj)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-ULONG WINAPI
-Main_DDVideoPortNotify_AddRef (LPDIRECTDRAWVIDEOPORTNOTIFY iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-ULONG WINAPI
-Main_DDVideoPortNotify_Release (LPDIRECTDRAWVIDEOPORTNOTIFY iface)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DDVideoPortNotify_AcquireNotification (LPDIRECTDRAWVIDEOPORTNOTIFY iface, HANDLE* h, LPDDVIDEOPORTNOTIFY pVideoPortNotify)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-HRESULT WINAPI Main_DDVideoPortNotify_ReleaseNotification (LPDIRECTDRAWVIDEOPORTNOTIFY iface, HANDLE h)
-{
- DX_WINDBG_trace();
- DX_STUB;
-}
-
-IDirectDrawVideoPortVtbl DirectDrawVideoPort_Vtable =
-{
- Main_DirectDrawVideoPort_QueryInterface,
- Main_DirectDrawVideoPort_AddRef,
- Main_DirectDrawVideoPort_Release,
- Main_DirectDrawVideoPort_Flip,
- Main_DirectDrawVideoPort_GetBandwidthInfo,
- Main_DirectDrawVideoPort_GetColorControls,
- Main_DirectDrawVideoPort_GetInputFormats,
- Main_DirectDrawVideoPort_GetOutputFormats,
- Main_DirectDrawVideoPort_GetFieldPolarity,
- Main_DirectDrawVideoPort_GetVideoLine,
- Main_DirectDrawVideoPort_GetVideoSignalStatus,
- Main_DirectDrawVideoPort_SetColorControls,
- Main_DirectDrawVideoPort_SetTargetSurface,
- Main_DirectDrawVideoPort_StartVideo,
- Main_DirectDrawVideoPort_StopVideo,
- Main_DirectDrawVideoPort_UpdateVideo,
- Main_DirectDrawVideoPort_WaitForSync
-};
-
-IDDVideoPortContainerVtbl DDVideoPortContainer_Vtable =
-{
- Main_DDVideoPortContainer_QueryInterface,
- Main_DDVideoPortContainer_AddRef,
- Main_DDVideoPortContainer_Release,
- Main_DDVideoPortContainer_CreateVideoPort,
- Main_DDVideoPortContainer_EnumVideoPorts,
- Main_DDVideoPortContainer_GetVideoPortConnectInfo,
- Main_DDVideoPortContainer_QueryVideoPortStatus
-};
-
-IDirectDrawVideoPortNotifyVtbl DDVideoPortNotify_Vtable =
-{
- Main_DDVideoPortNotify_QueryInterface,
- Main_DDVideoPortNotify_AddRef,
- Main_DDVideoPortNotify_Release,
- Main_DDVideoPortNotify_AcquireNotification,
- Main_DDVideoPortNotify_ReleaseNotification
-};
+/* $Id$
+ *
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS
+ * FILE: lib/ddraw/main/videoport.c
+ * PURPOSE: IDirectDrawVideoPort, DDVideoPortContainer and IDirectDrawVideoPortNotify Implementation
+ * PROGRAMMER: Maarten Bosma
+ *
+ */
+
+#include "rosdraw.h"
+
+
+/************* IDirectDrawVideoPort *************/
+
+HRESULT WINAPI
+Main_DirectDrawVideoPort_QueryInterface (LPDIRECTDRAWVIDEOPORT iface, REFIID riid, LPVOID* ppvObj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+ULONG WINAPI
+Main_DirectDrawVideoPort_AddRef (LPDIRECTDRAWVIDEOPORT iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+ULONG WINAPI
+Main_DirectDrawVideoPort_Release (LPDIRECTDRAWVIDEOPORT iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+Main_DirectDrawVideoPort_Flip (LPDIRECTDRAWVIDEOPORT iface, LPDIRECTDRAWSURFACE lpDDSurface, DWORD dwFlags)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+Main_DirectDrawVideoPort_GetBandwidthInfo (LPDIRECTDRAWVIDEOPORT iface, LPDDPIXELFORMAT lpddpfFormat, DWORD dwWidth,
+ DWORD dwHeight, DWORD dwFlags, LPDDVIDEOPORTBANDWIDTH lpBandwidth)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+Main_DirectDrawVideoPort_GetColorControls (LPDIRECTDRAWVIDEOPORT iface, LPDDCOLORCONTROL lpColorControl)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_GetInputFormats (LPDIRECTDRAWVIDEOPORT iface, LPDWORD lpNumFormats,
+ LPDDPIXELFORMAT lpFormats, DWORD dwFlags)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_GetOutputFormats (LPDIRECTDRAWVIDEOPORT iface, LPDDPIXELFORMAT lpInputFormat,
+ LPDWORD lpNumFormats, LPDDPIXELFORMAT lpFormats, DWORD dwFlags)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_GetFieldPolarity (LPDIRECTDRAWVIDEOPORT iface, LPBOOL lpbFieldPolarity)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_GetVideoLine (LPDIRECTDRAWVIDEOPORT This, LPDWORD lpdwLine)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_GetVideoSignalStatus (LPDIRECTDRAWVIDEOPORT iface, LPDWORD lpdwStatus)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_SetColorControls (LPDIRECTDRAWVIDEOPORT iface, LPDDCOLORCONTROL lpColorControl)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_SetTargetSurface (LPDIRECTDRAWVIDEOPORT iface, LPDIRECTDRAWSURFACE lpDDSurface,
+ DWORD dwFlags)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_StartVideo (LPDIRECTDRAWVIDEOPORT iface, LPDDVIDEOPORTINFO dwFlags)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_StopVideo (LPDIRECTDRAWVIDEOPORT iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_UpdateVideo (LPDIRECTDRAWVIDEOPORT iface, LPDDVIDEOPORTINFO dwFlags)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DirectDrawVideoPort_WaitForSync (LPDIRECTDRAWVIDEOPORT iface, DWORD dwFlags, DWORD dwLine,
+ DWORD dwTimeout)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+/************* IDDVideoPortContainer *************/
+
+HRESULT WINAPI Main_DDVideoPortContainer_QueryInterface (LPDDVIDEOPORTCONTAINER iface, REFIID riid, LPVOID* ppvObj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+ULONG WINAPI Main_DDVideoPortContainer_AddRef (LPDDVIDEOPORTCONTAINER iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+ULONG WINAPI Main_DDVideoPortContainer_Release (LPDDVIDEOPORTCONTAINER iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DDVideoPortContainer_CreateVideoPort (LPDDVIDEOPORTCONTAINER iface, DWORD dwFlags, LPDDVIDEOPORTDESC pPortDesc,
+ LPDIRECTDRAWVIDEOPORT* DDVideoPort, IUnknown* pUnkOuter)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+Main_DDVideoPortContainer_EnumVideoPorts (LPDDVIDEOPORTCONTAINER iface,
+ DWORD dwFlags,
+ LPDDVIDEOPORTCAPS pCaps,
+ LPVOID pContext,
+ LPDDENUMVIDEOCALLBACK pEnumVideoCallback)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+Main_DDVideoPortContainer_GetVideoPortConnectInfo (LPDDVIDEOPORTCONTAINER iface,
+ DWORD PortId, DWORD* pNumEntries,
+ LPDDVIDEOPORTCONNECT pConnectInfo)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI
+Main_DDVideoPortContainer_QueryVideoPortStatus (LPDDVIDEOPORTCONTAINER iface,
+ DWORD PortId,
+ LPDDVIDEOPORTSTATUS pStatus)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+/************* IDirectDrawVideoPortNotify *************/
+
+HRESULT WINAPI
+Main_DDVideoPortNotify_QueryInterface (LPDIRECTDRAWVIDEOPORTNOTIFY iface, REFIID
+ riid, LPVOID* ppvObj)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+ULONG WINAPI
+Main_DDVideoPortNotify_AddRef (LPDIRECTDRAWVIDEOPORTNOTIFY iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+ULONG WINAPI
+Main_DDVideoPortNotify_Release (LPDIRECTDRAWVIDEOPORTNOTIFY iface)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DDVideoPortNotify_AcquireNotification (LPDIRECTDRAWVIDEOPORTNOTIFY iface, HANDLE* h, LPDDVIDEOPORTNOTIFY pVideoPortNotify)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+HRESULT WINAPI Main_DDVideoPortNotify_ReleaseNotification (LPDIRECTDRAWVIDEOPORTNOTIFY iface, HANDLE h)
+{
+ DX_WINDBG_trace();
+ DX_STUB;
+}
+
+IDirectDrawVideoPortVtbl DirectDrawVideoPort_Vtable =
+{
+ Main_DirectDrawVideoPort_QueryInterface,
+ Main_DirectDrawVideoPort_AddRef,
+ Main_DirectDrawVideoPort_Release,
+ Main_DirectDrawVideoPort_Flip,
+ Main_DirectDrawVideoPort_GetBandwidthInfo,
+ Main_DirectDrawVideoPort_GetColorControls,
+ Main_DirectDrawVideoPort_GetInputFormats,
+ Main_DirectDrawVideoPort_GetOutputFormats,
+ Main_DirectDrawVideoPort_GetFieldPolarity,
+ Main_DirectDrawVideoPort_GetVideoLine,
+ Main_DirectDrawVideoPort_GetVideoSignalStatus,
+ Main_DirectDrawVideoPort_SetColorControls,
+ Main_DirectDrawVideoPort_SetTargetSurface,
+ Main_DirectDrawVideoPort_StartVideo,
+ Main_DirectDrawVideoPort_StopVideo,
+ Main_DirectDrawVideoPort_UpdateVideo,
+ Main_DirectDrawVideoPort_WaitForSync
+};
+
+IDDVideoPortContainerVtbl DDVideoPortContainer_Vtable =
+{
+ Main_DDVideoPortContainer_QueryInterface,
+ Main_DDVideoPortContainer_AddRef,
+ Main_DDVideoPortContainer_Release,
+ Main_DDVideoPortContainer_CreateVideoPort,
+ Main_DDVideoPortContainer_EnumVideoPorts,
+ Main_DDVideoPortContainer_GetVideoPortConnectInfo,
+ Main_DDVideoPortContainer_QueryVideoPortStatus
+};
+
+IDirectDrawVideoPortNotifyVtbl DDVideoPortNotify_Vtable =
+{
+ Main_DDVideoPortNotify_QueryInterface,
+ Main_DDVideoPortNotify_AddRef,
+ Main_DDVideoPortNotify_Release,
+ Main_DDVideoPortNotify_AcquireNotification,
+ Main_DDVideoPortNotify_ReleaseNotification
+};