Author: greatlrd Date: Sun Jun 17 18:46:04 2007 New Revision: 27214
URL: http://svn.reactos.org/svn/reactos?rev=27214&view=rev Log: DD->GetCaps for hal are so complete we can do with current startup process we are missing setting This->lpLcl->lpGbl->lpddNLVCaps
fixed a smaller bugs in caps data
Modified: trunk/reactos/dll/directx/ddraw/Ddraw/ddraw_main.c
Modified: trunk/reactos/dll/directx/ddraw/Ddraw/ddraw_main.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/Ddraw/ddr... ============================================================================== --- trunk/reactos/dll/directx/ddraw/Ddraw/ddraw_main.c (original) +++ trunk/reactos/dll/directx/ddraw/Ddraw/ddraw_main.c Sun Jun 17 18:46:04 2007 @@ -519,19 +519,19 @@ { LPDDCAPS_DX5 myCaps = (LPDDCAPS_DX5) pDriverCaps;
+ /* FIXME This->lpLcl->lpGbl->lpddNLVCaps are not set in startup.c + if (This->lpLcl->lpGbl->lpddNLVCaps->dwSize == sizeof(DDNONLOCALVIDMEMCAPS)) + { + memcpy(&myCaps->dwNLVBCaps, This->lpLcl->lpGbl->lpddNLVCaps, sizeof(DDNONLOCALVIDMEMCAPS)); + } + */ + memset(myCaps->dwNLVBCaps,0,sizeof(DDNONLOCALVIDMEMCAPS)); + if (CoreCaps->dwSize == sizeof(DDCORECAPS)) { memcpy(&myCaps->dwCaps, &CoreCaps->dwCaps, sizeof(DDCORECAPS)); }
- /* FIXME - DWORD dwNLVBCaps; - DWORD dwNLVBCaps2; - DWORD dwNLVBCKeyCaps; - DWORD dwNLVBFXCaps; - DWORD dwNLVBRops[DD_ROP_SPACE]; - */ - myCaps->dwVidMemFree = dwFree; myCaps->dwVidMemTotal = dwTotal; myCaps->dwSize = sizeof(DDCAPS_DX5); @@ -544,6 +544,14 @@ case sizeof(DDCAPS_DX7): { LPDDCAPS_DX7 myCaps = (LPDDCAPS_DX7) pDriverCaps; + + /* FIXME This->lpLcl->lpGbl->lpddNLVCaps are not set in startup.c + if (This->lpLcl->lpGbl->lpddNLVCaps->dwSize == sizeof(DDNONLOCALVIDMEMCAPS)) + { + memcpy(&myCaps->dwNLVBCaps, This->lpLcl->lpGbl->lpddNLVCaps, sizeof(DDNONLOCALVIDMEMCAPS)); + } + */ + memset(myCaps->dwNLVBCaps,0,sizeof(DDNONLOCALVIDMEMCAPS));
if (CoreCaps->dwSize == sizeof(DDCORECAPS)) { @@ -553,18 +561,10 @@ myCaps->dwVidMemFree = dwFree; myCaps->dwVidMemTotal = dwTotal;
- /* FIXME - DWORD dwNLVBCaps; - DWORD dwNLVBCaps2; - DWORD dwNLVBCKeyCaps; - DWORD dwNLVBFXCaps; - DWORD dwNLVBRops[DD_ROP_SPACE]; - */ - - myCaps->ddsCaps.dwCaps = ddscaps.dwCaps; - myCaps->ddsCaps.dwCaps2 = ddscaps.dwCaps2; - myCaps->ddsCaps.dwCaps3 = ddscaps.dwCaps3; - myCaps->ddsCaps.dwCaps4 = ddscaps.dwCaps4; + myCaps->ddsCaps.dwCaps = myCaps->ddsOldCaps.dwCaps; + myCaps->ddsCaps.dwCaps2 = 0; + myCaps->ddsCaps.dwCaps3 = 0; + myCaps->ddsCaps.dwCaps4 = 0; myCaps->dwSize = sizeof(DDCAPS_DX7);
} @@ -699,7 +699,7 @@ Main_DirectDraw_EnumDisplayModes, /* (EnumDisplayModes testing / devloping) */ Main_DirectDraw_EnumSurfaces, Main_DirectDraw_FlipToGDISurface, - Main_DirectDraw_GetCaps, + Main_DirectDraw_GetCaps, /* (GetCaps testing / devloping) */ Main_DirectDraw_GetDisplayMode, /* (GetDisplayMode testing / devloping) */ Main_DirectDraw_GetFourCCCodes, /* (GetFourCCCodes done) */ Main_DirectDraw_GetGDISurface,