Changeset 30214 in vbox for trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm
- Timestamp:
- Jun 15, 2010 6:56:52 PM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 62697
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.cpp
r30167 r30214 1158 1158 { 1159 1159 DDRAW_CAPS *pCaps = (DDRAW_CAPS*)pData->pData; 1160 pCaps->Caps |= DDRAW_CAPS_COLORKEY 1161 | DDRAW_CAPS2_DYNAMICTEXTURES 1162 | DDRAW_CAPS2_FLIPNOVSYNC 1163 ; 1160 pCaps->Caps |= DDRAW_CAPS_COLORKEY; 1161 pCaps->Caps2 |= DDRAW_CAPS2_FLIPNOVSYNC; 1164 1162 } 1165 1163 #endif … … 1242 1240 case D3DDDICAPS_GETD3D3CAPS: 1243 1241 Assert(!VBOXDISPMODE_IS_3D(pAdapter)); 1244 Assert(pData->DataSize >= sizeof (D3DHAL_GLOBALDRIVERDATA));1242 Assert(pData->DataSize == sizeof (D3DHAL_GLOBALDRIVERDATA)); 1245 1243 if (pData->DataSize >= sizeof (D3DHAL_GLOBALDRIVERDATA)) 1246 1244 { … … 1255 1253 pCaps->hwCaps.dcmColorModel = D3DCOLOR_RGB; 1256 1254 pCaps->hwCaps.dwDevCaps = D3DDEVCAPS_CANRENDERAFTERFLIP 1257 | D3DDEVCAPS_DRAWPRIMTLVERTEX1255 // | D3DDEVCAPS_DRAWPRIMTLVERTEX 1258 1256 | D3DDEVCAPS_EXECUTESYSTEMMEMORY 1259 | D3DDEVCAPS_FLOATTLVERTEX 1257 | D3DDEVCAPS_EXECUTEVIDEOMEMORY 1258 // | D3DDEVCAPS_FLOATTLVERTEX 1260 1259 | D3DDEVCAPS_HWRASTERIZATION 1261 | D3DDEVCAPS_HWTRANSFORMANDLIGHT 1262 | D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 1263 | D3DDEVCAPS_TEXTUREVIDEOMEMORY; 1260 // | D3DDEVCAPS_HWTRANSFORMANDLIGHT 1261 // | D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 1262 // | D3DDEVCAPS_TEXTUREVIDEOMEMORY 1263 ; 1264 1264 pCaps->hwCaps.dtcTransformCaps.dwSize = sizeof (D3DTRANSFORMCAPS); 1265 1265 pCaps->hwCaps.dtcTransformCaps.dwCaps = 0; … … 1298 1298 pCaps->hwCaps.dpcTriCaps.dwStippleWidth = 0; 1299 1299 pCaps->hwCaps.dpcTriCaps.dwStippleHeight = 0; 1300 pCaps->hwCaps.dwDeviceRenderBitDepth = 0;1301 pCaps->hwCaps.dwDeviceZBufferBitDepth = DDBD_8 | DDBD_16 | DDBD_24 | DDBD_32;1300 pCaps->hwCaps.dwDeviceRenderBitDepth = DDBD_8 | DDBD_16 | DDBD_24 | DDBD_32; 1301 pCaps->hwCaps.dwDeviceZBufferBitDepth = 0; 1302 1302 pCaps->hwCaps.dwMaxBufferSize = 0; 1303 1303 pCaps->hwCaps.dwMaxVertexCount = 0; … … 1306 1306 pCaps->dwNumVertices = 0; 1307 1307 pCaps->dwNumClipVertices = 0; 1308 pCaps->dwNumTextureFormats = pAdapter->cSurfDescs;1309 pCaps->lpTextureFormats = pAdapter->paSurfDescs;1308 pCaps->dwNumTextureFormats = 0;//pAdapter->cSurfDescs; 1309 pCaps->lpTextureFormats = NULL;//pAdapter->paSurfDescs; 1310 1310 } 1311 1311 else … … 1314 1314 case D3DDDICAPS_GETD3D7CAPS: 1315 1315 Assert(!VBOXDISPMODE_IS_3D(pAdapter)); 1316 Assert(pData->DataSize >= sizeof (D3DHAL_D3DEXTENDEDCAPS));1316 Assert(pData->DataSize == sizeof (D3DHAL_D3DEXTENDEDCAPS)); 1317 1317 if (pData->DataSize >= sizeof (D3DHAL_D3DEXTENDEDCAPS)) 1318 { 1318 1319 memset(pData->pData, 0, sizeof (D3DHAL_D3DEXTENDEDCAPS)); 1320 D3DHAL_D3DEXTENDEDCAPS *pCaps = (D3DHAL_D3DEXTENDEDCAPS*)pData->pData; 1321 pCaps->dwSize = sizeof (D3DHAL_D3DEXTENDEDCAPS); 1322 } 1319 1323 else 1320 1324 hr = E_INVALIDARG; … … 1397 1401 *((uint32_t*)pData->pData) = 0; 1398 1402 break; 1403 case D3DDDICAPS_GETVIDEOPROCESSORCAPS: 1404 case D3DDDICAPS_GETEXTENSIONGUIDCOUNT: 1405 case D3DDDICAPS_GETDECODEGUIDCOUNT: 1406 case D3DDDICAPS_GETVIDEOPROCESSORDEVICEGUIDCOUNT: 1407 if (pData->pData && pData->DataSize) 1408 memset(pData->pData, 0, pData->DataSize); 1409 break; 1399 1410 case D3DDDICAPS_GETMULTISAMPLEQUALITYLEVELS: 1400 1411 case D3DDDICAPS_GETD3D5CAPS: 1401 1412 case D3DDDICAPS_GETD3D6CAPS: 1402 1413 case D3DDDICAPS_GETD3D8CAPS: 1403 case D3DDDICAPS_GETDECODEGUIDCOUNT:1404 1414 case D3DDDICAPS_GETDECODEGUIDS: 1405 1415 case D3DDDICAPS_GETDECODERTFORMATCOUNT: … … 1409 1419 case D3DDDICAPS_GETDECODECONFIGURATIONCOUNT: 1410 1420 case D3DDDICAPS_GETDECODECONFIGURATIONS: 1411 case D3DDDICAPS_GETVIDEOPROCESSORDEVICEGUIDCOUNT:1412 1421 case D3DDDICAPS_GETVIDEOPROCESSORDEVICEGUIDS: 1413 1422 case D3DDDICAPS_GETVIDEOPROCESSORRTFORMATCOUNT: … … 1415 1424 case D3DDDICAPS_GETVIDEOPROCESSORRTSUBSTREAMFORMATCOUNT: 1416 1425 case D3DDDICAPS_GETVIDEOPROCESSORRTSUBSTREAMFORMATS: 1417 case D3DDDICAPS_GETVIDEOPROCESSORCAPS:1418 1426 case D3DDDICAPS_GETPROCAMPRANGE: 1419 1427 case D3DDDICAPS_FILTERPROPERTYRANGE: 1420 case D3DDDICAPS_GETEXTENSIONGUIDCOUNT:1421 1428 case D3DDDICAPS_GETEXTENSIONGUIDS: 1422 1429 case D3DDDICAPS_GETEXTENSIONCAPS: … … 2371 2378 2372 2379 2373 hr = pDevice->RtCallbacks.pfnLockCb( hDevice, &LockData);2380 hr = pDevice->RtCallbacks.pfnLockCb(pDevice->hDevice, &LockData); 2374 2381 Assert(hr == S_OK || (hr == D3DERR_WASSTILLDRAWING && pData->Flags.DoNotWait)); 2375 2382 if (hr == S_OK) … … 2392 2399 else 2393 2400 { 2394 AssertBreakpoint();2401 offset = 0; 2395 2402 } 2396 2403 … … 2510 2517 UnlockData.hAllocation = pRc->aAllocations[pData->SubResourceIndex].hAllocation; 2511 2518 2512 hr = pDevice->RtCallbacks.pfnUnlockCb( hDevice, &UnlockData.Unlock);2519 hr = pDevice->RtCallbacks.pfnUnlockCb(pDevice->hDevice, &UnlockData.Unlock); 2513 2520 Assert(hr == S_OK); 2514 2521 } … … 3105 3112 PVBOXWDDMDISP_DEVICE pDevice = (PVBOXWDDMDISP_DEVICE)hDevice; 3106 3113 Assert(pDevice); 3107 Assert(pDevice->pDevice9If); 3108 HRESULT hr = pDevice->pDevice9If->Present(NULL, /* CONST RECT * pSourceRect */ 3109 NULL, /* CONST RECT * pDestRect */ 3110 NULL, /* HWND hDestWindowOverride */ 3111 NULL /*CONST RGNDATA * pDirtyRegion */ 3112 ); 3113 Assert(hr == S_OK); 3114 HRESULT hr = S_OK; 3115 if (VBOXDISPMODE_IS_3D(pDevice->pAdapter)) 3116 { 3117 Assert(pDevice->pDevice9If); 3118 hr = pDevice->pDevice9If->Present(NULL, /* CONST RECT * pSourceRect */ 3119 NULL, /* CONST RECT * pDestRect */ 3120 NULL, /* HWND hDestWindowOverride */ 3121 NULL /*CONST RGNDATA * pDirtyRegion */ 3122 ); 3123 Assert(hr == S_OK); 3124 } 3114 3125 vboxVDbgPrintF(("<== "__FUNCTION__", hDevice(0x%p), hr(0x%x)\n", hDevice, hr)); 3115 3126 return hr;
Note:
See TracChangeset
for help on using the changeset viewer.