+++ /dev/null
-//-----------------------------------------------------------------------------\r
-// File: atir2vb.h\r
-// Copyright (c) 2005 ATI Technologies Inc. All rights reserved.\r
-//-----------------------------------------------------------------------------\r
-\r
-\r
-\r
-#ifndef __ATIR2VB_H__\r
-#define __ATIR2VB_H__\r
-\r
-// FourCC code exported by D3D driver to indicate R2VB support\r
-// (not intended for resources creation)\r
-#define R2VB_FOURCC_R2VB MAKEFOURCC('R','2','V','B')\r
-\r
-// R2VB command ids\r
-//\r
-#define R2VB_GLB_ENA_CMD 0x0\r
-#define R2VB_VS2SM_CMD 0x1\r
-\r
-// R2VB mask/shifts\r
-//\r
-\r
-// R2VB Command Token\r
-#define R2VB_TOK_CMD_SHFT 24\r
-#define R2VB_TOK_CMD_MSK 0x0F000000\r
-#define R2VB_TOK_CMD_MAG 0x70FF0000\r
-#define R2VB_TOK_CMD_MAT 0xFFFF0000\r
-#define R2VB_TOK_PLD_MSK 0x0000FFFF\r
-\r
-\r
-// R2VB_GLB_ENA_CMD \r
-#define R2VB_GLB_ENA_MSK 0x1\r
-\r
-// R2VB_VS2SM_CMD \r
-#define R2VB_VS2SM_STRM_MSK 0xF\r
-#define R2VB_VS2SM_SMP_SHFT 0x4\r
-#define R2VB_VS2SM_SMP_MSK 0x7\r
-\r
-// R2VB enums\r
-//\r
-\r
-#define R2VB_VSMP_OVR_DMAP 0 // override stream with dmap sampler\r
-#define R2VB_VSMP_OVR_VTX0 1 // override stream with vertex texture 0 sampler\r
-#define R2VB_VSMP_OVR_VTX1 2 // override stream with vertex texture 1 sampler\r
-#define R2VB_VSMP_OVR_VTX2 3 // override stream with vertex texture 2 sampler\r
-#define R2VB_VSMP_OVR_VTX3 4 // override stream with vertex texture 3 sampler\r
-#define R2VB_VSMP_OVR_DIS 5 // disable stream override\r
-#define R2VB_VSMP_OVR_NUM 6 //\r
-#define R2VB_VSMP_NUM 5 // 5 available texture samplers\r
-\r
-//\r
-// R2VB Inlines\r
-\r
-// Commnad Token Processing \r
-//\r
-__inline DWORD r2vbToken_Set(DWORD cmd, DWORD payload){\r
- DWORD cmd_token = (cmd << R2VB_TOK_CMD_SHFT) & R2VB_TOK_CMD_MSK;\r
- DWORD pld_data = payload & R2VB_TOK_PLD_MSK;\r
- return (R2VB_TOK_CMD_MAG | cmd_token | pld_data);\r
-}\r
-\r
-// R2VB_GLB_ENA_CMD\r
-//\r
-__inline DWORD r2vbGlbEnable_Set(BOOL ena){\r
- DWORD payload = ena & R2VB_GLB_ENA_MSK;\r
- DWORD dw = r2vbToken_Set(R2VB_GLB_ENA_CMD, payload);\r
- return dw;\r
-}\r
-\r
-// R2VB_VS2SM_CMD\r
-//\r
-__inline DWORD r2vbVStrm2SmpMap_Set(DWORD str, DWORD smp){\r
- DWORD sampler = (smp & R2VB_VS2SM_SMP_MSK) << R2VB_VS2SM_SMP_SHFT;\r
- DWORD stream = (str & R2VB_VS2SM_STRM_MSK);\r
- DWORD payload = sampler | stream;\r
- DWORD dw = r2vbToken_Set(R2VB_VS2SM_CMD, payload);\r
- return dw;\r
-}\r
-\r
-#endif // __ATIR2VB_H__\r