1 
2 #ifndef __D3D8THK_H
3 #define __D3D8THK_H
4 
5 #include <ddrawint.h>
6 #include <d3dnthal.h>
7 
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 
12 BOOL WINAPI OsThunkD3dContextCreate(
13     HANDLE hDirectDrawLocal,
14     HANDLE hSurfColor,
15     HANDLE hSurfZ,
16     LPD3DNTHAL_CONTEXTDESTROYDATA pdcci
17 );
18 
19 
20 DWORD WINAPI OsThunkD3dContextDestroy(
21     LPD3DNTHAL_CONTEXTDESTROYDATA pContextDestroyData
22 );
23 
24 DWORD WINAPI OsThunkD3dContextDestroyAll(
25     LPD3DNTHAL_CONTEXTDESTROYDATA pContextDestroyData
26 );
27 
28 DWORD WINAPI OsThunkD3dDrawPrimitives2(
29     HANDLE hCmdBuf,
30     HANDLE hVBuf,
31     LPD3DNTHAL_DRAWPRIMITIVES2DATA pded,
32     FLATPTR *pfpVidMemCmd,
33     DWORD *pdwSizeCmd,
34     FLATPTR *pfpVidMemVtx,
35     DWORD *pdwSizeVtx
36 );
37 
38 DWORD WINAPI OsThunkD3dValidateTextureStageState(
39     LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA pData
40 );
41 
42 
43 DWORD WINAPI OsThunkDdAddAttachedSurface(
44     HANDLE hSurface,
45     HANDLE hSurfaceAttached,
46     PDD_ADDATTACHEDSURFACEDATA puAddAttachedSurfaceData
47 );
48 
49 DWORD WINAPI OsThunkDdAlphaBlt(VOID);
50 
51 BOOL WINAPI OsThunkDdAttachSurface(
52     HANDLE hSurfaceFrom,
53     HANDLE hSurfaceTo
54 );
55 
56 DWORD WINAPI OsThunkDdBeginMoCompFrame(
57     HANDLE hMoComp,
58     PDD_BEGINMOCOMPFRAMEDATA puBeginFrameData
59 );
60 
61 DWORD WINAPI OsThunkDdBlt(
62     HANDLE hSurfaceDest,
63     HANDLE hSurfaceSrc,
64     PDD_BLTDATA puBltData
65 );
66 
67 DWORD WINAPI OsThunkDdCanCreateD3DBuffer(
68     HANDLE hDirectDraw,
69     PDD_CANCREATESURFACEDATA puCanCreateSurfaceData
70 );
71 
72 DWORD WINAPI OsThunkDdCanCreateSurface(
73     HANDLE hDirectDraw,
74     PDD_CANCREATESURFACEDATA puCanCreateSurfaceData
75 );
76 
77 DWORD WINAPI OsThunkDdColorControl(
78     HANDLE hSurface,
79     PDD_COLORCONTROLDATA puColorControlData
80 );
81 
82 DWORD WINAPI OsThunkDdCreateD3DBuffer(
83     HANDLE hDirectDraw,
84     HANDLE *hSurface,
85     DDSURFACEDESC *puSurfaceDescription,
86     DD_SURFACE_GLOBAL *puSurfaceGlobalData,
87     DD_SURFACE_LOCAL *puSurfaceLocalData,
88     DD_SURFACE_MORE *puSurfaceMoreData,
89     PDD_CREATESURFACEDATA puCreateSurfaceData,
90     HANDLE *puhSurface
91 );
92 
93 HANDLE WINAPI OsThunkDdCreateDirectDrawObject(HDC hdc);
94 
95 HANDLE WINAPI OsThunkDdCreateMoComp(
96     HANDLE hDirectDraw,
97     PDD_CREATEMOCOMPDATA puCreateMoCompData
98 );
99 
100 DWORD WINAPI OsThunkDdCreateSurface(
101     HANDLE hDirectDraw,
102     HANDLE *hSurface,
103     DDSURFACEDESC *puSurfaceDescription,
104     DD_SURFACE_GLOBAL *puSurfaceGlobalData,
105     DD_SURFACE_LOCAL *puSurfaceLocalData,
106     DD_SURFACE_MORE *puSurfaceMoreData,
107     PDD_CREATESURFACEDATA puCreateSurfaceData,
108     HANDLE *puhSurface
109 );
110 
111 DWORD WINAPI OsThunkDdCreateSurfaceEx(
112     HANDLE hDirectDraw,
113     HANDLE hSurface,
114     DWORD dwSurfaceHandle
115 );
116 
117 HANDLE WINAPI OsThunkDdCreateSurfaceObject(
118     HANDLE hDirectDrawLocal,
119     HANDLE hSurface,
120     PDD_SURFACE_LOCAL puSurfaceLocal,
121     PDD_SURFACE_MORE puSurfaceMore,
122     PDD_SURFACE_GLOBAL puSurfaceGlobal,
123     BOOL bComplete
124 );
125 
126 BOOL WINAPI OsThunkDdDeleteDirectDrawObject(
127     HANDLE hDirectDrawLocal
128 );
129 
130 BOOL WINAPI OsThunkDdDeleteSurfaceObject(
131     HANDLE hSurface
132 );
133 
134 DWORD WINAPI OsThunkDdDestroyD3DBuffer(
135     HANDLE hSurface
136 );
137 
138 DWORD WINAPI OsThunkDdDestroyMoComp(
139     HANDLE hMoComp,
140     PDD_DESTROYMOCOMPDATA puBeginFrameData
141 );
142 
143 DWORD WINAPI OsThunkDdDestroySurface(
144     HANDLE hSurface,
145     BOOL bRealDestroy
146 );
147 
148 DWORD WINAPI OsThunkDdEndMoCompFrame(
149     HANDLE hMoComp,
150     PDD_ENDMOCOMPFRAMEDATA puEndFrameData
151 );
152 
153 DWORD WINAPI OsThunkDdFlip(
154     HANDLE hSurfaceCurrent,
155     HANDLE hSurfaceTarget,
156     HANDLE hSurfaceCurrentLeft,
157     HANDLE hSurfaceTargetLeft,
158     PDD_FLIPDATA puFlipData
159 );
160 
161 DWORD WINAPI OsThunkDdFlipToGDISurface(
162     HANDLE hDirectDraw,
163     PDD_FLIPTOGDISURFACEDATA puFlipToGDISurfaceData
164 );
165 
166 DWORD WINAPI OsThunkDdGetAvailDriverMemory(
167     HANDLE hDirectDraw,
168     PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData
169 );
170 
171 DWORD WINAPI OsThunkDdGetBltStatus(
172     HANDLE hSurface,
173     PDD_GETBLTSTATUSDATA puGetBltStatusData
174 );
175 
176 HDC WINAPI OsThunkDdGetDC(
177     HANDLE hSurface,
178     PALETTEENTRY *puColorTable
179 );
180 
181 DWORD WINAPI OsThunkDdGetDriverInfo(
182     HANDLE hDirectDraw,
183     PDD_GETDRIVERINFODATA puGetDriverInfoData
184 );
185 
186 DWORD WINAPI OsThunkDdGetDriverState(
187     PDD_GETDRIVERSTATEDATA pdata
188 );
189 
190 DWORD WINAPI OsThunkDdGetDxHandle(
191     HANDLE hDirectDraw,
192     HANDLE hSurface,
193     BOOL bRelease
194 );
195 
196 DWORD WINAPI OsThunkDdGetFlipStatus(
197     HANDLE hSurface,
198     PDD_GETFLIPSTATUSDATA puGetFlipStatusData
199 );
200 
201 DWORD WINAPI OsThunkDdGetInternalMoCompInfo(
202     HANDLE hDirectDraw,
203     PDD_GETINTERNALMOCOMPDATA puGetInternalData
204 );
205 
206 DWORD WINAPI OsThunkDdGetMoCompBuffInfo(
207     HANDLE hDirectDraw,
208     PDD_GETMOCOMPCOMPBUFFDATA puGetBuffData
209 );
210 
211 DWORD WINAPI OsThunkDdGetMoCompFormats(
212     HANDLE hDirectDraw,
213     PDD_GETMOCOMPFORMATSDATA puGetMoCompFormatsData
214 );
215 
216 DWORD WINAPI OsThunkDdGetMoCompGuids(
217     HANDLE hDirectDraw,
218     PDD_GETMOCOMPGUIDSDATA puGetMoCompGuidsData
219 );
220 
221 DWORD WINAPI OsThunkDdGetScanLine(
222     HANDLE hDirectDraw,
223     PDD_GETSCANLINEDATA puGetScanLineData
224 );
225 
226 DWORD WINAPI OsThunkDdLock(
227     HANDLE hSurface,
228     PDD_LOCKDATA puLockData,
229     HDC hdcClip
230 );
231 
232 DWORD WINAPI OsThunkDdLockD3D(
233     HANDLE hSurface,
234     PDD_LOCKDATA puLockData
235 );
236 
237 
238 BOOL WINAPI OsThunkDdQueryDirectDrawObject(
239     HANDLE hDirectDrawLocal,
240     DD_HALINFO  *pHalInfo,
241     DWORD *pCallBackFlags,
242     LPD3DNTHAL_CALLBACKS puD3dCallbacks,
243     LPD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData,
244     PDD_D3DBUFCALLBACKS puD3dBufferCallbacks,
245     LPDDSURFACEDESC puD3dTextureFormats,
246     DWORD *puNumHeaps,
247     VIDEOMEMORY *puvmList,
248     DWORD *puNumFourCC,
249     DWORD *puFourCC
250 );
251 
252 
253 DWORD WINAPI OsThunkDdQueryMoCompStatus(
254     HANDLE hMoComp,
255     PDD_QUERYMOCOMPSTATUSDATA puQueryMoCompStatusData
256 );
257 
258 BOOL WINAPI OsThunkDdReenableDirectDrawObject(
259     HANDLE hDirectDrawLocal,
260     BOOL *pubNewMode
261 );
262 
263 BOOL WINAPI OsThunkDdReleaseDC(
264     HANDLE hSurface
265 );
266 
267 DWORD WINAPI OsThunkDdRenderMoComp(
268     HANDLE hMoComp,
269     PDD_RENDERMOCOMPDATA puRenderMoCompData
270 );
271 
272 BOOL WINAPI OsThunkDdResetVisrgn(
273     HANDLE hSurface,
274     HWND hwnd
275 );
276 
277 DWORD WINAPI OsThunkDdSetColorKey(
278     HANDLE hSurface,
279     PDD_SETCOLORKEYDATA puSetColorKeyData
280 );
281 
282 DWORD WINAPI OsThunkDdSetExclusiveMode(
283     HANDLE hDirectDraw,
284     PDD_SETEXCLUSIVEMODEDATA puSetExclusiveModeData
285 );
286 
287 BOOL WINAPI OsThunkDdSetGammaRamp(
288     HANDLE hDirectDraw,
289     HDC hdc,
290     LPVOID lpGammaRamp
291 );
292 
293 DWORD WINAPI OsThunkDdSetOverlayPosition(
294     HANDLE hSurfaceSource,
295     HANDLE hSurfaceDestination,
296     PDD_SETOVERLAYPOSITIONDATA puSetOverlayPositionData
297 );
298 
299 VOID WINAPI OsThunkDdUnattachSurface(
300     HANDLE hSurface,
301     HANDLE hSurfaceAttached
302 );
303 
304 DWORD WINAPI OsThunkDdUnlock(
305     HANDLE hSurface,
306     PDD_UNLOCKDATA puUnlockData
307 );
308 
309 DWORD WINAPI OsThunkDdUnlockD3D(
310     HANDLE hSurface,
311     PDD_UNLOCKDATA puUnlockData
312 );
313 
314 DWORD WINAPI OsThunkDdUpdateOverlay(
315     HANDLE hSurfaceDestination,
316     HANDLE hSurfaceSource,
317     PDD_UPDATEOVERLAYDATA puUpdateOverlayData
318 );
319 
320 DWORD WINAPI OsThunkDdWaitForVerticalBlank(
321     HANDLE hDirectDraw,
322     PDD_WAITFORVERTICALBLANKDATA puWaitForVerticalBlankData
323 );
324 
325 #ifdef __cplusplus
326 } /* extern "C" */
327 #endif
328 
329 #endif // __D3D8THK_H
330