3 /* SDK/DDK/NDK Headers. */
14 /* which syscall table shall we use WIndows or ReactOS */
16 /* Windows 2000 sp4 syscall table for win32k */
17 #include "Windows2000Sp4.h"
19 /* Windows syscall code */
20 #include "Windowsos.h"
22 /* ReactOS syscall code */
23 #include "sysreactos.h"
27 #define DdQueryDirectDrawObject GdiEntry2
29 #define DdCreateSurfaceObject GdiEntry4
30 #define DdDeleteSurfaceObject GdiEntry5
31 #define DdResetVisrgn GdiEntry6
32 #define DdGetDC GdiEntry7
33 #define DdReleaseDC GdiEntry8
34 #define DdCreateDIBSection GdiEntry9
35 #define DdReenableDirectDrawObject GdiEntry10
36 #define DdAttachSurface GdiEntry11
37 #define DdUnattachSurface GdiEntry12
38 #define DdQueryDisplaySettingsUniqueness GdiEntry13
39 #define DdGetDxHandle GdiEntry14
40 #define DdSetGammaRamp GdiEntry15
41 #define DdSwapTextureHandles GdiEntry16
43 int main(int argc
, char **argv
)
45 HANDLE hDirectDrawLocal
;
47 hDirectDrawLocal
= test_NtGdiDdCreateDirectDrawObject();
49 test_NtGdiDdQueryDirectDrawObject(hDirectDrawLocal
);
51 test_NtGdiDdDeleteDirectDrawObject(hDirectDrawLocal
);
56 * Test see if we getting a DirectDrawObject from win32k
60 test_NtGdiDdCreateDirectDrawObject()
64 HDC hdc
=CreateDCW(L
"Display",NULL
,NULL
,NULL
);
66 printf("Start testing of NtGdiDdCreateDirectDrawObject\n");
68 retValue
= sysNtGdiDdCreateDirectDrawObject(NULL
);
69 testing_noteq(retValue
,NULL
,fails
,"NtGdiDdCreateDirectDrawObject(NULL);\0");
71 retValue
= sysNtGdiDdCreateDirectDrawObject(hdc
);
72 testing_eq(retValue
,NULL
,fails
,"NtGdiDdCreateDirectDrawObject(hdc);\0");
74 show_status(fails
, "NtGdiDdCreateDirectDrawObject\0");
80 * Test see if we can setup DirectDrawObject
84 test_NtGdiDdQueryDirectDrawObject( HANDLE hDirectDrawLocal
)
89 DD_HALINFO
*pHalInfo
= NULL
;
90 DWORD
*pCallBackFlags
= NULL
;
91 LPD3DNTHAL_CALLBACKS puD3dCallbacks
= NULL
;
92 LPD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData
= NULL
;
93 PDD_D3DBUFCALLBACKS puD3dBufferCallbacks
= NULL
;
94 LPDDSURFACEDESC puD3dTextureFormats
= NULL
;
95 DWORD
*puNumHeaps
= NULL
;
96 VIDEOMEMORY
*puvmList
= NULL
;
97 DWORD
*puNumFourCC
= NULL
;
98 DWORD
*puFourCC
= NULL
;
100 printf("Start testing of NtGdiDdQueryDirectDrawObject\n");
103 retValue
= sysNtGdiDdQueryDirectDrawObject( NULL
, pHalInfo
,
104 pCallBackFlags
, puD3dCallbacks
,
105 puD3dDriverData
, puD3dBufferCallbacks
,
106 puD3dTextureFormats
, puNumHeaps
,
107 puvmList
, puNumFourCC
,
109 testing_noteq(retValue
,0,fails
,"1. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
110 testing_noteq(pHalInfo
,NULL
,fails
,"2. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
111 testing_noteq(pCallBackFlags
,NULL
,fails
,"3. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
112 testing_noteq(puD3dCallbacks
,NULL
,fails
,"4. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
113 testing_noteq(puD3dDriverData
,NULL
,fails
,"5. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
114 testing_noteq(puD3dBufferCallbacks
,NULL
,fails
,"6. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
115 testing_noteq(puD3dTextureFormats
,NULL
,fails
,"7. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
116 testing_noteq(puNumFourCC
,NULL
,fails
,"8. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
117 testing_noteq(puFourCC
,NULL
,fails
,"9. NtGdiDdQueryDirectDrawObject(NULL, ...);\0");
119 retValue
= sysNtGdiDdQueryDirectDrawObject( hDirectDrawLocal
, pHalInfo
,
120 pCallBackFlags
, puD3dCallbacks
,
121 puD3dDriverData
, puD3dBufferCallbacks
,
122 puD3dTextureFormats
, puNumHeaps
,
123 puvmList
, puNumFourCC
,
126 testing_noteq(retValue
,0,fails
,"1. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
127 testing_noteq(pHalInfo
,NULL
,fails
,"2. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
128 testing_noteq(pCallBackFlags
,NULL
,fails
,"3. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
129 testing_noteq(puD3dCallbacks
,NULL
,fails
,"4. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
130 testing_noteq(puD3dDriverData
,NULL
,fails
,"5. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
131 testing_noteq(puD3dBufferCallbacks
,NULL
,fails
,"6. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
132 testing_noteq(puD3dTextureFormats
,NULL
,fails
,"7. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
133 testing_noteq(puNumFourCC
,NULL
,fails
,"8. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
134 testing_noteq(puFourCC
,NULL
,fails
,"9. NtGdiDdQueryDirectDrawObject(hDirectDrawLocal, NULL, ...);\0");
139 show_status(fails
, "NtGdiDdQueryDirectDrawObject\0");
143 * Test see if we can delete a DirectDrawObject from win32k
147 test_NtGdiDdDeleteDirectDrawObject(HANDLE hDirectDrawLocal
)
151 printf("Start testing of NtGdiDdDeleteDirectDrawObject\n");
153 retValue
= sysNtGdiDdDeleteDirectDrawObject(hDirectDrawLocal
);
154 testing_eq(retValue
,FALSE
,fails
,"NtGdiDdDeleteDirectDrawObject(hDirectDrawLocal);\0");
156 retValue
= sysNtGdiDdDeleteDirectDrawObject(NULL
);
157 testing_eq(retValue
,TRUE
,fails
,"NtGdiDdDeleteDirectDrawObject(NULL);\0");
159 show_status(fails
, "NtGdiDdDeleteDirectDrawObject\0");