Changeset 94989 in vbox for trunk/src/VBox/Devices/Graphics/DevVGA-SVGA-cmd.cpp
- Timestamp:
- May 12, 2022 11:40:51 AM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Graphics/DevVGA-SVGA-cmd.cpp
r94928 r94989 1384 1384 static int vmsvga3dBmpWrite(const char *pszFilename, VMSVGA3D_MAPPED_SURFACE const *pMap) 1385 1385 { 1386 if (pMap->cbBlock != 4 && pMap-> format != SVGA3D_R16G16B16A16_FLOAT)1386 if (pMap->cbBlock != 4 && pMap->cbBlock != 1 && pMap->format != SVGA3D_R16G16B16A16_FLOAT) 1387 1387 return VERR_NOT_SUPPORTED; 1388 1388 … … 1422 1422 { 1423 1423 fwrite(s, 1, pMap->cbRow, f); 1424 1425 s += pMap->cbRowPitch; 1426 } 1427 } 1428 else if (pMap->cbBlock == 1) 1429 { 1430 const uint8_t *s = (uint8_t *)pMap->pvData; 1431 for (uint32_t iRow = 0; iRow < pMap->cRows; ++iRow) 1432 { 1433 for (int32_t x = 0; x < w; ++x) 1434 { 1435 uint32_t u32Pixel = s[x]; 1436 fwrite(&u32Pixel, 1, 4, f); 1437 } 1424 1438 1425 1439 s += pMap->cbRowPitch; … … 2519 2533 { 2520 2534 #ifdef VMSVGA3D_DX 2521 DEBUG_BREAKPOINT_TEST(); 2522 PVMSVGAR3STATE const pSvgaR3State = pThisCC->svga.pSvgaR3State; 2523 RT_NOREF(pSvgaR3State, pCmd, cbCmd); 2524 return vmsvga3dDXSetPredication(pThisCC, idDXContext); 2535 //DEBUG_BREAKPOINT_TEST(); 2536 RT_NOREF(cbCmd); 2537 return vmsvga3dDXSetPredication(pThisCC, idDXContext, pCmd); 2525 2538 #else 2526 2539 RT_NOREF(pThisCC, idDXContext, pCmd, cbCmd); … … 3379 3392 3380 3393 /* SVGA_3D_CMD_DX_MOB_FENCE_64 1216 */ 3381 static int vmsvga3dCmdDXMobFence64(PVGASTATECC pThisCC, uint32_t idDXContext, SVGA3dCmdDXMobFence64 const *pCmd, uint32_t cbCmd) 3382 { 3383 #ifdef VMSVGA3D_DX 3384 DEBUG_BREAKPOINT_TEST(); 3385 PVMSVGAR3STATE const pSvgaR3State = pThisCC->svga.pSvgaR3State; 3386 RT_NOREF(pSvgaR3State, pCmd, cbCmd); 3387 return vmsvga3dDXMobFence64(pThisCC, idDXContext); 3394 static int vmsvga3dCmdDXMobFence64(PVGASTATECC pThisCC, SVGA3dCmdDXMobFence64 const *pCmd, uint32_t cbCmd) 3395 { 3396 #ifdef VMSVGA3D_DX 3397 //DEBUG_BREAKPOINT_TEST(); 3398 PVMSVGAR3STATE const pSvgaR3State = pThisCC->svga.pSvgaR3State; 3399 RT_NOREF(cbCmd); 3400 3401 PVMSVGAMOB pMob = vmsvgaR3MobGet(pSvgaR3State, pCmd->mobId); 3402 ASSERT_GUEST_RETURN(pMob, VERR_INVALID_PARAMETER); 3403 3404 int rc = vmsvgaR3MobWrite(pSvgaR3State, pMob, pCmd->mobOffset, &pCmd->value, sizeof(pCmd->value)); 3405 ASSERT_GUEST_RETURN(RT_SUCCESS(rc), rc); 3406 3407 return VINF_SUCCESS; 3388 3408 #else 3389 3409 RT_NOREF(pThisCC, idDXContext, pCmd, cbCmd); … … 5603 5623 SVGA3dCmdDXMobFence64 *pCmd = (SVGA3dCmdDXMobFence64 *)pvCmd; 5604 5624 VMSVGAFIFO_CHECK_3D_CMD_MIN_SIZE_BREAK(sizeof(*pCmd)); 5605 rcParse = vmsvga3dCmdDXMobFence64(pThisCC, idDXContext,pCmd, cbCmd);5625 rcParse = vmsvga3dCmdDXMobFence64(pThisCC, pCmd, cbCmd); 5606 5626 break; 5607 5627 }
Note:
See TracChangeset
for help on using the changeset viewer.