From: Shawn Hargreaves Newsgroups: comp.os.msdos.djgpp Subject: Re: [ALLEGRO] back to text mode problem Date: Fri, 14 Feb 1997 20:52:29 +0000 Organization: None Distribution: world Message-ID: References: <3fr+QVAauhAzEwiS AT talula DOT demon DOT co DOT uk> <5e1b1a$mp AT netserver DOT univ-lille1 DOT fr> NNTP-Posting-Host: talula.demon.co.uk MIME-Version: 1.0 Lines: 33 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp >when the program sets the resolution by using GFX_AUTODETECT it sometimes bugs, >I mean it bugs when you switch to 640x400 or higher, and it doesn't in any other >case. I found this by trying with ex22.exe which allows to select the gfx mode. > >I also tried to modify an existing bugging example: GFX_AUTODETECT => GFX_VESA2B >( for example ) and it perfectly works. > >All this doesn't happen with the previous version of Allegro. Ok. It sounds as if one of the SVGA chipset autodetection routines is doing something nasty to your card. Unfortunately this doesn't happen on my machine, so you're going to have to do some debugging for me :-) First, what model of graphics card do you have? When you run test.exe with autodetect 640x480 mode, which driver does it select? (this info is displayed in the middle of the screen). Then, you can find out which bit of code is causing the problem by gradually removing graphics drivers until it starts working. The list of drivers used for autodetection is stored in a table called gfx_driver_list[], which lives near the top of graphics.c. If you start removing drivers from this list, you should be able to locate the culprit. At a guess, it's likely to be GFX_PARADISE, GFX_TRIDENT, or GFX_VIDEO7, since these are the ones that changed since the last version (unless your card is one of those three, in which case things get more complicated :-) Thanks for your help (hey, I hope this isn't too much to ask...) /* * Shawn Hargreaves - shawn AT talula DOT demon DOT co DOT uk - http://www.talula.demon.co.uk/ * Ghoti: 'gh' as in 'enough', 'o' as in 'women', and 'ti' as in 'nation'. */