Author: greatlrd
Date: Sat Mar 15 19:16:42 2008
New Revision: 32696
URL: 
http://svn.reactos.org/svn/reactos?rev=3D32696&view=3Drev
Log:
update the docs for NtGdiD3dContextCreate
some points I did not make clear how it works. =
Modified:
    trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c
Modified: trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win3=
2k/ntddraw/d3d.c?rev=3D32696&r1=3D32695&r2=3D32696&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c (original)
+++ trunk/reactos/subsystems/win32/win32k/ntddraw/d3d.c Sat Mar 15 19:16:42=
 2008
@@ -89,29 +89,35 @@
 * @param HANDLE hSurfZ
 * Handle to a DD_SURFACE_LOCAL. It is the Z deep buffer. According MSDN if=
 it is set to NULL nothing should happen.
 *
-* @param D3DNTHAL_CONTEXTCREATEDATA* hSurfZ
+* @param LPD3DNTHAL_CONTEXTCREATEDATA pdcci
 * The buffer to create the context data
 *
 * @return =
 * DDHAL_DRIVER_HANDLED or DDHAL_DRIVER_NOTHANDLED if the driver supports t=
his function.
 * A full check is done by checking if the return value is DDHAL_DRIVER_HAN=
DLED =
-* and puCanCreateSurfaceData->ddRVal is set to DD_OK.
+* and pdcci->ddRVal is set to DD_OK.
 *
 *
 * @remarks.
 * dxg.sys NtGdiD3dContextCreate calls are redirected to the same function =
in the dxg.sys. As such they all work the same way.
 *
-* Before calling this function please set the hSurfZ->ddRVal to an error v=
alue such as DDERR_NOTUSPORTED,
+* Before calling this function please set the pdcci->ddRVal to an error va=
lue such as DDERR_NOTSUPORTED,
 * for the ddRVal will otherwise be unchanged even if an error occurs insid=
e the driver. =
-* hSurfZ->dwhContext also needs to be filled in with the handle we got fro=
m NtGdiDdCreateDirectDrawObject
-*
+*
+* pdcci->lpDDLcl is a pointer to DDRAWI_DIRECTDRAW_LCL, not DD_DIRECTDRAW_=
LOCAL  as MSDN claims.
+* pdcci->lpDDSLcl is a pointer to DDRAWI_DDRAWSURFACE_LCL, not DD_DDDRAWSU=
RFACE_LOCAL as MSDN claims.
+* pdcci->lpDDSZLcl is a pointer to DDRAWI_DDRAWSURFACE_LCL, not DD_DDRAWSU=
RFACE_LOCAL as MSDN claims.
+* pdcci->dwhContext also needs be filled in with the handle we receive fro=
m NtGdiDdCreateDirectDrawObject.
+* pdcci->dwPID the processid it belong to, that you need to fill in.
+* Do not forget LPD3DNTHAL_CONTEXTCREATEDATA is typecast of LPD3DHAL_CONTE=
XTCREATEDATA and thuse two struct are different size,
+* the correct struct is LPD3DHAL_CONTEXTCREATEDATA.
 *--*/
 BOOL =
 STDCALL
 NtGdiD3dContextCreate(HANDLE hDirectDrawLocal,
                       HANDLE hSurfColor,
                       HANDLE hSurfZ,
-                      D3DNTHAL_CONTEXTCREATEDATA* pdcci)
+                      LPD3DNTHAL_CONTEXTCREATEDATA pdcci)
 {
     PGD_D3DCONTEXTCREATE pfnD3dContextCreate =3D (PGD_D3DCONTEXTCREATE)gpD=
xFuncs[DXG_INDEX_DxD3dContextCreate].pfn;
 =