Among things I did the wined3d -> windows porting and of course experimented with ddraw on Windows. I never went to deep to see what opengl32.dll is actually doing since I don't want to be exposed to Microsoft dll internals (in this case opengl32) which would prevent me from doing other Wine hacking. WineD3D uses a very different design compared to Windows. There are various DirectDraw specific / DirectDraw-Win32 interaction APIs in parts of Windows which we don't have because we use a different design. The only way I think the issues might be fixable is to skip opengl32.dll but load an OpenGL ICD. Parallels did this as well in the time they used WineD3D and it worked fine.