Driver "development" with modern aspect ratios

Started by Dolenc, 23 May 2022, 18:57:53

Previous topic - Next topic

Dolenc

#15
Was testing a bit, theres one major issue still present, that registry path on win98. And some smaller kinks, that I have to test a bit more, to see how they affect things. Asked Sezero if he can help me with the reg problem, cus clearly I wont figure it out. For testing its hardcoded in.

Anyway, another monologue. I was testing today a bit, yay half-life finally works again. A bit slow, enable 16bit textures, better, still too slow, enable 16bit rend, runs like a dream.

Finally everything clicked. I played around some more.

Then I test quake2. 58fps. Wtf, I know I played on 1080p before and it ran somewhat fine, what is this now again, wheres my 80fps. Noe, messed up something again, you "fix" one thing you break 3 others. Tried some more stuff... Then I look at the setting, I just forgot its still at 1920x1080, dumbass...

Anyway heres a test driver package if anyone wanna play around, for win98:
https://easyupload.io/e4cq3h (link valid for 7 days)

If its not a clean system, check the registry before installation, anything under "HKEY_LOCAL_MACHINESystemCurrentControlSetServicesClassDisplay ..." delete it. Its hardcoded to Display\0000.

Extract, read readme.txt/Extra notes, then run ->setup.exe<-



For winXp, if you wanna make one, take the driver of your choosing(I suggest sfft 1.9 since that has the most advanced d3d), install it, then put the files "3dfxOGL.dll, opengl32dll, glide2x.dll, glide3x.dll" into your win/system32 folder.

After, you will see in the driver installation folder, theres one called "Extra/Win2kXp".
Run
- XP_AddMesaFxOverride_3dfxTools.reg
- XP_AddOverrideResolution_3dfxTools.reg
- And under timings folder the one you want (can be all)
- Install 3dfxtools if not present
 

Dolenc

There are some "special tweaks" in the .ini files of other drivers. What I could find out is they were taken from Tomb raider optimizations. Didnt check if they are even present in the driver anymore. Did test them...




1280x1024  disabled  allEnabled
Unreal:    74.03     74.09
UnrealT:   52.92     52.78
Quake2:    90.4      90.4
Quake3:    69.6      69.6
Mdk2:      81.88     81.93
Drakan:    61.05     61.04


I will leave them in the file, but comment them out, so they are not installed. If someone, for whatever reason wants them, just remove the comments before installing the driver.

And now the important stuff. The hard-hitting question, is Voodoo 5 a 1080p card?
https://youtu.be/HDqk7M5vUbU
 

ciacara

Hi Dolenc, I'm your Grandma, I would like to say so many nice things to you but I can't because you would tell me I'm too loving....[:p]

Joking aside, thanks for sharing the files/drivers/tweacks, I want to test them, but I have to finish a long stopped project first ...

Personally I'm always interested in overclocking, I think you could achieve more with a doc modified version of bios. One such version of the v5 5500 agp bios, is 1.18 Modified - DramInit0:
https://www.3dfxzone.it/Voodoo5/bios/1.18%20AGP%20mod.zip?fbclid=IwAR3l9A9IGFugvIVVXLs5s95dkedkWjfeW21CmwjmQ5I6uC7peV2AeSNKPLQ

Bios with this wording next to the name imply that the memory timings have been modified to match previous revisions of the bios, which improves overclocking capability, as unmodified versions use more aggressive memory timings than previous revisions. Unless, the installed version has already been modified in this sense. It would have to be checked whether it is compatible with 128mb.

In Quake 2 I saw, for a moment, a resolution of 2048x1536 appear. Did you enter this by accident?

Is the v5 5500 a 1080p card? I'm too biased to answer that question, although from your tests it shows and answer is tangible.

My advice would be to include the hardware configuration and direct links to the Threads you created in the various online platforms, in the description of the videos, so those who will see it, even in the future, will have an idea of the whole thing...including your grandmother...
I am sorry for my English ;) :D

Dolenc

Thanks, I was eying that bios, just wasnt sure if it will work for 2x64mb, Ill ask Anthony, might know.
I do want more muhaherc!

Quake2 resolution list is from v3.24 patch, doesnt read what the card has avaliable, they are just avaliable to pick.

This is what the Voodoo has at its disposal, so yea 2048x1536 is a valid resolution, think its just not in windows, the timing is in .ini though.

Do you see 1080p anywhere? Yea, was never included in glide, just as a timing for desktop.


#define GR_RESOLUTION_320x200   0x0
#define GR_RESOLUTION_320x240   0x1
#define GR_RESOLUTION_400x256   0x2
#define GR_RESOLUTION_512x384   0x3
#define GR_RESOLUTION_640x200   0x4
#define GR_RESOLUTION_640x350   0x5
#define GR_RESOLUTION_640x400   0x6
#define GR_RESOLUTION_640x480   0x7
#define GR_RESOLUTION_800x600   0x8
#define GR_RESOLUTION_960x720   0x9
#define GR_RESOLUTION_856x480   0xa
#define GR_RESOLUTION_512x256   0xb <- Glide.dll
#define GR_RESOLUTION_1024x768  0xC
#define GR_RESOLUTION_1280x1024 0xD
#define GR_RESOLUTION_1600x1200 0xE
#define GR_RESOLUTION_400x300   0xF  <- Glide2x All voodoos
#define GR_RESOLUTION_1152x864  0x10
#define GR_RESOLUTION_1280x960  0x11
#define GR_RESOLUTION_1600x1024 0x12
#define GR_RESOLUTION_1792x1344 0x13
#define GR_RESOLUTION_1856x1392 0x14
#define GR_RESOLUTION_1920x1440 0x15
#define GR_RESOLUTION_2048x1536 0x16
#define GR_RESOLUTION_2048x2048 0x17 <- Glide3x Vsa based voodoos, previous max
/* Extended */
#define GR_RESOLUTION_1280x720  0x18 /* 16:9 */
#define GR_RESOLUTION_1280x800  0x19 /* 16:10 */
#define GR_RESOLUTION_1360x768  0x1A /* 16:9 */
#define GR_RESOLUTION_1440x900  0x1B /* 16:10 */
#define GR_RESOLUTION_1600x900 0x1C /* 16:9 */
#define GR_RESOLUTION_1680x720 0x1D /* 21:9 */
#define GR_RESOLUTION_1680x1050 0x1E /* 16:10 */
#define GR_RESOLUTION_1792x768 0x1F /* 21:9 */
#define GR_RESOLUTION_1920x800 0x20 /* 21:9 */
#define GR_RESOLUTION_1920x1080 0x21 /* 16:9 */
#define GR_RESOLUTION_1920x1200 0x22 /* 16:10 */
#define GR_RESOLUTION_3840x2160 0x23 /* just for a high max, still invalid */


About more information and including links, its like this, those that will want it, will find it, for others, not important, dont have to make everything easy :)

Someone in the yt comments suggested glide has some additional options enabled by default in UT, thats why its a bit slower than opengl and d3d, that dont. So I checked it, and yea, get about the same result now as d3d in my favorite 1920x800. Its still a tad slower, but rendering is more accurate, opengl and d3d might "leave" some things out.
https://youtu.be/Ro2RA5RH9ww

Before I bought the card, I kinda knew what to expect, bought one geforce2 to get a rough idea, downgrade in everyway from radeon x850xt I was using before, but I said to myself... Well, if atleast I could get 1080p for q2 engine games, that would be ok. Didnt know 21:9 window is just around the corner!
 

ciacara


Yes, I can admit that the Extended Resolutions version by Dolenc makes this video card run at 1080P!

Just to add some more spice to the bios mod and overclock issue, with vsa-100 220 I was also getting 205/206 mhz results. You installed rev 320's, if your v5 works and is compatible with this bios, could we see 220mhz too?...I daren't imagine... [:0]

I saw the two systems you are using:

Amd system
Athlon64 3200+ venice @ 2.2ghz
Gigabyte GA-K8VM800M rev2, s754

Intel system:
Pentium E5800 @ 3.2ghz
Asrock 775I65G v2, s775

You need an Asrock AM2NF3-VSTA with AMD Phenom II x4 980, or an Asrock 4Coredual-Sata2 with an intel X6800 / QX6800. With these monsters, you can exploit the full potential of this video card. I'm sure of it. :)
I am sorry for my English ;) :D

Dolenc

#20
Yea she is awaiting to be exploited... If I can get 200mhz I would be happy, if I could get a bigger di... I mean score in 3dmark01, so higher than the current wr holder, that we wont mention here! that would be even better, he has it at 215mhz on a crappy green voodoo and we all know red is a faster color :P. For him its a win-win, either he holds the record or his card.

This pentium I have is better, its one of the last ones(wolfdale), 3.2ghz (vs 3ghz on that crappy extreme editions :P) and 800fsb, that leaves room if you want higher and you dont have dividers. Win98 is single core anyway. Think that I saw around 3.7-3.8ghz with this mb I have, that isnt oc friendly, if it is goes waaaay past 4ghz, but thats around the same as what the wr record holder - that shal not be named! had.

But besides breaking the wr of the person that - shall not be named! Dont think voodoo5 scales much more past a cetrain point. I see I get same numbers as phils computer lab, with a p3 1.1ghz... So you know, plenty fast. Does scale with every mhz you get out of the card.

Did made a difference with radeon x850xt. Athlon64 240fps, cl2 ram 270fps, this pentium 400fps+, q3 fullHd all maxed, if I havent pressed demo myself wouldnt belive it that a64 bottlenecks it so much.
 

Dolenc

Is the 3dfx Voodoo 5 5500 a 21:9 card?
https://youtu.be/QCqaPek9ovU

Anyway Im about done, waiting for some confirmation that it installs correctly on 6k and v4 and this will have to do for v1.0!
If Ill do more fixed eventually it will go into the next version.
 

Obi-Wan Kenobi

#22
Hmm, an interesting project maybe? But the games look terrible ,deformed and stretched out.
As I replied in your video I type the same here, because I don't have any better words to describe it.

The aspect Ratio of 4:3 will always be the best for 3dfx graphics cards, no doubts around this, the games of their time were also made to support this aspect ratio only, as were the native drivers from 3dfx.

That goes for 640x480, 800x600, 1024x768, 1152x 864, 1280x960 to 1600x1200, these will always be the best reso's for the V3, V4 & V5 boards especially if using the 4:3 aspect ratio and for 5:4 1280x1024x/16/32 is also very nice to use, wide screen never was really a big deal back then and there are still plenty of 5:4 TFT's around left alone CRT's as well, going wide screen kind of ruins the original aspect as well.=, I may as well use my Radeon RX Vega 64 then if doing something like that for example, I really don't see the point in it all.

As for this experiment, showing the 21:9 aspect ratio... well to be very honest about it, no thanks, it ruins the actual aspect of the games, left alone the shapes of the map, the player, the weapons, it's all stretched out and very deformed, as if it's not a native thing anymore, it's not right in that perspective.

Thus for 21:9 in your video I am not a fan of it all because of that, everything just looks very wrong, the native look of the games is also ruined by this.

Just my two cents on it.
Powered By The Force, x-3dfx & The Jedi Academy

Dolenc

Theres no correct aspect ratio. Cards/drivers are not made for it.

The Math behind (most) 3D games - Perspective Projection
https://www.youtube.com/watch?v=U0_ONQQ5ZNM
 

Dolenc

#24
And a small update whats happenung!

Latest greatest glide source, has some issues under win98, I never solved that registry path problem and some more issues appeared for 6k cards. So I decided to change the glide3 source to koolsmokys one, it also runs a bit faster under 98. For XP the new one is still preffered.

The plan is to slooowly port changes from the new one to this one, but first I want to have a milestone 1.0. And as always there were some problems with this one too. I had them, Anthony who kindly tests my builds, didnt have them...

I found out where the problem is, with sse2 optimizations having some issues, so Im slowly porting the lastest one to it, now that I know where the problem is.
 

Dolenc

#25
And there we go.

3dfx Wide driver v1.0
https://easyupload.io/znl3ry
(link expires in 15 days, @Glide please, put it somewhere and edit the post)

Supports vsa-based cards, no v3, for win98.
Extract, read readme.txt - Extra notes, run setup.exe.




Some additional info, because I noticed some confusion.

OpenGl
Additional resolutions are added to the included MesaFx opengl icd (also glide).
There is no override for openGl. If the game supports it, if the driver supports it, it will run.
Glide override will check if request came from openGl and even if you have it set in 3dfx tools, it will ignore it.

If you are going to use another icd, it does not have these resolutions. So you will not have them.
Glide override feature will force it, because (atleast what I tested) other icds dont bother telling glide they are opengl.
But will either be letterboxed or crash in a short time.

Use Default OpenGl renderer in games settings, not 3dfx one if the game has that setting.
It will default to the one installed with the driver.

MiniGl, you should not use - ever, even with other drivers. This was a stop-gap solution for 3dfx, that gave them time to complete theirs full openGl icd. And it should be forgoten in history.

General rule, unless you have some compatibility issues with some old games. You should not use any other icd, this one is kinda the best ;)


MesaFx force 16bit
These two controls are enabled by default in the driver. Disable them to get default MesaFx behaviour.



MesaFxs default behaviour will default textures and pixelformat to 32bit, unless the game specifies it wants 16bit.
Quake 3 is a good example, that can do both. So no need here.
Quake 2 is a good example, that does nothing. Thats why it was made.

As a general rule, you should leave them disabled. If you are experiencing any performance issues with the game, try textures first, then pixel format.


Glide resolution override
This is a hack-ish solution, that will replace the games resolution with the one provided in 3dfx tools, when preparing the framebuffer.



As explained in openGl section, you can leave this on and it wont bother openGl or d3d games.



For Unreal engine games it works as expected, for others, no guarantee.
Fov has to be adjusted if the game doesnt do it automaticly.

If the game uses fov of 90 at 4:3. Then you will get the same scale with fov 106 at 16:9 and fov 121 at 21:9 aspect ratio. But consider fov a bit of a personal prefference, I use 130 for 21:9.

There are also some 4:3 resolutions on the list, idea being to force higher, when game is limited to very low one. Havent found one so far that worked.

General stuff
V5 5500 uses digital sli and 2pix per clock rendering. Up to a point - resolution. At 1600x1200 and higher it will disable 2px rendering and switch to analog sli (6000 series only has analog). So its "sweetspot" is at lower resolutions than that.
For 16:9 thats 1600x900 and for 21:9 thats 1920x800.

If you get, so called, pink sli lines, it means its just too much for the poor sli to handle, that can accur with higher resolutions and 32bit color. Use 16bit color and you are good to go, even at 1920x1080.
 

ciacara

Hi Dolenc, Grandma congratulates you on the first official release of your Wide drivers for 3dfx VSA-based graphics cards running Win98.

While waiting for a drawer to be dedicated for this release of yours, I have hosted your file at the following address:

https://www.dropbox.com/s/rquohyr7bobjy5y/3dfx%20Wide%20driver%20v1.0.zip?dl=0

I suggest you post the link to the first post of this thread of yours, referring to the explanation written in this last post of yours.

I need to set up the hardware workstation to test this release of yours, I can't wait any longer... ;)
Thank you very much for your work, now let's see if it works...[:p]
I am sorry for my English ;) :D

Dolenc

Its made to run 5min, enough for a benchmark run or one good screenshot! I can guarantee that! For more you can send your complaints to support@nvidia.com :P
 

Obi-Wan Kenobi

QuoteOriginally posted by Dolenc

Theres no correct aspect ratio. Cards/drivers are not made for it.

The Math behind (most) 3D games - Perspective Projection
https://www.youtube.com/watch?v=U0_ONQQ5ZNM
That then concludes you are totally wasting your time, like you self said the cards never supported these models per hardware definition,  the result is a deform image also these games were never made to support 16:9 left alone 21:9, you're just making the games look terribly and deformed and stretched out, I don't see the point of this entire thing.

it's as if you are trying to watch a 4:3 aspect ratio movie on a 16:9 screen it looks warped and stretched out aka deformed, this doesn't improve the game experience bar nothing it just messes up the field of view.

Or if using a bad sound card like a Vortex 2 with an Advanced amplified yet the sound quality is still poor of quality, as it will sound like loud tin cans.

In the end people have really tried to improve such things with many methods but like this one I don't see it as a success.

Just stick to 4:3 gents, if you want your games to look awesome how they were in their actual times.
Powered By The Force, x-3dfx & The Jedi Academy

Dolenc

Please restrain yourself from further ****posting.

Not everything will be to your liking, and thats just fine ;)