「残念ながらこのコアはMiSTer FPGA上で正確に動作しない」3DOコア開発者が問題点についてインタビューに答える

「残念ながらこのコアはMiSTer FPGA上で正確に動作しない」3DOコア開発者が問題点についてインタビューに答える

MiSTer FPGAのセガサターンコアに加えて、最近は3DOコアをリリースしたことでも話題になった@srg320_ことSergiy Dvodnenko氏。同氏が「Read Only Memo」のインタビューに答える形で、3DOコアの課題について色々と語っています。

●すごい!ついに登場!MiSTerのSaturn開発者が、新しい3DOコアについて解説し、なぜそれが完全に完璧ではないかもしれないのかを説明します(Read Only Memo)
https://readonlymemo.com/mister-3do-core-progress-accuracy-interview/

Sergiy Dvodnenko氏が3DOコアの開発に着したのは、2023年10月。しかし、その頃は殆どの時間をセガサターンコアの開発に費やしていました。最初にYouTubeに動画を公開したちょうど1年後になる今年の3月21日に、最初の公開ビルドをDiscordでリリースしています。

Sergiy Dvodnenko氏によると、3DOコア自体の開発作業は2ヵ月も掛からなかった上に、必ずしも大変な部分でもなかったのだといいます。

現在3DOコアは400以上のタイトルが「プレイ可能」となっています。しかし、PALゲームはすべてタイミングが異なるNTSCで動作しており、その影響で音声のノイズなどを引き起こしてしまう場合があります。とはいえ、リソースが足りないのかというと、そういうわけでもなく、現在はFPGAリソースの約55パーセントを使用する程度に収まっているとのこと。

実は問題はそこではなく、主な問題となっているのは「VRAMエミュレーション」だとSergiy Dvodnenko氏はいいます。このVRAMエミュレーションには、一定量のFPGA内部メモリーが必要になりますが、3DOコアにはそれがないのです。

具体的に何が問題なのかというと、VRAMの主な問題点はバッファサイズが1ページ(512ワード)しかないことです。ひとつのコマンドでバッファとメモリーページ間でデータ転送を行うのですが、こうした機能はゲームをプレイ中、頻繁に行われます。

その速度を上げるために、3DOコアではVRAMをFPGAの内部メモリーに配置しているのですが、1/3しか収容することができないのです。そのため、残りはDDRAM(バーストモード)に配置されています。そこで、1/3の高速なVRAMを、全体のメモリー空間に対して異なるアドレスに配置する機能を実装。パフォーマンスがわずかに向上し、VRAMエミュレーションの精度もわずかに改善されたものの、理論的にはグラフィックの不具合や遅延などの不具合を引き起こす可能性も残っています。

この3DOコアでもっとも複雑なコンポーネントは、2Dや3Dグラフィックスの大部分をレンダリングしている「スプライトエンジン」です。FMV(Full-motion video)だけスプライトエンジンを使用せず、VRAMに直接コピーします。スプライトエンジンの一部はドキュメントに記載されているものの、それだけではすべてを把握することはできません。そこでSergiy Dvodnenko氏はいくつかのテストプログラムを作成。DMAの動作原理を把握することで、コアに実装しています。

しかし、一部の動作については解明出来ていないところもあり、それが完全な精度が得られないことにも繋がっているとのこと。いずれにせよ、コア自体も日進月歩でどんどん新たなバージョンがリリースされているので、今後の進展にも期待したいところです。

via.Read Only Memo

ABOUT US
アバター画像
retrogamer