VoodooグラフィックスをFPGAで再現、Tomb Raiderが当時の3dfxレンダラーで動作
Recreating Voodoo Graphics and a Late-1990s Gaming PC on an FPGA

筆者はz486 CPUに続き、3dfx Voodoo Graphics(SST-1)をSystemVerilogで実装したzSSTを開発。Xilinx KV260上でz486 XLとして統合し、Tomb Raiderをオリジナルの3dfxレンダラーで動作させることに成功した。ピクセルパイプラインは比較的素直に実装できたが、4つのテクセルを並列に供給するメモリシステムの設計とデバッグに最も苦労したという。
I ended up spending more time designing, tuning, and debugging the memory system than the arithmetic pipeline.
HNでの議論
57- jumploops
誰かの役に立つかもしれないので書いておくと、MiSTerは古典的なコンピュータやビデオゲーム機をハードウェア上で再現するプロジェクト[0]です。
ハードウェアで再現するとはどういうことか?
ソフトウェアでデバイスをエミュレートすると、さまざまな問題(特にタイミング関連)が起きることがありますが、実際のデバイスのロジックをfield programmable gate array (FPGA)にマッピングすることで、ハードウェアの「正確な」レプリカを実現できます。
これは超クールなプロジェクトで、古いマシン(Apple II、Commodore 64など)に興味があるなら、ぜひチェックしてみることを強くおすすめします。
- userbinator
ここ数年で、以前は非常にニッチな話題だったGPUの低レベルな内部構造やプログラミングに関する記事が大幅に増えたように思う。しかし、GPUとは概念上、グラフィックス操作に特化したプロセッサであり、独自の命令セットとRAMを持っていると理解すれば、すべてはごく単純に見えてきて、実際にどう実装するかを考え始めることさえできる。
仕様とは回路図ではなく、振る舞いの目標なのだ。
この文を読んで、少しLLMっぽさを感じた人は他にいるだろうか?文句ではない。AIが確実に素晴らしい後押しをもたらしていることに気づいているからだ(これを書いている時点で、やや関連する https://news.ycombinator.com/item?id=49717638 がフロントページにある)。
- monster_truck
Voodoo 3000 PCIを買うために2回の夏を芝刈りに費やしたが、それでも必要な額の半分にも届かなかった。残りは両親が出してくれた。期待していたゲームはほとんど動かず、Arcanumを動かそうと夏の間ずっと試したが、結局成功しなかった。それでも多くのことを学んだ。
あの買い物の後悔が一生の傷として残らなかったかというと、そうでもない。それ以来、何かを買う前に行う調査は強迫的と言えるほどだった。それでも、10歳の自分にとってあのカードが象徴していたもののせいで、今でも愛着を持って思い出す。この話にはハッピーエンドがあり、ほどなくしてPentium 3とGeForce 2を搭載したDell XPSを手に入れた。まだベージュだった頃の話だ。
- shoobiedoo
MiSTerのHDMI出力を壊してしまって本当に落ち込んでいる。新しいモニター配置を考えているときに、何度か抜き差しした。SSHで入るのは問題なかったが、HDMI出力が出なくなった。フォーラムを覗いてみたところ、MiSTerは電源が入ったままの抜き差しに弱いらしい——技術的な理由は忘れた。まあいいや。息子と一緒に何時間もゲームを楽しんだので、元は取れた。
- wk_end
Tomb Raider (1996) は表向きPentiumが必要で、私の486ではデモが動かなかったのを覚えている(記憶は怪しいかもしれない)。このFPGA 486は追加のPentium命令をサポートしているのだろうか?