implement NtGdiDdBlt and NtGdiDdAlphaBlt

NtGdiDdAlphaBlt are not supportet by microsoft 
so we report unsupport directx function 


svn path=/trunk/; revision=14827
This commit is contained in:
Magnus Olsen 2005-04-26 22:02:32 +00:00
parent dd182c1076
commit 3bd5362791
2 changed files with 37 additions and 41 deletions

View file

@ -187,6 +187,7 @@ BOOL STDCALL NtGdiDdQueryDirectDrawObject(
pDirectDraw->DdLockD3DBuffer = puD3dBufferCallbacks->LockD3DBuffer;
pDirectDraw->DdUnlockD3DBuffer = puD3dBufferCallbacks->UnlockD3DBuffer;
}
GDIOBJ_UnlockObj(hDirectDrawLocal);
@ -286,14 +287,14 @@ DWORD STDCALL NtGdiDdGetDriverInfo(
DWORD pdwNumFourCC;
DWORD *pdwFourCC = NULL;
DWORD ddRVal;
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);
GDIOBJ_UnlockObj(hDirectDrawLocal);
return ddRVal;
@ -328,6 +329,8 @@ DWORD STDCALL NtGdiDdCanCreateSurface(
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
puCanCreateSurfaceData->lpDD = pDirectDraw->Local.lpGbl;
ddRVal = pDirectDraw->DdCanCreateSurface(puCanCreateSurfaceData);
GDIOBJ_UnlockObj(hDirectDrawLocal);
@ -337,5 +340,34 @@ DWORD STDCALL NtGdiDdCanCreateSurface(
DWORD STDCALL NtGdiDdBlt(
HANDLE hSurfaceDest,
HANDLE hSurfaceSrc,
PDD_BLTDATA puBltData
)
{
DWORD ddRVal;
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hSurfaceDest, GDI_OBJECT_TYPE_DIRECTDRAW);
puBltData->lpDDDestSurface = hSurfaceDest;
puBltData->lpDDSrcSurface = hSurfaceSrc;
puBltData->lpDD = pDirectDraw->Local.lpGbl;
ddRVal = pDirectDraw->DdBlt(puBltData);
GDIOBJ_UnlockObj(hSurfaceDest);
return ddRVal;
}
DWORD STDCALL NtGdiDdAlphaBlt(VOID)
{
// MSDN on all windows 95 to windows xp this call are unsuported
// see Graphics Low Level Client Support
return DDERR_UNSUPPORTED;
}
/* EOF */

View file

@ -21,8 +21,7 @@ DWORD STDCALL NtGdiDdGetAvailDriverMemory(
PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData
)
{
UNIMPLEMENTED
UNIMPLEMENTED
return 0;
}
@ -91,12 +90,7 @@ DWORD STDCALL NtGdiDdAddAttachedSurface(
return 0;
}
DWORD STDCALL NtGdiDdAlphaBlt(VOID)
{
UNIMPLEMENTED
return 0;
}
BOOL STDCALL NtGdiDdAttachSurface(
HANDLE hSurfaceFrom,
@ -118,16 +112,6 @@ DWORD STDCALL NtGdiDdBeginMoCompFrame(
return 0;
}
DWORD STDCALL NtGdiDdBlt(
HANDLE hSurfaceDest,
HANDLE hSurfaceSrc,
PDD_BLTDATA puBltData
)
{
UNIMPLEMENTED
return 0;
}
DWORD STDCALL NtGdiDdCanCreateD3DBuffer(
HANDLE hDirectDraw,
@ -435,26 +419,6 @@ DWORD STDCALL NtGdiDdLockD3D(
return 0;
}
/*
BOOL STDCALL NtGdiDdQueryDirectDrawObject(
HANDLE hDirectDrawLocal,
DD_HALINFO *pHalInfo,
DWORD *pCallBackFlags,
PD3DNTHAL_CALLBACKS puD3dCallbacks,
PD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData,
PDD_D3DBUFCALLBACKS puD3dBufferCallbacks,
LPDDSURFACEDESC puD3dTextureFormats,
DWORD *puNumHeaps,
VIDEOMEMORY *puvmList,
DWORD *puNumFourCC,
DWORD *puFourCC
)
{
UNIMPLEMENTED
return 0;
}
*/
DWORD STDCALL NtGdiDdQueryMoCompStatus(
HANDLE hMoComp,