ATI driver crash in fullscreen..

I get a blue screen (Crash) (BAD POOL CALL) when issuing a

ChangeDisplaySettings(m_saveMode,CDS_RESET);

with m_saveMode set to my startup screen mode (set before the fullscreen)

in a WM_KILLFOCUS message ? I get it on the latest ATI public driver on the ATI download page. I have a Radeon 9800XT on Win2000 SP4.

To reset the screenmode to the one set before my app changed it, I always use this :

ChangeDisplaySettings(devmode(nil^), 0);

(note : It’s Delphi) and I haven’t had a single problem on my Radeon9700 (tested with all drivers since Cat3.4).

I’m also having problems resetting the device settings with cat 3.9 (not sure about other versions), but only when switching back from certain resolutions. I don’t get a blue screen but the monitor switches off and I need to reset.

It crashes with the same arguments as you use too (Null,0). I use VBOs. Can this be the cause ?

That’s strange. I just tested with my own VBO-Example and let it switch to fullscreen (different res than desktop) and at exiting I let it switch back as said above. No probs and no BSOD.

With me the problem is much worse than I thought.

The crash actually happens after a second call to ChangeDisplaySettings, regardless of the parameters.

VBO has nothing to do with it. It happens even if I don’t have any kind of vertex array.

If I use a software OGL implementation, the monitor doesn’t switch off but I get an access violation inbetween WM_ERASEBKGND and WM_PAINT, and the app terminates.

I tried making the simplest OGL app in the world (clear + swapbuffers) and that has no problems.

I tried another demo (from the net) I had lying around that goes full-screen and that also crashes.

With an NVidia board in the same machine everything works sweet.

I’m getting really sick of resetting my PC.

Ok. Then you have simillar behaviour like me. It doesn’t matter what kind of arguments I have either.

have you made some kind of ChangeDisplaySettings(m_devMode,CDS_RESET);
ChangeDisplaySettings(m_devMode,CDS_FULLSCREEN);

with a CDS_RESET as the first command ?

Is this an all-in-wonder card? If so, ATI has a HOTFIX for OpenGL and Catalyst 3.9 drivers. You might want to download it and install, until a fixed version is released.

Not sure what you mean. Do you mean reset before setting a new mode?

Anyway, I give up. I’m really sick of this. I got the SW OGl working by completely destroying the window before the display change and creating a new one after it but there’s just nothing I can do to prevent my PC from hanging with the ATI HW OGL.