http://bugs.winehq.org/show_bug.cgi?id=6812
------- Additional Comments From xerox_xerox2000(a)yahoo.co.uk 2007-07-08 16:51 -------
Just a side-note on this bug: I get this very same output like you in Doom3 retail:
trace:wgl:dump_PIXELFORMATDESCRIPTOR - dwFlags : PFD_DOUBLEBUFFER
PFD_DRAW_TO_WINDOW PFD_STEREO PFD_SUPPORT_OPENGL
trace:wgl:X11DRV_ChoosePixelFormat No matching mode was found returning 0
trace:wgl:X11DRV_DescribePixelFormat (0x17c1218,0,0,(nil))
err:wgl:ConvertPixelFormatWGLtoGLX invalid iPixelFormat 0
See http://bugs.winehq.org/show_bug.cgi?id=7015 to see that there is a bug in
wine's code how it handles the PFD_STEREO stereo flag. I dunno if this the
problem here too however. For now i use following stupid hack below to start
Doom3, maybe it changes something in your app too
diff --git a/dlls/winex11.drv/opengl.c b/dlls/winex11.drv/opengl.c
index ca3c50a..5653dd6 100644
--- a/dlls/winex11.drv/opengl.c
+++ b/dlls/winex11.drv/opengl.c
@@ -1057,7 +1057,7 @@ int X11DRV_ChoosePixelFormat(X11DRV_PDEVICE *physDev,
}
/* Stereo */
- pglXGetFBConfigAttrib(gdi_display, fmt->fbconfig, GLX_STEREO, &value); if
(value) dwFlags |= PFD_STEREO;
+ pglXGetFBConfigAttrib(gdi_display, fmt->fbconfig, GLX_STEREO, &value); if
(value) //dwFlags |= PFD_STEREO;
if (!(ppfd->dwFlags & PFD_STEREO_DONTCARE) && (ppfd->dwFlags & PFD_STEREO)) {
if (!(dwFlags & PFD_STEREO)) {
TRACE("stereo mismatch\n");
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=8985
------- Additional Comments From sciamano(a)iwcdesign.com 2007-07-08 16:46 -------
Having opened this bug report, I would like to confirm that the problem I
encountered was while using Photoshop inside a Wine Desktop.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=8985
------- Additional Comments From austinenglish(a)gmail.com 2007-07-08 16:37 -------
Sorry, misread it, thought it wasn't using virtual desktop.
Ignore my above comment, sorry for the noise.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=6183
------- Additional Comments From greg87(a)online.de 2007-07-08 16:23 -------
Well I can confirm that on a single core cpu, the quick race works. On a
multicore cpu the situation is much worse.
Also I can say, that those crashes can even occur with sound disabled.
Underground:
0009:Call KERNEL32.QueryPerformanceCounter(0033fe08) ret=0044495d
0009:Ret KERNEL32.QueryPerformanceCounter() retval=00000001 ret=0044495d
0009:Call KERNEL32.QueryPerformanceCounter(0033fe10) ret=00444acb
0009:Ret KERNEL32.QueryPerformanceCounter() retval=00000001 ret=00444acb
0009:Call KERNEL32.QueryPerformanceCounter(0033fe18) ret=00444b22
0009:Ret KERNEL32.QueryPerformanceCounter() retval=00000001 ret=00444b22
0009:Call KERNEL32.QueryPerformanceCounter(0033fdcc) ret=004420b5
0009:Ret KERNEL32.QueryPerformanceCounter() retval=00000001 ret=004420b5
0009:trace:seh:raise_exception code=c0000090 flags=0 addr=0x409623
0009:trace:seh:raise_exception eax=0033fd40 ebx=0077e3f0 ecx=0033fd20
edx=0033fd20 esi=0072f1e8 edi=00732260
0009:trace:seh:raise_exception ebp=0033fdc8 esp=0033fce4 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00210246
0009:trace:seh:call_stack_handlers calling handler at 0x6673b4 code=c0000090 flags=0
NFSMW:
000e:Call KERNEL32.GetTickCount() ret=7d97aac9
000e:Ret KERNEL32.GetTickCount() retval=00077f5d ret=7d97aac9
000e:trace:dsound:DSOUND_timer completed processing at 491357, duration = 0
000e:Call ntdll.RtlFreeHeap(00110000,00000000,00000000) ret=7d8f7080
000e:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7d8f7080
000e:Call KERNEL32.GetTickCount() ret=7d8f6f46
000e:Ret KERNEL32.GetTickCount() retval=00077f5d ret=7d8f6f46
0009:trace:seh:raise_exception code=c0000090 flags=0 addr=0x7e4c78af
0009:trace:seh:raise_exception eax=00000c72 ebx=00000207 ecx=00000001
edx=00000000 esi=76454f70 edi=00000000
0009:trace:seh:raise_exception ebp=76454fe0 esp=0033da94 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010202
0009:trace:seh:call_stack_handlers calling handler at 0x7cd5e4 code=c0000090 flags=0
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=3319
------- Additional Comments From the3dfxdude(a)gmail.com 2007-07-08 16:10 -------
One, are you running in 15bpp mode? And, two, why not call GetDeviceCaps
directly? After all, that is what the original report is talking about, right?
Internally to winex11, it just gives what "screen_depth" is, which is read
directly from X, and it should be 15 when you are running 15bpp is my guess. I
no longer use a video device that supports 15bpp, so I can't test.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=3319
------- Additional Comments From T.Bonner(a)freesurf.ch 2007-07-08 15:43 -------
The bug seemed fixed, I had no problems with it (trying out a later wine
version). The problem occured on a Permedia II graphics card, just testing out
the high-color mode. For interest I attach a windows function to detect 15 or 16
Bits:
/* 565 or 555? */
int DisplayBits (void)
{
HDC hdcDisplay;
HBITMAP hbm;
struct MyBitmapInfo
{
BITMAPINFOHEADER bi;
union
{
RGBQUAD colors[256];
DWORD fields[256];
} un;
} video;
ZeroMemory(&video, sizeof(video));
video.bi.biSize = sizeof(video.bi);
video.bi.biBitCount = 0;
hdcDisplay = GetDC(NULL);
hbm = CreateCompatibleBitmap(hdcDisplay,1,1);
/* twice!!! (on 16-HiColor needed! otherwise erroneously 555 detected!) */
GetDIBits(hdcDisplay,hbm,0,1,NULL,(BITMAPINFO *)&video,DIB_RGB_COLORS);
GetDIBits(hdcDisplay,hbm,0,1,NULL,(BITMAPINFO *)&video,DIB_RGB_COLORS);
DeleteObject(hbm);
ReleaseDC(NULL,hdcDisplay);
if (video.bi.biCompression != BI_BITFIELDS) {
/* Either BI_RGB or BI_RLE_something
* .... or perhaps (!!) something else.
* Theoretically biCompression might be
* mmioFourCC('c','v','i','d') but I doubt it.
*/
if (video.bi.biBitCount==16 && video.bi.biCompression == BI_RGB) {
return 15; /* That is, 555*/
} else {
return video.bi.biBitCount;
}
} else {
DWORD allmasks =
video.un.fields[0] |
video.un.fields[1] |
video.un.fields[2];
int k=0;
while (allmasks) {
if (allmasks&1) k++;
allmasks /= 2;
}
return k;
}
} /*DisplayBits*/
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=8985
------- Additional Comments From mikolaj.zalewski(a)gmail.com 2007-07-08 15:36 -------
When using the virtual desktop we don't need to worry about the window manager,
so it should be a different thing than bug #3997. With a virtual desktop this
bug is easy to reproduce.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.winehq.org/show_bug.cgi?id=6812
------- Additional Comments From andreasplesch(a)netscape.net 2007-07-08 15:06 -------
Ok, I patched opengl.c as instructed and now get a crash. Here are the last
couple lines of the +wgl,+opengl debug output.
trace:wgl:wglGetCurrentContext returning 0x17cecd8
trace:wgl:wglMakeCurrent hdc: (0x548c), hglrc: (0x641dd90)
trace:wgl:X11DRV_wglMakeCurrent (0x548c,0x641dd90)
trace:wgl:X11DRV_wglMakeCurrent make current for dis 0x7c047a88, drawable
0x3c0009a, ctx 0x7c1b7d3c
X Error of failed request: GLXBadDrawable
Major opcode of failed request: 129 (GLX)
Minor opcode of failed request: 5 (X_GLXMakeCurrent)
Serial number of failed request: 47965
Current serial number in output stream: 47965
I was aware of the nvidia module issue and have updated it.
Below the complete debug output, compressed. Does that help ?
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.