mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 19:55:41 +00:00
implement Hal GetScanLine
svn path=/trunk/; revision=18871
This commit is contained in:
parent
8b676541fe
commit
0a695e7538
5 changed files with 41 additions and 3 deletions
|
@ -410,3 +410,26 @@ HRESULT Hal_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,H
|
|||
|
||||
return WaitVectorData.ddRVal;
|
||||
}
|
||||
|
||||
HRESULT Hal_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine)
|
||||
{
|
||||
IDirectDrawImpl* This = (IDirectDrawImpl*)iface;
|
||||
|
||||
DDHAL_GETSCANLINEDATA GetScan;
|
||||
|
||||
if (!(This->DirectDrawGlobal.lpDDCBtmp->HALDDMiscellaneous.dwFlags & DDHAL_CB32_GETSCANLINE))
|
||||
{
|
||||
return DDERR_NODRIVERSUPPORT;
|
||||
}
|
||||
|
||||
GetScan.lpDD = &This->DirectDrawGlobal;
|
||||
GetScan.ddRVal = DDERR_NOTPALETTIZED;
|
||||
|
||||
if (This->DirectDrawGlobal.lpDDCBtmp->HALDD.GetScanLine(&GetScan) != DDHAL_DRIVER_HANDLED)
|
||||
{
|
||||
return DDERR_NODRIVERSUPPORT;
|
||||
}
|
||||
|
||||
*lpdwScanLine = GetScan.ddRVal;
|
||||
return GetScan.ddRVal;
|
||||
}
|
||||
|
|
|
@ -391,7 +391,15 @@ HRESULT WINAPI Main_DirectDraw_GetMonitorFrequency(LPDIRECTDRAW7 iface,LPDWORD f
|
|||
|
||||
HRESULT WINAPI Main_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine)
|
||||
{
|
||||
DX_STUB;
|
||||
DWORD ret;
|
||||
|
||||
if((ret = Hal_DirectDraw_GetScanLine( iface, lpdwScanLine)) == DD_OK)
|
||||
return ret;
|
||||
|
||||
if((ret = Hel_DirectDraw_GetScanLine( iface, lpdwScanLine)) == DD_OK)
|
||||
return ret;
|
||||
|
||||
return DDERR_NOTINITIALIZED;
|
||||
}
|
||||
|
||||
HRESULT WINAPI Main_DirectDraw_GetVerticalBlankStatus(LPDIRECTDRAW7 iface, LPBOOL status)
|
||||
|
@ -407,7 +415,6 @@ HRESULT WINAPI Main_DirectDraw_RestoreDisplayMode(LPDIRECTDRAW7 iface)
|
|||
HRESULT WINAPI Main_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,
|
||||
HANDLE h)
|
||||
{
|
||||
|
||||
DWORD ret;
|
||||
|
||||
if((ret = Hal_DirectDraw_WaitForVerticalBlank( iface, dwFlags, h)) == DD_OK)
|
||||
|
|
|
@ -81,7 +81,7 @@ HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE7 iface, LPDIREC
|
|||
CreateData.lplpSList = pLocal;
|
||||
|
||||
/* this is the call we were waiting for */
|
||||
if(CreateData.CreateSurface(&CreateData) == DDHAL_DRIVER_NOTHANDLED)
|
||||
if(This->owner->DirectDrawGlobal.lpDDCBtmp->HALDD.CreateSurface(&CreateData) == DDHAL_DRIVER_NOTHANDLED)
|
||||
return DDERR_INVALIDPARAMS;
|
||||
|
||||
if(CreateData.ddRVal != DD_OK)
|
||||
|
|
|
@ -94,6 +94,7 @@ HRESULT Hal_DirectDraw_GetAvailableVidMem(LPDIRECTDRAW7 iface, LPDDSCAPS2 ddscap
|
|||
HRESULT Hal_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,
|
||||
HANDLE h);
|
||||
|
||||
HRESULT Hal_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine);
|
||||
|
||||
|
||||
HRESULT Hel_DirectDraw_Initialize (LPDIRECTDRAW7 iface);
|
||||
|
@ -106,6 +107,8 @@ HRESULT Hel_DirectDraw_GetAvailableVidMem(LPDIRECTDRAW7 iface, LPDDSCAPS2 ddscap
|
|||
HRESULT Hel_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,
|
||||
HANDLE h);
|
||||
|
||||
HRESULT Hel_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine);
|
||||
|
||||
|
||||
|
||||
/*********** Macros ***********/
|
||||
|
|
|
@ -37,3 +37,8 @@ HRESULT Hel_DirectDraw_WaitForVerticalBlank(LPDIRECTDRAW7 iface, DWORD dwFlags,H
|
|||
{
|
||||
DX_STUB;
|
||||
}
|
||||
|
||||
HRESULT Hel_DirectDraw_GetScanLine(LPDIRECTDRAW7 iface, LPDWORD lpdwScanLine)
|
||||
{
|
||||
DX_STUB;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue