VESA 2.0 Under DOS

pcfreak324
Posts: 50
Joined: Mon Jun 01, 2020 12:14 pm
Has thanked: 3 times
Been thanked: 12 times

VESA 2.0 Under DOS

Unread post by pcfreak324 »

Some games like Duke Nukem 3D and FastDoom have VESA 2.0 support. With VESA 2.0 the graphics card can be better utilized thus increasing the overall performance in the games.

To use VESA 2.0 a software driver is necassary. I tried several builds of UniVBE but with no success. Builds prior to 5.1 do not support VESA 2.0. Newer builds had severe graphical glitches, wouldn't install correctly or were unable to corectly detect the graphics card.

Is there anyone who had success with running games under DOS with VESA 2.0? Which driver and version did you use?

flynnsbit
Top Contributor
Posts: 550
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 179 times
Been thanked: 307 times
Contact:

Re: VESA 2.0 Under DOS

Unread post by flynnsbit »

No, both of those use LFB (Linear Frame Buffer) and that is broken in the core in DOS. The only thing that works for is Sorg's custom video driver for windows.

VESA does work without LFB on Banked only for
320x240x8 Banked Only (LFB Fails)
400x300x8 Banked Only (LFB Fails)
640x400x8 Banked Only (LFB Fails)
640x480x8 Banked Only (LFB Fails)
800x600x4bit Banked

There are other general graphics issues with scrolling or black screens which the Trident VGA Bios solves for but breaks other things.

SDD53A is best I think, and you can force the -c2 to the ET4000, and set the memory to 2048.
SDD53 also works
SDDi653-D will load if you force the ET4000 driver but it is detected as an ET6000 which does have LFB support and can be enabled but also fails with either a flashing video of the logo.sys screen (AO486 logo or Win98 logo that is corrupt and flashing like it is stuck in the frame buffer)

Basically the answer is no.
jordi
Posts: 225
Joined: Thu Jun 11, 2020 10:11 am
Has thanked: 87 times
Been thanked: 71 times

Re: VESA 2.0 Under DOS

Unread post by jordi »

It would be the first thing that we should have in this core: improve VGA. It's annoying for some platformers.
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

I've made some progress on getting VBE 2.0 and 3.0 working, including with linear framebuffer support. These configurations use only 4MB of the available 8MB space, because anything above that boundary fails the "flicker" test with paged graphics. I haven't yet found a combination which works well for all resolutions, so here are two options depending on what you're trying to run:

For low resolutions like 320x200x8:
Version: SDD653-D
Commands:

Code: Select all

uvconfig -s10 -c13 -m4096 -l248 -d9 -k54
config -s10 -c13 -m4096 -l248 -d9 -k54
univbe
For higher resolutions:
Version: SDD53A
Commands:

Code: Select all

uvconfig -m4096 -l248 -d9 -r8
univbe

I successfully got FastDOOM to work in the banked and linear VBE modes using the "low resolution" options above (i.e. FDOOMVBR.EXE and FDOOMVBD.EXE).

I haven't yet found any other games I can make work through this (i.e. I haven't yet found anything where a lack of VBE 2.x/3.x is the only problem...)
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

I've been looking further, and I've now found a solution which works for all resolutions and has passed every test I've thrown at it.

Use version: SDD653-D
Commands:

Code: Select all

uvconfig -s10 -c5 -m4096 -l248 -d9 -k54 -b
config -s10 -c5 -m4096 -l248 -d9 -k54 -b
univbe
breiztiger
Top Contributor
Posts: 427
Joined: Sun May 24, 2020 7:17 pm
Has thanked: 23 times
Been thanked: 93 times

Re: VESA 2.0 Under DOS

Unread post by breiztiger »

good job !!!
CPC-Power Staff
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

Thanks very much. I've also now confirmed that the VESA 2.0 modes of Duke3D work with these settings. If anyone else is aware of other games which may now work with VBE 2.0 support, it would be great to test these too.
flynnsbit
Top Contributor
Posts: 550
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 179 times
Been thanked: 307 times
Contact:

Re: VESA 2.0 Under DOS

Unread post by flynnsbit »

alexoughton wrote: Wed Mar 16, 2022 8:21 pm Thanks very much. I've also now confirmed that the VESA 2.0 modes of Duke3D work with these settings. If anyone else is aware of other games which may now work with VBE 2.0 support, it would be great to test these too.
notice any speed differences? when in game you can type "dnrate" and it will show the frame rate. Some are going to be at the performance ceiling of the core so they won't run anyway.

I think this is a complete list of LFB VESA 2 games:
Age of Rifles
Archimedean Dynasty
Blood
Constructor
Death Rally

Duke Nukem 3D
Extreme Paintbrawl
Fantasy General
Grand Theft Auto (Required for 24bit, 8 bit works fine)
Mechwarrior 2
Mechwarrior 2 Mercenaries
Megarace 2
Mortal Kombat Trilogy
NAM/Napalm
Need for Speed
Nemesis: The Wizardry Adventure
Powerslave
Redneck Rampage
Redneck Rampage Rides Again
Redneck Deer Huntin'
Shadow Warrior
Syndicate Wars
System Shock
TekWar
TIE Fighter
Toonstruck
Versailles 1685
Witchhaven
Witchhaven 2: Blood Vengeance
WWII GI
Neocaron
Posts: 341
Joined: Sun Sep 27, 2020 10:16 am
Has thanked: 187 times
Been thanked: 66 times

Re: VESA 2.0 Under DOS

Unread post by Neocaron »

flynnsbit wrote: Wed Mar 16, 2022 10:00 pm
alexoughton wrote: Wed Mar 16, 2022 8:21 pm Thanks very much. I've also now confirmed that the VESA 2.0 modes of Duke3D work with these settings. If anyone else is aware of other games which may now work with VBE 2.0 support, it would be great to test these too.
notice any speed differences? when in game you can type "dnrate" and it will show the frame rate. Some are going to be at the performance ceiling of the core so they won't run anyway.

I think this is a complete list of LFB VESA 2 games:
Age of Rifles
Archimedean Dynasty
Blood
Constructor
Death Rally

Duke Nukem 3D
Extreme Paintbrawl
Fantasy General
Grand Theft Auto (Required for 24bit, 8 bit works fine)
Mechwarrior 2
Mechwarrior 2 Mercenaries
Megarace 2
Mortal Kombat Trilogy
NAM/Napalm
Need for Speed
Nemesis: The Wizardry Adventure
Powerslave
Redneck Rampage
Redneck Rampage Rides Again
Redneck Deer Huntin'
Shadow Warrior
Syndicate Wars
System Shock
TekWar
TIE Fighter
Toonstruck
Versailles 1685
Witchhaven
Witchhaven 2: Blood Vengeance
WWII GI
Versailles 1685 would get playable with this? Currently it's running at 1fps.
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

flynnsbit wrote: Wed Mar 16, 2022 10:00 pm notice any speed differences? when in game you can type "dnrate" and it will show the frame rate...
It's maybe 2-3 FPS faster than the non-FBE mode. As you say, it's hitting other bottlenecks for performance so the improvement is not very much.

I'll work through the list as I can, and update as results come in:
  • Age of Rifles
  • Archimedean Dynasty
  • Blood
  • Constructor
    Has its own built-in UniVBE support. Go to the settings directory and run the uvconfig command above for version SDD53A. Small speed increase.
  • Death Rally
    Graphical corruption when using UniVBE
  • Duke Nukem 3D
    Make sure VESA mode selected from setup. Working. Marginal speed improvement.
  • Extreme Paintbrawl
  • Fantasy General
    No discernible difference.
  • FastDOOM
    Very good performance. See details from Flynnsbit, below.
  • Grand Theft Auto (Required for 24bit, 8 bit works fine)
    24-bit mode crashes with the same error it does without UNIVbe. Does not seem to be VBE-related.
  • Mechwarrior 2
  • Mechwarrior 2 Mercenaries
  • Megarace 2
  • Mortal Kombat Trilogy
    Some progress. Has its own built-in UniVBE support but the included uvconfig.exe is ignoring the framebuffer settings. Install SDD53A, configure it as per the settings above, and copy univbe.drv into the game's directory. Ensure MiSTer's 16bit format is set to 565. Game starts. Graphics are all in top corner of screen. Freezes before getting to gameplay.
  • NAM/Napalm
  • Need for Speed
  • Nemesis: The Wizardry Adventure
  • Powerslave
  • Redneck Rampage
  • Redneck Rampage Rides Again
  • Redneck Deer Huntin'
  • Shadow Warrior
    Make sure VESA mode selected from setup. Working. Marginal speed improvement.
  • Syndicate Wars
  • System Shock
    No discernible difference.
  • TekWar
  • TIE Fighter
    No discernible difference.
  • Toonstruck
  • Versailles 1685
    Very small speed increase. Still too slow to be fun to use.
  • Witchhaven
  • Witchhaven 2: Blood Vengeance
  • WWII GI
User avatar
Caldor
Top Contributor
Posts: 930
Joined: Sat Jul 25, 2020 11:20 am
Has thanked: 112 times
Been thanked: 111 times

Re: VESA 2.0 Under DOS

Unread post by Caldor »

The Settlers 2 is probably the only game I have been able to play in 640x480 in a playable way, and it was still a bit laggy. I do think it uses Univbe but I am not certain.

With Duke3D its a problem to even play it at 320x240. Most of the time it does run at somewhat full speed, but in some areas with special audio effects and slopes it seems to run quite laggy. The best example being the secret sewer in E1M2. Running at 640x480 I do not think I ever got it to perform with 10+ fps. I am not sure if I have tried with Univbe and such.
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

Generally speaking I don't think we'll see much speed increase from this. While it is more efficient to be writing to a linear frame buffer rather than having to do banking operations, most games are going to be hitting other performance bottlenecks before this is a big factor.

Having VBE 2.0/3.0 support for ao486 is going to be much more useful for fixing games which simply refuse to run without it. It's also how I got the video up and running for Windows NT 4 and Windows 2000, and it's the information I learned in that thread which led to figuring out the right settings for UniVBE.
Neocaron
Posts: 341
Joined: Sun Sep 27, 2020 10:16 am
Has thanked: 187 times
Been thanked: 66 times

Re: VESA 2.0 Under DOS

Unread post by Neocaron »

alexoughton wrote: Thu Mar 17, 2022 12:21 pm
flynnsbit wrote: Wed Mar 16, 2022 10:00 pm notice any speed differences? when in game you can type "dnrate" and it will show the frame rate...
It's maybe 2-3 FPS faster than the non-FBE mode. As you say, it's hitting other bottlenecks for performance so the improvement is not very much.

I'll work through the list as I can, and update as results come in:
  • Age of Rifles
  • Archimedean Dynasty
  • Blood
  • Constructor
    Has its own built-in UniVBE support. Go to the settings directory and run the uvconfig command above for version SDD53A. Small speed increase.
  • Death Rally
    Graphical corruption when using UniVBE
  • Duke Nukem 3D
    Make sure VESA mode selected from setup. Working. Marginal speed improvement.
  • Extreme Paintbrawl
  • Fantasy General
    No discernible difference.
  • Grand Theft Auto (Required for 24bit, 8 bit works fine)
    24-bit mode crashes with the same error it does without UNIVbe. Does not seem to be VBE-related.
  • Mechwarrior 2
  • Mechwarrior 2 Mercenaries
  • Megarace 2
  • Mortal Kombat Trilogy
    Some progress. Has its own built-in UniVBE support but the included uvconfig.exe is ignoring the framebuffer settings. Install SDD53A, configure it as per the settings above, and copy univbe.drv into the game's directory. Ensure MiSTer's 16bit format is set to 565. Game starts. Graphics are all in top corner of screen. Freezes before getting to gameplay.
  • NAM/Napalm
  • Need for Speed
  • Nemesis: The Wizardry Adventure
  • Powerslave
  • Redneck Rampage
  • Redneck Rampage Rides Again
  • Redneck Deer Huntin'
  • Shadow Warrior
    Make sure VESA mode selected from setup. Working. Marginal speed improvement.
  • Syndicate Wars
  • System Shock
    No discernible difference.
  • TekWar
  • TIE Fighter
    No discernible difference.
  • Toonstruck
  • Versailles 1685
    Very small speed increase. Still too slow to be fun to use.
  • Witchhaven
  • Witchhaven 2: Blood Vengeance
  • WWII GI
Thanks for taking the time to do the testing!
I usually run the core at 100mhz because it's very stable for me, I wonder if combine with this it will help even more.
flynnsbit
Top Contributor
Posts: 550
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 179 times
Been thanked: 307 times
Contact:

Re: VESA 2.0 Under DOS

Unread post by flynnsbit »

alexoughton wrote: Fri Mar 18, 2022 12:28 pm Generally speaking I don't think we'll see much speed increase from this. While it is more efficient to be writing to a linear frame buffer rather than having to do banking operations, most games are going to be hitting other performance bottlenecks before this is a big factor.

Having VBE 2.0/3.0 support for ao486 is going to be much more useful for fixing games which simply refuse to run without it. It's also how I got the video up and running for Windows NT 4 and Windows 2000, and it's the information I learned in that thread which led to figuring out the right settings for UniVBE.
Not bad with FastDoomVBR/VBD

HIRAM:
doom 15.56 fps
Fdoom 36.005 fps
fdoom13H 39.347 fps
fdoomvbr 40.042 fps
fdoomvbd 42.119 fps

EMM:
doom 15.42 fps
fdoom 35.441 fps
fdoom13h 39.117 fps
fdoomvbr 39.249 fps
fdoomvbd 41.268 fps

QEMM:
doom 15.43 fps
fdoom 35.441 fps
fdoom13h 39.111 fps
dfoomvbr 39.284 fps
fdoomvbd 41.275 fps



And last but not least, 100Mhz / HIRAM
fdoomvbd 46.375 fps
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

Those are some great numbers, thanks! What is it you’re doing to run at 100 MHz? Is it still a custom build or is there a hidden option available?
Neocaron
Posts: 341
Joined: Sun Sep 27, 2020 10:16 am
Has thanked: 187 times
Been thanked: 66 times

Re: VESA 2.0 Under DOS

Unread post by Neocaron »

alexoughton wrote: Sun Mar 20, 2022 7:21 pm Those are some great numbers, thanks! What is it you’re doing to run at 100 MHz? Is it still a custom build or is there a hidden option available?
In my case as well I run the ao486 at 100mhz, I've had NO crashes so far and it's been more than 6 months now. Thanks to it I can play Conquest of the New World at playable framerate with it, not without it.
In my case it's a dirty compile, but there is a debug file to put in the same folder as the core (I think) and you can use it to get the 100mhz option to show up as well. It's floating somewhere in the ao486 forum.
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

Thanks for the pointer to the config file which I found here: viewtopic.php?p=37074&sid=bcc3411f92e62 ... 3af#p37074

For me it's pretty much an instant crash in FastDOOM at 100 MHz. Back to 90 MHz I go...
flynnsbit
Top Contributor
Posts: 550
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 179 times
Been thanked: 307 times
Contact:

Re: VESA 2.0 Under DOS

Unread post by flynnsbit »

alexoughton wrote: Sun Mar 20, 2022 7:21 pm Those are some great numbers, thanks! What is it you’re doing to run at 100 MHz? Is it still a custom build or is there a hidden option available?
Just drop this AO486.cfg file into /media/fat/config/ and it will enable the debug option and "Overclock to 100MHz" option in the core menu. This rides the line of the core so it can be unstable depending on your fpga chipset lottery. Works fine for "most" DOS games. Win98 can be more unstable with it set so it should be the first thing you disable if having issues.
Attachments
AO486.zip
(160 Bytes) Downloaded 169 times
flynnsbit
Top Contributor
Posts: 550
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 179 times
Been thanked: 307 times
Contact:

Re: VESA 2.0 Under DOS

Unread post by flynnsbit »

Ha, I didn't read down to your reply. You can do builds of the core with a different seed until you get the right one for your chipset... See FPGAzumSpass comment here:viewtopic.php?p=38664#p38664
alexoughton
Posts: 75
Joined: Wed Feb 09, 2022 7:57 pm
Has thanked: 15 times
Been thanked: 57 times

Re: VESA 2.0 Under DOS

Unread post by alexoughton »

I may have some of my older builds from NT4 experiments I could try the overclock with. Thanks for the tip.
Neocaron
Posts: 341
Joined: Sun Sep 27, 2020 10:16 am
Has thanked: 187 times
Been thanked: 66 times

Re: VESA 2.0 Under DOS

Unread post by Neocaron »

flynnsbit wrote: Mon Mar 21, 2022 12:17 am Ha, I didn't read down to your reply. You can do builds of the core with a different seed until you get the right one for your chipset... See FPGAzumSpass comment here:viewtopic.php?p=38664#p38664
Alexoughton Yeah, this is the best way to do it, and you should end up with a stable build at 100mhz as well.
The compile process is just a b*tch for me anyway, since it fails 8/10, 30min per try. It gets annoying pretty fast :mrgreen:

found that quote on the forum and that's pretty much me anytime I update my ao486 core
I just figured that some folks would have been trying their luck with seed spamming or other methods in Quartus to get every little bit of extra performance out of the CPU.
:lol: :lol: :lol:
flynnsbit
Top Contributor
Posts: 550
Joined: Sun May 24, 2020 8:07 pm
Has thanked: 179 times
Been thanked: 307 times
Contact:

Re: VESA 2.0 Under DOS

Unread post by flynnsbit »

Neocaron wrote: Mon Mar 21, 2022 1:32 am
flynnsbit wrote: Mon Mar 21, 2022 12:17 am Ha, I didn't read down to your reply. You can do builds of the core with a different seed until you get the right one for your chipset... See FPGAzumSpass comment here:viewtopic.php?p=38664#p38664
Alexoughton Yeah, this is the best way to do it, and you should end up with a stable build at 100mhz as well.
The compile process is just a b*tch for me anyway, since it fails 8/10, 30min per try. It gets annoying pretty fast :mrgreen:

found that quote on the forum and that's pretty much me anytime I update my ao486 core
I just figured that some folks would have been trying their luck with seed spamming or other methods in Quartus to get every little bit of extra performance out of the CPU.
:lol: :lol: :lol:
Maybe one more shortcut for you all. theypsilon does all of the Continuous build automation for nighties and each time he does 8 builds of the core (recently pulled down to 5) You can go here: https://github.com/MiSTer-unstable-nigh ... _build.yml
Click on one of the check ins, you will see the builds on the left side, select one:
build.png
build.png (75.47 KiB) Viewed 10962 times
Select the Build (50 min one)
Scroll all the way down to the release and download it.
release.png
release.png (23.59 KiB) Viewed 10962 times
You could have a 1 in 5 chance of finding the one that works for you without having to seed and build it yourself. Hope that helps.
Mills
Posts: 83
Joined: Mon Jun 08, 2020 2:52 pm
Has thanked: 15 times
Been thanked: 29 times

Re: VESA 2.0 Under DOS

Unread post by Mills »

Can anybody test Little Big Adventure 2?. It does not work at all, the screen goes black, or it shows the vga text mode and nothing happens. It (kind of) worked for me in past versions, but only showed a screen (640x480 16 bit color) asking for the original CD, even if you mount a cue/bin.
I installed SDD653-D, it recognized the et4000, but vbetest is failing, it can't set any mode, and it freezes the core :(.

EDIT: For some reason I had a different boot1.rom, it is now working :) .
User avatar
remax
Posts: 23
Joined: Sun Nov 21, 2021 8:24 pm
Has thanked: 5 times
Been thanked: 9 times

Re: VESA 2.0 Under DOS

Unread post by remax »

flynnsbit wrote: Mon Mar 21, 2022 2:09 am Maybe one more shortcut for you all. theypsilon does all of the Continuous build automation for nighties and each time he does 8 builds of the core (recently pulled down to 5) You can go here: https://github.com/MiSTer-unstable-nigh ... _build.yml
Click on one of the check ins, you will see the builds on the left side, select one:

Select the Build (50 min one)
Scroll all the way down to the release and download it.
release.png

You could have a 1 in 5 chance of finding the one that works for you without having to seed and build it yourself. Hope that helps.
Unless i'm doing something the wrong way, it's always exactly the same file crc wise for me...
sofakng
Posts: 137
Joined: Fri Jun 19, 2020 12:52 am
Been thanked: 23 times

Re: VESA 2.0 Under DOS

Unread post by sofakng »

Has anybody been able to get Rayman (or Rayman Forever) working?

I've tried different combinations of BIOS and using UNIVBE (v6.3) but I either have a corrupted screen ("F" and "W" characters) or it hangs at the Rayman text loading screen with a blinking cursor...
AmintaMister
Posts: 277
Joined: Thu Sep 16, 2021 10:54 pm
Has thanked: 720 times
Been thanked: 44 times

Re: VESA 2.0 Under DOS

Unread post by AmintaMister »

sofakng wrote: Fri Nov 04, 2022 6:27 pm

Has anybody been able to get Rayman (or Rayman Forever) working?

I've tried different combinations of BIOS and using UNIVBE (v6.3) but I either have a corrupted screen ("F" and "W" characters) or it hangs at the Rayman text loading screen with a blinking cursor...

Now it's August 2023 with core supporting Cd Audio but Rayman still gives the same problem...

Post Reply