Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Dolenc

What I already started in sfft-s topic.

The current state is:
- Having a rough idea how glide sets up the frame buffer
- Being scared of C a bit less, but still some
- Added resolutions to glide3 part of the driver as an extended list
- Using glide2->glide3 wrapper so I dont have to bother with fixing both, made by Ryan Nunn (Colourless - glideXp project)
- Adding the same list of resolutions to MesaFx 6.2, to confirm its not just glide and actually having the source

Now the current problems are
- MesaFx is kinda slow for some older games, good with new, would preffer to use 3dfx opengl icd, but dont have the source (have an interceptor though)
- Can I also override some glide resolutions? Without replacing existing ones and game not supporting it?

And what the long term battle plan is
- Find which glide source works the best for this combo
- Other parts of the driver, what can I take, what cant I take? What combination of things will work the best, specially for win98 that didnt have a update to the drivers since forever.
- Try sffts d3d part on older titles, whatever he did, it works great, just not sure for older games.
- Pack everything together, put out for testing, fix and repack!
- What comes next, depends on the time I have

So currently Im playing with how to handle glide, just glide. Im avoiding openGl since that will be harder for me :D
I tried just overriding the resolution in the early stage of framebuffer config and it worked. But theres still the question of intercepting the games requested resolution. And from what I can see right now, without patching the game that wont work. Or I have to check some other way...

So as an experiment, I added one more control to 3dfx tools, where I put all the extended resolutions in. Now its posible to pick one, and that will override whatever the game thinks it wants.

Its not the smartest solution, but with this, you solve the resolution request between the game and glide and the games limit to max 1600x1200 (no glide games have more). Some game ofc will lose its **** with this, but some should work. Also fov scaling would have to be correct or have a way of manually adjusting it.
Ui elements should rescale somewhat accurate, but if UI isnt really 2d, but made with meshes, that surely wont work.

I tested in unreal and this is how it looks as a concept. So atleast unreal engine games should be somewhat fine.
Made my own topic, so I can spam a little more. This forum (besides late falconfly forums) had the most "dev" talk, so thats why the topic is here.

How this started, my card has hdmi, plugged it in, straight to 1920x1080! And it didnt work, image smudged. Ok tried vga, works there. Hm.... Maker of my card, Anthony, suggested, its just the wrong timing probably, so I found some online. And there we go. Sharp image that can cut you.

So.... Thats how timings work on the voodoo... Wonder if I can add other resolutions? Found some online, yes they do work!
Ok but what about my lovely 21:9, can a 20y+ old tech drive that? Prob not, but worth a shot.
So I looke at some vesa specs documentation and some strange tv-spec sheets and after quite a while of tinkering got all the resolutions I wanted(for now!) and they do work.
And you can get them here:

Desktop and d3d games worked!

But OpenGl games, and glide, but you know, atleast OpenGl games should, but didnt work. The image got letterboxed.

So I kinda suspected its a glide thing and since no one is working on adding features to the drivers anymore, guess I can give it a shot.

I will get into more details some next time, when my experiment - driver is complete, the plan is also to show how you can setup an environment and compile things and how (not saying its good) approach things when Im trying to figure out how stuff work.

Anyway Im not really a low-level developer I mostly work IN.. the in part is important, not ON, game engines, so there will be an ocassional opsie and dont think everything I write is correct, but hey enthusiasm is there and since software side of things are kinda dead right now, it will have to do.

This will be a bit random, some occasional "whats currently going on" and when I have the time Ill do a more coherent informative post.
Those are already built, need the source, will keep searching, think mesa 6.2 has that alt-tab bug.

Here are some preview files, if anyone wanna give it a try (pre-pre-pre-pre-release with no guarantee) (required timings are link a few post before) (link expires in 30 days)

(!Backup any existing files you have, so you can revert back!)
- glide2x_wrapper.dll, dont need this one, but I use it for testing, same as every other glide2xp build, rename to glide2x.dll and put in windowssystem or windowssystem32 for xp.
- glide3x_ks210.dll, build from KoolSmoky v2610 glide source, fairly stable, this one is in my testing a bit faster, has some gamma issues in some games, rename to glide3x.dll and put in windowssystem or windowssystem32 for xp.
- glide3x_sourcef.dll, build from sourceforges 4040 source found on sezeros github, has shaky 2d image(atleast for me) in xp and some red color tinting in both xp and win98, not sure whats up, early builds were working semi-fine, rename to glide3x.dll and put in windowssystem or windowssystem32 for xp.
- opengl32_mesa.dll, built from mesafx6.2 found on sezeros github, rename to usually Opengl32.dll and put next to games exe and pray it takes this one.

What I test with is raziel 1.06 for win98 and sfft 1.9 (or is it last alpha? forgot) for xp.
If Im spaming Sfft-s topic too much, let me know and Ill open another one.

Well I have everything working, was wrong from the start, resolutions needed to be added to OpenGl too, so I used mesafx. (dont have the source for 3dfx opengl wrapper)

About a week lost experimenting with workarounds cus I was stubborn, happens :), at the end only resolution list had to be expanded.

Theres a smarter way of doing this, like those 2 wizzards from nGlide forum did, but sice this isnt a wrapper, would need a bit of a re-write to handle different resolutions and what they do to the card(2pixel rend, sli, could be more ...) and since voodoo has finite resolutions that are usable and someone has to make the timings, lets stick to "dumb" solution for now.

I need a bit of help getting sources if someone has them, mesaFx 6.3 (have 6.2 now), something for glide2x, Ill try to get that glideXp wrapper going, but just in case, I see people using newer that whats posted on koolsmokys site. Appriciated if someone has anything.
Ill just talk to myself some more :)

"Yea more exploring needed, just add some resolutions they said.... Its more than just glide part, does checks elsewhere too(I guess), so Im checking minivdd next , just hope its not that mode table ..."

No buddy your wrong, it is only in glide and it does look at the mode table, either add values or make a workaround ignoring modes.

"And if someone want to help me a little bit, how can I read debug messages?
"GDBG_INFO(110, "%s: "Read me");""

Sure buddy let me tell you, its easy, you just enable debugging when building dll, now when you run the game in the root folder you will get a .txt file "dbg" and you can read all the logoutputs there. Yea life is easyer now!
Yea more exploring needed, just add some resolutions they said.... Its more than just glide part, does checks elsewhere too(I guess), so Im checking minivdd next [|)], just hope its not that mode table ...

You can have desktop and d3d games already with just adding the required timings, that you can get here(bottom of post reg files):

And if someone want to help me a little bit, how can I read debug messages?
"GDBG_INFO(110, "%s:  "Read me");"
Anyway a few months later I gave it a go.

The problem is, those resolutions dont exists in the driver.
Game reads them from the system so they show up, but ofc when you go through opengl->glide, driver doesnt really know what the **** you want from it.

My "educated guess" was that the problem is not on the openGl icd/minigl side, since it behaved the same with different ones and atleast one of them (my money was on mesafx) would get it right, but on glides side, since it gets converted anyway.

Few days ago a took a shot at one of koolsmokys glide sources and got it to work(ish) using existing resolution placeholders and adding some more.

Its still far off and Im kinda lost in it, wont say I know what Im doing and theres some weird things happening or I missed something :D, but there it is
When Im done, Ill post the changes here or send to Sfft if he is still up to making an update to the driver.

21:9 - 1920x800

Hello 3dfxzone community!

If anyone could help me, or point me in the right direction.
On a voodoo 5500, I added some more 16:9 resolutions.

Direct3d games work fine, resolutions are there, they work, happy times. Glide, I had no expectations.
But OpenGl doesnt work.

New resolutions show up. But then the image is "letterboxed", or just crashes with a warning.

Example (at this point champagne bottle was being opened)

But then the letterbox...

One of the resolutins, thats a bit of an oddball, is ofc 1600x1024, thats present as is. This one also isnt 4:3, but works fine.

Anyone know whats going on and if something can be done?