[ros-diffs] [greatlrd] 33210: 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.

greatlrd at svn.reactos.org greatlrd at svn.reactos.org
Thu May 1 14:08:03 CEST 2008


Author: greatlrd
Date: Thu May  1 07:08:02 2008
New Revision: 33210

URL: http://svn.reactos.org/svn/reactos?rev=33210&view=rev
Log:
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. 




Modified:
    trunk/reactos/boot/bootdata/hivesys.inf
    trunk/reactos/include/reactos/drivers/directx/directxint.h
    trunk/reactos/subsystems/win32/win32k/ntddraw/ddraw.c

Modified: trunk/reactos/boot/bootdata/hivesys.inf
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/hivesys.inf?rev=33210&r1=33209&r2=33210&view=diff
==============================================================================
--- trunk/reactos/boot/bootdata/hivesys.inf [iso-8859-1] (original)
+++ trunk/reactos/boot/bootdata/hivesys.inf [iso-8859-1] Thu May  1 07:08:02 2008
@@ -457,6 +457,9 @@
  "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, \

Modified: trunk/reactos/include/reactos/drivers/directx/directxint.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/drivers/directx/directxint.h?rev=33210&r1=33209&r2=33210&view=diff
==============================================================================
--- trunk/reactos/include/reactos/drivers/directx/directxint.h [iso-8859-1] (original)
+++ trunk/reactos/include/reactos/drivers/directx/directxint.h [iso-8859-1] Thu May  1 07:08:02 2008
@@ -106,13 +106,13 @@
 
 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 @@
 
 /* 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;

Modified: trunk/reactos/subsystems/win32/win32k/ntddraw/ddraw.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntddraw/ddraw.c?rev=33210&r1=33209&r2=33210&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntddraw/ddraw.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/ntddraw/ddraw.c [iso-8859-1] Thu May  1 07:08:02 2008
@@ -54,6 +54,7 @@
         success = pfnDdEnableDirectDraw(pDC->pPDev, TRUE);
 
         dump_edd_directdraw_global(pEddgbl);
+        dump_halinfo(&pEddgbl->ddHalInfo);
         DPRINT1(" end call to pfnDdEnableDirectDraw \n ");
     }
 
@@ -263,13 +264,6 @@
 
     /* 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);



More information about the Ros-diffs mailing list