mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
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:
parent
dd182c1076
commit
3bd5362791
2 changed files with 37 additions and 41 deletions
|
@ -187,6 +187,7 @@ BOOL STDCALL NtGdiDdQueryDirectDrawObject(
|
||||||
pDirectDraw->DdLockD3DBuffer = puD3dBufferCallbacks->LockD3DBuffer;
|
pDirectDraw->DdLockD3DBuffer = puD3dBufferCallbacks->LockD3DBuffer;
|
||||||
pDirectDraw->DdUnlockD3DBuffer = puD3dBufferCallbacks->UnlockD3DBuffer;
|
pDirectDraw->DdUnlockD3DBuffer = puD3dBufferCallbacks->UnlockD3DBuffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
GDIOBJ_UnlockObj(hDirectDrawLocal);
|
GDIOBJ_UnlockObj(hDirectDrawLocal);
|
||||||
|
|
||||||
|
@ -286,14 +287,14 @@ DWORD STDCALL NtGdiDdGetDriverInfo(
|
||||||
DWORD pdwNumFourCC;
|
DWORD pdwNumFourCC;
|
||||||
DWORD *pdwFourCC = NULL;
|
DWORD *pdwFourCC = NULL;
|
||||||
DWORD ddRVal;
|
DWORD ddRVal;
|
||||||
|
|
||||||
|
|
||||||
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
|
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
|
||||||
|
|
||||||
ddRVal = pDirectDraw->DrvGetDirectDrawInfo(
|
|
||||||
|
ddRVal = pDirectDraw->DrvGetDirectDrawInfo(
|
||||||
pDirectDraw->Global.dhpdev,(PDD_HALINFO) puGetDriverInfoData,
|
pDirectDraw->Global.dhpdev,(PDD_HALINFO) puGetDriverInfoData,
|
||||||
&pdwNumHeaps, pvmList, &pdwNumFourCC, pdwFourCC);
|
&pdwNumHeaps, pvmList, &pdwNumFourCC, pdwFourCC);
|
||||||
|
|
||||||
GDIOBJ_UnlockObj(hDirectDrawLocal);
|
GDIOBJ_UnlockObj(hDirectDrawLocal);
|
||||||
|
|
||||||
return ddRVal;
|
return ddRVal;
|
||||||
|
@ -328,6 +329,8 @@ DWORD STDCALL NtGdiDdCanCreateSurface(
|
||||||
|
|
||||||
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
|
PDD_DIRECTDRAW pDirectDraw = GDIOBJ_LockObj(hDirectDrawLocal, GDI_OBJECT_TYPE_DIRECTDRAW);
|
||||||
|
|
||||||
|
puCanCreateSurfaceData->lpDD = pDirectDraw->Local.lpGbl;
|
||||||
|
|
||||||
ddRVal = pDirectDraw->DdCanCreateSurface(puCanCreateSurfaceData);
|
ddRVal = pDirectDraw->DdCanCreateSurface(puCanCreateSurfaceData);
|
||||||
|
|
||||||
GDIOBJ_UnlockObj(hDirectDrawLocal);
|
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 */
|
/* EOF */
|
||||||
|
|
|
@ -21,8 +21,7 @@ DWORD STDCALL NtGdiDdGetAvailDriverMemory(
|
||||||
PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData
|
PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UNIMPLEMENTED
|
UNIMPLEMENTED
|
||||||
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -91,12 +90,7 @@ DWORD STDCALL NtGdiDdAddAttachedSurface(
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
DWORD STDCALL NtGdiDdAlphaBlt(VOID)
|
|
||||||
{
|
|
||||||
UNIMPLEMENTED
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
BOOL STDCALL NtGdiDdAttachSurface(
|
BOOL STDCALL NtGdiDdAttachSurface(
|
||||||
HANDLE hSurfaceFrom,
|
HANDLE hSurfaceFrom,
|
||||||
|
@ -118,16 +112,6 @@ DWORD STDCALL NtGdiDdBeginMoCompFrame(
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
DWORD STDCALL NtGdiDdBlt(
|
|
||||||
HANDLE hSurfaceDest,
|
|
||||||
HANDLE hSurfaceSrc,
|
|
||||||
PDD_BLTDATA puBltData
|
|
||||||
)
|
|
||||||
{
|
|
||||||
UNIMPLEMENTED
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
DWORD STDCALL NtGdiDdCanCreateD3DBuffer(
|
DWORD STDCALL NtGdiDdCanCreateD3DBuffer(
|
||||||
HANDLE hDirectDraw,
|
HANDLE hDirectDraw,
|
||||||
|
@ -435,26 +419,6 @@ DWORD STDCALL NtGdiDdLockD3D(
|
||||||
return 0;
|
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(
|
DWORD STDCALL NtGdiDdQueryMoCompStatus(
|
||||||
HANDLE hMoComp,
|
HANDLE hMoComp,
|
||||||
|
|
Loading…
Reference in a new issue