VOGONS


First post, by Kahenraz

User metadata
Rank l33t
Rank
l33t

Please be aware that this is the only system I have built at the moment for testing DOS and Windows 98. It is not an ideal match for this generation of cards by any stretch and this information is instead presented simply as a test case for driver compatibility. I found this pairing to be especially interesting because it is so underpowered that there is measurably no performance difference between a GeForce 5200 and a 5950. There are some minor exceptions when comparing a benchmark that heavily uses shaders where the heavy lifting is being done by the GPU but overall performance in these situations would not be considered playable anyways.

Very basic software tests were performed to test for stability and graphical glitches. Not all tests were run to completion and specific performance characteristics were measured subjectively. These tests were done with the intent of testing a wide range of cards quickly to narrow down which drivers would be useful for proper testing and comparison later if the need arises.

Software tested:

Unreal (Direct3D)
Unreal Tournament (OpenGL)
3DMark 99
3DMark 2000
3DMark 2001
NVIDIA T&L Water Demo (here)

Both Unreal and UT were installed from the Unreal Anthology and no additional patches were used. Both 3DMark 99, 2000, and 2001 use the latest versions provided directly by FutureMark; this is important to note as there are different versions and updates were made to the original release. The NVIDIA T&L Water Demo is important because it is a very easy way to identify when compatibility starts to break in later driver versions.

Driver versions tested, 45.23, 53.04, 56.64, 61.76, 66.94, 71.84, 77.72, 81.85, 81.98.

OS is Windows 98 Second Edition stock with no additional service packs or updates. I don't think there are any updates that would have made a difference for these tests.

System specs are an Intel 440EX paired with a Pentium 2 at 300Mhz and either 128MB, 256MB ,or 512MB of RAM (more on why this is important later).

Test summary:

45.23

Works great but only supports a limited set of FX cards. Unreal displays only yellow to the screen when 256MB memory sticks are installed (Tested with FX 5200 AGP, Quadro 500 AGP; does not occur with FX 5950 AGP).

53.04

Works great with all software tested.

56.64

Works great with all software tested.

61.76

System will immediately bluescreen when loading a Direct3D game or benchmark. OpenGL works fine.

66.94

Graphical corruption and screen flickering in Direct3D games and benchmarks. Causes general system instability when software that failed to render correctly is closed.

* NVIDIA T&L Water Demo is missing light model.

71.84

Minor graphical corruption in 3DMark 99 benchmark. Alpha blending corruption in 3DMark 2000 slash screen when starting up. Starting 3DMark 2000 benchmark causes it to crash immediately; 3D acceleration becomes disabled and requires a system reboot for it to be restored.

* NVIDIA T&L Water Demo is missing light model.

77.72

3DMark 99 benchmark graphical corruption is gone. Alpha blending corruption in 3DMark 2000 splash screen is still present but the benchmark no longer crashes.

* NVIDIA TLWater demo is missing light model.

81.85

Alpha blending corruption in 3DMark 2000 splash screen is still present. 3DMark 2000 and 2001 benchmark has graphical flickering. Driver cannot be uninstalled from Add-Remove Programs; Nvudisp crashes with an invalid page fault. The driver must be uninstalled with DH Driver Cleaner instead.

* NVIDIA T&L Water Demo is missing light model.

81.98

Alpha blending corruption in 3DMark 2000 splash screen is still present. 3DMark 2000 and 2001 benchmark no longer flickers. Driver cannot be uninstalled from Add-Remove Programs; Nvudisp crashes with an invalid page fault. The driver must be uninstalled with DH Driver Cleaner instead.

* NVIDIA T&L Water Demo is missing light model.

Detailed summary of tests is as follows.

Detonator FX 40-series drivers :

Version 45.23 which is widely considered to be the "most compatible" by many users here on the forum had a very specific edge case in my testing. When running Unreal with the Direct3D renderer with a GeForce FX 5200 or Quadro 500 the game would launch but only a yellow screen would appear as the startup demo and music would play. Pressing Escape to exit the startup demo does not change anything and the screen is still solid yellow. The game is NOT frozen and I can exit the game by clicking the mouse in the top left corner and using the keyboard to navigate the menu to exit.

This issue is limited to Unreal only when using the Direct3D renderer, does not occur in Unreal Tournament (a very similar engine) or any other benchmark or test, and specifically occurs only when the system is equipped with either one or two 256MB memory sticks. Changing timings, AGP aperture, and swapping to a different brand of memory did not change this behavior; only lowering the amount of system memory would make the yellow screen go away.

Note that I had a limited set of cards at the time that would work with 45.23. The FX 5200 and Quadro 500 are similar enough that seeing the same bug occur for both cards is not unexpected. But what was unexpected was that this issue is not limited to just the driver version but also the card being used. The only other card I could test with this driver version was a 5950 which does NOT produce a yellow screen. Further testing is needed but it's interesting to note this edge case which involved an 45.23, an FX 5200-class GPU, and a very specific size of memory stick. The yellow screen did not occur when tested with any other card including a GeForce 4 MX 440, GeForce 3 Ti, and a Quadro 4.

ForceWare 50-series drivers :

This next version 53.04 fixed the "yellow screen" bug in Unreal. Everything else tested great and no problems with all of the 50-series of drivers.

ForceWare 60-series drivers :

This is the beginning of the end when it comes to FX compatibility in 9x, at least in my experience. Certainly some titles will play better with added performance but my experience was pretty terrible. Version 61.76 would not work at all with any Direct3D title on ANY card FX or prior and would immediately result in a BSOD. Interestingly, OpenGL works fine.

The next release version 66.94 was a bit better but produced graphical glitches and crashing to desktop would inevitably lead to system instability. I would not trust this driver for regular use outside of testing. This is also the first driver to produce a very strange bug in the T&L Water Demo where the light bulb model is completely missing. This bug exists up until the final driver release version 81.98.

ForceWare 70-series drivers :

This is when graphical corruption began to creep into 2D effects as well. For example, corruption in alpha blending effects which are probably bugs introduced by 2D GDI acceleration. This is very bad as it means that oddities will start cropping up even outside of 3D accelerated games.

ForceWare 80-series drivers :

2D corruption is still present in certain situations up until the very last version 81.98 driver. This is also the first version to introduce a new bug which caused Nvudisp to crash with an invalid page fault when attempting to uninstall via Add-Remove Programs. The only way to uninstall 80-series drivers is with DH Driver Cleaner.

The first release, version 81.85, produced a strobing effect in 3DMark 2000 and 2001. This was solved in the final driver version 81.98.

Bugs still present in the final Windows 9x release version 81.98 include 2D corruption (possibly related to GDI), the inability to uninstall the driver from Add-Remove Programs, and the missing light model in the T&L Water Demo.

--

In my experience I have found version 56.64 to work without issue and is the very last version before strange oddities and other glitches started to creep in.

It is expected that some of the bugs and problems I experienced are be due to the code path that the drivers used on my particular system. For example, certain bugs may not occur if your CPU has SSE or 3DNow! which may use a different code path. I suspect that this is the case as I have read of other people here on the forum using driver versions which do not work at all for me. Unfortunately, this particular system refuses to work with a Pentium 3 to enable SSE. Further tested would be required to see how this affects driver bugs and stability.

IMG_20210819_203241_resize_25.jpg
Filename
IMG_20210819_203241_resize_25.jpg
File size
214.64 KiB
Views
586 views
File license
Public domain
IMG_20210822_220909_resize_30.jpg
Filename
IMG_20210822_220909_resize_30.jpg
File size
596.25 KiB
Views
586 views
File license
Public domain
IMG_20210822_221130_resize_47.jpg
Filename
IMG_20210822_221130_resize_47.jpg
File size
487.24 KiB
Views
586 views
File license
Public domain
IMG_20210822_221143_resize_25.jpg
Filename
IMG_20210822_221143_resize_25.jpg
File size
468.04 KiB
Views
586 views
File license
Public domain
Last edited by Kahenraz on 2022-06-06, 03:17. Edited 1 time in total.

Reply 1 of 7, by Kahenraz

User metadata
Rank l33t
Rank
l33t

3DMark GDI alpha blending corruption:

3dmark.png
Filename
3dmark.png
File size
113.8 KiB
Views
585 views
File license
Public domain

Nvudisp general page fault when attempting to uninstall:

Nvudisp.png
Filename
Nvudisp.png
File size
6.62 KiB
Views
585 views
File license
Public domain

NVIDIA T&L Water Demo bug with light present and missing:

TLWater_1.jpg
Filename
TLWater_1.jpg
File size
88.59 KiB
Views
585 views
File license
Public domain
TLWater_2.jpg
Filename
TLWater_2.jpg
File size
88.51 KiB
Views
585 views
File license
Public domain

Reply 2 of 7, by Kahenraz

User metadata
Rank l33t
Rank
l33t

Related video by Phil on drivers. This isn't directly comparable with my testing as our test setup and objectives were different but still a good source of information:

https://www.youtube.com/watch?v=HRhm4aGNI3o

Reply 3 of 7, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I've finally managed to track down the cause of the driver instability I've been experiencing since version 56.64 in my testing. It comes down to Nvidia having a different code path for SSE-enabled processors or a bug introduced by a new optimization. This can be demonstrated exactly by the T&L demo with the missing light.

When testing any Pentium 2 or "Mendocino" Celeron, the light model disappears, graphical glitches begin to occur, and drivers overall become unstable. But without changing any drivers I swapped my CPU for a Coppermine and suddenly everything renders properly and the drivers become stable.

On a similar note, the Dawn demo will crash when run without a processor that supports SSE but only on NT 2000 or higher. It will still crash on Windows 98/ME even with SSE but this may be for a different reason.

Reply 4 of 7, by deksar

User metadata
Rank Newbie
Rank
Newbie

Very useful post with great details! It helped me a lot, just wanted to thank you Kahenraz.

Got an GeForce 4 MX 440 - 64 MB AGP card. I was having lots of troubles with 81.98 forceware, I couldn't even uninstall it (seems a known bug), the uninstall process is corrupted, but version 56.64 seems solved everything! No more dll crash, on Win98SE.

Thanks.

Reply 5 of 7, by Tetrium

User metadata
Rank l33t++
Rank
l33t++

This is indeed very nice 🙂

Whats missing in your collections?
My retro rigs (old topic)
Interesting Vogons threads (links to Vogonswiki)
Report spammers here!

Reply 6 of 7, by RandomStranger

User metadata
Rank Oldbie
Rank
Oldbie

It's good that you do it, and I understand you want to keep this to only a handful of software being tested, but 3 synthetic tests and 2 games using the same engine feels a bit too limited.
The testing environment: Win98BOX

My experiences regarding this with an FX5700 using the following games:
Aliens vs. Predator 2
Colin McRae Rally 2.0
Half-Life (using OpenGL renderer)
International Rally Championship
Need for Speed: High Stakes
Need for Speed: Hot Pursuit 2
Prince of Persia 3D
Quake III Arena
Serious Sam
Unreal (using DirectX renderer; patch 226final)

All the games were original retail releases.

As well as 3DMark2000 and 2001SE

45.23
Unsupported

53.04
Everything works fine, except NFS:HS which doesn't launch/crashes to the desktop right away.

56.64
Everything works fine, except NFS:HS which can only go up to 640×480 using 32bit color depht in 3D accelerated mode while awfully slow in 16bit.

61.76
Everything works fine, except NFS:HS which has a buggy main menu in 3D accelerated mode, with complete black screen and flickering panels when items are open.

NFSHS 2022-05-22 12-28-26-47.png
Filename
NFSHS 2022-05-22 12-28-26-47.png
File size
7.97 KiB
Views
257 views
File license
CC-BY-4.0

66.94
Reproduces the bugs you experienced.

71.84
3DMark 2000 crashes to the desktop when starting default benchmark. No additional issues, like alpha blending corruption on the splash screen or disabled 3D acceleration.
3DMark 2001SE works fine.
AvP2 crashes upon launch with an error messege: "AVP2 Error: Couldn't set D3D Emulation mode."
CMR2 crashes upon launch with an error message: "This program has performed an illegal operation and will be shut down."
Half-Life works fine.
IRC freezes the whole system with black screen. Reset needed.
NFS:HS crashes with an error message ("AMF=16 platformc(347)") in 3D accelerated mode, simply crashes to de desktop in software mode.
NFS:HP2 works fine.
PoP3D freezes on loading a game save. Only the game, not the whole system.
Q3A works fine.
Serious Sam works fime.
Unreal works fine.

Stability issues with Explorer/Active Desktop. Issues with uninstalling the driver from the Control Panel. Driver Cleaner necessary.
P.S.: I use DC anyway to remove leftovers after testing.

77.72
3DMark 2000 works fine.
3DMark 2001SE works fine.
AvP2 buggy loading screen, texture bugs during gameplay, single digit frame rate.
CMR2 buggy menu, texturing errors and other corrupitons during gameplay.
Half-Life works fine.
IRC works fine.
NFS:HS same buggy menus as with 61.76 cannot be navigated.
NFS:HP2 works fine.
PoP3D the save game loads very slowly, otherwise works fine.
Q3A works fine.
Serious Sam works fine, but about 20-25% slower than with older drivers. Still firmly 60+ fps.
Unreal works fine.

LITHTECH 2022-05-22 12-04-50-82.png
Filename
LITHTECH 2022-05-22 12-04-50-82.png
File size
728.57 KiB
Views
257 views
File license
CC-BY-4.0
CMR2 2022-05-22 12-08-04-27.png
Filename
CMR2 2022-05-22 12-08-04-27.png
File size
199.66 KiB
Views
257 views
File license
CC-BY-4.0

81.98
3DMark 2000 works fine.
3DMark 2001SE works fine.
AvP2 the previous errors persist.
CMR2 the previous errors persist.
Half-Life works fine.
IRC works fine.
NFS:HS loads the main menu without graphical issues, then the game immediately freezes.
NFS:HP2 works fine.
PoP3D slow loading fixed, works fine.
Q3A works fine.
Serious Sam works fine, but the performance issue persists.
Unreal works fine.

Issues with uninstalling the driver from the Control Panel. Driver Cleaner necessary.

None of the drivers were without issues, I decided to stay with 56.64 which seems to be the most compatible and over all the fastest by a very small margin.

Edit:
Need for Speed: High Stakes is a general incompatibility/bug. Fix is here: Re: What retro activity did you get up to today?
With this it works in 1280×960@32 with a fixed 65fps (monitor refresh rate set to 75Hz, it's 60fps with 60Hz) using driver version 56.64. I'm lazy to check the game again with the rest of the drivers.

sreq.png retrogamer-s.png

Reply 7 of 7, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I haven't done extensive testing for game compatibility, but I wanted to share that 81.98 is very stable on my Intel i945 with Pentium D 945. This adds further evidence that driver compatibility appears to be very dependent on the CPU feature set.

I was also able to get a Quadro FX 1300 PCIe working with drivers from the 60 series and above with Windows 98, but with a lot of problems. For example, Unreal lags horribly on the FX 1300 but is smooth on an FX 5200. The FX 5200 could also run Doom 3 just fine, albeit very slowly, while I could not get the FX 1300 to run it on any driver version without graphical glitches, corruption, or crashes. I was able to get Morrowind to run on both cards, but performance was about the same, with around 15 FPS at the starting town of Seyda Neen. For comparison, the FX 1300 on the same machine is able to maintain about 60 FPS in the same area on Windows XP.

Radeons are definitely more stable on Windows 98 with PCI Express. It's arguably useless on an GeForce FX.