NGlide versus my glide games collection

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

Re: NGlide versus my glide games collection

Postby Gamecollector » Fri Jan 11, 2019 5:39 pm

WhiteMagicRaven wrote:I suggest to investigate this
https://www.voodooalert.de/board/forum/ ... post393148

Have added to this post. Will check for grGlideInit and glide.dll/glide2x.dll/glide3x.dll later.
Asus P4P800 SE/Pentium4 3.2E/2 GB DDR400 (3-3-3-8),
Radeon HD3850 AGP (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

Tarnum
Posts: 15
Joined: Fri Mar 22, 2013 11:24 am

Re: NGlide versus my glide games collection

Postby Tarnum » Fri Jan 11, 2019 7:10 pm

Drakan: Order of the Flame...
Mechwarrior 3 (+Pirate's Moon maybe?)..
Might and Magic VII: For Blood and Honor..
Sacrifice..
Shogun: Total War + Shogun: Total War - the Mongol Invasion add-on..
The Nomad Soul (aka Omicron: the Nomad Soul)
Thief: the Dark Project (maybe Thief: Gold too?)
If at least 1-2-3 of the above games could be runned under nGlide someday it will be... unbelievable! :o :shock:

Gamecollector
Posts: 971
Joined: Fri Jan 07, 2011 9:29 am

Re: NGlide versus my glide games collection

Postby Gamecollector » Sun Jan 13, 2019 3:18 pm

Tarnum wrote:If at least 1-2-3 of the above games could be runned under nGlide someday it will be... unbelievable!

Mobygames accuracy is *censored* so - no chances.

Added to the "native" glide list:

  • Dirt Track Racing - Ratbag/WizardWorks, 1999.
    Direct3d, software and glide. Uses glide2x.
    512x384, 640x400, 640x480, 800x600 and 1024x768 resolutions on Voodoo2 SLI. NGlide adds 960x720, 1280x1024, 1600x1200 and 320x240.
    Works ok on Voodoo2 SLI.
    NGlide 2.00 - broken menu text. NGlide 1.05 is ok.
  • Spearhead - Zombie/I-Magic, 1998.
    Direct3d and glide. Uses glide2x.
    512x384 and 640x480.
    I/O error after quitting with Voodoo2 SLI.
    "Smacker error: wrong pixel format" before a simulation (black screen after the 3dfx logo, press "Enter" once), freezes after Ctrl+Shift+X (quit mission).
Added to the "potential games to test":

  • Fighter Squadron: the Screamin' Demons over Europe - Parsoft I./Activision, 1999.
    Direct3d, software and glide. Uses glide2x.
    512x384, 640x480, 800x600 and 1024x768.
    1024x768 not works (drops down to 640x480).
    The official patch not installs (wrong sdemons.exe CRC) so - only the "potential" list.
  • Thandor: the Invasion - Planet 4/Jowood Pr., 2001.
    Direct3d, software, glide and powervr. Uses glide3x.
    640x480, 800x600, 960x720 and 1024x768. NGlide 2.00 - minus 960x720, plus 1280x1024 and 1600x1200.
    Mouse cursor ghosting with nGlide.
    Not works with WinXpSp3 ("is not a Win32 program!"), there is a patch (from an unknown origin).
    My cd-image have 1 unreadable sector so maybe this image is a bad dump... Because of this - the "potential" list was selected.
Attachments
DTR.JPG
DTR.JPG (41.85 KiB) Viewed 203 times
Last edited by Gamecollector on Mon Jan 14, 2019 8:20 pm, edited 3 times in total.
Asus P4P800 SE/Pentium4 3.2E/2 GB DDR400 (3-3-3-8),
Radeon HD3850 AGP (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

WhiteMagicRaven
Posts: 107
Joined: Sun Feb 28, 2010 11:10 pm

Re: NGlide versus my glide games collection

Postby WhiteMagicRaven » Mon Jan 14, 2019 9:16 am

Actua Soccer patch available (static link?)
https://gona.mactar.hu/3D/

and list for comparsion with vetz 3dfx dos games

https://www.vogons.org/viewtopic.php?t=35721

Gamecollector
Posts: 971
Joined: Fri Jan 07, 2011 9:29 am

Re: NGlide versus my glide games collection

Postby Gamecollector » Mon Jan 14, 2019 7:35 pm

@WhiteMagicRaven:
Z.A.R. not supports the glide API. Initial version is software (and DOS). There are ddraw, d3d and opengl patches. Glide patch wasn't developed.
NFL Blitz - original version freezes too. But there was the ACT fix (StackSwap) in the system database for the d3d version. I used similar parameters for the glide version, this method have succeded. Unfortunately the patched version not works with this fix, StackSwap parameters must be different.
Actua Soccer and Fatal Racing glide patches - looks like someone had both retail and 3dfx OEM versions then have packed different files. Both patches are unofficial. I have original versions but need to check OEM releases by myself before adding to the list. Currently - no luck, US OEM versions only. :)
Asus P4P800 SE/Pentium4 3.2E/2 GB DDR400 (3-3-3-8),
Radeon HD3850 AGP (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

WhiteMagicRaven
Posts: 107
Joined: Sun Feb 28, 2010 11:10 pm

Re: NGlide versus my glide games collection

Postby WhiteMagicRaven » Tue Jan 15, 2019 9:29 pm

Anyway, this unofficial patches works?
And can be added to unofficial support?
And if you got OEM versions and test also to support list?

Great 3dfx game list here , a huge work, impressed =)
i can't even imagine how many games support 3dfx , and i think there is lot games we still don't know of, and undiscovered.

We even can't read/watch/listen everything that contains 3dfx/glide/voodoo/etc - internet is ocean.

What is ACT?

WhiteMagicRaven
Posts: 107
Joined: Sun Feb 28, 2010 11:10 pm

Re: NGlide versus my glide games collection

Postby WhiteMagicRaven » Tue Jan 15, 2019 10:20 pm

found game not in your list:
https://www.youtube.com/watch?v=iyryqkC4D9o
comes from this list https://www.techspot.com/article/672-be ... ide-games/

maybe you already processed that one?

its interesting.

hm i love to search something in unusual way XD
i always find something just by accident
http://www.3dfx.cz/voodoo2/3dfxgameslist.txt

hm its intereting to build 3dfx glide games databese, for other side, how everything can be processed/controlled in this ocean.

also good idea is to not completely remove games that not support glide, but keep them in list, so its known for still missing 3dfx patch.

like if you found 3dfx version or glide patch you move game from mobygames or oldgames list to native list or other supported list.

if not found keep on mobygames or old games etc lists:

So anyone see its known game. And see difference its real 3dfx game or "still in searching or even simply 3dfx patch doesn't exist"
So always keep mobygames or oldgames lists with games as databese.

Can you tell please more about Static Link in 3dfx why it can be used with glide wrappers and what need to be done to make them use it, Ideas ? Theory?

Gamecollector
Posts: 971
Joined: Fri Jan 07, 2011 9:29 am

Re: NGlide versus my glide games collection

Postby Gamecollector » Wed Jan 16, 2019 1:08 am

WhiteMagicRaven wrote:What is ACT?

Application Compatibility Toolkit.


Virtua Fighter 2 is software. There is the d3d patch. The glide API isn't supported.

about static link

Dynamic linking (DL) - the program use something like "call function with XXX name from the library with YYY name" in the code. When you run the program - 1) the OS loads these external libraries in memory and 2) replaces all "call function with XXX name" to "call to ZZZ memory address". Or just 2) if the library was loaded by another program.
The main module is smaller, libraries can be shared, library code can be updated independently etc. The main trouble - backward compatibility. New version of .dll must support all old functions and all old hardware. Sometimes the result is different...

Static linking (SL) - all code for external functions is added to the main module. No external calls.

There was the common method for "dynamic linking" in DOS. Overlays. Unfortunately early DOS glide games have used the static linking...
Asus P4P800 SE/Pentium4 3.2E/2 GB DDR400 (3-3-3-8),
Radeon HD3850 AGP (Sapphire), Catalyst 14.4 (XpProSp3).
2 Voodoo2 12 MB (SLI), Win2k drivers 1.02.00 (XpProSp3).

WhiteMagicRaven
Posts: 107
Joined: Sun Feb 28, 2010 11:10 pm

Re: NGlide versus my glide games collection

Postby WhiteMagicRaven » Wed Jan 16, 2019 6:49 pm

so? static linked games is accessing directly to hardware by addresses of functionality?

ok than it should be possible by mapping "Direct Hardware Address Access" to "Same function that accessing it"

Making DOSBox itself like glide dynamic app.

And for start it Partial Emulation, Partial Function call.

In theory, steps:

0) Full emulation

1)Partial emulation, one external function call (almost same as Full emulation minus one address_access is mapped to appropriate external function
for dos static link exe it should be same as real hardware, its like status lie. DosBox itself detect
that something wants access address so he replace it to external call.

This is difficult and required some time to learn addresses and their equivalent function's + assembly .

in more abstract theory (as example): exe trying access address 0xfe32 with parameters 0x00 , 0xff , 0xff

in hex it looks like : (push is 0xfe84, jmp is 0xfd95)
fe84fffe84fffe8400fd95fe32
in assembly:
push 0xff
push 0xff
push 0x00
jmp 0xfe32

#at 0xfe32
#
# there is some assembly (or c++ written, what ever dosbox use) magic:) code that pop from stack values and draw pixel
#
#at 0xfe32

but in theory if we catch 0xfe32 address we call external function from glide(2x?).dll
which is "_grDrawPixel(int r, int g, int b)"

with that in theory is possible to "lower intensity emulation of that functionality by dosbox itself and leave it for faster GPU, or d3d API or whatever API is used by glide wrapper , nGlide is d3d9"
this should speed up dosbox

second wrappers often execute functions which is enhanced comparing to real hardware, so better graphics should be.

2) more and more remapped addresses to equivalent external functions.

3) dosbox inside is looks like real hardware for static exe, while its creating exact environment.
outside its just lie, MOST! addresses remapped to functions.
the addresses which is not remapped is actually does not have glide API calls? So they stay Emulated.

dosbox itself become as just Windows exe that uses glide dll

advantages as i think:

faster dosbox execution, because big parts of assembly (emulation code is cut off) instead it uses faster function calls + they executed in other CPU or GPU threads

better graphics , as wrappers can enhance graphics and don't use funky interlace image like voodoo2 does and even more noticeable on voodoo1 (voodoo graphics), 32 color space)

ok , it sounds simple: if we have game that calls function and function access address , than we can go backward way ->
-> we have direct address access, so lets do vice versa . Map all possible addresses to functions, not mapped is being emulated.

While is sounds simple, its just way difficult deep long work, with great advantages: better graphic, more Frames Per Second (FPS).

its how i see and believe in that, nothing is impossible, instead everything is possible =).


Return to “Problems”

Who is online

Users browsing this forum: Bing [Bot] and 7 guests