Live data from Hacker News

Building an FPGA 3dfx Voodoo with Modern RTL Tools

noquiche.fyi

41–50 of 56 posts

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#41
post #25

Oof. The gamma on that screenshot. If you want to see what it's supposed to look like, copy the screenshot into GIMP, go into "Color, Levels" and in the "Input Levels" section, there should be a textbox+spinner with a "1.00". Set that to 0.45.

Apparently Voodoo cards defaulted to 1.3 gamma instead of the standard 2.2. I wonder why that is, since it theory using a non-standard gamma would just reduce your color range with no real benefit.

This is definitely fixable in the design though by looking at the DAC gamma register. I'll do so once I get to the scan-out implementation on the DE-10 Nano.

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#42
post #4

The project is cool, but the LLM generated blog bothers my brain.

Are you sure this is AI? Normally when I read AI written stuff I zone out because it can go entire paragraphs without saying anything. The sentences here seem short and to the point.

Their previous posts published before ChatGPT seem similar enough. Although, they have way more em dashes and this one has none, almost like they were removed on purpose... lol

I don't know what is real anymore.

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#43

The Voodoo cards had no right to look as good as they did for their time. Someone rebuilding one from scratch is exactly the kind of project HN was made for.

>The Voodoo cards had no right to look as good as they did for their time.

Nor did their marketing:

https://news.ycombinator.com/item?id=35027437

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#44
post #25

Oof. The gamma on that screenshot. If you want to see what it's supposed to look like, copy the screenshot into GIMP, go into "Color, Levels" and in the "Input Levels" section, there should be a textbox+spinner with a "1.00". Set that to 0.45.

Apparently Voodoo cards defaulted to 1.3 gamma instead of the standard 2.2. I wonder why that is, since it theory using a non-standard gamma would just reduce your color range with no real benefit. This is definitely fixable in the design though by looking at the DAC gamma register. I'll do so once I get to the scan-out implementation on the DE-10 Nano.

I recall Quake orignally being super dark, Like you were supposed to be playing this in some basement tomb. But we were 'testing' Pentium Pro workstations in a brightly lit windowed office, so we had to adjust the game's brightness. So I wonder if this was a "make Quake look good for demos" thing.

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#45
post #2

My first video card. Getting it working in linux in ~1999 was really not easy, especially for a teenager with no linux experience. My networking card wasn't working either, so I had to run to a friend's house for dial-up internet access, searching for help on Altavista. Very cool project. Way above my head, still!

A 3dfx Voodoo Banshee was the first graphics card I ever bought. I bought it to play the EverQuest beta, which also would have been around 1999. I remember logging into that game for the first time and it felt like a life-changing experience. And it kind of was.

I remember really liking the 3dfx splash screen[1] for some reason. Maybe because it was the only thing that actually ran smoothly on that card. But still, I was a loyal 3dfx user - probably because of their marketing which someone else mentioned in the comments - and was sad when it went out of business a couple years later.

[1] https://www.youtube.com/watch?v=LanTZ_AnAso

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#46
post #36

It’s been a while since I’ve struggled with Xilinx tools, but I can’t imagine there aren’t any hardware limitations these days. Does this run on a Spartan 6, or do you need the latest UltraScale for it? Or does this only run in simulation anyway?

This fits and runs in a DE-10 Nano without too much difficulty, uses around 70% of the fabric. I've been working on timing closure and just got it to 50 MHz. Note that I also implemented cache components not present in the original Voodoo in order to be more flexible in terms of the memory that can be used. So it could be quite a bit smaller, maybe 50% of the fabric if you got rid of that.

That's quite impressive. 70% is obviously way too big for a MiSTer core, but I wonder if one day we will have an affordable FPGA board able to simulate a late '90s PC...

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#47
Very cool! I am wondering one thing: how fast is it? Much of the "secret sauce" of the Voodoo is its high speed: a first-gen Verite or (God forbid) any ViRGE takes many more cycles for common operations like, say, Z-buffered pixels.

I'm guessing this isn't fully cycle-accurate, but is it at least somewhat "IPC-accurate"? I'm guessing yes? But much of that was also derived from Voodoo's (for the time) crazy high memory bandwidth AFAIK.

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#48
post #38
post #29

Earlier quoted context omitted.

I loved it, though from that era I liked Fatal Racing the most.

Surprisingly the original developers Milestone are doing a reboot/reimagining of the series which is out this week.

Funny, I saw the news about the new game just before I saw this article. I didn't know it was a reboot at all, I'd never heard of the originals. It looks cool.

https://store.steampowered.com/app/2814990/Screamer/

Re: Building an FPGA 3dfx Voodoo with Modern RTL Tools

#49

Very cool! I am wondering one thing: how fast is it? Much of the "secret sauce" of the Voodoo is its high speed: a first-gen Verite or (God forbid) any ViRGE takes many more cycles for common operations like, say, Z-buffered pixels. I'm guessing this isn't fully cycle-accurate, but is it at least somewhat "IPC-accurate"? I'm guessing yes? But much of that was also derived from Voodoo's (for the time) crazy high memor…

The Voodoo was fast but also expensive, and you needed an additional VGA card. I think it was around USD 300 back then, that's more than USD 600 today and you'll still need another card.
Post reply on HN