NGlide versus my glide games collection

Report bugs, errors, problems, etc.
Gamecollector
Posts: 1067
Joined: Fri Jan 07, 2011 9:29 am
Location: RU

Re: NGlide versus my glide games collection

Post by Gamecollector »

Zeus, can you please fix the Realmyst .exe? This *censored* game constantly quits to the desktop if a certain resolution was selected. And IIRC you said this is the game bug, not the nGlide bug.
ASUS P4P800 SE, Pentium4 3.2E/2 GiB DDR400 (3-3-3-8), Sapphire Radeon HD3850 AGP, 2 Voodoo2 12 MB (SLI), Audigy 2 ZS.
Windows XP SP3 Pro Rus (w/o the POSReady hack), Catalyst 14.4, Voodoo2 W2k 1.02.00 drivers.
User avatar
Zeus
Site Admin
Posts: 1712
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: NGlide versus my glide games collection

Post by Zeus »

Gamecollector wrote:Zeus, can you please fix the Realmyst .exe? This *censored* game constantly quits to the desktop if a certain resolution was selected.
I know, I know, but for now this has to wait.

In the meantime you may try grabbing exe from GOG release. It's possible they fixed it already (I don't have the game so can't confirm).
Gamecollector
Posts: 1067
Joined: Fri Jan 07, 2011 9:29 am
Location: RU

Re: NGlide versus my glide games collection

Post by Gamecollector »

Found an old backup of EverQuest. The game supports the glide API. To be more precise: the game tutorial supports, maybe the client itself supports too.
Troubles are - I not have and not want to have the account in this game, the current client version may abandon the glide support, the client from this cd not updates and not starts.
And by the way - MMORPGs and MMO as the genre are sucks.

Maybe add another section to the list? "Online".

P.S. NGlide 1.05 is bugged in the tutorial:
Everquest.JPG
Everquest.JPG (63.54 KiB) Viewed 14784 times
P.S.S. Can't find the dependencies chain from tutorial.exe to glide3x.dll... Tutorial.exe have some _gr* strings but Dependency Viewer not shows a link to glide3x.dll. Similar to Lego Chess?
ASUS P4P800 SE, Pentium4 3.2E/2 GiB DDR400 (3-3-3-8), Sapphire Radeon HD3850 AGP, 2 Voodoo2 12 MB (SLI), Audigy 2 ZS.
Windows XP SP3 Pro Rus (w/o the POSReady hack), Catalyst 14.4, Voodoo2 W2k 1.02.00 drivers.
Gamecollector
Posts: 1067
Joined: Fri Jan 07, 2011 9:29 am
Location: RU

Re: NGlide versus my glide games collection

Post by Gamecollector »

Another problem was found...
Starsiege: Tribes, 1024x768, demo "Beatdown". Quits to the desktop at 3:40. Nglide 1.04 quits too. Voodoo2 SLI is ok.
WtF? A memory leak?
P.S. 640x480 quits too at 3:32.
Last edited by Gamecollector on Fri Sep 01, 2017 10:24 am, edited 1 time in total.
ASUS P4P800 SE, Pentium4 3.2E/2 GiB DDR400 (3-3-3-8), Sapphire Radeon HD3850 AGP, 2 Voodoo2 12 MB (SLI), Audigy 2 ZS.
Windows XP SP3 Pro Rus (w/o the POSReady hack), Catalyst 14.4, Voodoo2 W2k 1.02.00 drivers.
User avatar
NicoDE
Posts: 67
Joined: Fri Aug 24, 2012 9:09 am
Location: Germany
Contact:

Re: NGlide versus my glide games collection

Post by NicoDE »

NicoDE wrote:
Gamecollector wrote:Apache Longbow:
1) The original version lose the focus (Alt+Tab once fixes this). Not sure about the source of this (this version isn't Voodoo2 compatible so can't test it with a real hardware).
I have the same issue with King's Quest: Mask of Eternity. Not always, the chance is 50/50.
Finally I found the reason by enabling the nGlide logging...
The IDirect3D9::CreateDevice sometimes returns E_INVALIDARG (nGlide handles only the documented D3D error code, therefore the fallback code is not executed). nGlides hides the active window in grSstWinOpen if this fails. The next time the function is called, there is no active window for the current thtead and nGlide creates a new window. This breaks the application logic and mouse cursor is no longer working.

Re-showing/activating the app window in my runtime hook works around the issue. Trying it a second time usually succeeds. However, I have to implement even more code to hide all this stuff from the application :-)
Gamecollector
Posts: 1067
Joined: Fri Jan 07, 2011 9:29 am
Location: RU

Re: NGlide versus my glide games collection

Post by Gamecollector »

Have tested ICC Cricket World Cup: England 99 (The Creative Assembly, EA, 1999). The game installs voodooa.dll. But - there are no signs of the "thrash API" in the registry. D3d only.
No luck... :(
P.S. The tested version was from the compilation (The Biggest Names the Great Games 4) but I doubt the original version will be different.
ASUS P4P800 SE, Pentium4 3.2E/2 GiB DDR400 (3-3-3-8), Sapphire Radeon HD3850 AGP, 2 Voodoo2 12 MB (SLI), Audigy 2 ZS.
Windows XP SP3 Pro Rus (w/o the POSReady hack), Catalyst 14.4, Voodoo2 W2k 1.02.00 drivers.
Gamecollector
Posts: 1067
Joined: Fri Jan 07, 2011 9:29 am
Location: RU

Re: NGlide versus my glide games collection

Post by Gamecollector »

Err... Zeus, there is a problem.
Tiger Woods PGA Tour 2000.
640x480, Details are high, the fog density is low.
Pebble Beach GL99, Practice, only the 1st hole.
Thrash driver=voodoo2, nGlide 1.05 loading time - 40 seconds. Can't say the long loading time is fixed.
Thrash driver=voodoo, nGlide 1.05 loading time - 6 seconds. Fixed.
Wrong target and no 1024x768 with the glide2x renderer are fixed too.

P.S. Similar loading times in Tiger Woods PGA Tour 2001.
ASUS P4P800 SE, Pentium4 3.2E/2 GiB DDR400 (3-3-3-8), Sapphire Radeon HD3850 AGP, 2 Voodoo2 12 MB (SLI), Audigy 2 ZS.
Windows XP SP3 Pro Rus (w/o the POSReady hack), Catalyst 14.4, Voodoo2 W2k 1.02.00 drivers.
Gamecollector
Posts: 1067
Joined: Fri Jan 07, 2011 9:29 am
Location: RU

Re: NGlide versus my glide games collection

Post by Gamecollector »

New game to the "native" list:
  • Skydive! - Groove Games, 1999.

    Very strange game. Hybrid cd, no directx dependencies but supports 3dfx. Plus can't find the glide2x dependency with standard tools...
    The game is too fast on my test PC. Plus it needs the 640x480 desktop.
    Looks ok with the nGlide 1.05.
Skydive!.JPG
Skydive!.JPG (30.6 KiB) Viewed 14649 times
Last edited by Gamecollector on Sun Jun 23, 2019 4:16 pm, edited 6 times in total.
ASUS P4P800 SE, Pentium4 3.2E/2 GiB DDR400 (3-3-3-8), Sapphire Radeon HD3850 AGP, 2 Voodoo2 12 MB (SLI), Audigy 2 ZS.
Windows XP SP3 Pro Rus (w/o the POSReady hack), Catalyst 14.4, Voodoo2 W2k 1.02.00 drivers.
User avatar
Zeus
Site Admin
Posts: 1712
Joined: Sun Sep 21, 2008 2:51 pm
Contact:

Re: NGlide versus my glide games collection

Post by Zeus »

Gamecollector wrote:Found an old backup of EverQuest. The game supports the glide API. To be more precise: the game tutorial
Really unexpected... :)
Gamecollector wrote:P.S.S. Can't find the dependencies chain from tutorial.exe to glide3x.dll... Tutorial.exe have some _gr* strings but Dependency Viewer not shows a link to glide3x.dll. Similar to Lego Chess?
Most likely the game loads Glide libraries dynamically, you should be able to find them in a dll(s) or exe by searching for "glide3x" string in your hex-editor.
Gamecollector wrote:Another problem was found...
Starsiege: Tribes, 1024x768, demo "Beatdown". Quits to the desktop at 3:40. Nglide 1.04 quits too. Voodoo2 SLI is ok.
WtF? A memory leak?
P.S. 640x480 quits too at 3:32.
Added to check list.
Gamecollector wrote: Thrash driver=voodoo2, nGlide 1.05 loading time - 40 seconds. Can't say the long loading time is fixed.
Thrash driver=voodoo, nGlide 1.05 loading time - 6 seconds. Fixed.
This is not a bug, but a performance issue. The game reads color buffers like crazy during loading screens. While it's great it's faster now in 1.05 it should be further improved.
Gamecollector wrote:New game to the "native" list:
Skydive! - Groove Games, 1999.
Very strange game. Hybrid cd, no directx dependencies but supports 3dfx. Plus can't find the glide2x dependency with standard tools...
Again, use hex-editor (HxD?) and search for "glide2x" text (unicode unchecked). It must be somewhere, either in exe or in one of game dll files (some dlls may have extensions renamed).
NicoDE wrote:The IDirect3D9::CreateDevice sometimes returns E_INVALIDARG
Hmm.. that's really interesting. The game must be doing some weird stuff with active window forcing D3D to return such odd error. I will remove a code that hides the window (obvious) but what if this will cause CreateDevice to return E_INVALIDARG forever so the game won't launch at all sometimes?

It would be great if you could remove a line that hides the window with your hex editor in 1.05 glide2x.dll and report your results.
User avatar
NicoDE
Posts: 67
Joined: Fri Aug 24, 2012 9:09 am
Location: Germany
Contact:

Re: NGlide versus my glide games collection

Post by NicoDE »

Zeus wrote: The game must be doing some weird stuff with active window forcing D3D to return such odd error. I will remove a code that hides the window (obvious) but what if this will cause CreateDevice to return E_INVALIDARG forever so the game won't launch at all sometimes?

It would be great if you could remove a line that hides the window with your hex editor in 1.05 glide2x.dll and report your results.
I removed the following calls:

Code: Select all

SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, NULL, SPIF_SENDCHANGE);
ShowWindow(g_WindowHandle, SW_HIDE);
If grSstWinOpen() fails, the game calls it a second time with the previous resolution.
If the second call also fails, the game is crashing.
If the second call succeeds, the game state is wrong (it thinks it uses the requested resolution - the loading screen elements are on the wrong positions).

This can happen directly during the start, because the game is always starting with 640x480 and then switching to 800x600 if enabled.

I will keep the retry-loop (up to 5 times, never failed more than 2 times in a row) and the hidden-window-handling for the next release of the KQMoE Shim (kqmoefix). So there is no need to change nGlide (the window-hiding / switch-to-an-internal-window might be required for other games).
Post Reply