VOGONS


First post, by SmokyWhisky

User metadata
Rank Newbie
Rank
Newbie

Hello, I'm trying to use a real 3dfx Voodoo card in a relatively modern (well, about 7-8 years old now, 2nd gen Core i7 based) system by booting it into FreeDOS from a USB stick and running DOS games that support Voodoo cards from there. Is something like this even supposed to work, because I sure as hell cannot get any of the three games I've tried so far on two different cards to run properly?

Games I've tried are Descent 2, the GTA1 3dfx demo and the first Tomb Raider (both Voodoo 1 and Voodoo Rush versions). Cards I have on hand are an unknown Voodoo1 board and a Gainward Dragon 3000 Green (based on a sticker on the card) Vodooo2 board. Mostly the games just don't start at all, refuse to detect the Voodoo card, show a black screen or hang the machine. V1 board + GTA1 demo goes a bit farther though: game starts, but all I see from the Voodoo's video output is a garbled mess of pixels. I'd try the full version of GTA1 too (which apparently even has official support for V2) but I don't have it anymore, and Rockstar's free release unfortunately only included the Windows port if I remember correctly.

D2 and TR1 do run fine in software mode by the way (albeit without sound of course), so it's just the Voodoo support that is a problem.

I know that when running games that were made for the V1 on a V2 I should run a batch file which sets some environment variables before starting the game, but that didn't seem to help. The Voodoo Rush patch for Tomb Raider also seemed to require a glide2x.ovl file which I took from a Voodoo2 driver pack from here.

I'm not sure if the cards are functional (the V2 should be, but it's been years since it was last used), in fact I was trying to get this setup to work to see if they still are. Both are visible in Linux (and according to lspci -v have 16MB of memory space reserved), so at least they aren't completely dead. I was also interested in perhaps trying to write a bit of code to make the cards do something from Linux, like at least switch the VGA output on, maybe even draw a few polys on screen...

(also I didn't try any of this with both cards installed in the machine at the same time of course)

Reply 3 of 6, by SmokyWhisky

User metadata
Rank Newbie
Rank
Newbie
rasz_pl wrote:

I remember Voodoo1 needing patched driver >1GHz

So a patched glide2x.ovl file could possibly help? (in games that don't have static linked Voodoo support) I could also underclock the i7-2600K but I'm not sure how low it will go and whether it helps that much (also IIRC there's no option to disable caches in the UEFI settings to slow it down further)

The Serpent Rider wrote:

Voodoo 1 - no.
Voodoo 2 - yes.

Currently I can't get the V2 card to do anything at all in DOS. V1 goes into game in the GTA1 demo but shows a broken mess (and I think the game hangs since pressing ESC followed by Y doesn't work, IIRC that's how you quit the game). Any recommended free demos with official V2 DOS support I could try?

Hopefully I get to try these cards in an old PC later, right now I unfortunately don't have any other working, complete system to test them in... The V2 was removed as working from a system a long time ago, it has been lying in a box since then. The V1 card was quite dusty since it was lying on a shelf without protection, I cleaned it up a bit as much as I could without suitable liquids, but maybe it could do with further cleaning. (I know one original GUS card which had strange problems but it started working perfectly when the ISA connector was thoroughly cleaned.)

UPDATE EDIT:
I just downloaded the "3dfx Glide 2 and 3 diagnostics kit" from this page. I only found out after rebooting that the DOS exes (under 3dfx/Sdk/Glide2x/Bin/DOS/) required glide2x.ovl + dos4gw.exe which weren't included, so I used the same glide2x.ovl from a V2 driver package I tried with TR1's Voodoo Rush version earlier and also copied dos4gw.exe from TR1's directory.
V1 card isn't detected at all but I guess it's not supported by the diagnostics kit anyway, or depends on ovl file. V2 is detected but all tests I tried hang the computer. If I switch my monitor to show the V2's video out I see a black screen. Oh well, at least the card is finally outputting a video signal.

Also for what it's worth, here's what lspci -vv under Linux says with the V2 card installed:

05:02.0 Multimedia video controller: 3Dfx Interactive, Inc. Voodoo 2 (rev 02)
Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Region 0: Memory at db000000 (32-bit, prefetchable) [size=16M]

Reply 4 of 6, by havli

User metadata
Rank Oldbie
Rank
Oldbie

Not sure about V2... but V1 definitely have a lot of compatibility troubles when trying to run it on faster systems. What I personally tried and worked was K6-2 400 on AMD side and P4 2 GHz + i845 chipset on Intel side. And what didn't work was anything LGA 775 era and later. Not even 1.2 Ghz Conroe Celeron.

HW museum.cz - my collection of PC hardware

Reply 5 of 6, by SmokyWhisky

User metadata
Rank Newbie
Rank
Newbie

Well... I just found out the Linux kernel actually includes a framebuffer driver called "sstfb" which supports old Voodoo cards! Now I definitely have to see if I can get some picture out of the cards using this when I get back home. I wish I knew about this a bit earlier, at the moment I can only ssh back into my machine and do modprobe sstfb. According to dmesg output it seems that the driver at least detects the V2 successfully and creates a new framebuffer device. No errors and no hang.

Interesting stuff this too (register-level programming a V1 card via the framebuffer device in Linux, it works because the card is 100% usable via MMIO only): part1 part2 part3

I wonder has anyone already got Glide running directly on Linux (not just in a VM with PCI passthrough) in a modern machine with up to date kernels and distros? 😁 Next step then would be to patch DOSBox to utilize that... (which seems already done?)

Reply 6 of 6, by Baoran

User metadata
Rank l33t
Rank
l33t

I needed specific version of glide2x.ovl even to get voodoo 2 work in dos games in pentium 3 1Ghz, so I assume you need at least that in even faster PCs. The only ovl file was in driver version V3.03.00 in http://falconfly.vogonswiki.com/voodoo2.html, so if I were to try to make voodoo 2 work in even faster PCs and dos, that is the ovl file version I would start with.