88
99#include "precomp.h"
1010
11- BOOL DDPrimarySurfaceTest (HWND hWnd );
12- BOOL DDOffscreenBufferTest (HWND hWnd , BOOL Fullscreen );
11+ BOOL DDPrimarySurfaceTest (GUID * lpDevice , HWND hWnd );
12+ BOOL DDOffscreenBufferTest (GUID * lpDevice , HWND hWnd , BOOL Fullscreen );
1313VOID DDRedrawFrame (LPDIRECTDRAWSURFACE lpDDSurface );
1414VOID DDUpdateFrame (LPDIRECTDRAWSURFACE lpDDPrimarySurface ,LPDIRECTDRAWSURFACE lpDDBackBuffer , BOOL Fullscreen , INT * posX , INT * posY , INT * gainX , INT * gainY , RECT * rectDD );
1515
@@ -21,7 +21,7 @@ VOID DDUpdateFrame(LPDIRECTDRAWSURFACE lpDDPrimarySurface ,LPDIRECTDRAWSURFACE l
2121#define DD_SQUARE_STEP 2
2222
2323
24- BOOL StartDDTest (HWND hWnd , HINSTANCE hInstance , INT resTestDescription , INT resResult , INT TestNr )
24+ BOOL StartDDTest (GUID * lpDevice , HWND hWnd , HINSTANCE hInstance , INT resTestDescription , INT resResult , INT TestNr )
2525{
2626 WCHAR szTestDescription [256 ];
2727 WCHAR szCaption [256 ];
@@ -41,13 +41,13 @@ BOOL StartDDTest(HWND hWnd, HINSTANCE hInstance, INT resTestDescription, INT res
4141
4242 switch (TestNr ){
4343 case 1 :
44- Result = DDPrimarySurfaceTest (hWnd );
44+ Result = DDPrimarySurfaceTest (lpDevice , hWnd );
4545 break ;
4646 case 2 :
47- Result = DDOffscreenBufferTest (hWnd , FALSE);
47+ Result = DDOffscreenBufferTest (lpDevice , hWnd , FALSE);
4848 break ;
4949 case 3 :
50- Result = DDOffscreenBufferTest (hWnd , TRUE);
50+ Result = DDOffscreenBufferTest (lpDevice , hWnd , TRUE);
5151 break ;
5252 default :
5353 Result = FALSE;
@@ -67,7 +67,7 @@ BOOL StartDDTest(HWND hWnd, HINSTANCE hInstance, INT resTestDescription, INT res
6767 return FALSE;
6868}
6969
70- VOID DDTests ()
70+ VOID DDTests (GUID * lpDevice )
7171{
7272 WNDCLASSEX winClass ;
7373 HWND hWnd ;
@@ -105,23 +105,23 @@ VOID DDTests()
105105 if (MessageBox (NULL , szDescription , szCaption , MB_YESNO | MB_ICONQUESTION ) == IDNO )
106106 return ;
107107
108- StartDDTest (hWnd , hInstance , IDS_DDPRIMARY_DESCRIPTION , IDS_DDPRIMARY_RESULT , 1 );
109- StartDDTest (hWnd , hInstance , IDS_DDOFFSCREEN_DESCRIPTION , IDS_DDOFFSCREEN_RESULT , 2 );
110- StartDDTest (hWnd , hInstance , IDS_DDFULLSCREEN_DESCRIPTION , IDS_DDFULLSCREEN_RESULT , 3 );
108+ StartDDTest (lpDevice , hWnd , hInstance , IDS_DDPRIMARY_DESCRIPTION , IDS_DDPRIMARY_RESULT , 1 );
109+ StartDDTest (lpDevice , hWnd , hInstance , IDS_DDOFFSCREEN_DESCRIPTION , IDS_DDOFFSCREEN_RESULT , 2 );
110+ StartDDTest (lpDevice , hWnd , hInstance , IDS_DDFULLSCREEN_DESCRIPTION , IDS_DDFULLSCREEN_RESULT , 3 );
111111
112112 DestroyWindow (hWnd );
113113 UnregisterClass (winClass .lpszClassName , hInstance );
114114}
115115
116- BOOL DDPrimarySurfaceTest (HWND hWnd ){
116+ BOOL DDPrimarySurfaceTest (GUID * lpDevice , HWND hWnd ){
117117 UINT TimerID ;
118118 MSG msg ;
119119
120120 LPDIRECTDRAW lpDD = NULL ;
121121 LPDIRECTDRAWSURFACE lpDDSurface = NULL ;
122122 DDSURFACEDESC DDSurfaceDesc ;
123123
124- if (DirectDrawCreate (NULL , & lpDD , NULL ) != DD_OK )
124+ if (DirectDrawCreate (lpDevice , & lpDD , NULL ) != DD_OK )
125125 return FALSE;
126126
127127 if (lpDD -> lpVtbl -> SetCooperativeLevel (lpDD , hWnd , DDSCL_NORMAL ) != DD_OK )
@@ -197,7 +197,7 @@ VOID DDRedrawFrame(LPDIRECTDRAWSURFACE lpDDSurface)
197197}
198198
199199
200- BOOL DDOffscreenBufferTest (HWND hWnd , BOOL Fullscreen ){
200+ BOOL DDOffscreenBufferTest (GUID * lpDevice , HWND hWnd , BOOL Fullscreen ){
201201 UINT_PTR TimerID , TimerIDUpdate ;
202202 LPDIRECTDRAW lpDD ;
203203 LPDIRECTDRAWSURFACE lpDDPrimarySurface ;
@@ -210,7 +210,7 @@ BOOL DDOffscreenBufferTest(HWND hWnd, BOOL Fullscreen){
210210 POINT wndPoint ;
211211 INT posX = 0 , posY = 10 , xGain = DD_SQUARE_STEP , yGain = DD_SQUARE_STEP ;
212212
213- if (DirectDrawCreate (NULL , & lpDD , NULL ) != DD_OK )
213+ if (DirectDrawCreate (lpDevice , & lpDD , NULL ) != DD_OK )
214214 return FALSE;
215215
216216 ZeroMemory (& DDSurfaceDesc , sizeof (DDSurfaceDesc ));
0 commit comments