[SOLVED] How to check if GPU supports old Direct3D natively (for very old games) ?

mwasil

Prominent
Oct 18, 2019
26
1
545
Hi!
So, I built a 32-bit Windows XP rig (no internet) specifically for retro games. I wanted everything as new as possible, so I ended up with a GeForce GT730. Unfortunately, it seems like this card has some problems with very old games (like Blood 2: The Chosen) for example - it refuses to run games that require hardware support of the old D3D versions.

I also have a laptop from 2002 with Radeon Mobility 9700 - it runs all old D3D games like a charm - including Unrel Tournament in D3D mode and others.
My point being - how to check if a GPU supports the old D3D natively?

I have an option to buy a new-old stock of GeForce 9600GT (512mb) - will this be a good choice to support old D3D games?
Yes, I know - i could install newer renderers for these games, use virtual machines etc - point is - I don't want to, I prefer to play on actual hardware :)
 
Solution
Try install dx runtimes the games used. Graphics cards supporting higher dx version shouldn't be a problem, it's more likely Windows not including the dx runtimes or wasn't included with the gpu driver. Steam includes dx redistributables for old games when they're installed.

Maybe thisll help.

https://www.microsoft.com/en-au/download/details.aspx?id=8109

Also check the game's folder because they too often have dx runtime installers.

boju

Titan
Ambassador
Try install dx runtimes the games used. Graphics cards supporting higher dx version shouldn't be a problem, it's more likely Windows not including the dx runtimes or wasn't included with the gpu driver. Steam includes dx redistributables for old games when they're installed.

Maybe thisll help.

https://www.microsoft.com/en-au/download/details.aspx?id=8109

Also check the game's folder because they too often have dx runtime installers.
 
Solution

mwasil

Prominent
Oct 18, 2019
26
1
545
Thanks for all the answers guys!
Let me summarize this: I should download and install the whole, bundled DirectX package(s) from older versions (like DX8, DX6, etc) and try to install them?
The driver might be a case too, because I installed the newest one. I'll try to roll back to an older one and see what I get.

Did you install the old versions of d3d that the game requires?
What exactly is the error message saying?
Also this place might be much more useful to you.
https://www.vogons.org/viewforum.php?f=8
There are no error messages - for example, Blood 2: The Chosen launches, but 1) main menu is all crapped up and weird, scaled inapproprietly, sound is bugged 2) the gameplay is SUPER laggy, like severe drops to 5-10fps, consistently (on a GPU that is an OVERKILL for this game). The game is completely unplayable. Also, selecting resolutions over 800x600 crashes the game. The very same game runs like a charm on the Radeon 9700 from 2002. Other games simply crash on startup, or crash upon bumping resolution, or like the Blood 2 - lag like hell (slideshow instead of gameplay). This is not a GPU issue - games running on DX9 and up run absolutely fine.
 

boju

Titan
Ambassador
If it was dx runtime related the game wouldn't launch. Thought it was dx related because you said games refuse to run. They run, just not properly.

What version does the latest driver mean? Newest available before xp support was dropped?

Regarding xp drivers, if there is a chance an older driver might make the games playable, it'll be trial and error.

https://www.guru3d.com/files-details/geforce-344-11-whql-driver-download,54.html
 

mwasil

Prominent
Oct 18, 2019
26
1
545
If it was dx runtime related the game wouldn't launch. Thought it was dx related because you said games refuse to run. They run, just not properly.

What version does the latest driver mean? Newest available before xp support was dropped?

Regarding xp drivers, if there is a chance an older driver might make the games playable, it'll be trial and error.

https://www.guru3d.com/files-details/geforce-344-11-whql-driver-download,54.html
Yes, I'm currently using 368.81 if I remember correctly (win XP 32bit - downloaded from nvidia's site).
I'll roll back to older drivers and post results :)
 
Should point out hardware compatibility is not a problem. Microsoft fixed all this hardware compatibility business with Feature Levels. The GT 730 is at least FL_11 compliant, which means it has every feature required from DX11 and prior

That's not entirely true. A number of older modes were dropped in support. Pre- geometry engine and Direct Mode.

Other features depricated:
 

mwasil

Prominent
Oct 18, 2019
26
1
545
That's not entirely true. A number of older modes were dropped in support. Pre- geometry engine and Direct Mode.
Ok, so how to check it? Any card compatible with DX11 or 12 does not support the old stuff?

I tried re-installing DirectX 9.0c, so all the previous runtimes should be included in it too? The problem still persists....
Also, some games are just unstable. For example, Need For Speed Underground 2 simply crashes to desktop every now and then (and is laggy too). The same game played on the old Radeon 9700 runs stable.
 
Ok, so how to check it? Any card compatible with DX11 or 12 does not support the old stuff?

I tried re-installing DirectX 9.0c, so all the previous runtimes should be included in it too? The problem still persists....
Also, some games are just unstable. For example, Need For Speed Underground 2 simply crashes to desktop every now and then (and is laggy too). The same game played on the old Radeon 9700 runs stable.
Ignore that. Almost all of those API subsets have nothing to do with the graphics card.

The ultimate answer to "what DX version does my graphics card support" can be found at dxdiag in the Display tab -> Drivers -> DDI Version (this changed to "Feature Levels" in later Windows versions).

gbohzE8.png


Yours will likely report the same thing. DirectX was designed to be backwards compatible and Microsoft requires the GPU manufacturer to be able to support features of previous versions in order to qualify for a certain version. Again, I will say this is not a hardware compatibility issue. I have plenty of Windows XP era games on my Steam Library that run just fine on my RTX card. It would be really weird if hardware features were simply dropped in some cases and added back in others.

As much as this is a cop-out answer, the GT 730 was released in the tail end of NVIDIA's support for Windows XP. I honestly wouldn't be surprised if the QA for XP drivers at that point was "does it work? does it not outright cause a BSOD? kay, ship it" Which is why for the build where that screenshot is from I chose a GeForce 8 GPU. It was released in XP's swan song days before Windows 7 came out and everyone moved to that, so there was plenty of quality support for it. So as a last resort, chuck the 730 and get something that was released between 2004-2008.
 

xravenxdota

Reputable
Aug 26, 2017
435
66
4,990
My friend runs Blood 2 on a gtx 1060.But not all old games run.His using windows 10 which may be the problem.For instance Soul Reaver doesn't work properly.We have to by pass it to get it to work.Well another option is to see if it works in window mode.I have a game dungeon siege 2 that doesn't work in full screen.I use a program called BorderlessGaming to get it to work
 

mwasil

Prominent
Oct 18, 2019
26
1
545
Thanks a lot for all the answers!

As much as this is a cop-out answer, the GT 730 was released in the tail end of NVIDIA's support for Windows XP. I honestly wouldn't be surprised if the QA for XP drivers at that point was "does it work? does it not outright cause a BSOD? kay, ship it" Which is why for the build where that screenshot is from I chose a GeForce 8 GPU. It was released in XP's swan song days before Windows 7 came out and everyone moved to that, so there was plenty of quality support for it. So as a last resort, chuck the 730 and get something that was released between 2004-2008.
That makes sense. Since I already rolled back to the oldest driver version that supports GT 730 on a 32-bit XP (with no improvement), I decided to ditch it altogether, and I purchased the new-old-stock GeForce 9600GT. The "latest" driver version for this GPU is much, much older, so I hope this will fix all issues with older games.

However, that raises another question. I was never really able to play old games on my Win10 workstation. I had a 1080ti before, now I'm on RTX 3090. No matter which card I had, I always had the same problems with certain games (like the aforementioned NFSU2, Blood, etc...).
Some other people do not seem to have these problems. What could be the cause? Different Windows 10 builds? General driver corner-cases with different hardware configurations?
 
Thanks a lot for all the answers!


That makes sense. Since I already rolled back to the oldest driver version that supports GT 730 on a 32-bit XP (with no improvement), I decided to ditch it altogether, and I purchased the new-old-stock GeForce 9600GT. The "latest" driver version for this GPU is much, much older, so I hope this will fix all issues with older games.

However, that raises another question. I was never really able to play old games on my Win10 workstation. I had a 1080ti before, now I'm on RTX 3090. No matter which card I had, I always had the same problems with certain games (like the aforementioned NFSU2, Blood, etc...).
Some other people do not seem to have these problems. What could be the cause? Different Windows 10 builds? General driver corner-cases with different hardware configurations?

Windows 10 dropped support for 16 bit apps. If the original game is so old, it was compiled for the older windows (3.1, Me, 95) then it will not work any more. I think it may have to support Execuation disable bit as well. (Which prevents data section of programs executing like code...A common hacker techique.)
 
However, that raises another question. I was never really able to play old games on my Win10 workstation. I had a 1080ti before, now I'm on RTX 3090. No matter which card I had, I always had the same problems with certain games (like the aforementioned NFSU2, Blood, etc...).
Some other people do not seem to have these problems. What could be the cause? Different Windows 10 builds? General driver corner-cases with different hardware configurations?
The problem with "it works on my PC but not yours" kinds of problems is there's a bunch of variables at play that could cause havoc with software. One example I see as a potential avenue for problems is people tweaking system level configuration options in Windows, like messing around with services and whatnot. Tweaking these things are useful from the point of view of min-maxing the system for a single purpose. But not for a gaming PC that also does... well... everything else.

My approach to configuring Windows has always been:
  • Don't install more software than is necessary to run something
  • If it requires admin privileges (i.e., triggers the UAC prompt), leave it alone unless you absolutely know what it's doing.
But at the end of the day, older software was built around older software and newer software may not do things the same way.
 

mwasil

Prominent
Oct 18, 2019
26
1
545
Okay guys! Status update:
The 9600GT arrived. I DDU'd the driver, installed the new card, and... "SIGNAL OUT OF RANGE". Turned out my new display doesn't support old HDMI standards :(
Funny thing though..
i swapped the GPU's to the original state (put in the GT 730), reinstalled driver version 340.52, and... IT WORKS. ALL OLD D3D GAMES NOW WORK.
PLEASE EXPLAIN THIS TO ME I CANNOT UNDERSTAND WHAT HAPPENED O_O

ps. It was a fresh install of XP.