VOGONS


First post, by Googolplexian

User metadata
Rank Newbie
Rank
Newbie

Hi Dege,

after a lot of frustration with NFS Porsche Unleashed and many days of testing I've finally figured out that since your "half-baked" release of dgVoodoo2 v2.83 it cause the game to crash in dx7 mode right after 30-60 seconds in race.
The crashes only appear when have the low texture/CPU speed >2,1 GHz fix applied in the Porsche.exe (which of course everyone should have!).
Original Porsche.exe works with the latest versions of dgVoodoo2 (but has low texture bug). The crashes only happen in the dx7 mode of the game. Glide mode works even with the patched exe. But I gladly want to have a stable release that works for dx7 mode aswell.
The last working version of dgVoodoo2 is the 2.82.5 release!

Can you please check this and fix it in the next version? Why was version 2.83 "half-baked"? I have the bad feeling that since this release some new issues introduced.

From the changelog of dgVoodoo2 v2.83 this may be the problematic line, but I don't know, it's just my guess:

Adding bounds checking into generated VS cpu code

Reply 1 of 7, by mitradis

User metadata
Rank Newbie
Rank
Newbie
Googolplexian wrote on 2025-01-21, 23:56:

30-60 seconds in race

if you stand still nothing happens (this indirectly says that this is not a problem with the wrapper but with the game engine). You need to change the view or hit into something. I think this is a game problem. It just became noticeable now (after changes in wrapper). Apparently these are one of those rare game crashes that are written about on the PCwiki. Something made (after changes in wrapper) this problem become frequent. And in that case it's not the wrapper's fault.

Googolplexian wrote on 2025-01-21, 23:56:

I have the bad feeling that since this release some new issues introduced.

v2.84.1 stable version.

Dege. Can you check Battlefield 2? Some bugs with black shadows (on many objects and terrain) with wrapper. This possible fix? This game shader problem (https://www.moddb.com/games/battlefield-2/add … ders-client-fix)

Last edited by mitradis on 2025-03-06, 21:53. Edited 1 time in total.

Reply 2 of 7, by Googolplexian

User metadata
Rank Newbie
Rank
Newbie
mitradis wrote on 2025-02-23, 12:42:

if you stand still nothing happens (this indirectly says that this is not a problem with the wrapper but with the game engine). You need to change the view or hit into something. I think this is a game problem. It just became noticeable now (after changes in wrapper). Apparently these are one of those rare game crashes that are written about on the PCwiki. Something made (after changes in wrapper) this problem become frequent. And in that case it's not the wrapper's fault.

Standing still also crashes the game within that time. So it's not a local area/position where the game crash but it's a time. Older versions of dgVoodoo works so it's possible to figure out and reverse the problematic change in wrapper.

Reply 3 of 7, by mitradis

User metadata
Rank Newbie
Rank
Newbie

In this case you right.

Reply 4 of 7, by Dege

User metadata
Rank l33t
Rank
l33t
Googolplexian wrote on 2025-01-21, 23:56:
Hi Dege, […]
Show full quote

Hi Dege,

after a lot of frustration with NFS Porsche Unleashed and many days of testing I've finally figured out that since your "half-baked" release of dgVoodoo2 v2.83 it cause the game to crash in dx7 mode right after 30-60 seconds in race.
The crashes only appear when have the low texture/CPU speed >2,1 GHz fix applied in the Porsche.exe (which of course everyone should have!).
Original Porsche.exe works with the latest versions of dgVoodoo2 (but has low texture bug). The crashes only happen in the dx7 mode of the game. Glide mode works even with the patched exe. But I gladly want to have a stable release that works for dx7 mode aswell.
The last working version of dgVoodoo2 is the 2.82.5 release!

Can you please check this and fix it in the next version? Why was version 2.83 "half-baked"? I have the bad feeling that since this release some new issues introduced.

From the changelog of dgVoodoo2 v2.83 this may be the problematic line, but I don't know, it's just my guess:

Adding bounds checking into generated VS cpu code

Well, ok, I could reproduce it. I just had to smash into a wall and it consistently crashed.

From the changelog of dgVoodoo2 v2.83 this may be the problematic line, but I don't know, it's just my guess:

Adding bounds checking into generated VS cpu code

Nope, that's only for D3D8/9 when a vertex shader is executed on the CPU.

Actually it turns out to be a game-side bug, "double freeing" a DD resource that couldn't be freed explicitly anyway.
dgVoodoo can handle those cases but I refactored a lot of code in DDraw in 2.83 to implement resource sharing and my new implementation turned out to be ineligible.
You can always look into the debug log:

506170	123.000857	41652	Porsche.exe	DirectDrawSurface7::GetAttachedSurface (this = 1449B4B8, lpDDSCaps = 0019F0E8, lplpDDAttachedSurface7 = 0019F104)
506171 123.000889 41652 Porsche.exe [dgVoodoo] WARNING: DirectDrawSurface (1449B4B8)::GetAttachedSurface: Failed, HRESULT: DDERR_GENERIC
506172 123.000920 41652 Porsche.exe DirectDrawSurface7::Release (this = 1449B4B8)
506173 123.000952 41652 Porsche.exe DirectDrawSurface7::GetAttachedSurface (this = 1449D438, lpDDSCaps = 0019F0E8, lplpDDAttachedSurface7 = 0019F0FC)
506174 123.000984 41652 Porsche.exe [dgVoodoo] WARNING: DirectDrawSurface (1449D438)::GetAttachedSurface: Failed, HRESULT: DDERR_GENERIC

DDERR_GENERIC is never a good omen.
Anyway, I fixed it.

Reply 5 of 7, by Googolplexian

User metadata
Rank Newbie
Rank
Newbie

Thank you, Dege. I can confirm you fixed it. I'm totally happy about it. 😀

Reply 6 of 7, by Dan Solo

User metadata
Rank Newbie
Rank
Newbie

I really appreciate you taking the time to test everything and share your thoughts. I'll look into the dx7 crash issue and check that line you mentioned.

Reply 7 of 7, by Googolplexian

User metadata
Rank Newbie
Rank
Newbie
Dan Solo wrote on 2025-03-26, 21:27:

I really appreciate you taking the time to test everything and share your thoughts. I'll look into the dx7 crash issue and check that line you mentioned.

The line I mentioned was not the case. I just assumed it must have something to do that affect CPU because the crash only happen when you have the modified Porsche.exe with the >2,1 GHz CPU speed fix. Original Porsche.exe cause low quality textures but it won't crash with this one. It's very strange.

To reproduce the crash:
- use Porsche.exe with CPU speed fix
- play in dx7 mode, not glide
- use dgVoodoo 2.83 up tp 2.84.1
- drive for a minute (always happened on Cote d' Azur)