From: Shawn Hargreaves Newsgroups: comp.os.msdos.djgpp Subject: Re: Help with Vesa video mode list pointer Date: Mon, 21 Jul 1997 20:42:32 +0100 Organization: None Distribution: world Message-ID: <+uzsfDAou70zEwgg@talula.demon.co.uk> References: <33D24DEC DOT 76E6 AT unm DOT edu> NNTP-Posting-Host: talula.demon.co.uk MIME-Version: 1.0 Lines: 19 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk writes: >Hello, I can't seem to get the video mode list from the Info Block. I >know its a real mode pointer and I can get the OEM String successfully, >but the video mode list isn't right, heres the code: [snip] > while(mode != 0xffff) { > printf("%#x\n", mode); // debug > if(GetVideoModeInfo(mode)) { This is the trouble: some VESA drivers reuse a single block of memory for the get driver info and get mode info calls, so when you query the attributes of each individual mode it will clobber the global mode list. You should copy the entire list into your own address space before you call any other VESA functions... -- Shawn Hargreaves - shawn AT talula DOT demon DOT co DOT uk - http://www.talula.demon.co.uk/ Beauty is a French phonetic corruption of a short cloth neck ornament.