1 /* All testcase are base how windows 2000 sp4 acting */ 2 3 4 #include <stdio.h> 5 #include <windows.h> 6 #include <wingdi.h> 7 #include <winddi.h> 8 #include <d3dnthal.h> 9 10 #include "test.h" 11 12 /* this flag are only set for dx5 and lower but we need check see if we getting it back from win32k or not */ 13 #define D3DLIGHTCAPS_GLSPOT 0x00000010 14 15 /* this flag are only set for dx6 and lower but we need check see if we getting it back from win32k or not */ 16 #define D3DLIGHTCAPS_PARALLELPOINT 0x00000008 17 18 #define checkflag(dwflag,dwvalue,text) \ 19 if (dwflag & dwvalue) \ 20 { \ 21 if (count!=0) \ 22 { \ 23 printf("| "); \ 24 } \ 25 dwflag = (ULONG)dwflag - (ULONG)dwvalue; \ 26 printf("%s ",text); \ 27 count++; \ 28 } 29 30 #define endcheckflag(dwflag,text) \ 31 if (count==0) \ 32 printf("0x%08lx\n", (ULONG) dwflag);\ 33 else \ 34 printf("\n");\ 35 if (flag != 0) \ 36 printf("undoc value in %s flags value %08lx\n",text, (ULONG) dwflag); 37 38 39 40 void 41 dump_CallBackFlags(DWORD *pCallBackFlags, char *text) 42 { 43 UINT flag; 44 INT count; 45 46 printf("dumping the CallBackFlags from %s\n",text); 47 printf("pCallBackFlags[0] : "); 48 49 flag=pCallBackFlags[0]; 50 count=0; 51 checkflag(flag,DDHAL_CB32_CANCREATESURFACE,"DDHAL_CB32_CANCREATESURFACE"); 52 checkflag(flag,DDHAL_CB32_CREATEPALETTE,"DDHAL_CB32_CREATEPALETTE"); 53 checkflag(flag,DDHAL_CB32_CREATESURFACE,"DDHAL_CB32_CREATESURFACE"); 54 checkflag(flag,DDHAL_CB32_GETSCANLINE,"DDHAL_CB32_GETSCANLINE"); 55 checkflag(flag,DDHAL_CB32_MAPMEMORY,"DDHAL_CB32_MAPMEMORY"); 56 checkflag(flag,DDHAL_CB32_SETCOLORKEY,"DDHAL_CB32_SETCOLORKEY"); 57 checkflag(flag,DDHAL_CB32_SETMODE,"DDHAL_CB32_SETMODE"); 58 checkflag(flag,DDHAL_CB32_WAITFORVERTICALBLANK,"DDHAL_CB32_WAITFORVERTICALBLANK"); 59 endcheckflag(flag,"pCallBackFlags[0]"); 60 61 /* SURFACE callback */ 62 printf("pCallBackFlags[1] : "); 63 flag = pCallBackFlags[1]; 64 count = 0; 65 checkflag(flag,DDHAL_SURFCB32_ADDATTACHEDSURFACE,"DDHAL_SURFCB32_ADDATTACHEDSURFACE"); 66 checkflag(flag,DDHAL_SURFCB32_BLT,"DDHAL_SURFCB32_BLT"); 67 checkflag(flag,DDHAL_SURFCB32_DESTROYSURFACE,"DDHAL_SURFCB32_DESTROYSURFACE"); 68 checkflag(flag,DDHAL_SURFCB32_FLIP,"DDHAL_SURFCB32_FLIP"); 69 checkflag(flag,DDHAL_SURFCB32_GETBLTSTATUS,"DDHAL_SURFCB32_GETBLTSTATUS"); 70 checkflag(flag,DDHAL_SURFCB32_GETFLIPSTATUS,"DDHAL_SURFCB32_GETFLIPSTATUS"); 71 checkflag(flag,DDHAL_SURFCB32_LOCK,"DDHAL_SURFCB32_LOCK"); 72 checkflag(flag,DDHAL_SURFCB32_RESERVED4,"DDHAL_SURFCB32_RESERVED4"); 73 checkflag(flag,DDHAL_SURFCB32_SETCLIPLIST,"DDHAL_SURFCB32_SETCLIPLIST"); 74 checkflag(flag,DDHAL_SURFCB32_SETCOLORKEY,"DDHAL_SURFCB32_SETCOLORKEY"); 75 checkflag(flag,DDHAL_SURFCB32_SETOVERLAYPOSITION,"DDHAL_SURFCB32_SETOVERLAYPOSITION"); 76 checkflag(flag,DDHAL_SURFCB32_SETPALETTE,"DDHAL_SURFCB32_SETPALETTE"); 77 checkflag(flag,DDHAL_SURFCB32_UNLOCK,"DDHAL_SURFCB32_UNLOCK"); 78 checkflag(flag,DDHAL_SURFCB32_UPDATEOVERLAY,"DDHAL_SURFCB32_UPDATEOVERLAY"); 79 endcheckflag(flag,"pCallBackFlags[1]"); 80 81 82 /* palleted */ 83 printf("pCallBackFlags[2] : "); 84 flag = pCallBackFlags[2]; 85 count = 0; 86 checkflag(flag,DDHAL_PALCB32_DESTROYPALETTE,"DDHAL_PALCB32_DESTROYPALETTE"); 87 checkflag(flag,DDHAL_PALCB32_SETENTRIES,"DDHAL_PALCB32_SETENTRIES"); 88 endcheckflag(flag,"pCallBackFlags[2]"); 89 } 90 91 void 92 dump_halinfo(DD_HALINFO *pHalInfo, char *text) 93 { 94 printf("dumping the DD_HALINFO from %s\n",text); 95 96 if (pHalInfo->dwSize == sizeof(DD_HALINFO_V4)) 97 { 98 DD_HALINFO_V4 *pHalInfo4 = (DD_HALINFO_V4 *) pHalInfo; 99 int t; 100 101 printf("DD_HALINFO Version NT4 found \n"); 102 printf(" pHalInfo4->dwSize : 0x%08lx\n",(long)pHalInfo4->dwSize); 103 printf(" pHalInfo4->vmiData->fpPrimary : 0x%08lx\n",(long)pHalInfo4->vmiData.fpPrimary); 104 printf(" pHalInfo4->vmiData->dwFlags : 0x%08lx\n",(long)pHalInfo4->vmiData.dwFlags); 105 printf(" pHalInfo4->vmiData->dwDisplayWidth : 0x%08lx\n",(long)pHalInfo4->vmiData.dwDisplayWidth); 106 printf(" pHalInfo4->vmiData->dwDisplayHeight : 0x%08lx\n",(long)pHalInfo4->vmiData.dwDisplayHeight); 107 printf(" pHalInfo4->vmiData->lDisplayPitch : 0x%08lx\n",(long)pHalInfo4->vmiData.lDisplayPitch); 108 109 printf(" pHalInfo4->vmiData->ddpfDisplay.dwSize : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwSize); 110 printf(" pHalInfo4->vmiData->ddpfDisplay.dwFlags : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwFlags); 111 printf(" pHalInfo4->vmiData->ddpfDisplay.dwFourCC : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwFourCC); 112 printf(" pHalInfo4->vmiData->ddpfDisplay.dwRGBBitCount : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwRGBBitCount); 113 printf(" pHalInfo4->vmiData->ddpfDisplay.dwRBitMask : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwRBitMask); 114 printf(" pHalInfo4->vmiData->ddpfDisplay.dwGBitMask : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwGBitMask); 115 printf(" pHalInfo4->vmiData->ddpfDisplay.dwBBitMask : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwBBitMask); 116 printf(" pHalInfo4->vmiData->ddpfDisplay.dwRGBAlphaBitMask : 0x%08lx\n",(long)pHalInfo4->vmiData.ddpfDisplay.dwRGBAlphaBitMask); 117 118 printf(" pHalInfo4->vmiData->dwOffscreenAlign : 0x%08lx\n",(long)pHalInfo4->vmiData.dwOffscreenAlign); 119 printf(" pHalInfo4->vmiData->dwOverlayAlign : 0x%08lx\n",(long)pHalInfo4->vmiData.dwOverlayAlign); 120 printf(" pHalInfo4->vmiData->dwTextureAlign : 0x%08lx\n",(long)pHalInfo4->vmiData.dwTextureAlign); 121 printf(" pHalInfo4->vmiData->dwZBufferAlign : 0x%08lx\n",(long)pHalInfo4->vmiData.dwZBufferAlign); 122 printf(" pHalInfo4->vmiData->dwAlphaAlign : 0x%08lx\n",(long)pHalInfo4->vmiData.dwAlphaAlign); 123 printf(" pHalInfo4->vmiData->pvPrimary : 0x%08lx\n",(long)pHalInfo4->vmiData.pvPrimary); 124 125 printf(" pHalInfo4->ddCaps.dwSize : 0x%08lx\n",pHalInfo4->ddCaps.dwSize); 126 printf(" pHalInfo4->ddCaps.dwCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwCaps); 127 printf(" pHalInfo4->ddCaps.dwCaps2 : 0x%08lx\n",pHalInfo4->ddCaps.dwCaps2); 128 printf(" pHalInfo4->ddCaps.dwCKeyCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwCKeyCaps); 129 printf(" pHalInfo4->ddCaps.dwFXCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwFXCaps); 130 printf(" pHalInfo4->ddCaps.dwFXAlphaCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwFXAlphaCaps); 131 printf(" pHalInfo4->ddCaps.dwPalCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwPalCaps); 132 printf(" pHalInfo4->ddCaps.dwSVCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwSVCaps); 133 printf(" pHalInfo4->ddCaps.dwAlphaBltConstBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwAlphaBltConstBitDepths); 134 printf(" pHalInfo4->ddCaps.dwAlphaBltPixelBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwAlphaBltPixelBitDepths); 135 printf(" pHalInfo4->ddCaps.dwAlphaBltSurfaceBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwAlphaBltSurfaceBitDepths); 136 printf(" pHalInfo4->ddCaps.dwAlphaOverlayConstBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwAlphaOverlayConstBitDepths); 137 printf(" pHalInfo4->ddCaps.dwAlphaOverlayPixelBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwAlphaOverlayPixelBitDepths); 138 printf(" pHalInfo4->ddCaps.dwAlphaOverlaySurfaceBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwAlphaOverlaySurfaceBitDepths); 139 printf(" pHalInfo4->ddCaps.dwZBufferBitDepths : 0x%08lx\n",pHalInfo4->ddCaps.dwZBufferBitDepths); 140 printf(" pHalInfo4->ddCaps.dwVidMemTotal : 0x%08lx\n",pHalInfo4->ddCaps.dwVidMemTotal); 141 printf(" pHalInfo4->ddCaps.dwVidMemFree : 0x%08lx\n",pHalInfo4->ddCaps.dwVidMemFree); 142 printf(" pHalInfo4->ddCaps.dwMaxVisibleOverlays : 0x%08lx\n",pHalInfo4->ddCaps.dwMaxVisibleOverlays); 143 printf(" pHalInfo4->ddCaps.dwCurrVisibleOverlays : 0x%08lx\n",pHalInfo4->ddCaps.dwCurrVisibleOverlays); 144 printf(" pHalInfo4->ddCaps.dwNumFourCCCodes : 0x%08lx\n",pHalInfo4->ddCaps.dwNumFourCCCodes); 145 printf(" pHalInfo4->ddCaps.dwAlignBoundarySrc : 0x%08lx\n",pHalInfo4->ddCaps.dwAlignBoundarySrc); 146 printf(" pHalInfo4->ddCaps.dwAlignSizeSrc : 0x%08lx\n",pHalInfo4->ddCaps.dwAlignSizeSrc); 147 printf(" pHalInfo4->ddCaps.dwAlignBoundaryDes : 0x%08lx\n",pHalInfo4->ddCaps.dwAlignBoundaryDest); 148 printf(" pHalInfo4->ddCaps.dwAlignSizeDest : 0x%08lx\n",pHalInfo4->ddCaps.dwAlignSizeDest); 149 printf(" pHalInfo4->ddCaps.dwAlignStrideAlign : 0x%08lx\n",pHalInfo4->ddCaps.dwAlignStrideAlign); 150 for (t=0;t<DD_ROP_SPACE;t++) 151 { 152 printf(" pHalInfo4->ddCaps.dwRops[0x%04x] : 0x%08lx\n",t,pHalInfo4->ddCaps.dwRops[t]); 153 } 154 printf(" pHalInfo4->ddCaps.ddsCaps.dwCaps : 0x%08lx\n",pHalInfo4->ddCaps.ddsCaps.dwCaps); 155 printf(" pHalInfo4->ddCaps.dwMinOverlayStretch : 0x%08lx\n",pHalInfo4->ddCaps.dwMinOverlayStretch); 156 printf(" pHalInfo4->ddCaps.dwMaxOverlayStretch : 0x%08lx\n",pHalInfo4->ddCaps.dwMaxOverlayStretch); 157 printf(" pHalInfo4->ddCaps.dwMinLiveVideoStretch : 0x%08lx\n",pHalInfo4->ddCaps.dwMinLiveVideoStretch); 158 printf(" pHalInfo4->ddCaps.dwMaxLiveVideoStretch : 0x%08lx\n",pHalInfo4->ddCaps.dwMaxLiveVideoStretch); 159 printf(" pHalInfo4->ddCaps.dwMinHwCodecStretch : 0x%08lx\n",pHalInfo4->ddCaps.dwMinHwCodecStretch); 160 printf(" pHalInfo4->ddCaps.dwMaxHwCodecStretch : 0x%08lx\n",pHalInfo4->ddCaps.dwMaxHwCodecStretch); 161 printf(" pHalInfo4->ddCaps.dwReserved1 : 0x%08lx\n",pHalInfo4->ddCaps.dwReserved1); 162 printf(" pHalInfo4->ddCaps.dwReserved2 : 0x%08lx\n",pHalInfo4->ddCaps.dwReserved2); 163 printf(" pHalInfo4->ddCaps.dwReserved3 : 0x%08lx\n",pHalInfo4->ddCaps.dwReserved3); 164 printf(" pHalInfo4->ddCaps.dwSVBCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwSVBCaps); 165 printf(" pHalInfo4->ddCaps.dwSVBCKeyCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwSVBCKeyCaps); 166 printf(" pHalInfo4->ddCaps.dwSVBFXCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwSVBFXCaps); 167 for (t=0;t<DD_ROP_SPACE;t++) 168 { 169 printf(" pHalInfo4->ddCaps.dwSVBRops[0x%04x] : 0x%08lx\n",t,pHalInfo4->ddCaps.dwSVBRops[t]); 170 } 171 printf(" pHalInfo4->ddCaps.dwVSBCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwVSBCaps); 172 printf(" pHalInfo4->ddCaps.dwVSBCKeyCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwVSBCKeyCaps); 173 printf(" pHalInfo4->ddCaps.dwVSBFXCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwVSBFXCaps); 174 for (t=0;t<DD_ROP_SPACE;t++) 175 { 176 printf(" pHalInfo4->ddCaps.dwVSBRops[0x%04x] : 0x%08lx\n",t,pHalInfo4->ddCaps.dwVSBRops[t]); 177 } 178 printf(" pHalInfo4->ddCaps.dwSSBCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwSSBCaps); 179 printf(" pHalInfo4->ddCaps.dwSSBCKeyCa : 0x%08lx\n",pHalInfo4->ddCaps.dwSSBCKeyCaps); 180 printf(" pHalInfo4->ddCaps.dwSSBFXCaps : 0x%08lx\n",pHalInfo4->ddCaps.dwSSBFXCaps); 181 for (t=0;t<DD_ROP_SPACE;t++) 182 { 183 printf(" pHalInfo4->ddCaps.dwSSBRops[0x%04x] : 0x%08lx\n",t,pHalInfo4->ddCaps.dwSSBRops[t]); 184 } 185 186 printf(" pHalInfo4->ddCaps.dwMaxVideoPorts : 0x%08lx\n",pHalInfo4->ddCaps.dwMaxVideoPorts); 187 printf(" pHalInfo4->ddCaps.dwCurrVideoPorts : 0x%08lx\n",pHalInfo4->ddCaps.dwCurrVideoPorts); 188 printf(" pHalInfo4->ddCaps.dwSVBCaps2 : 0x%08lx\n",pHalInfo4->ddCaps.dwSVBCaps2); 189 190 191 printf(" pHalInfo4->GetDriverInfo : 0x%08lx\n",(long)pHalInfo4->GetDriverInfo); 192 printf(" pHalInfo4->dwFlags : 0x%08lx\n",(long)pHalInfo4->dwFlags); 193 194 } 195 else if (pHalInfo->dwSize == sizeof(DD_HALINFO)) 196 { 197 int t; 198 UINT flag; 199 INT count=0; 200 201 printf("DD_HALINFO Version NT 2000/XP/2003 found \n"); 202 printf(" pHalInfo->dwSize : 0x%08lx\n",(long)pHalInfo->dwSize); 203 204 printf(" pHalInfo->vmiData->fpPrimary : 0x%08lx\n",(long)pHalInfo->vmiData.fpPrimary); 205 printf(" pHalInfo->vmiData->dwFlags : 0x%08lx\n",(long)pHalInfo->vmiData.dwFlags); 206 printf(" pHalInfo->vmiData->dwDisplayWidth : 0x%08lx\n",(long)pHalInfo->vmiData.dwDisplayWidth); 207 printf(" pHalInfo->vmiData->dwDisplayHeight : 0x%08lx\n",(long)pHalInfo->vmiData.dwDisplayHeight); 208 printf(" pHalInfo->vmiData->lDisplayPitch : 0x%08lx\n",(long)pHalInfo->vmiData.lDisplayPitch); 209 210 printf(" pHalInfo->vmiData->ddpfDisplay.dwSize : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwSize); 211 printf(" pHalInfo->vmiData->ddpfDisplay.dwFlags : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwFlags); 212 printf(" pHalInfo->vmiData->ddpfDisplay.dwFourCC : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwFourCC); 213 printf(" pHalInfo->vmiData->ddpfDisplay.dwRGBBitCount : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwRGBBitCount); 214 printf(" pHalInfo->vmiData->ddpfDisplay.dwRBitMask : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwRBitMask); 215 printf(" pHalInfo->vmiData->ddpfDisplay.dwGBitMask : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwGBitMask); 216 printf(" pHalInfo->vmiData->ddpfDisplay.dwBBitMask : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwBBitMask); 217 printf(" pHalInfo->vmiData->ddpfDisplay.dwRGBAlphaBitMask : 0x%08lx\n",(long)pHalInfo->vmiData.ddpfDisplay.dwRGBAlphaBitMask); 218 219 220 printf(" pHalInfo->vmiData->dwOffscreenAlign : 0x%08lx\n",(long)pHalInfo->vmiData.dwOffscreenAlign); 221 printf(" pHalInfo->vmiData->dwOverlayAlign : 0x%08lx\n",(long)pHalInfo->vmiData.dwOverlayAlign); 222 printf(" pHalInfo->vmiData->dwTextureAlign : 0x%08lx\n",(long)pHalInfo->vmiData.dwTextureAlign); 223 printf(" pHalInfo->vmiData->dwZBufferAlign : 0x%08lx\n",(long)pHalInfo->vmiData.dwZBufferAlign); 224 printf(" pHalInfo->vmiData->dwAlphaAlign : 0x%08lx\n",(long)pHalInfo->vmiData.dwAlphaAlign); 225 printf(" pHalInfo->vmiData->pvPrimary : 0x%08lx\n",(long)pHalInfo->vmiData.pvPrimary); 226 227 printf(" pHalInfo->ddCaps.dwSize : 0x%08lx\n",pHalInfo->ddCaps.dwSize); 228 printf(" pHalInfo->ddCaps.dwCaps : "); 229 flag = pHalInfo->ddCaps.dwCaps; 230 count = 0; 231 checkflag(flag,DDCAPS_3D,"DDCAPS_3D"); 232 checkflag(flag,DDCAPS_ALIGNBOUNDARYDEST,"DDCAPS_ALIGNBOUNDARYDEST"); 233 checkflag(flag,DDCAPS_ALIGNBOUNDARYSRC,"DDCAPS_ALIGNBOUNDARYSRC"); 234 checkflag(flag,DDCAPS_ALIGNSIZEDEST,"DDCAPS_ALIGNSIZEDEST"); 235 checkflag(flag,DDCAPS_ALIGNSIZESRC,"DDCAPS_ALIGNSIZESRC"); 236 checkflag(flag,DDCAPS_ALIGNSTRIDE,"DDCAPS_ALIGNSTRIDE"); 237 checkflag(flag,DDCAPS_ALPHA,"DDCAPS_ALPHA"); 238 checkflag(flag,DDCAPS_BANKSWITCHED,"DDCAPS_BANKSWITCHED"); 239 checkflag(flag,DDCAPS_BLT,"DDCAPS_BLT"); 240 checkflag(flag,DDCAPS_BLTCOLORFILL,"DDCAPS_BLTCOLORFILL"); 241 checkflag(flag,DDCAPS_BLTDEPTHFILL,"DDCAPS_BLTDEPTHFILL"); 242 checkflag(flag,DDCAPS_BLTFOURCC,"DDCAPS_BLTFOURCC"); 243 checkflag(flag,DDCAPS_BLTQUEUE,"DDCAPS_BLTQUEUE"); 244 checkflag(flag,DDCAPS_BLTSTRETCH,"DDCAPS_BLTSTRETCH"); 245 checkflag(flag,DDCAPS_CANBLTSYSMEM,"DDCAPS_CANBLTSYSMEM"); 246 checkflag(flag,DDCAPS_CANCLIP,"DDCAPS_CANCLIP"); 247 checkflag(flag,DDCAPS_CANCLIPSTRETCHED,"DDCAPS_CANCLIPSTRETCHED"); 248 checkflag(flag,DDCAPS_COLORKEY,"DDCAPS_COLORKEY"); 249 checkflag(flag,DDCAPS_COLORKEYHWASSIST,"DDCAPS_COLORKEYHWASSIST"); 250 checkflag(flag,DDCAPS_GDI,"DDCAPS_GDI"); 251 checkflag(flag,DDCAPS_NOHARDWARE,"DDCAPS_NOHARDWARE"); 252 checkflag(flag,DDCAPS_OVERLAY,"DDCAPS_OVERLAY"); 253 checkflag(flag,DDCAPS_OVERLAYCANTCLIP,"DDCAPS_OVERLAYCANTCLIP"); 254 checkflag(flag,DDCAPS_OVERLAYFOURCC,"DDCAPS_OVERLAYFOURCC"); 255 checkflag(flag,DDCAPS_OVERLAYSTRETCH,"DDCAPS_OVERLAYSTRETCH"); 256 checkflag(flag,DDCAPS_PALETTE,"DDCAPS_PALETTE"); 257 checkflag(flag,DDCAPS_PALETTEVSYNC,"DDCAPS_PALETTEVSYNC"); 258 checkflag(flag,DDCAPS_READSCANLINE,"DDCAPS_READSCANLINE"); 259 checkflag(flag,DDCAPS_STEREOVIEW,"DDCAPS_STEREOVIEW"); 260 checkflag(flag,DDCAPS_VBI,"DDCAPS_VBI"); 261 checkflag(flag,DDCAPS_ZBLTS,"DDCAPS_ZBLTS"); 262 checkflag(flag,DDCAPS_ZOVERLAYS,"DDCAPS_ZOVERLAYS"); 263 endcheckflag(flag,"pHalInfo->ddCaps.dwCaps"); 264 265 printf(" pHalInfo->ddCaps.dwCaps2 : "); 266 flag = pHalInfo->ddCaps.dwCaps2; 267 count = 0; 268 checkflag(flag,DDCAPS2_AUTOFLIPOVERLAY,"DDCAPS2_AUTOFLIPOVERLAY"); 269 checkflag(flag,DDCAPS2_CANAUTOGENMIPMAP,"DDCAPS2_CANAUTOGENMIPMAP"); 270 checkflag(flag,DDCAPS2_CANBOBHARDWARE,"DDCAPS2_CANBOBHARDWARE"); 271 checkflag(flag,DDCAPS2_CANBOBINTERLEAVED,"DDCAPS2_CANBOBINTERLEAVED"); 272 checkflag(flag,DDCAPS2_CANBOBNONINTERLEAVED,"DDCAPS2_CANBOBNONINTERLEAVED"); 273 checkflag(flag,DDCAPS2_CANCALIBRATEGAMMA,"DDCAPS2_CANCALIBRATEGAMMA"); 274 checkflag(flag,DDCAPS2_CANDROPZ16BIT,"DDCAPS2_CANDROPZ16BIT"); 275 checkflag(flag,DDCAPS2_CANFLIPODDEVEN,"DDCAPS2_CANFLIPODDEVEN"); 276 checkflag(flag,DDCAPS2_CANMANAGERESOURCE,"DDCAPS2_CANMANAGERESOURCE"); 277 checkflag(flag,DDCAPS2_CANMANAGETEXTURE,"DDCAPS2_CANMANAGETEXTURE"); 278 279 checkflag(flag,DDCAPS2_CANRENDERWINDOWED,"DDCAPS2_CANRENDERWINDOWED"); 280 checkflag(flag,DDCAPS2_CERTIFIED,"DDCAPS2_CERTIFIED"); 281 checkflag(flag,DDCAPS2_COLORCONTROLOVERLAY,"DDCAPS2_COLORCONTROLOVERLAY"); 282 checkflag(flag,DDCAPS2_COLORCONTROLPRIMARY,"DDCAPS2_COLORCONTROLPRIMARY"); 283 checkflag(flag,DDCAPS2_COPYFOURCC,"DDCAPS2_COPYFOURCC"); 284 checkflag(flag,DDCAPS2_FLIPINTERVAL,"DDCAPS2_FLIPINTERVAL"); 285 checkflag(flag,DDCAPS2_FLIPNOVSYNC,"DDCAPS2_FLIPNOVSYNC"); 286 checkflag(flag,DDCAPS2_NO2DDURING3DSCENE,"DDCAPS2_NO2DDURING3DSCENE"); 287 checkflag(flag,DDCAPS2_NONLOCALVIDMEM,"DDCAPS2_NONLOCALVIDMEM"); 288 checkflag(flag,DDCAPS2_NONLOCALVIDMEMCAPS,"DDCAPS2_NONLOCALVIDMEMCAPS"); 289 checkflag(flag,DDCAPS2_NOPAGELOCKREQUIRED,"DDCAPS2_NOPAGELOCKREQUIRED"); 290 checkflag(flag,DDCAPS2_PRIMARYGAMMA,"DDCAPS2_PRIMARYGAMMA"); 291 checkflag(flag,DDCAPS2_VIDEOPORT,"DDCAPS2_VIDEOPORT"); 292 checkflag(flag,DDCAPS2_WIDESURFACES,"DDCAPS2_WIDESURFACES"); 293 endcheckflag(flag,"pHalInfo->ddCaps.dwCaps2"); 294 295 printf(" pHalInfo->ddCaps.dwCKeyCaps : "); 296 flag = pHalInfo->ddCaps.dwCKeyCaps; 297 count = 0; 298 checkflag(flag,DDCKEYCAPS_DESTBLT,"DDCKEYCAPS_DESTBLT"); 299 checkflag(flag,DDCKEYCAPS_DESTBLTCLRSPACE,"DDCKEYCAPS_DESTBLTCLRSPACE"); 300 checkflag(flag,DDCKEYCAPS_DESTBLTCLRSPACEYUV,"DDCKEYCAPS_DESTBLTCLRSPACEYUV"); 301 checkflag(flag,DDCKEYCAPS_DESTBLTYUV,"DDCKEYCAPS_DESTBLTYUV"); 302 checkflag(flag,DDCKEYCAPS_DESTOVERLAY,"DDCKEYCAPS_DESTOVERLAY"); 303 checkflag(flag,DDCKEYCAPS_DESTOVERLAYCLRSPACE,"DDCKEYCAPS_DESTOVERLAYCLRSPACE"); 304 checkflag(flag,DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV,"DDCKEYCAPS_DESTOVERLAYCLRSPACEYUV"); 305 checkflag(flag,DDCKEYCAPS_DESTOVERLAYONEACTIVE,"DDCKEYCAPS_DESTOVERLAYONEACTIVE"); 306 checkflag(flag,DDCKEYCAPS_DESTOVERLAYYUV,"DDCKEYCAPS_DESTOVERLAYYUV"); 307 checkflag(flag,DDCKEYCAPS_NOCOSTOVERLAY,"DDCKEYCAPS_NOCOSTOVERLAY"); 308 checkflag(flag,DDCKEYCAPS_SRCBLT,"DDCKEYCAPS_SRCBLT"); 309 checkflag(flag,DDCKEYCAPS_SRCBLTCLRSPACE,"DDCKEYCAPS_SRCBLTCLRSPACE"); 310 checkflag(flag,DDCKEYCAPS_SRCBLTCLRSPACEYUV,"DDCKEYCAPS_SRCBLTCLRSPACEYUV"); 311 checkflag(flag,DDCKEYCAPS_SRCBLTYUV,"DDCKEYCAPS_SRCBLTYUV"); 312 checkflag(flag,DDCKEYCAPS_SRCOVERLAY,"DDCKEYCAPS_SRCOVERLAY"); 313 checkflag(flag,DDCKEYCAPS_SRCOVERLAYCLRSPACE,"DDCKEYCAPS_SRCOVERLAYCLRSPACE"); 314 checkflag(flag,DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV,"DDCKEYCAPS_SRCOVERLAYCLRSPACEYUV"); 315 checkflag(flag,DDCKEYCAPS_SRCOVERLAYONEACTIVE,"DDCKEYCAPS_SRCOVERLAYONEACTIVE"); 316 checkflag(flag,DDCKEYCAPS_SRCOVERLAYYUV,"DDCKEYCAPS_SRCOVERLAYYUV"); 317 endcheckflag(flag,"pHalInfo->ddCaps.dwCKeyCaps"); 318 319 printf(" pHalInfo->ddCaps.dwFXCaps : "); 320 flag = pHalInfo->ddCaps.dwFXCaps; 321 count = 0; 322 checkflag(flag,DDFXCAPS_BLTARITHSTRETCHY,"DDFXCAPS_BLTARITHSTRETCHY"); 323 checkflag(flag,DDFXCAPS_BLTARITHSTRETCHYN,"DDFXCAPS_BLTARITHSTRETCHYN"); 324 checkflag(flag,DDFXCAPS_BLTMIRRORLEFTRIGHT,"DDFXCAPS_BLTMIRRORLEFTRIGHT"); 325 checkflag(flag,DDFXCAPS_BLTMIRRORUPDOWN,"DDFXCAPS_BLTMIRRORUPDOWN"); 326 checkflag(flag,DDFXCAPS_BLTROTATION,"DDFXCAPS_BLTROTATION"); 327 checkflag(flag,DDFXCAPS_BLTROTATION90,"DDFXCAPS_BLTROTATION90"); 328 checkflag(flag,DDFXCAPS_BLTSHRINKX,"DDFXCAPS_BLTSHRINKX"); 329 checkflag(flag,DDFXCAPS_BLTSHRINKXN,"DDFXCAPS_BLTSHRINKXN"); 330 checkflag(flag,DDFXCAPS_BLTSHRINKY,"DDFXCAPS_BLTSHRINKY"); 331 checkflag(flag,DDFXCAPS_BLTSHRINKYN,"DDFXCAPS_BLTSHRINKYN"); 332 checkflag(flag,DDFXCAPS_BLTSTRETCHX,"DDFXCAPS_BLTSTRETCHX"); 333 checkflag(flag,DDFXCAPS_BLTSTRETCHXN,"DDFXCAPS_BLTSTRETCHXN"); 334 checkflag(flag,DDFXCAPS_BLTSTRETCHY,"DDFXCAPS_BLTSTRETCHY"); 335 checkflag(flag,DDFXCAPS_BLTSTRETCHYN,"DDFXCAPS_BLTSTRETCHYN"); 336 checkflag(flag,DDFXCAPS_OVERLAYARITHSTRETCHY,"DDFXCAPS_OVERLAYARITHSTRETCHY"); 337 checkflag(flag,DDFXCAPS_OVERLAYARITHSTRETCHYN,"DDFXCAPS_OVERLAYARITHSTRETCHYN"); 338 checkflag(flag,DDFXCAPS_OVERLAYMIRRORLEFTRIGHT,"DDFXCAPS_OVERLAYMIRRORLEFTRIGHT"); 339 checkflag(flag,DDFXCAPS_OVERLAYMIRRORUPDOWN,"DDFXCAPS_OVERLAYMIRRORUPDOWN"); 340 checkflag(flag,DDFXCAPS_OVERLAYSHRINKX,"DDFXCAPS_OVERLAYSHRINKX"); 341 checkflag(flag,DDFXCAPS_OVERLAYSHRINKXN,"DDFXCAPS_OVERLAYSHRINKXN"); 342 checkflag(flag,DDFXCAPS_OVERLAYSHRINKY,"DDFXCAPS_OVERLAYSHRINKY"); 343 checkflag(flag,DDFXCAPS_OVERLAYSHRINKYN,"DDFXCAPS_OVERLAYSHRINKYN"); 344 checkflag(flag,DDFXCAPS_OVERLAYSTRETCHX,"DDFXCAPS_OVERLAYSTRETCHX"); 345 checkflag(flag,DDFXCAPS_OVERLAYSTRETCHX,"DDFXCAPS_OVERLAYSTRETCHX"); 346 checkflag(flag,DDFXCAPS_OVERLAYSTRETCHY,"DDFXCAPS_OVERLAYSTRETCHY"); 347 checkflag(flag,DDFXCAPS_OVERLAYSTRETCHYN,"DDFXCAPS_OVERLAYSTRETCHYN"); 348 endcheckflag(flag,"pHalInfo->ddCaps.dwFXCaps"); 349 350 printf(" pHalInfo->ddCaps.dwFXAlphaCaps : 0x%08lx\n",pHalInfo->ddCaps.dwFXAlphaCaps); 351 printf(" pHalInfo->ddCaps.dwPalCaps : 0x%08lx\n",pHalInfo->ddCaps.dwPalCaps); 352 353 printf(" pHalInfo->ddCaps.dwSVCaps : "); 354 flag = pHalInfo->ddCaps.dwSVCaps; 355 count = 0; 356 checkflag(flag,DDSVCAPS_ENIGMA,"DDSVCAPS_ENIGMA"); 357 checkflag(flag,DDSVCAPS_FLICKER,"DDSVCAPS_FLICKER"); 358 checkflag(flag,DDSVCAPS_REDBLUE,"DDSVCAPS_REDBLUE"); 359 checkflag(flag,DDSVCAPS_SPLIT,"DDSVCAPS_SPLIT"); 360 endcheckflag(flag,"pHalInfo->ddCaps.dwSVCaps"); 361 362 printf(" pHalInfo->ddCaps.dwAlphaBltConstBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwAlphaBltConstBitDepths); 363 printf(" pHalInfo->ddCaps.dwAlphaBltPixelBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwAlphaBltPixelBitDepths); 364 printf(" pHalInfo->ddCaps.dwAlphaBltSurfaceBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwAlphaBltSurfaceBitDepths); 365 printf(" pHalInfo->ddCaps.dwAlphaOverlayConstBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwAlphaOverlayConstBitDepths); 366 printf(" pHalInfo->ddCaps.dwAlphaOverlayPixelBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwAlphaOverlayPixelBitDepths); 367 printf(" pHalInfo->ddCaps.dwAlphaOverlaySurfaceBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwAlphaOverlaySurfaceBitDepths); 368 printf(" pHalInfo->ddCaps.dwZBufferBitDepths : 0x%08lx\n",pHalInfo->ddCaps.dwZBufferBitDepths); 369 printf(" pHalInfo->ddCaps.dwVidMemTotal : 0x%08lx\n",pHalInfo->ddCaps.dwVidMemTotal); 370 printf(" pHalInfo->ddCaps.dwVidMemFree : 0x%08lx\n",pHalInfo->ddCaps.dwVidMemFree); 371 printf(" pHalInfo->ddCaps.dwMaxVisibleOverlays : 0x%08lx\n",pHalInfo->ddCaps.dwMaxVisibleOverlays); 372 printf(" pHalInfo->ddCaps.dwCurrVisibleOverlays : 0x%08lx\n",pHalInfo->ddCaps.dwCurrVisibleOverlays); 373 printf(" pHalInfo->ddCaps.dwNumFourCCCodes : 0x%08lx\n",pHalInfo->ddCaps.dwNumFourCCCodes); 374 printf(" pHalInfo->ddCaps.dwAlignBoundarySrc : 0x%08lx\n",pHalInfo->ddCaps.dwAlignBoundarySrc); 375 printf(" pHalInfo->ddCaps.dwAlignSizeSrc : 0x%08lx\n",pHalInfo->ddCaps.dwAlignSizeSrc); 376 printf(" pHalInfo->ddCaps.dwAlignBoundaryDes : 0x%08lx\n",pHalInfo->ddCaps.dwAlignBoundaryDest); 377 printf(" pHalInfo->ddCaps.dwAlignSizeDest : 0x%08lx\n",pHalInfo->ddCaps.dwAlignSizeDest); 378 printf(" pHalInfo->ddCaps.dwAlignStrideAlign : 0x%08lx\n",pHalInfo->ddCaps.dwAlignStrideAlign); 379 for (t=0;t<DD_ROP_SPACE;t++) 380 { 381 printf(" pHalInfo->ddCaps.dwRops[0x%04x] : 0x%08lx\n",t,pHalInfo->ddCaps.dwRops[t]); 382 } 383 printf(" pHalInfo->ddCaps.ddsCaps.dwCaps : "); 384 flag = pHalInfo->ddCaps.ddsCaps.dwCaps; 385 count = 0; 386 checkflag(flag,DDSCAPS_3DDEVICE,"DDSCAPS_3DDEVICE"); 387 checkflag(flag,DDSCAPS_ALLOCONLOAD,"DDSCAPS_ALLOCONLOAD"); 388 checkflag(flag,DDSCAPS_ALPHA,"DDSCAPS_ALPHA"); 389 checkflag(flag,DDSCAPS_BACKBUFFER,"DDSCAPS_BACKBUFFER"); 390 checkflag(flag,DDSCAPS_COMPLEX,"DDSCAPS_COMPLEX"); 391 checkflag(flag,DDSCAPS_EXECUTEBUFFER,"DDSCAPS_EXECUTEBUFFER"); 392 checkflag(flag,DDSCAPS_FLIP,"DDSCAPS_FLIP"); 393 checkflag(flag,DDSCAPS_FRONTBUFFER,"DDSCAPS_FRONTBUFFER"); 394 checkflag(flag,DDSCAPS_HWCODEC,"DDSCAPS_HWCODEC"); 395 checkflag(flag,DDSCAPS_LIVEVIDEO,"DDSCAPS_LIVEVIDEO"); 396 checkflag(flag,DDSCAPS_LOCALVIDMEM,"DDSCAPS_LOCALVIDMEM"); 397 checkflag(flag,DDSCAPS_MIPMAP,"DDSCAPS_MIPMAP"); 398 checkflag(flag,DDSCAPS_MODEX,"DDSCAPS_MODEX"); 399 checkflag(flag,DDSCAPS_NONLOCALVIDMEM,"DDSCAPS_NONLOCALVIDMEM"); 400 checkflag(flag,DDSCAPS_OFFSCREENPLAIN,"DDSCAPS_OFFSCREENPLAIN"); 401 checkflag(flag,DDSCAPS_OVERLAY,"DDSCAPS_OVERLAY"); 402 checkflag(flag,DDSCAPS_OPTIMIZED,"DDSCAPS_OPTIMIZED"); 403 checkflag(flag,DDSCAPS_OWNDC,"DDSCAPS_OWNDC"); 404 checkflag(flag,DDSCAPS_PALETTE,"DDSCAPS_PALETTE"); 405 checkflag(flag,DDSCAPS_PRIMARYSURFACE,"DDSCAPS_PRIMARYSURFACE"); 406 checkflag(flag,DDSCAPS_PRIMARYSURFACELEFT,"DDSCAPS_PRIMARYSURFACELEFT"); 407 checkflag(flag,DDSCAPS_STANDARDVGAMODE,"DDSCAPS_STANDARDVGAMODE"); 408 checkflag(flag,DDSCAPS_SYSTEMMEMORY,"DDSCAPS_SYSTEMMEMORY"); 409 checkflag(flag,DDSCAPS_TEXTURE,"DDSCAPS_TEXTURE"); 410 checkflag(flag,DDSCAPS_VIDEOMEMORY,"DDSCAPS_VIDEOMEMORY"); 411 checkflag(flag,DDSCAPS_VIDEOPORT,"DDSCAPS_VIDEOPORT"); 412 checkflag(flag,DDSCAPS_VISIBLE,"DDSCAPS_VISIBLE"); 413 checkflag(flag,DDSCAPS_WRITEONLY,"DDSCAPS_WRITEONLY"); 414 checkflag(flag,DDSCAPS_ZBUFFER,"DDSCAPS_ZBUFFER"); 415 endcheckflag(flag,"pHalInfo->ddCaps.ddsCaps.dwCaps"); 416 417 printf(" pHalInfo->ddCaps.dwMinOverlayStretch : 0x%08lx\n",pHalInfo->ddCaps.dwMinOverlayStretch); 418 printf(" pHalInfo->ddCaps.dwMaxOverlayStretch : 0x%08lx\n",pHalInfo->ddCaps.dwMaxOverlayStretch); 419 printf(" pHalInfo->ddCaps.dwMinLiveVideoStretch : 0x%08lx\n",pHalInfo->ddCaps.dwMinLiveVideoStretch); 420 printf(" pHalInfo->ddCaps.dwMaxLiveVideoStretch : 0x%08lx\n",pHalInfo->ddCaps.dwMaxLiveVideoStretch); 421 printf(" pHalInfo->ddCaps.dwMinHwCodecStretch : 0x%08lx\n",pHalInfo->ddCaps.dwMinHwCodecStretch); 422 printf(" pHalInfo->ddCaps.dwMaxHwCodecStretch : 0x%08lx\n",pHalInfo->ddCaps.dwMaxHwCodecStretch); 423 printf(" pHalInfo->ddCaps.dwReserved1 : 0x%08lx\n",pHalInfo->ddCaps.dwReserved1); 424 printf(" pHalInfo->ddCaps.dwReserved2 : 0x%08lx\n",pHalInfo->ddCaps.dwReserved2); 425 printf(" pHalInfo->ddCaps.dwReserved3 : 0x%08lx\n",pHalInfo->ddCaps.dwReserved3); 426 427 printf(" pHalInfo->ddCaps.dwSVBCaps : "); 428 flag = pHalInfo->ddCaps.dwSVBCaps; 429 count = 0; 430 checkflag(flag,DDCAPS_3D,"DDCAPS_3D"); 431 checkflag(flag,DDCAPS_ALIGNBOUNDARYDEST,"DDCAPS_ALIGNBOUNDARYDEST"); 432 checkflag(flag,DDCAPS_ALIGNBOUNDARYSRC,"DDCAPS_ALIGNBOUNDARYSRC"); 433 checkflag(flag,DDCAPS_ALIGNSIZEDEST,"DDCAPS_ALIGNSIZEDEST"); 434 checkflag(flag,DDCAPS_ALIGNSIZESRC,"DDCAPS_ALIGNSIZESRC"); 435 checkflag(flag,DDCAPS_ALIGNSTRIDE,"DDCAPS_ALIGNSTRIDE"); 436 checkflag(flag,DDCAPS_ALPHA,"DDCAPS_ALPHA"); 437 checkflag(flag,DDCAPS_BANKSWITCHED,"DDCAPS_BANKSWITCHED"); 438 checkflag(flag,DDCAPS_BLT,"DDCAPS_BLT"); 439 checkflag(flag,DDCAPS_BLTCOLORFILL,"DDCAPS_BLTCOLORFILL"); 440 checkflag(flag,DDCAPS_BLTDEPTHFILL,"DDCAPS_BLTDEPTHFILL"); 441 checkflag(flag,DDCAPS_BLTFOURCC,"DDCAPS_BLTFOURCC"); 442 checkflag(flag,DDCAPS_BLTQUEUE,"DDCAPS_BLTQUEUE"); 443 checkflag(flag,DDCAPS_BLTSTRETCH,"DDCAPS_BLTSTRETCH"); 444 checkflag(flag,DDCAPS_CANBLTSYSMEM,"DDCAPS_CANBLTSYSMEM"); 445 checkflag(flag,DDCAPS_CANCLIP,"DDCAPS_CANCLIP"); 446 checkflag(flag,DDCAPS_CANCLIPSTRETCHED,"DDCAPS_CANCLIPSTRETCHED"); 447 checkflag(flag,DDCAPS_COLORKEY,"DDCAPS_COLORKEY"); 448 checkflag(flag,DDCAPS_COLORKEYHWASSIST,"DDCAPS_COLORKEYHWASSIST"); 449 checkflag(flag,DDCAPS_GDI,"DDCAPS_GDI"); 450 checkflag(flag,DDCAPS_NOHARDWARE,"DDCAPS_NOHARDWARE"); 451 checkflag(flag,DDCAPS_OVERLAY,"DDCAPS_OVERLAY"); 452 checkflag(flag,DDCAPS_OVERLAYCANTCLIP,"DDCAPS_OVERLAYCANTCLIP"); 453 checkflag(flag,DDCAPS_OVERLAYFOURCC,"DDCAPS_OVERLAYFOURCC"); 454 checkflag(flag,DDCAPS_OVERLAYSTRETCH,"DDCAPS_OVERLAYSTRETCH"); 455 checkflag(flag,DDCAPS_PALETTE,"DDCAPS_PALETTE"); 456 checkflag(flag,DDCAPS_PALETTEVSYNC,"DDCAPS_PALETTEVSYNC"); 457 checkflag(flag,DDCAPS_READSCANLINE,"DDCAPS_READSCANLINE"); 458 checkflag(flag,DDCAPS_STEREOVIEW,"DDCAPS_STEREOVIEW"); 459 checkflag(flag,DDCAPS_VBI,"DDCAPS_VBI"); 460 checkflag(flag,DDCAPS_ZBLTS,"DDCAPS_ZBLTS"); 461 checkflag(flag,DDCAPS_ZOVERLAYS,"DDCAPS_ZOVERLAYS"); 462 endcheckflag(flag,"pHalInfo->ddCaps.dwSVBCaps"); 463 464 printf(" pHalInfo->ddCaps.dwSVBCKeyCaps : 0x%08lx\n",pHalInfo->ddCaps.dwSVBCKeyCaps); 465 printf(" pHalInfo->ddCaps.dwSVBFXCaps : 0x%08lx\n",pHalInfo->ddCaps.dwSVBFXCaps); 466 for (t=0;t<DD_ROP_SPACE;t++) 467 { 468 printf(" pHalInfo->ddCaps.dwSVBRops[0x%04x] : 0x%08lx\n",t,pHalInfo->ddCaps.dwSVBRops[t]); 469 } 470 471 printf(" pHalInfo->ddCaps.dwVSBCaps : "); 472 flag = pHalInfo->ddCaps.dwVSBCaps; 473 count = 0; 474 checkflag(flag,DDCAPS_3D,"DDCAPS_3D"); 475 checkflag(flag,DDCAPS_ALIGNBOUNDARYDEST,"DDCAPS_ALIGNBOUNDARYDEST"); 476 checkflag(flag,DDCAPS_ALIGNBOUNDARYSRC,"DDCAPS_ALIGNBOUNDARYSRC"); 477 checkflag(flag,DDCAPS_ALIGNSIZEDEST,"DDCAPS_ALIGNSIZEDEST"); 478 checkflag(flag,DDCAPS_ALIGNSIZESRC,"DDCAPS_ALIGNSIZESRC"); 479 checkflag(flag,DDCAPS_ALIGNSTRIDE,"DDCAPS_ALIGNSTRIDE"); 480 checkflag(flag,DDCAPS_ALPHA,"DDCAPS_ALPHA"); 481 checkflag(flag,DDCAPS_BANKSWITCHED,"DDCAPS_BANKSWITCHED"); 482 checkflag(flag,DDCAPS_BLT,"DDCAPS_BLT"); 483 checkflag(flag,DDCAPS_BLTCOLORFILL,"DDCAPS_BLTCOLORFILL"); 484 checkflag(flag,DDCAPS_BLTDEPTHFILL,"DDCAPS_BLTDEPTHFILL"); 485 checkflag(flag,DDCAPS_BLTFOURCC,"DDCAPS_BLTFOURCC"); 486 checkflag(flag,DDCAPS_BLTQUEUE,"DDCAPS_BLTQUEUE"); 487 checkflag(flag,DDCAPS_BLTSTRETCH,"DDCAPS_BLTSTRETCH"); 488 checkflag(flag,DDCAPS_CANBLTSYSMEM,"DDCAPS_CANBLTSYSMEM"); 489 checkflag(flag,DDCAPS_CANCLIP,"DDCAPS_CANCLIP"); 490 checkflag(flag,DDCAPS_CANCLIPSTRETCHED,"DDCAPS_CANCLIPSTRETCHED"); 491 checkflag(flag,DDCAPS_COLORKEY,"DDCAPS_COLORKEY"); 492 checkflag(flag,DDCAPS_COLORKEYHWASSIST,"DDCAPS_COLORKEYHWASSIST"); 493 checkflag(flag,DDCAPS_GDI,"DDCAPS_GDI"); 494 checkflag(flag,DDCAPS_NOHARDWARE,"DDCAPS_NOHARDWARE"); 495 checkflag(flag,DDCAPS_OVERLAY,"DDCAPS_OVERLAY"); 496 checkflag(flag,DDCAPS_OVERLAYCANTCLIP,"DDCAPS_OVERLAYCANTCLIP"); 497 checkflag(flag,DDCAPS_OVERLAYFOURCC,"DDCAPS_OVERLAYFOURCC"); 498 checkflag(flag,DDCAPS_OVERLAYSTRETCH,"DDCAPS_OVERLAYSTRETCH"); 499 checkflag(flag,DDCAPS_PALETTE,"DDCAPS_PALETTE"); 500 checkflag(flag,DDCAPS_PALETTEVSYNC,"DDCAPS_PALETTEVSYNC"); 501 checkflag(flag,DDCAPS_READSCANLINE,"DDCAPS_READSCANLINE"); 502 checkflag(flag,DDCAPS_STEREOVIEW,"DDCAPS_STEREOVIEW"); 503 checkflag(flag,DDCAPS_VBI,"DDCAPS_VBI"); 504 checkflag(flag,DDCAPS_ZBLTS,"DDCAPS_ZBLTS"); 505 checkflag(flag,DDCAPS_ZOVERLAYS,"DDCAPS_ZOVERLAYS"); 506 endcheckflag(flag,"pHalInfo->ddCaps.dwVSBCaps"); 507 508 printf(" pHalInfo->ddCaps.dwVSBCKeyCaps : 0x%08lx\n",pHalInfo->ddCaps.dwVSBCKeyCaps); 509 printf(" pHalInfo->ddCaps.dwVSBFXCaps : 0x%08lx\n",pHalInfo->ddCaps.dwVSBFXCaps); 510 for (t=0;t<DD_ROP_SPACE;t++) 511 { 512 printf(" pHalInfo->ddCaps.dwVSBRops[0x%04x] : 0x%08lx\n",t,pHalInfo->ddCaps.dwVSBRops[t]); 513 } 514 printf(" pHalInfo->ddCaps.dwSSBCaps : 0x%08lx\n",pHalInfo->ddCaps.dwSSBCaps); 515 printf(" pHalInfo->ddCaps.dwSSBCKeyCa : 0x%08lx\n",pHalInfo->ddCaps.dwSSBCKeyCaps); 516 printf(" pHalInfo->ddCaps.dwSSBFXCaps : 0x%08lx\n",pHalInfo->ddCaps.dwSSBFXCaps); 517 for (t=0;t<DD_ROP_SPACE;t++) 518 { 519 printf(" pHalInfo->ddCaps.dwSSBRops[0x%04x] : 0x%08lx\n",t,pHalInfo->ddCaps.dwSSBRops[t]); 520 } 521 522 printf(" pHalInfo->GetDriverInfo : 0x%08lx\n",(long)pHalInfo->GetDriverInfo); 523 printf(" pHalInfo->dwFlags : "); 524 525 flag = pHalInfo->dwFlags; 526 count = 0; 527 checkflag(flag,DDHALINFO_ISPRIMARYDISPLAY,"DDHALINFO_ISPRIMARYDISPLAY"); 528 checkflag(flag,DDHALINFO_MODEXILLEGAL,"DDHALINFO_MODEXILLEGAL"); 529 checkflag(flag,DDHALINFO_GETDRIVERINFOSET,"DDHALINFO_GETDRIVERINFOSET"); 530 checkflag(flag,DDHALINFO_GETDRIVERINFO2,"DDHALINFO_GETDRIVERINFO2"); 531 endcheckflag(flag,"pHalInfo->dwFlags"); 532 533 printf(" pHalInfo->lpD3DGlobalDriverData : 0x%08lx\n",(long)pHalInfo->lpD3DGlobalDriverData); 534 printf(" pHalInfo->lpD3DHALCallbacks : 0x%08lx\n",(long)pHalInfo->lpD3DHALCallbacks); 535 printf(" pHalInfo->lpD3DBufCallbacks : 0x%08lx\n",(long)pHalInfo->lpD3DBufCallbacks); 536 } 537 else 538 { 539 if (pHalInfo->dwSize !=0) 540 { 541 printf("unkonwn dwSize DD_HALINFO : the size found is 0x%08lx\n",pHalInfo->dwSize); 542 } 543 else 544 { 545 printf("none pHalInfo from the driver 0x%08lx\n",pHalInfo->dwSize); 546 } 547 } 548 } 549 550 551 void 552 dump_D3dCallbacks(D3DNTHAL_CALLBACKS *puD3dCallbacks, char *text) 553 { 554 printf("dumping the D3DNTHAL_CALLBACKS from %s\n",text); 555 if (puD3dCallbacks->dwSize == sizeof(D3DNTHAL_CALLBACKS)) 556 { 557 printf(" puD3dCallbacks->dwSize : 0x%08lx\n",(long)puD3dCallbacks->dwSize); 558 printf(" puD3dCallbacks->ContextCreate : 0x%08lx\n",(long)puD3dCallbacks->ContextCreate); 559 printf(" puD3dCallbacks->ContextDestroy : 0x%08lx\n",(long)puD3dCallbacks->ContextDestroy); 560 printf(" puD3dCallbacks->ContextDestroyAll : 0x%08lx\n",(long)puD3dCallbacks->ContextDestroyAll); 561 printf(" puD3dCallbacks->SceneCapture : 0x%08lx\n",(long)puD3dCallbacks->SceneCapture); 562 printf(" puD3dCallbacks->dwReserved10 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved10); 563 printf(" puD3dCallbacks->dwReserved11 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved11); 564 printf(" puD3dCallbacks->dwReserved22 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved22); 565 printf(" puD3dCallbacks->dwReserved23 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved23); 566 printf(" puD3dCallbacks->dwReserved : 0x%08lx\n",(long)puD3dCallbacks->dwReserved); 567 printf(" puD3dCallbacks->TextureCreate : 0x%08lx\n",(long)puD3dCallbacks->TextureCreate); 568 printf(" puD3dCallbacks->TextureDestroy : 0x%08lx\n",(long)puD3dCallbacks->TextureDestroy); 569 printf(" puD3dCallbacks->TextureSwap : 0x%08lx\n",(long)puD3dCallbacks->TextureSwap); 570 printf(" puD3dCallbacks->TextureGetSurf : 0x%08lx\n",(long)puD3dCallbacks->TextureGetSurf); 571 printf(" puD3dCallbacks->dwReserved12 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved12); 572 printf(" puD3dCallbacks->dwReserved13 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved13); 573 printf(" puD3dCallbacks->dwReserved14 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved14); 574 printf(" puD3dCallbacks->dwReserved15 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved15); 575 printf(" puD3dCallbacks->dwReserved16 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved16); 576 printf(" puD3dCallbacks->dwReserved17 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved17); 577 printf(" puD3dCallbacks->dwReserved18 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved18); 578 printf(" puD3dCallbacks->dwReserved19 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved19); 579 printf(" puD3dCallbacks->dwReserved20 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved20); 580 printf(" puD3dCallbacks->dwReserved21 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved21); 581 printf(" puD3dCallbacks->dwReserved24 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved24); 582 printf(" puD3dCallbacks->dwReserved0 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved0); 583 printf(" puD3dCallbacks->dwReserved1 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved1); 584 printf(" puD3dCallbacks->dwReserved2 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved2); 585 printf(" puD3dCallbacks->dwReserved3 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved3); 586 printf(" puD3dCallbacks->dwReserved4 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved4); 587 printf(" puD3dCallbacks->dwReserved5 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved5); 588 printf(" puD3dCallbacks->dwReserved6 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved6); 589 printf(" puD3dCallbacks->dwReserved7 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved7); 590 printf(" puD3dCallbacks->dwReserved8 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved8); 591 printf(" puD3dCallbacks->dwReserved9 : 0x%08lx\n",(long)puD3dCallbacks->dwReserved9); 592 } 593 else 594 { 595 printf("none puD3dCallbacks from the driver 0x%08lx\n",puD3dCallbacks->dwSize); 596 } 597 } 598 599 600 void 601 dump_D3dDriverData(D3DNTHAL_GLOBALDRIVERDATA *puD3dDriverData, char *text) 602 { 603 UINT flag = 0; 604 INT count = 0; 605 606 printf("dumping the D3DNTHAL_GLOBALDRIVERDATA from %s\n",text); 607 if (puD3dDriverData->dwSize == sizeof(D3DNTHAL_GLOBALDRIVERDATA)) 608 { 609 printf(" puD3dDriverData->dwSize : 0x%08lx\n",(long)puD3dDriverData->dwSize); 610 if (puD3dDriverData->hwCaps.dwSize == sizeof(D3DNTHALDEVICEDESC_V1)) 611 { 612 printf(" puD3dDriverData->hwCaps.dwSize : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dwSize); 613 printf(" puD3dDriverData->hwCaps.dwFlags : "); 614 615 flag = puD3dDriverData->hwCaps.dwFlags; 616 checkflag(flag,D3DDD_BCLIPPING,"D3DDD_BCLIPPING"); 617 checkflag(flag,D3DDD_COLORMODEL,"D3DDD_COLORMODEL"); 618 checkflag(flag,D3DDD_DEVCAPS,"D3DDD_DEVCAPS"); 619 checkflag(flag,D3DDD_DEVICERENDERBITDEPTH,"D3DDD_DEVICERENDERBITDEPTH"); 620 checkflag(flag,D3DDD_DEVICEZBUFFERBITDEPTH,"D3DDD_DEVICEZBUFFERBITDEPTH"); 621 checkflag(flag,D3DDD_LIGHTINGCAPS,"D3DDD_LIGHTINGCAPS"); 622 checkflag(flag,D3DDD_LINECAPS,"D3DDD_LINECAPS"); 623 checkflag(flag,D3DDD_MAXBUFFERSIZE,"D3DDD_MAXBUFFERSIZE"); 624 checkflag(flag,D3DDD_MAXVERTEXCOUNT,"D3DDD_MAXVERTEXCOUNT"); 625 checkflag(flag,D3DDD_TRANSFORMCAPS,"D3DDD_TRANSFORMCAPS"); 626 checkflag(flag,D3DDD_TRICAPS,"D3DDD_TRICAPS"); 627 endcheckflag(flag,"puD3dDriverData->hwCaps.dwFlags "); 628 629 printf(" puD3dDriverData->hwCaps.dcmColorModel : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dcmColorModel); 630 printf(" puD3dDriverData->hwCaps.dwDevCaps : "); 631 632 count = 0; 633 flag = puD3dDriverData->hwCaps.dwDevCaps; 634 checkflag(flag,D3DDEVCAPS_CANBLTSYSTONONLOCAL,"D3DDEVCAPS_CANBLTSYSTONONLOCAL"); 635 checkflag(flag,D3DDEVCAPS_CANRENDERAFTERFLIP,"D3DDEVCAPS_CANRENDERAFTERFLIP"); 636 checkflag(flag,D3DDEVCAPS_DRAWPRIMITIVES2,"D3DDEVCAPS_DRAWPRIMITIVES2"); 637 checkflag(flag,D3DDEVCAPS_DRAWPRIMITIVES2EX,"D3DDEVCAPS_DRAWPRIMITIVES2EX"); 638 checkflag(flag,D3DDEVCAPS_DRAWPRIMTLVERTEX,"D3DDEVCAPS_DRAWPRIMTLVERTEX"); 639 checkflag(flag,D3DDEVCAPS_EXECUTESYSTEMMEMORY,"D3DDEVCAPS_EXECUTESYSTEMMEMORY"); 640 checkflag(flag,D3DDEVCAPS_EXECUTEVIDEOMEMORY,"D3DDEVCAPS_EXECUTEVIDEOMEMORY"); 641 checkflag(flag,D3DDEVCAPS_FLOATTLVERTEX,"D3DDEVCAPS_FLOATTLVERTEX"); 642 checkflag(flag,D3DDEVCAPS_HWRASTERIZATION,"D3DDEVCAPS_HWRASTERIZATION"); 643 checkflag(flag,D3DDEVCAPS_HWTRANSFORMANDLIGHT,"D3DDEVCAPS_HWTRANSFORMANDLIGHT"); 644 checkflag(flag,D3DDEVCAPS_SEPARATETEXTUREMEMORIES,"D3DDEVCAPS_SEPARATETEXTUREMEMORIES"); 645 checkflag(flag,D3DDEVCAPS_SORTDECREASINGZ,"D3DDEVCAPS_SORTDECREASINGZ"); 646 checkflag(flag,D3DDEVCAPS_SORTEXACT,"D3DDEVCAPS_SORTEXACT"); 647 checkflag(flag,D3DDEVCAPS_SORTINCREASINGZ,"D3DDEVCAPS_SORTINCREASINGZ"); 648 // not in ddk or dxsdk I have but it is msdn checkflag(flag,D3DDEVCAPS_TEXTURENONLOCALVIDEOMEMORY,"D3DDEVCAPS_TEXTURENONLOCALVIDEOMEMORY"); 649 checkflag(flag,D3DDEVCAPS_TLVERTEXSYSTEMMEMORY,"D3DDEVCAPS_TLVERTEXSYSTEMMEMORY"); 650 checkflag(flag,D3DDEVCAPS_TLVERTEXVIDEOMEMORY,"D3DDEVCAPS_TLVERTEXVIDEOMEMORY"); 651 checkflag(flag,D3DDEVCAPS_TEXTURESYSTEMMEMORY,"D3DDEVCAPS_TEXTURESYSTEMMEMORY"); 652 checkflag(flag,D3DDEVCAPS_TEXTUREVIDEOMEMORY,"D3DDEVCAPS_TEXTUREVIDEOMEMORY"); 653 endcheckflag(flag,"puD3dDriverData->hwCaps.dwDevCaps"); 654 655 if (puD3dDriverData->hwCaps.dtcTransformCaps.dwSize == sizeof(D3DTRANSFORMCAPS)) 656 { 657 printf(" puD3dDriverData->hwCaps.dtcTransformCaps.dwSize : 0x%08lx\n",(long) puD3dDriverData->hwCaps.dtcTransformCaps.dwSize); 658 printf(" puD3dDriverData->hwCaps.dtcTransformCaps.dwCaps : "); 659 660 count = 0; 661 flag = puD3dDriverData->hwCaps.dtcTransformCaps.dwCaps; 662 checkflag(flag,D3DTRANSFORMCAPS_CLIP,"D3DTRANSFORMCAPS_CLIP"); 663 endcheckflag(flag,"puD3dDriverData->hwCaps.dtcTransformCaps.dwCaps"); 664 } 665 else 666 { 667 printf("none puD3dDriverData->hwCaps.dtcTransformCaps.dwSize from the driver 0x%08lx\n",puD3dDriverData->hwCaps.dtcTransformCaps.dwSize); 668 } 669 670 if (puD3dDriverData->hwCaps.dlcLightingCaps.dwSize == sizeof(D3DLIGHTINGCAPS)) 671 { 672 printf(" puD3dDriverData->hwCaps.dlcLightingCaps.dwSize : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dlcLightingCaps.dwSize); 673 printf(" puD3dDriverData->hwCaps.dlcLightingCaps.dwCaps : "); 674 675 count = 0; 676 flag = puD3dDriverData->hwCaps.dlcLightingCaps.dwCaps; 677 678 checkflag(flag,D3DLIGHTCAPS_DIRECTIONAL,"D3DLIGHTCAPS_DIRECTIONAL"); 679 checkflag(flag,D3DLIGHTCAPS_GLSPOT,"D3DLIGHTCAPS_GLSPOT"); 680 checkflag(flag,D3DLIGHTCAPS_PARALLELPOINT,"D3DLIGHTCAPS_PARALLELPOINT"); 681 checkflag(flag,D3DLIGHTCAPS_POINT,"D3DLIGHTCAPS_POINT"); 682 checkflag(flag,D3DLIGHTCAPS_SPOT,"D3DLIGHTCAPS_SPOT"); 683 endcheckflag(flag,"puD3dDriverData->hwCaps.dlcLightingCaps.dwCaps"); 684 685 printf(" puD3dDriverData->hwCaps.dlcLightingCaps.dwLightingModel : "); 686 687 count = 0; 688 flag = puD3dDriverData->hwCaps.dlcLightingCaps.dwLightingModel; 689 690 checkflag(flag,D3DLIGHTINGMODEL_MONO,"D3DLIGHTINGMODEL_MONO"); 691 checkflag(flag,D3DLIGHTINGMODEL_RGB,"D3DLIGHTINGMODEL_RGB"); 692 endcheckflag(flag,"puD3dDriverData->hwCaps.dlcLightingCaps.dwLightingModel"); 693 694 printf(" puD3dDriverData->hwCaps.dlcLightingCaps.dwNumLights : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dlcLightingCaps.dwNumLights); 695 } 696 else 697 { 698 printf("none puD3dDriverData->hwCaps.dlcLightingCaps.dwSize from the driver 0x%08lx\n",puD3dDriverData->hwCaps.dlcLightingCaps.dwSize); 699 } 700 701 702 if (puD3dDriverData->hwCaps.dpcLineCaps.dwSize == sizeof(D3DPRIMCAPS)) 703 { 704 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwSize : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dpcLineCaps.dwSize); 705 706 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwMiscCaps : "); 707 count = 0; 708 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwMiscCaps; 709 checkflag(flag,D3DPMISCCAPS_CONFORMANT,"D3DPMISCCAPS_CONFORMANT"); 710 checkflag(flag,D3DPMISCCAPS_CULLCCW,"D3DPMISCCAPS_CULLCCW"); 711 checkflag(flag,D3DPMISCCAPS_CULLCW,"D3DPMISCCAPS_CULLCW"); 712 checkflag(flag,D3DPMISCCAPS_CULLNONE,"D3DPMISCCAPS_CULLNONE"); 713 checkflag(flag,D3DPMISCCAPS_LINEPATTERNREP,"D3DPMISCCAPS_LINEPATTERNREP"); 714 checkflag(flag,D3DPMISCCAPS_MASKPLANES,"D3DPMISCCAPS_MASKPLANES"); 715 checkflag(flag,D3DPMISCCAPS_MASKZ,"D3DPMISCCAPS_MASKZ"); 716 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwMiscCaps"); 717 718 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwRasterCaps : "); 719 count = 0; 720 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwRasterCaps; 721 checkflag(flag,D3DPRASTERCAPS_ANISOTROPY,"D3DPRASTERCAPS_ANISOTROPY"); 722 checkflag(flag,D3DPRASTERCAPS_ANTIALIASEDGES,"D3DPRASTERCAPS_ANTIALIASEDGES"); 723 checkflag(flag,D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT,"D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT"); 724 checkflag(flag,D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT,"D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT"); 725 checkflag(flag,D3DPRASTERCAPS_DITHER,"D3DPRASTERCAPS_DITHER"); 726 checkflag(flag,D3DPRASTERCAPS_FOGRANGE,"D3DPRASTERCAPS_FOGRANGE"); 727 checkflag(flag,D3DPRASTERCAPS_FOGTABLE,"D3DPRASTERCAPS_FOGTABLE"); 728 checkflag(flag,D3DPRASTERCAPS_FOGVERTEX,"D3DPRASTERCAPS_FOGVERTEX"); 729 checkflag(flag,D3DPRASTERCAPS_PAT,"D3DPRASTERCAPS_PAT"); 730 checkflag(flag,D3DPRASTERCAPS_ROP2,"D3DPRASTERCAPS_ROP2"); 731 checkflag(flag,D3DPRASTERCAPS_STIPPLE,"D3DPRASTERCAPS_STIPPLE"); 732 checkflag(flag,D3DPRASTERCAPS_SUBPIXEL,"D3DPRASTERCAPS_SUBPIXEL"); 733 checkflag(flag,D3DPRASTERCAPS_SUBPIXELX,"D3DPRASTERCAPS_SUBPIXELX"); 734 checkflag(flag,D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT,"D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT"); 735 checkflag(flag,D3DPRASTERCAPS_WBUFFER,"D3DPRASTERCAPS_WBUFFER"); 736 checkflag(flag,D3DPRASTERCAPS_WFOG,"D3DPRASTERCAPS_WFOG"); 737 checkflag(flag,D3DPRASTERCAPS_XOR,"D3DPRASTERCAPS_XOR"); 738 checkflag(flag,D3DPRASTERCAPS_ZBIAS,"D3DPRASTERCAPS_ZBIAS"); 739 checkflag(flag,D3DPRASTERCAPS_ZBUFFERLESSHSR,"D3DPRASTERCAPS_ZBUFFERLESSHSR"); 740 checkflag(flag,D3DPRASTERCAPS_ZFOG,"D3DPRASTERCAPS_ZFOG"); 741 checkflag(flag,D3DPRASTERCAPS_ZTEST,"D3DPRASTERCAPS_ZTEST"); 742 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwRasterCaps"); 743 744 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwZCmpCaps : "); 745 count = 0; 746 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwZCmpCaps; 747 checkflag(flag,D3DPCMPCAPS_ALWAYS,"D3DPCMPCAPS_ALWAYS"); 748 checkflag(flag,D3DPCMPCAPS_EQUAL,"D3DPCMPCAPS_EQUAL"); 749 checkflag(flag,D3DPCMPCAPS_GREATER,"D3DPCMPCAPS_GREATER"); 750 checkflag(flag,D3DPCMPCAPS_GREATEREQUAL,"D3DPCMPCAPS_GREATEREQUAL"); 751 checkflag(flag,D3DPCMPCAPS_LESS,"D3DPCMPCAPS_LESS"); 752 checkflag(flag,D3DPCMPCAPS_LESSEQUAL,"D3DPCMPCAPS_LESSEQUAL"); 753 checkflag(flag,D3DPCMPCAPS_NEVER,"D3DPCMPCAPS_NEVER"); 754 checkflag(flag,D3DPCMPCAPS_NOTEQUAL,"D3DPCMPCAPS_NOTEQUAL"); 755 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwZCmpCaps "); 756 757 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwSrcBlendCaps : "); 758 count = 0; 759 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwSrcBlendCaps; 760 checkflag(flag,D3DPBLENDCAPS_BOTHINVSRCALPHA,"D3DPBLENDCAPS_BOTHINVSRCALPHA"); 761 checkflag(flag,D3DPBLENDCAPS_BOTHSRCALPHA,"D3DPBLENDCAPS_BOTHSRCALPHA"); 762 checkflag(flag,D3DPBLENDCAPS_DESTALPHA,"D3DPBLENDCAPS_DESTALPHA"); 763 checkflag(flag,D3DPBLENDCAPS_DESTCOLOR,"D3DPBLENDCAPS_DESTCOLOR"); 764 checkflag(flag,D3DPBLENDCAPS_INVDESTALPHA,"D3DPBLENDCAPS_INVDESTALPHA"); 765 checkflag(flag,D3DPBLENDCAPS_INVDESTCOLOR,"D3DPBLENDCAPS_INVDESTCOLOR"); 766 checkflag(flag,D3DPBLENDCAPS_INVSRCALPHA,"D3DPBLENDCAPS_INVSRCALPHA"); 767 checkflag(flag,D3DPBLENDCAPS_INVSRCCOLOR,"D3DPBLENDCAPS_INVSRCCOLOR"); 768 checkflag(flag,D3DPBLENDCAPS_ONE,"D3DPBLENDCAPS_ONE"); 769 checkflag(flag,D3DPBLENDCAPS_SRCALPHA,"D3DPBLENDCAPS_SRCALPHA"); 770 checkflag(flag,D3DPBLENDCAPS_SRCALPHASAT,"D3DPBLENDCAPS_SRCALPHASAT"); 771 checkflag(flag,D3DPBLENDCAPS_SRCCOLOR,"D3DPBLENDCAPS_SRCCOLOR"); 772 checkflag(flag,D3DPBLENDCAPS_ZERO,"D3DPBLENDCAPS_ZERO"); 773 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwSrcBlendCaps "); 774 775 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwDestBlendCaps : "); 776 count = 0; 777 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwDestBlendCaps; 778 checkflag(flag,D3DPBLENDCAPS_BOTHINVSRCALPHA,"D3DPBLENDCAPS_BOTHINVSRCALPHA"); 779 checkflag(flag,D3DPBLENDCAPS_BOTHSRCALPHA,"D3DPBLENDCAPS_BOTHSRCALPHA"); 780 checkflag(flag,D3DPBLENDCAPS_DESTALPHA,"D3DPBLENDCAPS_DESTALPHA"); 781 checkflag(flag,D3DPBLENDCAPS_DESTCOLOR,"D3DPBLENDCAPS_DESTCOLOR"); 782 checkflag(flag,D3DPBLENDCAPS_INVDESTALPHA,"D3DPBLENDCAPS_INVDESTALPHA"); 783 checkflag(flag,D3DPBLENDCAPS_INVDESTCOLOR,"D3DPBLENDCAPS_INVDESTCOLOR"); 784 checkflag(flag,D3DPBLENDCAPS_INVSRCALPHA,"D3DPBLENDCAPS_INVSRCALPHA"); 785 checkflag(flag,D3DPBLENDCAPS_INVSRCCOLOR,"D3DPBLENDCAPS_INVSRCCOLOR"); 786 checkflag(flag,D3DPBLENDCAPS_ONE,"D3DPBLENDCAPS_ONE"); 787 checkflag(flag,D3DPBLENDCAPS_SRCALPHA,"D3DPBLENDCAPS_SRCALPHA"); 788 checkflag(flag,D3DPBLENDCAPS_SRCALPHASAT,"D3DPBLENDCAPS_SRCALPHASAT"); 789 checkflag(flag,D3DPBLENDCAPS_SRCCOLOR,"D3DPBLENDCAPS_SRCCOLOR"); 790 checkflag(flag,D3DPBLENDCAPS_ZERO,"D3DPBLENDCAPS_ZERO"); 791 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwDestBlendCaps "); 792 793 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwAlphaCmpCaps : "); 794 count = 0; 795 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwAlphaCmpCaps; 796 checkflag(flag,D3DPCMPCAPS_ALWAYS,"D3DPCMPCAPS_ALWAYS"); 797 checkflag(flag,D3DPCMPCAPS_EQUAL,"D3DPCMPCAPS_EQUAL"); 798 checkflag(flag,D3DPCMPCAPS_GREATER,"D3DPCMPCAPS_GREATER"); 799 checkflag(flag,D3DPCMPCAPS_GREATEREQUAL,"D3DPCMPCAPS_GREATEREQUAL"); 800 checkflag(flag,D3DPCMPCAPS_LESS,"D3DPCMPCAPS_LESS"); 801 checkflag(flag,D3DPCMPCAPS_LESSEQUAL,"D3DPCMPCAPS_LESSEQUAL"); 802 checkflag(flag,D3DPCMPCAPS_NEVER,"D3DPCMPCAPS_NEVER"); 803 checkflag(flag,D3DPCMPCAPS_NOTEQUAL,"D3DPCMPCAPS_NOTEQUAL"); 804 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwAlphaCmpCaps "); 805 806 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwShadeCaps : "); 807 count = 0; 808 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwShadeCaps; 809 checkflag(flag,D3DPSHADECAPS_ALPHAFLATBLEND,"D3DPSHADECAPS_ALPHAFLATBLEND"); 810 checkflag(flag,D3DPSHADECAPS_ALPHAFLATSTIPPLED,"D3DPSHADECAPS_ALPHAFLATSTIPPLED"); 811 checkflag(flag,D3DPSHADECAPS_ALPHAGOURAUDBLEND,"D3DPSHADECAPS_ALPHAGOURAUDBLEND"); 812 checkflag(flag,D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED,"D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED"); 813 checkflag(flag,D3DPSHADECAPS_ALPHAPHONGBLEND,"D3DPSHADECAPS_ALPHAPHONGBLEND"); 814 checkflag(flag,D3DPSHADECAPS_ALPHAPHONGSTIPPLED,"D3DPSHADECAPS_ALPHAPHONGSTIPPLED"); 815 checkflag(flag,D3DPSHADECAPS_COLORFLATMONO,"D3DPSHADECAPS_COLORFLATMONO"); 816 checkflag(flag,D3DPSHADECAPS_COLORFLATRGB,"D3DPSHADECAPS_COLORFLATRGB"); 817 checkflag(flag,D3DPSHADECAPS_COLORGOURAUDMONO,"D3DPSHADECAPS_COLORGOURAUDMONO"); 818 checkflag(flag,D3DPSHADECAPS_COLORGOURAUDRGB,"D3DPSHADECAPS_COLORGOURAUDRGB"); 819 checkflag(flag,D3DPSHADECAPS_COLORPHONGMONO,"D3DPSHADECAPS_COLORPHONGMONO"); 820 checkflag(flag,D3DPSHADECAPS_COLORPHONGRGB,"D3DPSHADECAPS_COLORPHONGRGB"); 821 checkflag(flag,D3DPSHADECAPS_FOGFLAT,"D3DPSHADECAPS_FOGFLAT"); 822 checkflag(flag,D3DPSHADECAPS_FOGGOURAUD,"D3DPSHADECAPS_FOGGOURAUD"); 823 checkflag(flag,D3DPSHADECAPS_FOGPHONG,"D3DPSHADECAPS_FOGPHONG"); 824 checkflag(flag,D3DPSHADECAPS_SPECULARFLATMONO,"D3DPSHADECAPS_SPECULARFLATMONO"); 825 checkflag(flag,D3DPSHADECAPS_SPECULARFLATRGB,"D3DPSHADECAPS_SPECULARFLATRGB"); 826 checkflag(flag,D3DPSHADECAPS_SPECULARGOURAUDMONO,"D3DPSHADECAPS_SPECULARGOURAUDMONO"); 827 checkflag(flag,D3DPSHADECAPS_SPECULARGOURAUDRGB,"D3DPSHADECAPS_SPECULARGOURAUDRGB"); 828 checkflag(flag,D3DPSHADECAPS_SPECULARPHONGMONO,"D3DPSHADECAPS_SPECULARPHONGMONO"); 829 checkflag(flag,D3DPSHADECAPS_SPECULARPHONGRGB,"D3DPSHADECAPS_SPECULARPHONGRGB"); 830 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwShadeCaps "); 831 832 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwTextureCaps : "); 833 count = 0; 834 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwTextureCaps; 835 checkflag(flag,D3DPTEXTURECAPS_ALPHA,"D3DPTEXTURECAPS_ALPHA"); 836 checkflag(flag,D3DPTEXTURECAPS_ALPHAPALETTE,"D3DPTEXTURECAPS_ALPHAPALETTE"); 837 checkflag(flag,D3DPTEXTURECAPS_BORDER,"D3DPTEXTURECAPS_BORDER"); 838 checkflag(flag,D3DPTEXTURECAPS_COLORKEYBLEND,"D3DPTEXTURECAPS_COLORKEYBLEND"); 839 checkflag(flag,D3DPTEXTURECAPS_CUBEMAP,"D3DPTEXTURECAPS_CUBEMAP"); 840 checkflag(flag,D3DPTEXTURECAPS_PERSPECTIVE,"D3DPTEXTURECAPS_PERSPECTIVE"); 841 checkflag(flag,D3DPTEXTURECAPS_POW2,"D3DPTEXTURECAPS_POW2"); 842 checkflag(flag,D3DPTEXTURECAPS_PROJECTED,"D3DPTEXTURECAPS_PROJECTED"); 843 checkflag(flag,D3DPTEXTURECAPS_NONPOW2CONDITIONAL,"D3DPTEXTURECAPS_NONPOW2CONDITIONAL"); 844 checkflag(flag,D3DPTEXTURECAPS_SQUAREONLY,"D3DPTEXTURECAPS_SQUAREONLY"); 845 // not in ddk or dxsdk but it is in msdn checkflag(flag,D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE,"D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE"); 846 // not in ddk or dxsdk but it is in msdn checkflag(flag,D3DPTEXTURECAPS_TEXTURETRANSFORM,"D3DPTEXTURECAPS_TEXTURETRANSFORM"); 847 checkflag(flag,D3DPTEXTURECAPS_TRANSPARENCY,"D3DPTEXTURECAPS_TRANSPARENCY"); 848 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwTextureCaps "); 849 850 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwTextureFilterCaps : "); 851 count = 0; 852 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwTextureFilterCaps; 853 checkflag(flag,D3DPTFILTERCAPS_LINEAR,"D3DPTFILTERCAPS_LINEAR"); 854 checkflag(flag,D3DPTFILTERCAPS_LINEARMIPLINEAR,"D3DPTFILTERCAPS_LINEARMIPLINEAR"); 855 checkflag(flag,D3DPTFILTERCAPS_LINEARMIPNEAREST,"D3DPTFILTERCAPS_LINEARMIPNEAREST"); 856 checkflag(flag,D3DPTFILTERCAPS_MAGFAFLATCUBIC,"D3DPTFILTERCAPS_MAGFAFLATCUBIC"); 857 checkflag(flag,D3DPTFILTERCAPS_MAGFANISOTROPIC,"D3DPTFILTERCAPS_MAGFANISOTROPIC"); 858 checkflag(flag,D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC,"D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC"); 859 checkflag(flag,D3DPTFILTERCAPS_MAGFLINEAR,"D3DPTFILTERCAPS_MAGFLINEAR"); 860 checkflag(flag,D3DPTFILTERCAPS_MAGFPOINT,"D3DPTFILTERCAPS_MAGFPOINT"); 861 checkflag(flag,D3DPTFILTERCAPS_MINFANISOTROPIC,"D3DPTFILTERCAPS_MINFANISOTROPIC"); 862 checkflag(flag,D3DPTFILTERCAPS_MINFLINEAR,"D3DPTFILTERCAPS_MINFLINEAR"); 863 checkflag(flag,D3DPTFILTERCAPS_MINFPOINT,"D3DPTFILTERCAPS_MINFPOINT"); 864 checkflag(flag,D3DPTFILTERCAPS_MIPFLINEAR,"D3DPTFILTERCAPS_MIPFLINEAR"); 865 checkflag(flag,D3DPTFILTERCAPS_MIPFPOINT,"D3DPTFILTERCAPS_MIPFPOINT"); 866 checkflag(flag,D3DPTFILTERCAPS_MIPLINEAR,"D3DPTFILTERCAPS_MIPLINEAR"); 867 checkflag(flag,D3DPTFILTERCAPS_MIPNEAREST,"D3DPTFILTERCAPS_MIPNEAREST"); 868 checkflag(flag,D3DPTFILTERCAPS_NEAREST,"D3DPTFILTERCAPS_NEAREST"); 869 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwTextureFilterCaps "); 870 871 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwTextureBlendCaps : "); 872 count = 0; 873 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwTextureBlendCaps; 874 checkflag(flag,D3DPTBLENDCAPS_ADD,"D3DPTBLENDCAPS_ADD"); 875 checkflag(flag,D3DPTBLENDCAPS_COPY,"D3DPTBLENDCAPS_COPY"); 876 checkflag(flag,D3DPTBLENDCAPS_DECAL,"D3DPTBLENDCAPS_DECAL"); 877 checkflag(flag,D3DPTBLENDCAPS_DECALALPHA,"D3DPTBLENDCAPS_DECALALPHA"); 878 checkflag(flag,D3DPTBLENDCAPS_DECALMASK,"D3DPTBLENDCAPS_DECALMASK"); 879 checkflag(flag,D3DPTBLENDCAPS_MODULATE,"D3DPTBLENDCAPS_MODULATE"); 880 checkflag(flag,D3DPTBLENDCAPS_MODULATEALPHA,"D3DPTBLENDCAPS_MODULATEALPHA"); 881 checkflag(flag,D3DPTBLENDCAPS_MODULATEMASK,"D3DPTBLENDCAPS_MODULATEMASK"); 882 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwTextureBlendCaps "); 883 884 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwTextureAddressCaps : "); 885 count = 0; 886 flag = puD3dDriverData->hwCaps.dpcLineCaps.dwTextureAddressCaps; 887 checkflag(flag,D3DPTADDRESSCAPS_BORDER,"D3DPTADDRESSCAPS_BORDER"); 888 checkflag(flag,D3DPTADDRESSCAPS_CLAMP,"D3DPTADDRESSCAPS_CLAMP"); 889 checkflag(flag,D3DPTADDRESSCAPS_INDEPENDENTUV,"D3DPTADDRESSCAPS_INDEPENDENTUV"); 890 checkflag(flag,D3DPTADDRESSCAPS_MIRROR,"D3DPTADDRESSCAPS_MIRROR"); 891 checkflag(flag,D3DPTADDRESSCAPS_WRAP,"D3DPTADDRESSCAPS_WRAP"); 892 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcLineCaps.dwTextureAddressCaps "); 893 894 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwStippleWidth : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dpcLineCaps.dwStippleWidth); 895 printf(" puD3dDriverData->hwCaps.dpcLineCaps.dwStippleHeight : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dpcLineCaps.dwStippleHeight); 896 } 897 else 898 { 899 printf("none puD3dDriverData->hwCaps.dpcLineCaps.dwSize from the driver 0x%08lx\n",puD3dDriverData->hwCaps.dpcLineCaps.dwSize); 900 } 901 902 if (puD3dDriverData->hwCaps.dpcTriCaps.dwSize == sizeof(D3DPRIMCAPS)) 903 { 904 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwSize : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dpcTriCaps.dwSize); 905 906 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwMiscCaps : "); 907 count = 0; 908 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwMiscCaps; 909 checkflag(flag,D3DPMISCCAPS_CONFORMANT,"D3DPMISCCAPS_CONFORMANT"); 910 checkflag(flag,D3DPMISCCAPS_CULLCCW,"D3DPMISCCAPS_CULLCCW"); 911 checkflag(flag,D3DPMISCCAPS_CULLCW,"D3DPMISCCAPS_CULLCW"); 912 checkflag(flag,D3DPMISCCAPS_CULLNONE,"D3DPMISCCAPS_CULLNONE"); 913 checkflag(flag,D3DPMISCCAPS_LINEPATTERNREP,"D3DPMISCCAPS_LINEPATTERNREP"); 914 checkflag(flag,D3DPMISCCAPS_MASKPLANES,"D3DPMISCCAPS_MASKPLANES"); 915 checkflag(flag,D3DPMISCCAPS_MASKZ,"D3DPMISCCAPS_MASKZ"); 916 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwMiscCaps"); 917 918 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwRasterCaps : "); 919 count = 0; 920 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwRasterCaps; 921 checkflag(flag,D3DPRASTERCAPS_ANISOTROPY,"D3DPRASTERCAPS_ANISOTROPY"); 922 checkflag(flag,D3DPRASTERCAPS_ANTIALIASEDGES,"D3DPRASTERCAPS_ANTIALIASEDGES"); 923 checkflag(flag,D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT,"D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT"); 924 checkflag(flag,D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT,"D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT"); 925 checkflag(flag,D3DPRASTERCAPS_DITHER,"D3DPRASTERCAPS_DITHER"); 926 checkflag(flag,D3DPRASTERCAPS_FOGRANGE,"D3DPRASTERCAPS_FOGRANGE"); 927 checkflag(flag,D3DPRASTERCAPS_FOGTABLE,"D3DPRASTERCAPS_FOGTABLE"); 928 checkflag(flag,D3DPRASTERCAPS_FOGVERTEX,"D3DPRASTERCAPS_FOGVERTEX"); 929 checkflag(flag,D3DPRASTERCAPS_PAT,"D3DPRASTERCAPS_PAT"); 930 checkflag(flag,D3DPRASTERCAPS_ROP2,"D3DPRASTERCAPS_ROP2"); 931 checkflag(flag,D3DPRASTERCAPS_STIPPLE,"D3DPRASTERCAPS_STIPPLE"); 932 checkflag(flag,D3DPRASTERCAPS_SUBPIXEL,"D3DPRASTERCAPS_SUBPIXEL"); 933 checkflag(flag,D3DPRASTERCAPS_SUBPIXELX,"D3DPRASTERCAPS_SUBPIXELX"); 934 checkflag(flag,D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT,"D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT"); 935 checkflag(flag,D3DPRASTERCAPS_WBUFFER,"D3DPRASTERCAPS_WBUFFER"); 936 checkflag(flag,D3DPRASTERCAPS_WFOG,"D3DPRASTERCAPS_WFOG"); 937 checkflag(flag,D3DPRASTERCAPS_XOR,"D3DPRASTERCAPS_XOR"); 938 checkflag(flag,D3DPRASTERCAPS_ZBIAS,"D3DPRASTERCAPS_ZBIAS"); 939 checkflag(flag,D3DPRASTERCAPS_ZBUFFERLESSHSR,"D3DPRASTERCAPS_ZBUFFERLESSHSR"); 940 checkflag(flag,D3DPRASTERCAPS_ZFOG,"D3DPRASTERCAPS_ZFOG"); 941 checkflag(flag,D3DPRASTERCAPS_ZTEST,"D3DPRASTERCAPS_ZTEST"); 942 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwRasterCaps"); 943 944 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwZCmpCaps : "); 945 count = 0; 946 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwZCmpCaps; 947 checkflag(flag,D3DPCMPCAPS_ALWAYS,"D3DPCMPCAPS_ALWAYS"); 948 checkflag(flag,D3DPCMPCAPS_EQUAL,"D3DPCMPCAPS_EQUAL"); 949 checkflag(flag,D3DPCMPCAPS_GREATER,"D3DPCMPCAPS_GREATER"); 950 checkflag(flag,D3DPCMPCAPS_GREATEREQUAL,"D3DPCMPCAPS_GREATEREQUAL"); 951 checkflag(flag,D3DPCMPCAPS_LESS,"D3DPCMPCAPS_LESS"); 952 checkflag(flag,D3DPCMPCAPS_LESSEQUAL,"D3DPCMPCAPS_LESSEQUAL"); 953 checkflag(flag,D3DPCMPCAPS_NEVER,"D3DPCMPCAPS_NEVER"); 954 checkflag(flag,D3DPCMPCAPS_NOTEQUAL,"D3DPCMPCAPS_NOTEQUAL"); 955 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwZCmpCaps "); 956 957 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwSrcBlendCaps : "); 958 count = 0; 959 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwSrcBlendCaps; 960 checkflag(flag,D3DPBLENDCAPS_BOTHINVSRCALPHA,"D3DPBLENDCAPS_BOTHINVSRCALPHA"); 961 checkflag(flag,D3DPBLENDCAPS_BOTHSRCALPHA,"D3DPBLENDCAPS_BOTHSRCALPHA"); 962 checkflag(flag,D3DPBLENDCAPS_DESTALPHA,"D3DPBLENDCAPS_DESTALPHA"); 963 checkflag(flag,D3DPBLENDCAPS_DESTCOLOR,"D3DPBLENDCAPS_DESTCOLOR"); 964 checkflag(flag,D3DPBLENDCAPS_INVDESTALPHA,"D3DPBLENDCAPS_INVDESTALPHA"); 965 checkflag(flag,D3DPBLENDCAPS_INVDESTCOLOR,"D3DPBLENDCAPS_INVDESTCOLOR"); 966 checkflag(flag,D3DPBLENDCAPS_INVSRCALPHA,"D3DPBLENDCAPS_INVSRCALPHA"); 967 checkflag(flag,D3DPBLENDCAPS_INVSRCCOLOR,"D3DPBLENDCAPS_INVSRCCOLOR"); 968 checkflag(flag,D3DPBLENDCAPS_ONE,"D3DPBLENDCAPS_ONE"); 969 checkflag(flag,D3DPBLENDCAPS_SRCALPHA,"D3DPBLENDCAPS_SRCALPHA"); 970 checkflag(flag,D3DPBLENDCAPS_SRCALPHASAT,"D3DPBLENDCAPS_SRCALPHASAT"); 971 checkflag(flag,D3DPBLENDCAPS_SRCCOLOR,"D3DPBLENDCAPS_SRCCOLOR"); 972 checkflag(flag,D3DPBLENDCAPS_ZERO,"D3DPBLENDCAPS_ZERO"); 973 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwSrcBlendCaps "); 974 975 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwDestBlendCaps : "); 976 count = 0; 977 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwDestBlendCaps; 978 checkflag(flag,D3DPBLENDCAPS_BOTHINVSRCALPHA,"D3DPBLENDCAPS_BOTHINVSRCALPHA"); 979 checkflag(flag,D3DPBLENDCAPS_BOTHSRCALPHA,"D3DPBLENDCAPS_BOTHSRCALPHA"); 980 checkflag(flag,D3DPBLENDCAPS_DESTALPHA,"D3DPBLENDCAPS_DESTALPHA"); 981 checkflag(flag,D3DPBLENDCAPS_DESTCOLOR,"D3DPBLENDCAPS_DESTCOLOR"); 982 checkflag(flag,D3DPBLENDCAPS_INVDESTALPHA,"D3DPBLENDCAPS_INVDESTALPHA"); 983 checkflag(flag,D3DPBLENDCAPS_INVDESTCOLOR,"D3DPBLENDCAPS_INVDESTCOLOR"); 984 checkflag(flag,D3DPBLENDCAPS_INVSRCALPHA,"D3DPBLENDCAPS_INVSRCALPHA"); 985 checkflag(flag,D3DPBLENDCAPS_INVSRCCOLOR,"D3DPBLENDCAPS_INVSRCCOLOR"); 986 checkflag(flag,D3DPBLENDCAPS_ONE,"D3DPBLENDCAPS_ONE"); 987 checkflag(flag,D3DPBLENDCAPS_SRCALPHA,"D3DPBLENDCAPS_SRCALPHA"); 988 checkflag(flag,D3DPBLENDCAPS_SRCALPHASAT,"D3DPBLENDCAPS_SRCALPHASAT"); 989 checkflag(flag,D3DPBLENDCAPS_SRCCOLOR,"D3DPBLENDCAPS_SRCCOLOR"); 990 checkflag(flag,D3DPBLENDCAPS_ZERO,"D3DPBLENDCAPS_ZERO"); 991 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwDestBlendCaps "); 992 993 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwAlphaCmpCaps : "); 994 count = 0; 995 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwAlphaCmpCaps; 996 checkflag(flag,D3DPCMPCAPS_ALWAYS,"D3DPCMPCAPS_ALWAYS"); 997 checkflag(flag,D3DPCMPCAPS_EQUAL,"D3DPCMPCAPS_EQUAL"); 998 checkflag(flag,D3DPCMPCAPS_GREATER,"D3DPCMPCAPS_GREATER"); 999 checkflag(flag,D3DPCMPCAPS_GREATEREQUAL,"D3DPCMPCAPS_GREATEREQUAL"); 1000 checkflag(flag,D3DPCMPCAPS_LESS,"D3DPCMPCAPS_LESS"); 1001 checkflag(flag,D3DPCMPCAPS_LESSEQUAL,"D3DPCMPCAPS_LESSEQUAL"); 1002 checkflag(flag,D3DPCMPCAPS_NEVER,"D3DPCMPCAPS_NEVER"); 1003 checkflag(flag,D3DPCMPCAPS_NOTEQUAL,"D3DPCMPCAPS_NOTEQUAL"); 1004 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwAlphaCmpCaps "); 1005 1006 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwShadeCaps : "); 1007 count = 0; 1008 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwShadeCaps; 1009 checkflag(flag,D3DPSHADECAPS_ALPHAFLATBLEND,"D3DPSHADECAPS_ALPHAFLATBLEND"); 1010 checkflag(flag,D3DPSHADECAPS_ALPHAFLATSTIPPLED,"D3DPSHADECAPS_ALPHAFLATSTIPPLED"); 1011 checkflag(flag,D3DPSHADECAPS_ALPHAGOURAUDBLEND,"D3DPSHADECAPS_ALPHAGOURAUDBLEND"); 1012 checkflag(flag,D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED,"D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED"); 1013 checkflag(flag,D3DPSHADECAPS_ALPHAPHONGBLEND,"D3DPSHADECAPS_ALPHAPHONGBLEND"); 1014 checkflag(flag,D3DPSHADECAPS_ALPHAPHONGSTIPPLED,"D3DPSHADECAPS_ALPHAPHONGSTIPPLED"); 1015 checkflag(flag,D3DPSHADECAPS_COLORFLATMONO,"D3DPSHADECAPS_COLORFLATMONO"); 1016 checkflag(flag,D3DPSHADECAPS_COLORFLATRGB,"D3DPSHADECAPS_COLORFLATRGB"); 1017 checkflag(flag,D3DPSHADECAPS_COLORGOURAUDMONO,"D3DPSHADECAPS_COLORGOURAUDMONO"); 1018 checkflag(flag,D3DPSHADECAPS_COLORGOURAUDRGB,"D3DPSHADECAPS_COLORGOURAUDRGB"); 1019 checkflag(flag,D3DPSHADECAPS_COLORPHONGMONO,"D3DPSHADECAPS_COLORPHONGMONO"); 1020 checkflag(flag,D3DPSHADECAPS_COLORPHONGRGB,"D3DPSHADECAPS_COLORPHONGRGB"); 1021 checkflag(flag,D3DPSHADECAPS_FOGFLAT,"D3DPSHADECAPS_FOGFLAT"); 1022 checkflag(flag,D3DPSHADECAPS_FOGGOURAUD,"D3DPSHADECAPS_FOGGOURAUD"); 1023 checkflag(flag,D3DPSHADECAPS_FOGPHONG,"D3DPSHADECAPS_FOGPHONG"); 1024 checkflag(flag,D3DPSHADECAPS_SPECULARFLATMONO,"D3DPSHADECAPS_SPECULARFLATMONO"); 1025 checkflag(flag,D3DPSHADECAPS_SPECULARFLATRGB,"D3DPSHADECAPS_SPECULARFLATRGB"); 1026 checkflag(flag,D3DPSHADECAPS_SPECULARGOURAUDMONO,"D3DPSHADECAPS_SPECULARGOURAUDMONO"); 1027 checkflag(flag,D3DPSHADECAPS_SPECULARGOURAUDRGB,"D3DPSHADECAPS_SPECULARGOURAUDRGB"); 1028 checkflag(flag,D3DPSHADECAPS_SPECULARPHONGMONO,"D3DPSHADECAPS_SPECULARPHONGMONO"); 1029 checkflag(flag,D3DPSHADECAPS_SPECULARPHONGRGB,"D3DPSHADECAPS_SPECULARPHONGRGB"); 1030 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwShadeCaps "); 1031 1032 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwTextureCaps : "); 1033 count = 0; 1034 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwTextureCaps; 1035 checkflag(flag,D3DPTEXTURECAPS_ALPHA,"D3DPTEXTURECAPS_ALPHA"); 1036 checkflag(flag,D3DPTEXTURECAPS_ALPHAPALETTE,"D3DPTEXTURECAPS_ALPHAPALETTE"); 1037 checkflag(flag,D3DPTEXTURECAPS_BORDER,"D3DPTEXTURECAPS_BORDER"); 1038 checkflag(flag,D3DPTEXTURECAPS_COLORKEYBLEND,"D3DPTEXTURECAPS_COLORKEYBLEND"); 1039 checkflag(flag,D3DPTEXTURECAPS_CUBEMAP,"D3DPTEXTURECAPS_CUBEMAP"); 1040 checkflag(flag,D3DPTEXTURECAPS_PERSPECTIVE,"D3DPTEXTURECAPS_PERSPECTIVE"); 1041 checkflag(flag,D3DPTEXTURECAPS_POW2,"D3DPTEXTURECAPS_POW2"); 1042 checkflag(flag,D3DPTEXTURECAPS_PROJECTED,"D3DPTEXTURECAPS_PROJECTED"); 1043 checkflag(flag,D3DPTEXTURECAPS_NONPOW2CONDITIONAL,"D3DPTEXTURECAPS_NONPOW2CONDITIONAL"); 1044 checkflag(flag,D3DPTEXTURECAPS_SQUAREONLY,"D3DPTEXTURECAPS_SQUAREONLY"); 1045 //not in ddk or dxsdk but it is in msdn checkflag(flag,D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE,"D3DPTEXTURECAPS_TEXREPEATNOTSCALESBYSIZE"); 1046 //not in ddk or dxsdk but it is in msdn checkflag(flag,D3DPTEXTURECAPS_TEXTURETRANSFORM,"D3DPTEXTURECAPS_TEXTURETRANSFORM"); 1047 checkflag(flag,D3DPTEXTURECAPS_TRANSPARENCY,"D3DPTEXTURECAPS_TRANSPARENCY"); 1048 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwTextureCaps "); 1049 1050 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwTextureFilterCaps : "); 1051 count = 0; 1052 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwTextureFilterCaps; 1053 checkflag(flag,D3DPTFILTERCAPS_LINEAR,"D3DPTFILTERCAPS_LINEAR"); 1054 checkflag(flag,D3DPTFILTERCAPS_LINEARMIPLINEAR,"D3DPTFILTERCAPS_LINEARMIPLINEAR"); 1055 checkflag(flag,D3DPTFILTERCAPS_LINEARMIPNEAREST,"D3DPTFILTERCAPS_LINEARMIPNEAREST"); 1056 checkflag(flag,D3DPTFILTERCAPS_MAGFAFLATCUBIC,"D3DPTFILTERCAPS_MAGFAFLATCUBIC"); 1057 checkflag(flag,D3DPTFILTERCAPS_MAGFANISOTROPIC,"D3DPTFILTERCAPS_MAGFANISOTROPIC"); 1058 checkflag(flag,D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC,"D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC"); 1059 checkflag(flag,D3DPTFILTERCAPS_MAGFLINEAR,"D3DPTFILTERCAPS_MAGFLINEAR"); 1060 checkflag(flag,D3DPTFILTERCAPS_MAGFPOINT,"D3DPTFILTERCAPS_MAGFPOINT"); 1061 checkflag(flag,D3DPTFILTERCAPS_MINFANISOTROPIC,"D3DPTFILTERCAPS_MINFANISOTROPIC"); 1062 checkflag(flag,D3DPTFILTERCAPS_MINFLINEAR,"D3DPTFILTERCAPS_MINFLINEAR"); 1063 checkflag(flag,D3DPTFILTERCAPS_MINFPOINT,"D3DPTFILTERCAPS_MINFPOINT"); 1064 checkflag(flag,D3DPTFILTERCAPS_MIPFLINEAR,"D3DPTFILTERCAPS_MIPFLINEAR"); 1065 checkflag(flag,D3DPTFILTERCAPS_MIPFPOINT,"D3DPTFILTERCAPS_MIPFPOINT"); 1066 checkflag(flag,D3DPTFILTERCAPS_MIPLINEAR,"D3DPTFILTERCAPS_MIPLINEAR"); 1067 checkflag(flag,D3DPTFILTERCAPS_MIPNEAREST,"D3DPTFILTERCAPS_MIPNEAREST"); 1068 checkflag(flag,D3DPTFILTERCAPS_NEAREST,"D3DPTFILTERCAPS_NEAREST"); 1069 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwTextureFilterCaps "); 1070 1071 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwTextureBlendCaps : "); 1072 count = 0; 1073 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwTextureBlendCaps; 1074 checkflag(flag,D3DPTBLENDCAPS_ADD,"D3DPTBLENDCAPS_ADD"); 1075 checkflag(flag,D3DPTBLENDCAPS_COPY,"D3DPTBLENDCAPS_COPY"); 1076 checkflag(flag,D3DPTBLENDCAPS_DECAL,"D3DPTBLENDCAPS_DECAL"); 1077 checkflag(flag,D3DPTBLENDCAPS_DECALALPHA,"D3DPTBLENDCAPS_DECALALPHA"); 1078 checkflag(flag,D3DPTBLENDCAPS_DECALMASK,"D3DPTBLENDCAPS_DECALMASK"); 1079 checkflag(flag,D3DPTBLENDCAPS_MODULATE,"D3DPTBLENDCAPS_MODULATE"); 1080 checkflag(flag,D3DPTBLENDCAPS_MODULATEALPHA,"D3DPTBLENDCAPS_MODULATEALPHA"); 1081 checkflag(flag,D3DPTBLENDCAPS_MODULATEMASK,"D3DPTBLENDCAPS_MODULATEMASK"); 1082 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwTextureBlendCaps "); 1083 1084 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwTextureAddressCaps : "); 1085 count = 0; 1086 flag = puD3dDriverData->hwCaps.dpcTriCaps.dwTextureAddressCaps; 1087 checkflag(flag,D3DPTADDRESSCAPS_BORDER,"D3DPTADDRESSCAPS_BORDER"); 1088 checkflag(flag,D3DPTADDRESSCAPS_CLAMP,"D3DPTADDRESSCAPS_CLAMP"); 1089 checkflag(flag,D3DPTADDRESSCAPS_INDEPENDENTUV,"D3DPTADDRESSCAPS_INDEPENDENTUV"); 1090 checkflag(flag,D3DPTADDRESSCAPS_MIRROR,"D3DPTADDRESSCAPS_MIRROR"); 1091 checkflag(flag,D3DPTADDRESSCAPS_WRAP,"D3DPTADDRESSCAPS_WRAP"); 1092 endcheckflag(flag,"puD3dDriverData->hwCaps.dpcTriCaps.dwTextureAddressCaps "); 1093 1094 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwStippleWidth : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dpcTriCaps.dwStippleWidth); 1095 printf(" puD3dDriverData->hwCaps.dpcTriCaps.dwStippleHeight : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dpcTriCaps.dwStippleHeight); 1096 } 1097 else 1098 { 1099 printf("none puD3dDriverData->hwCaps.dpcTriCaps.dwSize from the driver 0x%08lx\n",puD3dDriverData->hwCaps.dpcTriCaps.dwSize); 1100 } 1101 1102 printf(" puD3dDriverData->hwCaps.dwDeviceRenderBitDepth : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dwDeviceRenderBitDepth); 1103 printf(" puD3dDriverData->hwCaps.dwDeviceZBufferBitDepth : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dwDeviceZBufferBitDepth); 1104 printf(" puD3dDriverData->hwCaps.dwMaxBufferSize : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dwMaxBufferSize); 1105 printf(" puD3dDriverData->hwCaps.dwMaxVertexCount : 0x%08lx\n",(long)puD3dDriverData->hwCaps.dwMaxVertexCount); 1106 } 1107 else 1108 { 1109 printf("none puD3dDriverData->hwCaps.dwSize from the driver 0x%08lx\n",puD3dDriverData->hwCaps.dwSize); 1110 } 1111 1112 printf(" puD3dDriverData->dwNumVertices : 0x%08lx\n",(long)puD3dDriverData->dwNumVertices); 1113 printf(" puD3dDriverData->dwNumClipVertices : 0x%08lx\n",(long)puD3dDriverData->dwNumClipVertices); 1114 printf(" puD3dDriverData->dwNumTextureFormats : 0x%08lx\n",(long)puD3dDriverData->dwNumTextureFormats); 1115 printf(" puD3dDriverData->lpTextureFormats : 0x%08lx\n",(long)puD3dDriverData->lpTextureFormats); 1116 printf(" puD3dDriverData->lpTextureFormats : 0x%08lx\n",(long)puD3dDriverData->lpTextureFormats); 1117 } 1118 else 1119 { 1120 printf("none puD3dDriverData from the driver 0x%08lx\n",puD3dDriverData->dwSize); 1121 } 1122 } 1123 1124 1125 void 1126 dump_D3dBufferCallbacks(DD_D3DBUFCALLBACKS *puD3dBufferCallbacks, char *text) 1127 { 1128 int count = 0; 1129 DWORD flag = 0; 1130 1131 printf("dumping the DD_D3DBUFCALLBACKS from %s\n",text); 1132 1133 if (puD3dBufferCallbacks->dwSize == sizeof(DD_D3DBUFCALLBACKS)) 1134 { 1135 printf(" puD3dBufferCallbacks->dwSize : 0x%08lx\n",(long)puD3dBufferCallbacks->dwSize); 1136 printf(" puD3dBufferCallbacks->dwFlags : "); 1137 1138 /* rember this flags are not in msdn only in ms ddk */ 1139 count = 0; 1140 flag = puD3dBufferCallbacks->dwFlags; 1141 checkflag(flag,DDHAL_D3DBUFCB32_CANCREATED3DBUF,"DDHAL_D3DBUFCB32_CANCREATED3DBUF"); 1142 checkflag(flag,DDHAL_D3DBUFCB32_CREATED3DBUF,"DDHAL_D3DBUFCB32_CREATED3DBUF"); 1143 1144 checkflag(flag,DDHAL_D3DBUFCB32_DESTROYD3DBUF,"DDHAL_D3DBUFCB32_DESTROYD3DBUF"); 1145 1146 checkflag(flag,DDHAL_D3DBUFCB32_LOCKD3DBUF,"DDHAL_D3DBUFCB32_LOCKD3DBUF"); 1147 checkflag(flag,DDHAL_D3DBUFCB32_UNLOCKD3DBUF,"DDHAL_D3DBUFCB32_UNLOCKD3DBUF"); 1148 endcheckflag(flag,"puD3dBufferCallbacks->dwFlags"); 1149 1150 printf(" puD3dBufferCallbacks->CanCreateD3DBuffer : 0x%08lx\n",(long)puD3dBufferCallbacks->CanCreateD3DBuffer); 1151 printf(" puD3dBufferCallbacks->CreateD3DBuffer : 0x%08lx\n",(long)puD3dBufferCallbacks->CreateD3DBuffer); 1152 printf(" puD3dBufferCallbacks->DestroyD3DBuffer : 0x%08lx\n",(long)puD3dBufferCallbacks->DestroyD3DBuffer); 1153 printf(" puD3dBufferCallbacks->LockD3DBuffer : 0x%08lx\n",(long)puD3dBufferCallbacks->LockD3DBuffer); 1154 printf(" puD3dBufferCallbacks->UnlockD3DBuffer : 0x%08lx\n",(long)puD3dBufferCallbacks->UnlockD3DBuffer); 1155 } 1156 else 1157 { 1158 printf("none puD3dBufferCallbacks from the driver 0x%08lx\n",puD3dBufferCallbacks->dwSize); 1159 } 1160 1161 } 1162 1163 void 1164 dump_D3dTextureFormats(DDSURFACEDESC *puD3dTextureFormats, int dwNum, char *text) 1165 { 1166 int t=0; 1167 int count = 0; 1168 DWORD flag = 0; 1169 DDSURFACEDESC * myTextureFormats = puD3dTextureFormats; 1170 1171 printf("dumping the DDSURFACEDESC/DDSURFACEDESC2 from %s\n",text); 1172 1173 for (t=0;t<dwNum;t++) 1174 { 1175 printf("Show %d of %d DDSURFACEDESC\n",t+1,dwNum); 1176 if (myTextureFormats->dwSize == sizeof(DDSURFACEDESC)) 1177 { 1178 printf(" puD3dTextureFormats->dwSize : 0x%08lx\n",(long)myTextureFormats->dwSize); 1179 1180 printf(" puD3dTextureFormats->dwFlags : "); 1181 count = 0; 1182 flag = myTextureFormats->dwFlags; 1183 checkflag(flag,DDSD_ALPHABITDEPTH,"DDSD_ALPHABITDEPTH"); 1184 checkflag(flag,DDSD_BACKBUFFERCOUNT ,"DDSD_BACKBUFFERCOUNT"); 1185 checkflag(flag,DDSD_CAPS,"DDSD_CAPS "); 1186 checkflag(flag,DDSD_CKDESTBLT,"DDSD_CKDESTBLT"); 1187 checkflag(flag,DDSD_CKDESTOVERLAY,"DDSD_CKDESTOVERLAY"); 1188 checkflag(flag,DDSD_CKSRCBLT,"DDSD_CKSRCBLT"); 1189 checkflag(flag,DDSD_CKSRCOVERLAY,"DDSD_CKSRCOVERLAY"); 1190 checkflag(flag,DDSD_HEIGHT,"DDSD_HEIGHT"); 1191 checkflag(flag,DDSD_LINEARSIZE,"DDSD_LINEARSIZE"); 1192 checkflag(flag,DDSD_LPSURFACE,"DDSD_LPSURFACE"); 1193 checkflag(flag,DDSD_MIPMAPCOUNT,"DDSD_MIPMAPCOUNT"); 1194 checkflag(flag,DDSD_PITCH,"DDSD_PITCH"); 1195 checkflag(flag,DDSD_PIXELFORMAT,"DDSD_PIXELFORMAT"); 1196 checkflag(flag,DDSD_REFRESHRATE,"DDSD_REFRESHRATE"); 1197 checkflag(flag,DDSD_WIDTH,"DDSD_WIDTH"); 1198 checkflag(flag,DDSD_ZBUFFERBITDEPTH,"DDSD_ZBUFFERBITDEPTH"); 1199 endcheckflag(flag,"puD3dTextureFormats->dwFlags"); 1200 1201 printf(" puD3dTextureFormats->dwHeight : 0x%08lx\n",(long)myTextureFormats->dwHeight); 1202 printf(" puD3dTextureFormats->dwWidth : 0x%08lx\n",(long)myTextureFormats->dwWidth); 1203 printf(" puD3dTextureFormats->dwLinearSize : 0x%08lx\n",(long)myTextureFormats->dwLinearSize); 1204 printf(" puD3dTextureFormats->dwBackBufferCount : 0x%08lx\n",(long)myTextureFormats->dwBackBufferCount); 1205 printf(" puD3dTextureFormats->dwZBufferBitDepth : 0x%08lx\n",(long)myTextureFormats->dwZBufferBitDepth); 1206 printf(" puD3dTextureFormats->dwAlphaBitDepth : 0x%08lx\n",(long)myTextureFormats->dwAlphaBitDepth); 1207 printf(" puD3dTextureFormats->dwReserved : 0x%08lx\n",(long)myTextureFormats->dwReserved); 1208 printf(" puD3dTextureFormats->lpSurface : 0x%08lx\n",(long)myTextureFormats->lpSurface); 1209 printf(" puD3dTextureFormats->ddckCKDestOverlay.dwColorSpaceLowValue : 0x%08lx\n",(long)myTextureFormats->ddckCKDestOverlay.dwColorSpaceLowValue); 1210 printf(" puD3dTextureFormats->ddckCKDestOverlay.dwColorSpaceHighValue : 0x%08lx\n",(long)myTextureFormats->ddckCKDestOverlay.dwColorSpaceHighValue); 1211 printf(" puD3dTextureFormats->ddckCKDestBlt.dwColorSpaceLowValue : 0x%08lx\n",(long)myTextureFormats->ddckCKDestBlt.dwColorSpaceLowValue); 1212 printf(" puD3dTextureFormats->ddckCKDestBlt : 0x%08lx\n",(long)myTextureFormats->ddckCKDestBlt.dwColorSpaceHighValue); 1213 printf(" puD3dTextureFormats->ddckCKSrcOverlay.dwColorSpaceLowValue : 0x%08lx\n",(long)myTextureFormats->ddckCKSrcOverlay.dwColorSpaceLowValue); 1214 printf(" puD3dTextureFormats->ddckCKSrcOverlay.dwColorSpaceHighValue : 0x%08lx\n",(long)myTextureFormats->ddckCKSrcOverlay.dwColorSpaceHighValue); 1215 printf(" puD3dTextureFormats->ddckCKSrcBlt.dwColorSpaceLowValue : 0x%08lx\n",(long)myTextureFormats->ddckCKSrcBlt.dwColorSpaceLowValue); 1216 printf(" puD3dTextureFormats->ddckCKSrcBlt.dwColorSpaceHighValue : 0x%08lx\n",(long)myTextureFormats->ddckCKSrcBlt.dwColorSpaceHighValue); 1217 1218 // DDPIXELFORMAT 1219 printf(" puD3dTextureFormats->ddpfPixelFormat.dwSize : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwSize); 1220 if (puD3dTextureFormats->ddpfPixelFormat.dwSize == sizeof(DDPIXELFORMAT)) 1221 { 1222 printf(" puD3dTextureFormats->ddpfPixelFormat.dwFlags : "); 1223 count = 0; 1224 flag = myTextureFormats->ddpfPixelFormat.dwFlags; 1225 checkflag(flag,DDPF_ALPHA,"DDPF_ALPHA"); 1226 checkflag(flag,DDPF_ALPHAPIXELS ,"DDPF_ALPHAPIXELS"); 1227 checkflag(flag,DDPF_ALPHAPREMULT,"DDPF_ALPHAPREMULT"); 1228 checkflag(flag,DDPF_BUMPLUMINANCE ,"DDPF_BUMPLUMINANCE"); 1229 checkflag(flag,DDPF_BUMPDUDV,"DDPF_BUMPDUDV"); 1230 checkflag(flag,DDPF_COMPRESSED,"DDPF_COMPRESSED"); 1231 checkflag(flag,DDPF_FOURCC,"DDPF_FOURCC"); 1232 checkflag(flag,DDPF_LUMINANCE,"DDPF_LUMINANCE"); 1233 checkflag(flag,DDPF_PALETTEINDEXED1,"DDPF_PALETTEINDEXED1"); 1234 checkflag(flag,DDPF_PALETTEINDEXED2,"DDPF_PALETTEINDEXED2"); 1235 checkflag(flag,DDPF_PALETTEINDEXED4,"DDPF_PALETTEINDEXED4"); 1236 checkflag(flag,DDPF_PALETTEINDEXED8,"DDPF_PALETTEINDEXED8"); 1237 checkflag(flag,DDPF_PALETTEINDEXEDTO8,"DDPF_PALETTEINDEXEDTO8"); 1238 checkflag(flag,DDPF_RGB ,"DDPF_RGB"); 1239 checkflag(flag,DDPF_RGBTOYUV,"DDPF_RGBTOYUV"); 1240 checkflag(flag,DDPF_STENCILBUFFER,"DDPF_STENCILBUFFER"); 1241 checkflag(flag,DDPF_YUV,"DDPF_YUV"); 1242 checkflag(flag,DDPF_ZBUFFER,"DDPF_ZBUFFER"); 1243 checkflag(flag,DDPF_ZPIXELS,"DDPF_ZPIXELS"); 1244 endcheckflag(flag,"puD3dTextureFormats->ddpfPixelFormat.dwFlags"); 1245 1246 1247 if (myTextureFormats->ddpfPixelFormat.dwFlags & DDPF_FOURCC) 1248 { 1249 printf(" puD3dTextureFormats->ddpfPixelFormat.dwFourCC : "); 1250 switch(myTextureFormats->ddpfPixelFormat.dwFourCC) 1251 { 1252 case MAKEFOURCC('A','U','R','2'): 1253 printf("AUR2\n"); 1254 break; 1255 1256 case MAKEFOURCC('A','U','R','A'): 1257 printf("AURA\n"); 1258 break; 1259 1260 case MAKEFOURCC('C','H','A','M'): 1261 printf("CHAM\n"); 1262 break; 1263 1264 case MAKEFOURCC('C','V','I','D'): 1265 printf("CVID\n"); 1266 break; 1267 1268 case MAKEFOURCC('D','X','T','1'): 1269 printf("DXT1\n"); 1270 break; 1271 1272 case MAKEFOURCC('D','X','T','2'): 1273 printf("DXT2\n"); 1274 break; 1275 1276 case MAKEFOURCC('D','X','T','3'): 1277 printf("DXT3\n"); 1278 break; 1279 1280 case MAKEFOURCC('D','X','T','4'): 1281 printf("DXT4\n"); 1282 break; 1283 1284 case MAKEFOURCC('D','X','T','5'): 1285 printf("DXT5\n"); 1286 break; 1287 1288 case MAKEFOURCC('F','V','F','1'): 1289 printf("FVF1\n"); 1290 break; 1291 1292 case MAKEFOURCC('I','F','0','9'): 1293 printf("IF09\n"); 1294 break; 1295 1296 case MAKEFOURCC('I','V','3','1'): 1297 printf("IV31\n"); 1298 break; 1299 1300 case MAKEFOURCC('J','P','E','G'): 1301 printf("JPEG\n"); 1302 break; 1303 1304 case MAKEFOURCC('M','J','P','G'): 1305 printf("MJPG\n"); 1306 break; 1307 1308 case MAKEFOURCC('M','R','L','E'): 1309 printf("MRLE\n"); 1310 break; 1311 1312 case MAKEFOURCC('M','S','V','C'): 1313 printf("MSVC\n"); 1314 break; 1315 1316 case MAKEFOURCC('P','H','M','O'): 1317 printf("PHMO\n"); 1318 break; 1319 1320 case MAKEFOURCC('R','T','2','1'): 1321 printf("RT21\n"); 1322 break; 1323 1324 case MAKEFOURCC('U','L','T','I'): 1325 printf("ULTI\n"); 1326 break; 1327 1328 case MAKEFOURCC('V','4','2','2'): 1329 printf("V422\n"); 1330 break; 1331 1332 case MAKEFOURCC('V','6','5','5'): 1333 printf("V655\n"); 1334 break; 1335 1336 case MAKEFOURCC('V','D','C','T'): 1337 printf("VDCT\n"); 1338 break; 1339 1340 case MAKEFOURCC('V','I','D','S'): 1341 printf("VIDS\n"); 1342 break; 1343 1344 case MAKEFOURCC('Y','U','9','2'): 1345 printf("YU92\n"); 1346 break; 1347 1348 case MAKEFOURCC('Y','U','V','8'): 1349 printf("YUV8\n"); 1350 break; 1351 1352 case MAKEFOURCC('Y','U','V','9'): 1353 printf("YUV9\n"); 1354 break; 1355 1356 case MAKEFOURCC('Y','U','Y','V'): 1357 printf("YUYV\n"); 1358 break; 1359 1360 case MAKEFOURCC('Z','P','E','G'): 1361 printf("ZPEG\n"); 1362 break; 1363 1364 default: 1365 printf("0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwFourCC); 1366 break; 1367 } 1368 } 1369 else 1370 { 1371 printf(" puD3dTextureFormats->ddpfPixelFormat.dwFourCC : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwFourCC); 1372 } 1373 printf(" puD3dTextureFormats->ddpfPixelFormat.dwRGBBitCount : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwRGBBitCount); 1374 printf(" puD3dTextureFormats->ddpfPixelFormat.dwRBitMask : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwRBitMask); 1375 printf(" puD3dTextureFormats->ddpfPixelFormat.dwGBitMask : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwGBitMask); 1376 printf(" puD3dTextureFormats->ddpfPixelFormat.dwBBitMask : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwBBitMask); 1377 printf(" puD3dTextureFormats->ddpfPixelFormat.dwRGBAlphaBitMask : 0x%08lx\n",(long)myTextureFormats->ddpfPixelFormat.dwRGBAlphaBitMask); 1378 } 1379 else 1380 { 1381 printf("none uD3dTextureFormats->ddpfPixelFormat from the driver 0x%08lx\n",myTextureFormats->ddpfPixelFormat.dwSize); 1382 } 1383 1384 printf(" puD3dTextureFormats->ddsCaps.dwCaps : "); 1385 count = 0; 1386 flag = myTextureFormats->ddsCaps.dwCaps; 1387 // not in use longer acoing msdn checkflag(flag,DDSCAPS_3D,"DDSCAPS_3D"); 1388 checkflag(flag,DDSCAPS_3DDEVICE ,"DDSCAPS_3DDEVICE"); 1389 checkflag(flag,DDSCAPS_ALLOCONLOAD,"DDSCAPS_ALLOCONLOAD "); 1390 checkflag(flag,DDSCAPS_ALPHA,"DDSCAPS_ALPHA"); 1391 checkflag(flag,DDSCAPS_BACKBUFFER,"DDSCAPS_BACKBUFFER"); 1392 checkflag(flag,DDSCAPS_FLIP,"DDSCAPS_FLIP"); 1393 checkflag(flag,DDSCAPS_FRONTBUFFER,"DDSCAPS_FRONTBUFFER"); 1394 checkflag(flag,DDSCAPS_HWCODEC,"DDSCAPS_HWCODEC"); 1395 checkflag(flag,DDSCAPS_LIVEVIDEO ,"DDSCAPS_LIVEVIDEO"); 1396 checkflag(flag,DDSCAPS_LOCALVIDMEM,"DDSCAPS_LOCALVIDMEM"); 1397 checkflag(flag,DDSCAPS_MIPMAP,"DDSCAPS_MIPMAP"); 1398 checkflag(flag,DDSCAPS_MODEX,"DDSCAPS_MODEX"); 1399 checkflag(flag,DDSCAPS_NONLOCALVIDMEM,"DDSCAPS_NONLOCALVIDMEM"); 1400 checkflag(flag,DDSCAPS_OFFSCREENPLAIN,"DDSCAPS_OFFSCREENPLAIN"); 1401 checkflag(flag,DDSCAPS_OPTIMIZED,"DDSCAPS_OPTIMIZED"); 1402 checkflag(flag,DDSCAPS_OVERLAY,"DDSCAPS_OVERLAY"); 1403 checkflag(flag,DDSCAPS_OWNDC,"DDSCAPS_OWNDC"); 1404 checkflag(flag,DDSCAPS_PALETTE,"DDSCAPS_PALETTE"); 1405 checkflag(flag,DDSCAPS_PRIMARYSURFACE ,"DDSCAPS_PRIMARYSURFACE"); 1406 checkflag(flag,DDSCAPS_STANDARDVGAMODE,"DDSCAPS_STANDARDVGAMODE"); 1407 checkflag(flag,DDSCAPS_SYSTEMMEMORY,"DDSCAPS_SYSTEMMEMORY"); 1408 checkflag(flag,DDSCAPS_TEXTURE,"DDSCAPS_TEXTURE"); 1409 checkflag(flag,DDSCAPS_VIDEOMEMORY,"DDSCAPS_VIDEOMEMORY"); 1410 checkflag(flag,DDSCAPS_VIDEOPORT,"DDSCAPS_VIDEOPORT"); 1411 checkflag(flag,DDSCAPS_VISIBLE,"DDSCAPS_VISIBLE"); 1412 checkflag(flag,DDSCAPS_WRITEONLY ,"DDSCAPS_WRITEONLY"); 1413 checkflag(flag,DDSCAPS_ZBUFFER,"DDSCAPS_ZBUFFER"); 1414 endcheckflag(flag,"puD3dTextureFormats->ddsCaps.dwCaps"); 1415 1416 1417 myTextureFormats = (DDSURFACEDESC *) (((DWORD) myTextureFormats) + sizeof(DDSURFACEDESC)); 1418 } 1419 else 1420 { 1421 printf("error this should not happen : puD3dTextureFormats from the driver 0x%08lx\n",myTextureFormats->dwSize); 1422 break; 1423 } 1424 } 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 } 1437