NtGdiDdGetAvailDriverMemory - implement the code but the pointer is not set to DdGetAvailDriverMemory and it is undtested. Modified: trunk/reactos/subsys/win32k/include/intddraw.h Modified: trunk/reactos/subsys/win32k/ntddraw/ddraw.c Modified: trunk/reactos/subsys/win32k/ntddraw/stubs.c _____
Modified: trunk/reactos/subsys/win32k/include/intddraw.h --- trunk/reactos/subsys/win32k/include/intddraw.h 2005-10-06 20:34:20 UTC (rev 18300) +++ trunk/reactos/subsys/win32k/include/intddraw.h 2005-10-06 21:18:59 UTC (rev 18301) @@ -47,6 +47,10 @@
PDD_SURFCB_UPDATEOVERLAY DdUpdateOverlay; PDD_SURFCB_SETOVERLAYPOSITION DdSetOverlayPosition; PDD_SURFCB_SETPALETTE DdSetPalette; + // Miscellaneous Callback Function + PDD_GETAVAILDRIVERMEMORY DdGetAvailDriverMemory; + // NT callbacks + DD_FREEDRIVERMEMORYDATA DdFreeDriverMemory; // Palette callbacks PDD_PALCB_DESTROYPALETTE DdDestroyPalette; PDD_PALCB_SETENTRIES DdSetEntries; _____
Modified: trunk/reactos/subsys/win32k/ntddraw/ddraw.c --- trunk/reactos/subsys/win32k/ntddraw/ddraw.c 2005-10-06 20:34:20 UTC (rev 18300) +++ trunk/reactos/subsys/win32k/ntddraw/ddraw.c 2005-10-06 21:18:59 UTC (rev 18301) @@ -302,8 +302,7 @@
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
- - ddRVal = pDirectDraw->DrvGetDirectDrawInfo( + ddRVal = pDirectDraw->DrvGetDirectDrawInfo( pDirectDraw->Global.dhpdev,(PDD_HALINFO) puGetDriverInfoData, &pdwNumHeaps, pvmList, &pdwNumFourCC, pdwFourCC);
@@ -321,9 +320,7 @@ { DWORD ddRVal; PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW); - - puWaitForVerticalBlankData->lpDD = pDirectDraw->Local.lpGbl; - + ddRVal = pDirectDraw->DdWaitForVerticalBlank(puWaitForVerticalBlankData);
GDIOBJ_UnlockObjByPtr(pDirectDraw); @@ -341,8 +338,6 @@
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
- puCanCreateSurfaceData->lpDD = pDirectDraw->Local.lpGbl; - ddRVal = pDirectDraw->DdCanCreateSurface(puCanCreateSurfaceData);
GDIOBJ_UnlockObjByPtr(pDirectDraw); @@ -373,8 +368,30 @@ return ddRVal; }
+ /* FIXME + this call is not implement yet + where to get the pointer DdGetAvailDriverMemory(puGetAvailDriverMemoryData + for the call in NtGdiDdCreateDirectDrawObject `?? + or some where else ?? + */ + +DWORD STDCALL NtGdiDdGetAvailDriverMemory( + HANDLE hDirectDrawLocal, + PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData +) +{ + DWORD ddRVal;
+ PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
+ ddRVal = pDirectDraw->DdGetAvailDriverMemory(puGetAvailDriverMemoryData); + + GDIOBJ_UnlockObjByPtr(pDirectDraw);
+ return ddRVal; +}
+ + + /* EOF */ _____
Modified: trunk/reactos/subsys/win32k/ntddraw/stubs.c --- trunk/reactos/subsys/win32k/ntddraw/stubs.c 2005-10-06 20:34:20 UTC (rev 18300) +++ trunk/reactos/subsys/win32k/ntddraw/stubs.c 2005-10-06 21:18:59 UTC (rev 18301) @@ -14,15 +14,7 @@
#include <debug.h>
-DWORD STDCALL NtGdiDdGetAvailDriverMemory( - HANDLE hDirectDrawLocal, - PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData -) -{ - UNIMPLEMENTED
- return 0; -}
BOOL STDCALL NtGdiD3dContextCreate( HANDLE hDirectDrawLocal,