VOGONS


First post, by underage

User metadata
Rank Newbie
Rank
Newbie

A few questions about the Geforce 7 series, if i may:

What is compatibility like for Geforce 7 cards with DX7 & DX8 games?
Do all GF7 cards support Table Fog? (Any specific drivers I have to look out for?)
16-bit dithering is supported with these cards? (I've seen claims to both ends...)

Reply 2 of 55, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

In some ways that is a bit difficult to answer, because when it comes to compatibility, it is much more so the software and the drivers that are important than the hardware.

Hardware wise, the geforce 7 doesn't have support for table fog and 8 bit palletized textures. From what I read table fog was always emulated on geforce cards in the driver but support was dropped for that after the FX series. The effect that this has in games is mostly pretty subtle. 8 bit textures are used as a foreground layer for the sky in thief 2, for example, and the absence of table fog can make fog look completely opaque where on a voodoo card or earlier geforce it would look partially transparent.

16 bit dithering is really only important on cards that lack support for true 32 bit colors. The geforce 7 of course supports 32 bit colors so it doesn't matter.

As for compatibility with old directx games, it's about OS and drivers. There are a few games you probably won't get to run in windows XP no matter what hardware you have. If you install windows 98, the geforce 7 drivers you can find and force to work are pretty bad and most of the problems you are likely to run into have more to do with how bad the drivers are than anything else. Within XP, I don't think there is any meaningful advantage to using an earlier video card to a more modern video card. The landscape of which games for which hardware and drivers isn't well documented at all, but again, it is far more about drivers than it is about hardware. With the exception of 8bit textures and table fog all geforce cards support the same features.

Reply 3 of 55, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

What is compatibility like for Geforce 7 cards with DX7 & DX8 games?

Good in general.

Do all GF7 cards support Table Fog?

No, only driver emulation, which is true for GeForce FX cards too btw. Still works on period correct drivers. May require to check one box in RivaTuner though.

16-bit dithering is supported with these cards?

GeForce 7 or older - yes; GeForce 8 or newer - no.

mothergoose729 wrote:

16 bit dithering is really only important on cards that lack support for true 32 bit colors.

Tell that to StarLancer or KISS: Psycho Circus.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 4 of 55, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
The Serpent Rider wrote on 2021-06-18, 20:22:
mothergoose729 wrote:

16 bit dithering is really only important on cards that lack support for true 32 bit colors.

Tell that to StarLancer or KISS: Psycho Circus.

Oh interesting. The only context I have read about 16 bit dithering in is usually for quake III, and then only to compare 1999-2001 era GPUs that weren't fast enough to render 32 bit colors.

EDIT: Found this discussion on a google search.

https://www.reddit.com/r/patientgamers/commen … computers_late/

Looks like there is a potential workaround with nouvea for nvidia cards.

Reply 5 of 55, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

Which is for Linux. Although it doesn't matter for GeForce 7 series .

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 6 of 55, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

There is probably an equivalent setting in nvidia inspector but I can't find it. If the geforce 7 supports it then it doesn't matter for the OP, but it is interesting for the broader discussion of retro games compatibility.

According to this discussion, dgvoodoo2 can emulate dithering or just render it natively in 32 bit. Would be interesting to experiment with.

Mafia 16-bit + dithering.

Reply 7 of 55, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

There is probably an equivalent setting in nvidia inspector but I can't find it

There is none. Nouvea had to implement dithering algorithm from scratch, which is probably just shader emulation, similar to how SMAA Injector works.

According to this discussion,

Yes, you can use wrapper to force 32-bit color or implement some custom shader which will dither the image or any other multistep way you can think of, but it's not what this thread is about.

but it is interesting for the broader discussion of retro games compatibility.

It's not very interesting. The problem was discussed for more than 10+ years now. And solutions didn't changed much from that time.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 8 of 55, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
The Serpent Rider wrote on 2021-06-18, 22:45:
There is none. Nouvea had to implement dithering algorithm from scratch, which is probably just shader emulation, similar to how […]
Show full quote

There is probably an equivalent setting in nvidia inspector but I can't find it

There is none. Nouvea had to implement dithering algorithm from scratch, which is probably just shader emulation, similar to how SMAA Injector works.

According to this discussion,

Yes, you can use wrapper to force 32-bit color or implement some custom shader which will dither the image or any other multistep way you can think of, but it's not what this thread is about.

but it is interesting for the broader discussion of retro games compatibility.

It's not very interesting. The problem was discussed for more than 10+ years now. And solutions didn't changed much from that time.

People who knew this stuff 10+ years ago leave the community and take their knowledge with them. I don't mind being your punching bag.

Are there are any other features that the geforce 7 has, or lacks, that are worth mentioning? I have asked about this before, but are you aware of any thread that documents this stuff well?

Reply 9 of 55, by underage

User metadata
Rank Newbie
Rank
Newbie

thx guys
I couldn't find any threads discussing the GF7 in depth, and I searched for quite a while. I want to use one of the cards with PCIe-AGP bridge chip, if i can get ahold of one.
Somewhat odd follow up questions - has anyone ever tried using a GF7 under pure DOS? Does it support VESA modes, and what version?
One other thing i'd like to try is getting a Vortex2 card working in win2k, and GF7 is the latest nvidia card with drivers for that OS.

Reply 10 of 55, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
underage wrote on 2021-06-18, 23:58:
thx guys I couldn't find any threads discussing the GF7 in depth, and I searched for quite a while. I want to use one of the car […]
Show full quote

thx guys
I couldn't find any threads discussing the GF7 in depth, and I searched for quite a while. I want to use one of the cards with PCIe-AGP bridge chip, if i can get ahold of one.
Somewhat odd follow up questions - has anyone ever tried using a GF7 under pure DOS? Does it support VESA modes, and what version?
One other thing i'd like to try is getting a Vortex2 card working in win2k, and GF7 is the latest nvidia card with drivers for that OS.

At some point nvidia did remove a lot of VESA modes from their bios, but I don't know exactly when that happened. I have seen threads discussing it with Kepler, which was geforce 600 series, quite a while after the 7 series. The geforce FX series, which I do own, handles DOS like a champ and so does the geforce 6 series according this matrix:

https://gona.mactar.hu/DOS_TESTS/

Reply 11 of 55, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

Somewhat odd follow up questions - has anyone ever tried using a GF7 under pure DOS? Does it support VESA modes, and what version?

Yes, VBE 3.0. May have a bug with unchangeable 60 Hz refresh rate in VESA modes, which was reported here on vogons. Fixable via HEX editing BIOS.

One other thing i'd like to try is getting a Vortex2 card working in win2k

Not very useful in Win 2k/XP - only basic DirectSound3D is supported.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 12 of 55, by underage

User metadata
Rank Newbie
Rank
Newbie
mothergoose729 wrote on 2021-06-19, 00:09:

The geforce FX series, which I do own, handles DOS like a champ and so does the geforce 6 series according this matrix:

The Serpent Rider wrote on 2021-06-19, 04:31:

Yes, VBE 3.0. May have a bug with unchangeable 60 Hz refresh rate in VESA modes, which was reported here on vogons. Fixable via HEX editing BIOS.

Excellent information!
I presume that would put the 7 series on par with any other GF series preceding it, as far as DOS compatibility is concerned?
Was this HEX editing mod documented in detail here on vogons or anywhere else? I've found only a few mentions of it back in some posts from 2008:

dvwjr wrote on 2007-12-09, 04:51:
I have not yet tested an 8xxx series card from NVidia, but the most all of the NVidia GeForce (non-motherboard integrated) video […]
Show full quote
Dominus wrote:

How is the VESA compatibility with newer cards? I think I read somewhere that it is no longer that great compared to old graphic cards...

I have not yet tested an 8xxx series card from NVidia, but the most all of the NVidia GeForce (non-motherboard integrated) video adapters from the 7950GT and below have very good VESA 3.0 (minus) 🤣 capability. The 'minus' is because of the mass market adoption of LCD screens and the release of VISTA, the post-GeForce 3 NVidia video adapters have received a reputation for being non-VESA compliant, especially under the Windows NTVDM environment.

The wide-spread adoption of LCD screens in the market caused the NVidia BIOS coders for the 5xxx, 6xxx and 7xxx series to do a sloppy job in implementing the video output register parameters for CRT screens. The positioning is off and the refresh rate is locked to around 60 Hz to ensure that most of the newer LCD screens do not give an 'out of range' error message as many would do with an 85Hz refresh rate. This helps avoid support issues, since even if there was an 85 Hz refresh rate option clearly marked for CRTs only, the zombies with LCDs out there would find a way to improperly select this CRT only option and cause grief for the technical support organizations. The LCD screen user see none of these problems and thinks that all is well in their 60 Hz world... 😒

The NVidia BIOS coders removed sections of BIOS code so that the CRT users can no longer use the VESA 3.0 Int10h call enhacements to function 4F02h to set the VESA VBE CRTC Information Block parameters, ncluding the desired refresh rate. This means the VESA utility programs such as VBEPlus and UniRefresh will no longer work in DOS, much less the NTVDM environment.

The release of VISTA and the deprecated support for Int10h calls in the VISTA kernel means that the NVidia (and others) video BIOS coders placed some BIOS level 'protection' in the latest BIOS versions to protect VISTA 32-bit from any full-screen NTVDM occurance. A side effect of this VISTA 32-bit video BIOS protection is to cause problems with the WinXP (SP2) users who get new NVidia cards or who update their video BIOS. The problem that they get is a failure to go into full-screen NTVDM session in any plain IBM VGA or VESA graphics mode with a Windows popup message such as this:

The NTVDM CPU has encounterd an illegal instruction
CS;c000 IP:d0d9 OP:c6 6c 38 0c c6 Choose 'Close' to terminate application

When I shifted from an Leaktek 6600GT to a BFG 7950GT I ran into the problem and had to fix the VGA.SYS for WinXP (SP2). Now all VESA 1.2 modes plus the NVida specific VESA mode 152h (2048x1536x32bpp) work just fine in an NTVDM session.

Hope this helps,

dvwjr

Re: The All-in-One Retro PC

I do intend to use a CRT, and 60hz just doesn't cut it. Matter of fact, I would also like to use VESA modes like 640x480 100/120hz if possible.
Are there any guides for this BIOS modification? Or does anyone have a properly modified vBIOS for a 7900 GS AGP that they could share?

Reply 13 of 55, by underage

User metadata
Rank Newbie
Rank
Newbie
The Serpent Rider wrote on 2021-06-19, 04:31:

One other thing i'd like to try is getting a Vortex2 card working in win2k

Not very useful in Win 2k/XP - only basic DirectSound3D is supported.

I found a post by ZanQuance that suggest he had A3D fully working under Win2k, that's how this idea came to be. Or is wavetracing just impossible with wmd drivers?

edit: Re: Vortex 2 in Windows 2000.

Last edited by underage on 2021-06-19, 08:36. Edited 1 time in total.

Reply 14 of 55, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

Or is wavetracing just impossible with wmd drivers?

A3D 1.0 will work because it's compatible with DirectSound3D. Advanced features of A3D 2.0 won't work.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 15 of 55, by underage

User metadata
Rank Newbie
Rank
Newbie

Reading around the forums, it seems this 60hz problem has started as early as the GF4 series cards? Could I use the BIOS values of a GF2 or GF3 to do this HEX edit on a GF7? Bit out of my depth here...
Re: UniRefresh no longer works on nVidia's latest

Reply 16 of 55, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++

Reading around the forums, it seems this 60hz problem has started as early as the GF4 series cards?

More likely just local occurrence. I have GeForce 2 MX card which refuses to work with VBE 1.x games like Duke Nukem 3D. But in general, cards up to GeForce FX should be relatively safe. GeForce 6 or newer - not so much.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 17 of 55, by underage

User metadata
Rank Newbie
Rank
Newbie

Did you try this GF7 HEX edit yourself? If i do this, would UniRefresh work again with GF7 series cards? I'm just entering a rabbit hole, I didn't know of this tools' existence before. Can i use any arbitrary refresh rate with it as long as my monitor supports it?

Reply 19 of 55, by underage

User metadata
Rank Newbie
Rank
Newbie
dvwjr wrote on 2008-07-03, 09:11:

for NVidia video adapters one must dis-assemble the vBIOS code to determine the location of the various tables which determine the VGA and VESA modes and 'dot-clock' values to change refresh rates.

dvwjr wrote on 2008-07-03, 09:11:

Once you program the CRTC registers directly, you can do almost anything in DOS... However, if you are going to use the standard VGA or VESA modes defined in the vBIOS via the Int 10h interface, the VESA video mode refresh rate might as well be changed with the standard VESA 3.0 vBIOS API, which is supported via the Int 10h/AX=4F02h ES:DI->CRTC information block with bit 11 of the BX=requested video mode bit set.

...

billyboy.png