超絶技巧プログラマのku-ma-meさんがファミコンのエミュレータをRubyで書いた、とのこと:Optcarrot: Ruby で書かれたファミコンエミュレータ - まめめも

SDL2をインストールして(brew install sdl2 sdl2_image)、リポジトリからcloneしてコマンドラインから起動してみたら(bin/optcarrot examples/Lan_Master.nes)、実際に動いた。ものによって15~30FPSくらいで動く。

エミュレーションが相当よく出来ていて、スプライトとBGの重ねあわせ、ラスタスクロール、スプライトの横制限などちゃんと再現されている。サウンドも--optオプションを付けて起動して処理が間に合えばちゃんと鳴る。このレベルのものをどのくらいの期間で作ったのか気になる…。また、最初からRubyで開発してたとしたらエミュレーションの処理が間に合わなくてゲームがまともに動かないので開発のモチベーションを保つのが難しいんじゃないかと思うんだけど、Cとかで作ったものをポートしたのかなぁ?

Optcarrot: A Pure-Ruby NES Emulator from mametter
  • 「ポストインクリメント、どう考えたって普通のプログラムでは++ってしたいんですよ」(動画) ワロタ