mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 04:13:34 +00:00
add regkey HKLM\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI\Timeout for dxg.sys it is the second timeout value for a surface lock see url for more informations http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/28237.mspx?mfr=true thx irc:stefan100 for the url
remove one hack in intEnableReactXDriver thx to this info. svn path=/trunk/; revision=33210
This commit is contained in:
@@ -457,6 +457,9 @@ HKLM,"SYSTEM\CurrentControlSet\Control\ServiceGroupOrder","List",0x00010000, \
|
||||
"PlugPlay", \
|
||||
"Extended Base"
|
||||
|
||||
; Set the timeout for directx/ReactX graphic surface lock see _EDD_DIRECTDRAW_GLOBAL struct for more info
|
||||
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI","Timeout",0x00010001,0x00000007
|
||||
|
||||
; Group order, the first DWORD is the count of entries,
|
||||
; the following dwords are the tag entries for the load order.
|
||||
HKLM,"SYSTEM\CurrentControlSet\Control\GroupOrderList","Video Save", 0x00000001, \
|
||||
|
||||
@@ -106,13 +106,13 @@ typedef struct _EDD_SURFACE
|
||||
|
||||
typedef struct _EDD_DIRECTDRAW_GLOBAL
|
||||
{
|
||||
/* 0x000 */ PVOID dhpdev;
|
||||
/* 0x000 */ PVOID dhpdev; // 0x000 <-- verified to match Windows XP, dhpdev, the drv hPDev -->
|
||||
/* 0x004 */ DWORD dwReserved1;
|
||||
/* 0x008 */ DWORD dwReserved2;
|
||||
/* 0x00C */ ULONG unk_000c[3];
|
||||
/* 0x018 */ LONG cDriverReferences;
|
||||
/* 0x01C */ ULONG unk_01c;
|
||||
/* 0x020 */ DWORD dwCallbackFlags; /* <-- verified to match Windows XP, dwCallbackFlags
|
||||
/* 0x020 */ DWORD dwCallbackFlags; /* 0x020 <-- verified to match Windows XP, dwCallbackFlags
|
||||
Flags value
|
||||
0x0002 = ddVideoPortCallback and GUID_VideoPortCaps
|
||||
0x0004 = GUID_ColorControlCallbacks
|
||||
@@ -125,7 +125,13 @@ typedef struct _EDD_DIRECTDRAW_GLOBAL
|
||||
|
||||
/* 0x024 */ ULONG unk_024;
|
||||
#ifdef _WIN32
|
||||
/* 0x028 */ LARGE_INTEGER llAssertModeTimeout; // 0x028 <-- verified to match Windows XP, llAssertModeTimeout
|
||||
/* 0x028 */ LARGE_INTEGER llAssertModeTimeout; /* 0x028 <-- verified to match Windows XP, llAssertModeTimeout, it
|
||||
using regkey
|
||||
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI
|
||||
Specifies how long a DirectDraw application can keep a graphics-device frame-buffer locked
|
||||
in second, if this value are set to 0 it disable directdraw acclatrions.
|
||||
it is normal set to 7 (7 sec in windwos xp/2003)
|
||||
*/
|
||||
#else
|
||||
/* 0x028 */ DWORD llAssertModeTimeoutLowPart;
|
||||
/* 0x02C */ DWORD llAssertModeTimeoutHighPart;
|
||||
|
||||
@@ -54,6 +54,7 @@ intEnableReactXDriver(PEDD_DIRECTDRAW_GLOBAL pEddgbl, PDC pDC)
|
||||
success = pfnDdEnableDirectDraw(pDC->pPDev, TRUE);
|
||||
|
||||
dump_edd_directdraw_global(pEddgbl);
|
||||
dump_halinfo(&pEddgbl->ddHalInfo);
|
||||
DPRINT1(" end call to pfnDdEnableDirectDraw \n ");
|
||||
}
|
||||
|
||||
@@ -264,13 +265,6 @@ intEnableReactXDriver(PEDD_DIRECTDRAW_GLOBAL pEddgbl, PDC pDC)
|
||||
/* setup missing data in ddHalInfo */
|
||||
//pEddgbl->ddHalInfo.GetDriverInfo = (PVOID)pDev->DriverFunctions.GetDirectDrawInfo;
|
||||
|
||||
|
||||
/* FIXME : hack ? it will let us DxDdQueryDirectDrawObject if the llAssertModeTimeout contain negtive value -1*/
|
||||
pEddgbl->llAssertModeTimeout.QuadPart = -1;
|
||||
|
||||
|
||||
|
||||
|
||||
/* FIXME : remove this when we are done with debuging of dxg */
|
||||
dump_edd_directdraw_global(pEddgbl);
|
||||
dump_halinfo(&pEddgbl->ddHalInfo);
|
||||
|
||||
Reference in New Issue
Block a user