VOGONS


Vesa Support

Topic actions

First post, by Ikrananka

User metadata
Rank Newbie
Rank
Newbie

I'm in the process of getting my old DOS Stalingrad war game (by Avalon Hill) up and running. It works fine in a standard Windows DOS box (obviously with no sound) and I have managed to get it working using VDMSound 2.0.4 (Update 2) and Launcher 1.0.1.1 with sound working great. However, I can only get the game to run in a video resolution of 640 x 480. A setup program allows you to set the program to run at higher resolutions. Whenever I set it to a higher resolution and then run the game, my monitor just goes to sleep (i.e. gets no video signal).

Now, the game uses VESA. However, if I activate basic VESA support in Launcher then the sound goes all choppy. If I turn off basic VESA support then the sound is perfect and the games runs at 640 x 480 no problems. I don't understand why the game works with VESA support turned off??? Anyway - not a problem.

I believe that I cannot run the game at higher resolutions because I am using an NVidia GeForce4 Ti4200 vdieo card. Is this correct and the most likely cause of my problem? Is there any way around this problem or are the video modes restricted by the video cards VESA support?

Thanks for any feedback.

Windows XP (latest SP)
Gainard NVidia GeForce4 Ti4200

Reply 1 of 12, by HunterZ

User metadata
Rank l33t++
Rank
l33t++

The "enable basic VESA support" option is misleading (but apparently vlad refuses to change it): what it really does it starts the game full-screen instead of in a window.

Myself and others have also experienced more choppy sound with this option, so I avoid using it unless absolutely necessary.

Reply 2 of 12, by Nicht Sehr Gut

User metadata
Rank l33t
Rank
l33t

Originally posted by Ikrananka I'm in the process of getting my old DOS Stalingrad war game (by Avalon Hill) up and running. However, I can only get the game to run in a video resolution of 640 x 480.

The source of the resolution problem is your GeForce4. IIRC, the GF4 can't handle VESA higher than 640x480 on XP. BTW, is this with or without NOLFB.COM?

Is there any way around this problem or are the video modes restricted by the video cards VESA support?

Note likely. About the only way around that is to run it inside a full-fledged PC emulator like "Virtual PC" or replace your card with one that has better VESA support in XP.

Reply 3 of 12, by Ikrananka

User metadata
Rank Newbie
Rank
Newbie

Originally posted by HunterZ The "enable basic VESA support" option is misleading (but apparently vlad refuses to change it): what it really does it starts the game full-screen instead of in a window.

Wow - that is misleading. I have quite a number of games that use VESA and I assumed that I had to have this option turned on for them to play.

Myself and others have also experienced more choppy sound with this option, so I avoid using it unless absolutely necessary.

I too have experienced choppy sound. I have also experienced seemingly random changes in the sound playback speed with the sounds coming out like a drunk telling a story on a Saturday night.
I have now turned off this option on all of my VESA games, and the sound is now perfect. I can also play them all at 640 x 480 resolution. Excellent.

Originally posted by Nicht Sehr Gut The source of the resolution problem is your GeForce4. IIRC, the GF4 can't handle VESA higher than 640x480 on XP. BTW, is this with or without NOLFB.COM?

This is without NOLFB.COM. What does NOLFB.COM do and when should I try and use it?

.....or replace your card with one that has better VESA support in XP.

Do video card manufacturers even make any statements about VESA support anymore? They're seem so wrapped up in the latest graphics enhancements. I searched both the Gainward and NVidia websites and found NO references at all to VESA!!!

Continuing on the subject of VESA support. Is it likely that DosBox would be able to provide me with higher resolutions once VESA support is added?

Reply 4 of 12, by MajorGrubert

User metadata
Rank Member
Rank
Member
Ikrananka wrote:

Do video card manufacturers even make any statements about VESA support anymore? They're seem so wrapped up in the latest graphics enhancements. I searched both the Gainward and NVidia websites and found NO references at all to VESA!!!

Modern cards usually have VESA 3.0 support in their BIOS, but you can only use it in plain DOS and (sometimes) Windows 9x. Since 2000 and XP limit the low level access from DOS programs to the video card registers and memory, the manufacturers have little interest in advertise support for hi-res, hi-color VESA modes that no you cannot use under Windows.

Regards,

Major Grubert

Athlon 64 3200+/Asus K8V-X/1GB DDR400/GeForce FX 5700/SB Live! 5.1

Reply 5 of 12, by HunterZ

User metadata
Rank l33t++
Rank
l33t++
Ikrananka wrote:

This is without NOLFB.COM. What does NOLFB.COM do and when should I try and use it?

NOLFB prevents games from seeing a feature of video cards that Windows allows games to see but prevents them from using. The feature is a linear frame buffer or LFB, which games can use to access the memory on the video card for faster output. By preventing the games from seeing LFB support, they will often fall back on older, less efficient ways of accessing video memory, but at least it will make them run (and often not too badly since computers and video cards are many times faster than they were back then).

You should use it when a game that requires VESA support won't run or when it crashes/freezes when trying to switch to a VESA mode.

Last edited by HunterZ on 2003-05-19, 15:32. Edited 1 time in total.

Reply 6 of 12, by Ikrananka

User metadata
Rank Newbie
Rank
Newbie

Many thanks for the feedback guys. I am now a little wiser. Most appreciate your help.

Reply 7 of 12, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Continuing on the subject of VESA support. Is it likely that DosBox would be able to provide me with higher resolutions once VESA support is added?

yeps. dosbox uses directX to show it graphics as long as your vidcard supports that dosbox can create any resolution needed.

At the moment dosbox doesn't support vesa yet. But there is being worked on.

Peter

Water flows down the stream
How to ask questions the smart way!

Reply 8 of 12, by Zorbid

User metadata
Rank Member
Rank
Member
MajorGrubert wrote:

Modern cards usually have VESA 3.0 support in their BIOS, but you can only use it in plain DOS and (sometimes) Windows 9x. Since 2000 and XP limit the low level access from DOS programs to the video card registers and memory, the manufacturers have little interest in advertise support for hi-res, hi-color VESA modes that no you cannot use under Windows.

Regards,

Wouldn't it be theorically possible to write a VESA driver for Win2k/XP (it could be generic, since AFAIK, VESA is implemented in the same way in all video cards), and create a virtualiser (a bit �_ la VDMSound, but for the graphics) that sends the VESA stuff from the NTVDM to the driver...

Reply 9 of 12, by Schadenfreude

User metadata
Rank Member
Rank
Member

That has been proposed many many times!

No one has actually ever done anything yet though!

Search the forums!

Reply 10 of 12, by MajorGrubert

User metadata
Rank Member
Rank
Member
Zorbid wrote:

Wouldn't it be theorically possible to write a VESA driver for Win2k/XP (it could be generic, since AFAIK, VESA is implemented in the same way in all video cards), and create a virtualiser (a bit ?_ la VDMSound, but for the graphics) that sends the VESA stuff from the NTVDM to the driver...

It is possible to write a SVGA driver with VESA support, but maybe not a generic one. Remeber that VESA extensions is just an API, a standard way to call your video card BIOS and ask for a specific video mode. The BIOS call are always the same, but VESA does not specifies how the card will configure itself in order to switch modes, what depends on the hardware details os each card. This means that such driver must also know the low level details of the card so it knows how to save and restore the card state when you switch between full screen and windowed modes.

If you want to read a little more about this subject, take a look at these threads:

showthread.php?s=&threadid=1428&perpage=20&pa … ber=2#post13920
showthread.php?s=&threadid=1466

Regards,

Major Grubert

Athlon 64 3200+/Asus K8V-X/1GB DDR400/GeForce FX 5700/SB Live! 5.1

Reply 11 of 12, by Chris

User metadata
Rank Newbie
Rank
Newbie

This discussion about vesa made me remember some old days, and I even found a little program I wrote years ago. I was returning information about a given vesa mode. I've tested it under win2000 for fun, and I was expecting a "vesa not supported or mode not supported" message while not in full screen, but it gave a very strange result :

Full Sreen :

C:\DOCUME~1\ADMINI~1\MYDOCU~1\CHRIS\ASM>gvi
Vesa Mode : 112
Window granularity : 64 Ko
Window size : 64 Ko
Window start segment : A000
Pointer to bank switching functions : C000:AD7E
Resolution : 640x480
Bits per pixel : 32
Number of banks : 1
Bank size : 0 Ko

Windowed :

C:\DOCUME~1\ADMINI~1\MYDOCU~1\CHRIS\ASM>gvi
Vesa Mode : 112
Window granularity : 3378 Ko
Window size : 0 Ko
Window start segment : 0000
Pointer to bank switching functions : 0000:0000
Resolution : 0x0
Bits per pixel : 0
Number of banks : 0
Bank size : 0 Ko

Reply 12 of 12, by Chris

User metadata
Rank Newbie
Rank
Newbie

Nevermind, I was not handling the return value of the function correctly, in fact it returns 'function call failed' when not run in full screen
I got to dig deep in my mind to remember those stuff, but it's very interesting