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/dd…
==============================================================================
--- 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,