Changeset 35319 in vbox for trunk/src/VBox/Additions/WINNT/Graphics/Display
- Timestamp:
- Dec 24, 2010 3:42:36 PM (14 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Display
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Display/Makefile.kmk
r34987 r35319 119 119 DLLS.amd64 += VBoxDispD3D-x86 120 120 VBoxDispD3D-x86_EXTENDS = VBoxDispD3D 121 VBoxDispD3D-x86_NAME = VBoxDispD3D32122 121 VBoxDispD3D-x86_BLD_TRG_ARCH = x86 123 122 VBoxDispD3D-x86_LIBS = \ 124 123 $(VBOX_LIB_IPRT_GUEST_R3_X86) \ 125 124 $(VBOX_LIB_VBGL_R3_X86) 126 125 VBoxDispD3D-x86_DEFS = $(VBoxDispD3D_DEFS) VBOX_WDDM_WOW64 127 126 ifdef VBOX_WITH_CRHGSMI 128 127 # 129 # VBoxCrHgsmi 128 # VBoxCrHgsmi - Chromium HGSMI API library 130 129 # 131 130 LIBRARIES += VBoxCrHgsmi … … 136 135 wddm/VBoxUhgsmiKmt.cpp 137 136 VBoxCrHgsmi_SDKS = WINDDKWLH 137 138 LIBRARIES.amd64 += VBoxCrHgsmi-x86 139 VBoxCrHgsmi-x86_EXTENDS = VBoxCrHgsmi 140 VBoxCrHgsmi-x86_BLD_TRG_ARCH = x86 141 VBoxCrHgsmi-x86_DEFS = $(VBoxCrHgsmi_DEFS) VBOX_WDDM_WOW64 138 142 endif 139 143 endif -
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.cpp
r35121 r35319 5522 5522 pAllocInfo->enmType = VBOXWDDM_ALLOC_TYPE_UMD_RC_GENERIC; 5523 5523 pAllocInfo->fFlags = pResource->Flags; 5524 pAllocInfo->hSharedHandle = pAllocation->hSharedHandle;5524 pAllocInfo->hSharedHandle = (uint64_t)pAllocation->hSharedHandle; 5525 5525 pAllocInfo->SurfDesc.width = pSurf->Width; 5526 5526 pAllocInfo->SurfDesc.height = pSurf->Height; … … 7484 7484 pAllocation->hAllocation = pOAI->hAllocation; 7485 7485 pAllocation->enmType = pAllocInfo->enmType; 7486 pAllocation->hSharedHandle = pAllocInfo->hSharedHandle;7486 pAllocation->hSharedHandle = (HANDLE)pAllocInfo->hSharedHandle; 7487 7487 pAllocation->SurfDesc = pAllocInfo->SurfDesc; 7488 7488 Assert(pAllocation->hSharedHandle); -
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.def
r33116 r35319 15 15 ; */ 16 16 17 LIBRARY VBoxDispD3D18 19 17 EXPORTS 20 18 OpenAdapter -
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.rc
r34987 r35319 49 49 VALUE "InternalName", "VBoxDispD3D\0" 50 50 VALUE "LegalCopyright", VBOX_RC_LEGAL_COPYRIGHT 51 #ifdef VBOX_WDDM_WOW64 52 VALUE "OriginalFilename", "VBoxDispD3D-x86.dll\0" 53 #else 51 54 VALUE "OriginalFilename", "VBoxDispD3D.dll\0" 55 #endif 52 56 VALUE "ProductName", VBOX_PRODUCT " Guest Additions\0" 53 57 VALUE "ProductVersion", VBOX_VERSION_MAJOR "." VBOX_VERSION_MINOR "." VBOX_VERSION_BUILD ".r" VBOX_SVN_REV "\0" -
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3DIf.cpp
r33836 r35319 27 27 HRESULT VBoxDispD3DOpen(VBOXDISPD3D *pD3D) 28 28 { 29 #ifdef VBOX_WDDM_WOW64 30 pD3D->hD3DLib = LoadLibraryW(L"VBoxD3D9wddm-x86.dll"); 31 #else 29 32 pD3D->hD3DLib = LoadLibraryW(L"VBoxD3D9wddm.dll"); 33 #endif 30 34 Assert(pD3D->hD3DLib); 31 35 if (pD3D->hD3DLib) -
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxUhgsmiKmt.cpp
r34987 r35319 143 143 Buf.AllocInfo.enmType = VBOXWDDM_ALLOC_TYPE_UMD_HGSMI_BUFFER; 144 144 Buf.AllocInfo.cbBuffer = cbBuf; 145 Buf.AllocInfo.hSynch = hSynch;145 Buf.AllocInfo.hSynch = (uint64_t)hSynch; 146 146 Buf.AllocInfo.enmSynchType = enmSynchType; 147 147 … … 226 226 { 227 227 PVBOXUHGSMI_BUFFER_PRIVATE_KMT_ESC pBuffer = VBOXUHGSMIKMTESC_GET_BUFFER(pBuf); 228 *pvLock = pBuffer->Alloc.pvData + offLock;228 *pvLock = (void*)(pBuffer->Alloc.pvData + offLock); 229 229 return VINF_SUCCESS; 230 230 } … … 306 306 Buf.AllocInfo.EscapeHdr.escapeCode = VBOXESC_UHGSMI_ALLOCATE; 307 307 Buf.AllocInfo.Alloc.cbData = cbBuf; 308 Buf.AllocInfo.Alloc.hSynch = hSynch;308 Buf.AllocInfo.Alloc.hSynch = (uint64_t)hSynch; 309 309 Buf.AllocInfo.Alloc.enmSynchType = enmSynchType; 310 310 … … 612 612 { 613 613 DWORD winEr = GetLastError(); 614 #ifdef DEBUG_misha 614 615 Assert(0); 616 #endif 617 Log((__FUNCTION__": EnumDisplayDevices failed, winEr (%d)\n", winEr)); 615 618 hr = HRESULT_FROM_WIN32(winEr); 616 619 Assert(FAILED(hr)); -
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/dbg/VBoxVideoWinDbg.cpp
r31885 r35319 99 99 ULONG64 u64Height; 100 100 ULONG64 u64Bpp = 32; 101 ULONG64 u64NumColors = 3; 101 102 ULONG64 u64Pitch; 102 103 ULONG64 u64DefaultPitch; … … 114 115 if (!GetExpressionEx(pExpr, &u64Height, &pExpr)) { dprintf("error evaluating height\n"); return; } 115 116 if (!u64Height) { dprintf("height value can not be NULL\n"); return; } 117 118 if (pExpr && GetExpressionEx(pExpr, &u64NumColors, &pExpr)) 119 { 120 if (!u64NumColors) { dprintf("Num Colors value can not be NULL\n"); return; } 121 } 116 122 117 123 if (pExpr && GetExpressionEx(pExpr, &u64Bpp, &pExpr)) … … 180 186 if (uRc) 181 187 { 188 switch (u64Bpp) 189 { 190 case 32: 191 case 24: 192 case 16: 193 if (u64NumColors != 3) 194 { 195 dprintf("WARNING: unsupported number colors: (%d)\n", u64NumColors); 196 } 197 break; 198 case 8: 199 { 200 if (u64NumColors == 1) 201 { 202 ULONG64 cbSize32 = u64DefaultPitch * 4 * u64Height; 203 PVOID pvBuf32 = malloc(cbSize32); 204 if (pvBuf32) 205 { 206 byte* pByteBuf32 = (byte*)pvBuf32; 207 byte* pByteBuf = (byte*)pvBuf; 208 memset(pvBuf32, 0, cbSize32); 209 for (UINT i = 0; i < u64Height; ++i) 210 { 211 for (UINT j = 0; j < u64Width; ++j) 212 { 213 pByteBuf32[0] = pByteBuf[0]; 214 pByteBuf32[1] = pByteBuf[0]; 215 pByteBuf32[2] = pByteBuf[0]; 216 pByteBuf32 += 4; 217 pByteBuf += 1; 218 } 219 } 220 free(pvBuf); 221 pvBuf = pvBuf32; 222 u64DefaultPitch *= 4; 223 u64Bpp *= 4; 224 } 225 } 226 else 227 { 228 dprintf("WARNING: unsupported number colors: (%d)\n", u64NumColors); 229 } 230 } 231 break; 232 } 182 233 BITMAP Bmp = {0}; 183 234 HBITMAP hBmp;
Note:
See TracChangeset
for help on using the changeset viewer.