Hello, I have come across a D3D7 call where I need some help with: IDirect3DDevice::DrawIndexedPrimitiveVB. The prototype is DrawIndexedPrimitiveVB(LPDIRECT3DDEVICE7 iface, D3DPRIMITIVETYPE d3dptPrimitiveType, LPDIRECT3DVERTEXBUFFER7 lpD3DVertexBuf, DWORD dwStartVertex, DWORD dwNumVertices, LPWORD lpwIndices, DWORD dwIndexCount, DWORD dwFlags)
I can't find any usable information about it on MSDN, and there's no equivalent in other D3D versions and WineD3D.
Is there an easy translation to IWineD3DDevice::DrawIndexedPrimitive orIWineD3DDevice::DrawIndexedPrimitiveUP, or do I have to add this call to WineD3D(based on the old implementation in D3D7 perhaps?).
Two other problems I am facing at the moment are a DIB crash in ddraw(also seen in the original D3D7 implementation) and a crash in the OpenGL libs with both fglrx and nvidia. Has anyone seen such GL crashes too? The crash dump is:
First chance exception: page fault on read access to 0x00039240 in 32-bit code (0x7e7fee5f). In 32 bit mode. fixme:dbghelp:elf_load_debug_info_from_map Alpha-support for Dwarf2 information for atiogl_a_dri.so Register dump: CS:0073 SS:007b DS:007b ES:007b FS:003b GS:0033 EIP:7e7fee5f ESP:5bc0f014 EBP:5bc0f16c EFLAGS:00210202( - 00 - -RI1) EAX:00000000 EBX:00000000 ECX:00000001 EDX:0000011c ESI:00000000 EDI:00000300 Stack dump: 0x5bc0f014: 7c228800 00000000 5bc0f0bc 7e88e588 0x5bc0f024: 7c228800 5aaa5380 5bc0f03c 00000001 0x5bc0f034: 00000004 00000000 00000000 00000000 0x5bc0f044: 7c228800 00000003 5bc0f09c 00228800 0x5bc0f054: 5aaa5300 5aaa54f8 5bc0f07c 7c228800 0x5bc0f064: 00000000 7c228800 5bc0f08c 7e87d07e Backtrace: =>1 0x7e7fee5f in atiogl_a_dri.so (+0x2cde5f) (0x5bc0f16c) 2 0x7e7fefb0 in atiogl_a_dri.so (+0x2cdfb0) (0x5bc0f2cc) 3 0x7dc2d182 IWineD3DSurfaceImpl_LockRect+0xad2(iface=0x790eaf48, pLockedRect=0x5bc0f374, pRect=0x0, Flags=0x0) [/wine/wine/dlls/wined3d/surface.c:561] in wined3d (0x5bc0f33c) 4 0x7dcc365d Main_DirectDrawSurface_Lock+0x40d(iface=0x7fe55570, prect=0x0, pDDSD=0x5bc0f3a8, flags=0x0, h=0x0) [/wine/wine/dlls/ddraw/surface_main.c:1155] in ddraw (0x5bc0f388) 5 0x7dcc2893 Main_DirectDrawSurface_GetDC+0x73(iface=0x7fe55570, phDC=0x5c308154) [/wine/wine/dlls/ddraw/surface_main.c:926] in ddraw (0x5bc0f434) fixme:dbghelp:sffip_cb NIY on 'C:\SSSI Development\Low-Level Engine\Graphics Engine\DX7 Display Plug-ins\DX7HRDisplay\Release\DX7HRDisplay.pdb' 6 0x7dcee4a7 ?DetachSurface@DX7Surface@@UAEJK@Z+0x210 in dx7hrdisplay (0x5bc0f488) fixme:dbghelp:sffip_cb NIY on 'C:\SSSI Development\Low-Level Engine\Main\Release\Low-Level Engine.pdb' 7 0x7fa6d17e ?DrawBackground@UIForm@@MAEJABVGERectangle@@@Z+0x76f in low-level engine (0x5bc0f4d8) 8 0x7fa78711 ??0UIStretchedTiledBackground@@QAE@KABVUString@@ABUGETextureDescription@@ABVGERectangle@@MMABVUILayoutUtility@@PAVUIForm@@K_N@Z+0xdf8 in low-level engine (0x5bc0f534) 9 0x7fa6d38f ?DrawBackground@UIForm@@MAEJABVGERectangle@@@Z+0x980 in low-level engine (0x5bc0f58c) err:dbghelp_msc:codeview_process_info Unknown CODEVIEW signature EEE6C6D5 in module empire earth.exe.norepe 10 0x00507104 in empire earth.exe.norepe (+0x107104) (0x00000000) 0x7e7fee5f: movl 0x39240(%eax),%edx
I have seen a simmilar problem in old D3D7 and I've decided that it's not worth fixing and started to rewrite D3D7 with WineD3D.
Stefan