VOGONS


First post, by Sandi1987

User metadata
Rank Member
Rank
Member

Is it possible to enable 3D-Acceleration (3dfx) in Microsoft Virtual PC 2007?

Reply 2 of 10, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Not anymore, sadly. 🙁

Edit: Connectix Virtual PC 2 & 3 on Macintosh supported a Voodoo 2 (V1 inofficially too).
- The Voodoo 2 was officially supported by Mac OS 9.x, too.
There were native Mac OS games that used it.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 3 of 10, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Here are some videos of mine that demonstrate how it was like:

https://www.youtube.com/channel/UCM_rzw6WcXib … ual%20PC%203dfx

Another program that supported the Voodoo 2 on a Macintosh was SoftWindows 98, I think.

If you like to get 3D graphics working in Virtual PC 2007, you need to use software rendering. 🙁

For real GLiDE support, you will need a wrapper.
But one that doesn't need hardware acceleration through Direct 3D or OpenGL.

The Wrapper Collection Project

But if the games are already happy with MiniGL that the Voodoo drivers provided,
a full-featured OpenGL might also do.

Windows XP still had built-in support for OpenGL 1.1, I think.
It could be rendered in software and drawn via GDI (or DirectDraw).
NT4/2k also shipped with v1.1, if memory serves.
Vista had an additional v1.4 wrapper, but I'm not sure about it.
It was introduced because Vista used the GPU exclusively through Direct3D.
So OpenGL had to be translated (wrapped).

Windows 98SE, unfortunately, is a bit more behind.
Not sure if it had true OpenGL support built-in.
I think it *may* had a very old one, though, because some of my OpenGL demo applications ran on Win9x.

Here's a third-party OpenGL for it, but I haven't tried.
https://www.cs.csustan.edu/~rsc/CS3600F01/InstallOpenGL.html

That being said, Virtual Box supports both 2D and 3D acceleration for Windows XP.
There were experimental drivers for the latter, based on WineD3D.
I used them in the VBox 2/3 days, more than 10 years ago.
These guest additions had to be installed in safe-mode, though.
Because, they replaced certain DirectX files. These drivers would then use OpenGL on the host to provide 3D support.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 4 of 10, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
Jo22 wrote on 2021-09-14, 07:23:
Not anymore, sadly. :( […]
Show full quote

Not anymore, sadly. 🙁

Edit: Connectix Virtual PC 2 & 3 on Macintosh supported a Voodoo 2 (V1 inofficially too).
- The Voodoo 2 was officially supported by Mac OS 9.x, too.
There were native Mac OS games that used it.

To be a little more clear, this isn't actually Voodoo emulation but it's instead Voodoo passthrough to a real Voodoo installed in your Mac. 😉

Jo22 wrote on 2021-09-15, 07:57:

Here's a third-party OpenGL for it, but I haven't tried.
https://www.cs.csustan.edu/~rsc/CS3600F01/InstallOpenGL.html

Gotta hand it to the academia world for their reputation of keeping web pages online, unchanged, for over twenty years 😁

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 5 of 10, by Bruninho

User metadata
Rank Oldbie
Rank
Oldbie

A bit off topic... what are the benefits of adding these third party OpenGL libraries to Win 9x, in particular, for games?

"Design isn't just what it looks like and feels like. Design is how it works."
JOBS, Steve.
READ: Right to Repair sucks and is illegal!

Reply 6 of 10, by Jo22

User metadata
Rank l33t++
Rank
l33t++
Stiletto wrote on 2021-09-18, 03:02:
Jo22 wrote on 2021-09-14, 07:23:
Not anymore, sadly. :( […]
Show full quote

Not anymore, sadly. 🙁

Edit: Connectix Virtual PC 2 & 3 on Macintosh supported a Voodoo 2 (V1 inofficially too).
- The Voodoo 2 was officially supported by Mac OS 9.x, too.
There were native Mac OS games that used it.

To be a little more clear, this isn't actually Voodoo emulation but it's instead Voodoo passthrough to a real Voodoo installed in your Mac. 😉

True, true. ^^ I meant the cards, also.

For the original iMac (G3, tray loading), there used to be a special Voodoo 2 that fitted into that strange "Mezzanine" debugging port.

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

Bruninho wrote on 2021-09-18, 03:26:

A bit off topic... what are the benefits of adding these third party OpenGL libraries to Win 9x, in particular, for games?

Good question, I wonder the same.
To be honest, I haven't played that many OpenGL games recently.
I think SRB2 v1.08 on Windows NT4 and OS X, was the one I played last time.

Unfortunately, I have no Windows 98 machine at hand right now for testing.

I had a Compaq laptop, but it's HDD broke. Replacing it with a CF card right now, but the BIOS is a bit picky..

Well, that's about it. My XP laptop also broke, bzw.
None of my Windows PCs are left.

Then there was my sister's notebook running Win8/10, but it's internal rechargeable broke.
Now the machine switches off randomly, because the rechargeable can't buffer energy anymore (recharger too week to power it solely).

Lastly, my father's Windows PC broke a few years ago due to leaked electrolytic caps..
I could have fixed that, but the since Windows 7 was reaching EOL, there was no reason to.
We decided to let it rest in pieces.

What's remaining now is my Raspberry Pi 4.
And a Power Mac running OS 9/X.
But there's already a Voodoo 2 installed. Hm. I'll see.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 7 of 10, by spiroyster

User metadata
Rank Oldbie
Rank
Oldbie
Jo22 wrote on 2021-09-18, 08:29:
Bruninho wrote on 2021-09-18, 03:26:

A bit off topic... what are the benefits of adding these third party OpenGL libraries to Win 9x, in particular, for games?

Good question, I wonder the same.

As the description says, it supports MMX instructions, so there would be a performance benefit when running on MMX CPU's. MMX is SIMD, and given 3D calculations heavily involve matrix and vector operations, SIMD would benefit the performance immensely (at least x4 for vector ops, possibly more for matrix ops).

Also, given SGI are the inventors of OpenGL, it's debatable weather this should be called 'Third Party', or in fact if any implementation is 'third party'. OpenGL is a standard (not an implementation), for 3D acceleration. Graphics cards vendors distribute an ICD (Installable client driver) for use with the hardware, which basically is the implementation that uses the hardware, so only useful if you are not using 3D acceleration.. and given the context of a VM, only useful if the VM virtualises (or emulates) MMX instructions.

For everything else on that page (GLUT, aka GL Utilities Toolkit etc), they are development libraries for writing OpenGL applications so unless you are doing that. No need to use them.

Jo22 wrote on 2021-09-18, 08:29:

And a Power Mac running OS 9/X.
But there's already a Voodoo 2 installed. Hm. I'll see.

Which uses a 3dfx ICD (probably) so the SGI OpenGL runtime won't be used anyway. Also PowerMac does not have an intel MMX CPU o.0.

Reply 8 of 10, by Jo22

User metadata
Rank l33t++
Rank
l33t++
spiroyster wrote on 2021-09-18, 11:25:

Also, given SGI are the inventors of OpenGL, it's debatable weather this should be called 'Third Party', or in fact if any implementation is 'third party'. OpenGL is a standard (not an implementation), for 3D acceleration. Graphics cards vendors distribute an ICD (Installable client driver) for use with the hardware, which basically is the implementation that uses the hardware, so only useful if you are not using 3D acceleration.. and given the context of a VM, only useful if the VM virtualises (or emulates) MMX instructions.

You're right, I think. I should have been more precise, also, I guess. My bad.
It's just that I wasn't aware of these details. I've been more of a 2D person, I assume. 😀
Please forgive my ignorance.

Yes, I think most virtualizers (VPX 200x, VirtualBox, VMWare Player) do support MMX inside the VMs.
The utilities and benchmarks that I tried did mention MMX.

spiroyster wrote on 2021-09-18, 11:25:
Jo22 wrote on 2021-09-18, 08:29:

And a Power Mac running OS 9/X.
But there's already a Voodoo 2 installed. Hm. I'll see.

Which uses a 3dfx ICD (probably) so the SGI OpenGL runtime won't be used anyway. Also PowerMac does not have an intel MMX CPU o.0.

Oh, I forgot to mention - I'm having a copy of Virtual PC 3 and SoftWindows 98 installed.
The Voodoo 2 could be removed.
SoftWindows 98 and Virtual PC 4 can emulate MMX.
Maybe even accelerate MMX through AltiVec unit found in later 4G Power PC processors.
AltiVec was seen as the counterpart to MMX/x87, I believe.

Anyway, this would mean that I modify the Windows 9x installation these emulators shipped with.
And I'm not sure what custom DLLs/drivers they shipped with.

Edit: I just remember that I also have a 586 PC in the attic.
Unfortunately, it has a Pentium 133 installed (no MMX) and that GA586 motherboard is somehow incompatible with Windows 98.
Strangely, though, Win95 and Me seem to run on it. 🤷‍♂️

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 9 of 10, by leileilol

User metadata
Rank l33t++
Rank
l33t++
spiroyster wrote on 2021-09-18, 11:25:

As the description says, it supports MMX instructions, so there would be a performance benefit when running on MMX CPU's. MMX is SIMD, and given 3D calculations heavily involve matrix and vector operations, SIMD would benefit the performance immensely (at least x4 for vector ops, possibly more for matrix ops).

MMX graphics acceleration's a 1997 myth pushed by Intel's marketing.

Also that SGI OpenGL ICD is only fast if:
- the game's designed for it (which means almost no games - it's optimized more for VRML with Cosmo Player than anything else)
- there's lots of nearest texturing and hinting to turn off perspective correction
- if 8-bit color is used (which all the commercial OpenGL games will never do)
- Exclusively GL_REPLACE rendering paths (means no lightmaps or any quake-inspired rendering techniques)
There's also a lot of missing GL 1.1 behavior in the ICD, like clamping. It's not going to perform VM 3D miracles and is only marginally better than the Microsoft GDI OpenGL software renderer. It's not going to drive any Glide wrappers and it certainly will do nothing about Direct3D.

then again, this was a muz-like OP....

apsosig.png
long live PCem

Reply 10 of 10, by spiroyster

User metadata
Rank Oldbie
Rank
Oldbie
leileilol wrote on 2021-09-18, 22:54:
spiroyster wrote on 2021-09-18, 11:25:

As the description says, it supports MMX instructions, so there would be a performance benefit when running on MMX CPU's. MMX is SIMD, and given 3D calculations heavily involve matrix and vector operations, SIMD would benefit the performance immensely (at least x4 for vector ops, possibly more for matrix ops).

MMX graphics acceleration's a 1997 myth pushed by Intel's marketing.

Ah yes forgot MMX is integer only. Still, even in OpenGL world, SIMD on integer operations would benefit. Filtering is the obvious candidate, and as a consequence, pixel fill rate would also benefit. So granted FP (matrix/vector ops) wouldn't benefit, there are many other aspects of a graphics pipeline that would, so yeah maybe Intel's marketing earning their dollar on that part, but not entirely a myth imo. SGI certinaly felt it was worth promoting, and the results spoke for themselves.

leileilol wrote on 2021-09-18, 22:54:
Also that SGI OpenGL ICD is only fast if: - the game's designed for it (which means almost no games - it's optimized more for VR […]
Show full quote

Also that SGI OpenGL ICD is only fast if:
- the game's designed for it (which means almost no games - it's optimized more for VRML with Cosmo Player than anything else)
- there's lots of nearest texturing and hinting to turn off perspective correction
- if 8-bit color is used (which all the commercial OpenGL games will never do)
- Exclusively GL_REPLACE rendering paths (means no lightmaps or any quake-inspired rendering techniques)
There's also a lot of missing GL 1.1 behavior in the ICD, like clamping. It's not going to perform VM 3D miracles and is only marginally better than the Microsoft GDI OpenGL software renderer. It's not going to drive any Glide wrappers and it certainly will do nothing about Direct3D.

Like the MS one, the SGI OpenGL runtime IS a software implementation, and can be used as drop in replacement for OpenGL32.dll (providing pure GL functionality is used... i.e no extensions), and unlike the MS one, provides a full spec implementation (that works). It's definately faster (in some cases a lot faster) and doesn't require linking against SGI's static libs though.

VRML (especailly VRML 2.0) concepts are very aligned with OpenGL functionality (VRML was based on OpenInventor, another SGI creation, so no surprise there) so to provide a decent Cosmo experience, nothing short of a full spec implementation would do (I pressume that's what is meant by 'optimised for VRML'). Certainly no miniGL would fit the bill. Also I would put the perofmance increase down to not just a strategically gimped implementation on MS's part, but also superior quality/optimised code from SGI's developers. What can I say, they know about graphics (and their STL implementation, one of the first, was also superior to other offerings from the likes of HP etc at the time ... ime).

In terms of gaming, If the game can use a miniGL, it should definately favour that even over a full spec ICD implementation for the same hardware due to smaller overhead. If no hardware acceleration can be used, software rendering only... personally would always favour SGI version over the MS one, unless there was a specific reason to do so, or the MS software renderer performed better than the SGI one... which I doubt (but of course may be possible).