Here are the VESA modes supported by the X850XT PCIe as reported by PCPBENCH:
The attachment X850XT-PCIE-cropped.jpg is no longer available
Edit:
ATI X1900XT shows the same exact for VESA and Quake gets 213.1fps at 1280x1024 but PCPBENCH is all jacked up with the error message in the upper left hand corner that says:
Domain error in acos.
The attachment BFG GTX 285-cropped.jpg is no longer available
6800GT - Quake will not load after applied
Quadro FX 4500 - Same VBE modes. Fastest in PCPBENCH so far at 640x480 (mode 101) at 885.3fps. Second fastest in Quake at 1280x1024 at 201.3fps
The attachment 6800GT-PCIE-cropped.jpg is no longer available
Going to test a few more cards - any specific requests?
Anybody know how to get a .cfg file to set vsync off?
The whole file looks like console commands but vid_wait 0 doesn't work.
Use vid_nopageflip 1 instead of vid_wait 0.
Vid_wait 0 setting is not preserved unlike vid_nopageflip 1. While vid_nopageflip 1 also sets vid_wait to 0 by default (thus disabling V-sync), it also prevents hardware page flipping. Applying vid_nopageflip 1 results in less of a video hardware test, since overall performance depends more on system CPU/Memory speed than video hardware speed.
More info: Re: Old+Modern videocards pure DOS performance- which one is fastest?, need your numbers + analysis, 320x200 to 1600x1200!
I suspect if you were to connect a 16x9 display, other VESA resolutions like 1920x1080 would magically appear. For 4x3 monitors, those listing of resolutions are impressive. Quadro FX 4500 even supports the vaulted, rarified 4x3 resolution of 2048x1536.
Try RayeR's VESATEST, ver. 1.47, which I've attached, for raw bankswitched and LFB testing. This gives VRAM-->RAM raw speed in mb/sec for a user specified mode, eg. 0x101 or 0x151 (for your 2048x1536x32bpp mode!). This may also enable MTRRs for testing. The difference in memory transfer rate is orders of magnitude faster with write-cache combining enabled.
Thanks. Going to try that now with the Quadro FX 4500.
Was going to do some more testing last night but then the system would not post at all.. or rather, it was giving me weird video BIOS codes, one of which was no video card and the other was something to possibly do with console output.
Tried probably 10 different video cards, resetting the BIOS multiple times, using BIOS flashback to blindly reflash the BIOS, reseated the CPU and RAM, tried an 8700k CPU and maybe a couple other things I may have forgotten with no change.
Seems like that board gave up the ghost. UGGGHHHHHH. I may try messing with it again another time but I am not holding out any hope of it ever POSTing again.
Ended up locating my ASUS Z390 WS Pro board and swapping it out.
Have not done any testing other than verifying it boots and has the same control over the CPU multiplier as the other board.
The really nice thing about the workstation boards is that you can control each CPU core being disabled or enabled.
Edit: Actually, on the x299 board you can control each core separately. On the Z390 workstation board I can only control the number of cores enabled.
/Edit
Also, on the one card I used to POST test, I ran PCPBENCH / modes hooked up to a DELL U2410 monitor (1920x1200 support)
With analog video, the modes did not change even though this is a 16x9 monitor.
With digital video (DVI-D), there were a lot less modes listed - only went up to 1280x1024.
cyclone3dwrote on 2025-02-22, 22:15:Thanks. Going to try that now with the Quadro FX 4500.
Was going to do some more testing last night but then the system would no […] Show full quote
Thanks. Going to try that now with the Quadro FX 4500.
Was going to do some more testing last night but then the system would not post at all.. or rather, it was giving me weird video BIOS codes, one of which was no video card and the other was something to possibly do with console output.
Tried probably 10 different video cards, resetting the BIOS multiple times, using BIOS flashback to blindly reflash the BIOS, reseated the CPU and RAM, tried an 8700k CPU and maybe a couple other things I may have forgotten with no change.
Seems like that board gave up the ghost. UGGGHHHHHH. I may try messing with it again another time but I am not holding out any hope of it ever POSTing again.
Seems quite sad that a little testing apparently fried your board. That's highly unfortunate.
The reason I had posted about possible 16x9 VESA modes appearing is that some cards' resolution tables (listing of VESA modes) dynamically changes based upon type (either 4x3 or 16x9) monitor displayed. It is rare, but some cards support this dynamic possibility.
Gotcha. Did not know that some cards would give different VESA modes based on aspect ratio.
In any case, the board that died I think just died. Either that or the last card I put in it fried it. Going to test that specific card with a junk board and will probably start doing the same with other cards. A card really shouldn't be able to fry a board as protection circuitry should kick in but who knows.
As for the WS Z390 Pro, it is giving the same exact bench results as the other board so it looks like I am good to go.
...
The reason I had posted about possible 16x9 VESA modes appearing is that some cards' resolution tables (listing of VESA modes) dynamically changes based upon type (either 4x3 or 16x9) monitor displayed. It is rare, but some cards support this dynamic possibility.
Newer Nvidia cards and even Intel HD 4000 do something similar namely insert the native resolution of the display to the list of supported VESA resolutions.
But only the native resolution is inserted no other 16x9 or 16x10 resolutions.
Anybody know the newest video card that lacks idle clocks / runs at a steady clock no matter the load?
Newer video cards seem to be really really slow for DOS and my guess is it at least in part due to them clocking down to almost nothing when not under load.
Or is it also or solely because after a certain point MTRR has no effect even if the motherboard BIOS supports it?
@ zyzzle
What types of bench results are you getting with your system and with what video card(s).
Also, I have something in the works that may be very useful for VESA stuff. I'll post back here probably tomorrow evening about it if I have time.
Sorry for the long delay in replying.
All of the following benchmarks are with the onboard Intel GPU and its vbios, with various CPUs and some with MTRRs enabled, some without:
1Quake 1.09 DOS bare metal 2i5 3427u CPU @ 800 mhz (using Yang's CPUSPD) and MTRRs enabled onboard Intel GPU 3timedemo demo1 4640x480: 7.7 sec, 125.2 fps 51024x768: 14.8 sec, 65.3 fps 6i5-3427u CPU @ 2.8 Ghz, MTRRs enabled 7640x480: 2.3 sec, 413.8 fps 81024x768: 4.5 sec, 216.0 fps 9i5-3427u CPU @ 2.8 Ghz, MTRRs *disabled* 10640x480: 19.2 sec 49.4 fps 111024x768: 49.2 sec 19.7 fps 12timedemo demo2 13i5-3427u CPU @ 2.8 Ghz, MTRRs enabled 14640x480: 2.1 sec, 479.7 fps 151024x768 3.8 sec, 260.1 fps 16timedemo demo3 17640x480: 2.7 sec, 398.2 fps 181024x768: 5.2 sec, 211.7 fps 19 20MTRRs enabled @ 800 mhz is ~3.5x faster than MTRRs *disabled* at 2.8 Ghz @ 1024x768 21MTRRs enabled @ 2.8 Ghz is ~11x faster than MTRRs disabled at 2.8 Ghz @ 1024x768 22 23i5-8250 CPU @ 3.4 Ghz, MTRRs disabled (impossible to enable, system freeze) 24timedemo demo1 25640x480: 24.7 sec, 39.2 fps 261024x768: 61.5 sec, 15.8 fps 271280x1024: 102.1 sec, 9.5 fps 28 29i5-8500 CPU @ 4.1 Ghz, MTRRs disabled (impossible to enable, system freeze) 30timedemo demo1 31640x480: 20.2 sec 45.7 fps 321024x768: 54.5 sec 17.8 fps 33 34Conclusion: old 3rd Gen. i5 @ 800 mhz (!) is ~4x faster rendering Quake at 351024x768 than an i5 8500 @ *4.1 Ghz* (!!) because MTRRs can be enabled. 36Therefore, intel GPU on 7th Gen is shit / broken / useless for VESA. 37 38Quake 2 DOS bare metal v 3.24: 39CPU i5-8250u @ 3.4 Ghz, MTRRs disabled (impossible to enable, system freeze) 40(in Q2DOS.ini set_r fps=1000 disables v_sync) 41Timedemo 1 42map demo1.dm2: 43640x480 VESA: 5.4 sec, 126.9 fps 441024x768 VESA 12.7 sec, 54.4 fps 451920x1080 VESA: 31.7 sec, 21.7 fps 46640x480 Bank switched (VGA-B) 1.6 sec, 418.1 fps 471024x768 Bank switched: 2.9 sec, 234.9 fps 48 49Conclusion: Bankswitched (VGA-B) is ~4x faster than VESA because MTRRs can't be enabled 50Question: Is it possible to use BankSwitching in Quake 1 vs. VESA?
The big observation is that there is a HUGE difference between an old i5 3rd gen cpu at 800 mhz with MTRRs enabled verses a Coffee Lake i5-8500 at 4.1 Ghz without MTRRs enabled. It is insane and quite ridiculous than a vastly underclocked 3rd gen with onboard Intel GPU will outperform an overclocked 8th Gen with onboard GPU by a factor of almost 10x just by making it possible to enable the MTRRs on that vastly underclocked 3rd Gen i5!
I also benchmarked Quake 2 DOS, as shown above. There is fortunately a way to use *Bankswitched* video as opposed to VESA in Quake 2. On the i5 system, using bankswitching instead of VESA achieves an increase of 4x in Quake 2 fps in benchmarking. 1920x1080 VESA via onboard GPU @ 3.4 Ghz only achieves ~22 fps, but could probably go well beyond 120 fps if MTRRs could be enabled.
HUGE Question: How does one enable bankswitching mode in the original Quake 1 in DOS? Is it possible?
Looking forward to any VESA tweaks you can cook up.
...
HUGE Question: How does one enable bankswitching mode in the original Quake 1 in DOS? Is it possible?
Looking forward to any VESA tweaks you can cook up.
As I have written before first you should try vid_nopageflip 1. Restart is required in order vid_nopageflip changes to take effect.
It does not activate VGA "bank switching mode" but disables the usage of multiple video RAM pages in LFB region thus forces usage of system RAM back buffers that can speed up rendering when the performance bottleneck is video RAM writing.
Unfortunately in case of Quake1 the highest available VESA 1.2/Bank switched video mode is 360x480.
Falcosoftwrote on 2025-03-07, 11:00:As I have written before first you should try vid_nopageflip 1. Restart is required in order vid_nopageflip changes to take eff […] Show full quote
As I have written before first you should try vid_nopageflip 1. Restart is required in order vid_nopageflip changes to take effect.
It does not activate VGA "bank switching mode" but disables the usage of multiple video RAM pages in LFB region thus forces usage of system RAM back buffers that can speed up rendering when the performance bottleneck is video RAM writing.
Unfortunately in case of Quake1 the highest available VESA 1.2/Bank switched video mode is 360x480.
Thank you. So, vid nopageflip 1 and MSKVBEF7 (which I've used with other game and utilities and it eliminates flicker) essentially disable LFB and fall back to VESA 1.2? There is also another similar utility from Ken Silverman called nolfb which disables linear frame buffer. I don't think there is anything specifically in the VESA 1.2 specs which disallow > 360x480 resolutions. They should go all the way up to 1600x1200 and beyond if video card has enough RAM and VESA table is properly defined.
What is Quake 2 for DOS doing to allow its "bankswitching" (VGA-B) at resolutions from 640x480 to 1024x768 in its software rendering? I believe Hexen 2 for DOS allows the same thing. I remember years ago poring over Quake internal documentation and seeming to encounter an option for "backbuffer" video rendering, which was not vid nopageflip 1 but I can't find the reference document now. Not sure if Quake 1.09 introduced this option or not.
I also think write cache combining with enabling MTRRs is, as you said before, a vBIOS limitation, but alas I don't have any "modern" video cards to test on my i5-8500 desktop above.
Last edited by zyzzle on 2025-03-08, 02:39. Edited 1 time in total.
... Thank you. So, vid nopageflip 1 and MSKVBEF7 (which I've used with other game and utilities and it eliminates flicker) essentially disable LFB and fall back to VESA 1.2? I
No, it does not. What you described is exactly what NoLFB from Ken Silverman does.
Instead MSKVBEF7 still enables LFB but only 1 video page so back buffers cannot be made in video RAM for double/triple buffering, only in system RAM.
I don't think there is anything specifically in the VESA 1.2 specs which disallow > 360x480 resolutions. They should go all the way up to 1600x1200 and beyond if video card has enough RAM and VESA table is properly defined.
Of course not. All VESA resolutions that can be used in LFB mode can also be used in banked mode.
This is only a Quake 1 restriction.
No, it does not. What you described is exactly what NoLFB from Ken Silverman does.
Instead MSKVBEF7 still enables LFB but only 1 video page so back buffers cannot be made in video RAM for double/triple buffering, only in system RAM.
OK Thanks again for distinguishing. I'll try them all out, including about 10 other small .com VESA utilities that I have in my utilities folder. (the VESAFIX utility meant to fix 3dfx Voodoo cards has come in very handy in making other games work better with Intel's modern onboard GPU on "modernish" systems).