ファミコン(NES)エミュレータは古くからあります。WindowsやMac OSX、Linuxなど多くはデスクトップアプリケーションとして提供されていますが、スペック的にはすでにWebブラウザでも動くレベルです。 今回はJavaScriptで実装されたNESエミュレータ、FaithJSを紹介します。

FaithJSの使い方

デモのROMを読み込んだところです。サウンドも再生され、2プレイヤーにも対応しています。

ちなみにこのゲームはロックマン風ですが、かなりシビアです。この辺りはファミコン時代を彷彿とさせます。

河童ニットリちゃん。懐かしの忍者ハットリくんのクリア時にあるチクワゲットを再現しています(河童なのでキュウリをゲットします)。

バッドアピールをファミコンで再現しています。

FaithJSは元々コンピュータの仕組みを学習するためにはじめたプロジェクトであり、ここまでの仕上がりで作れたというのは驚きです。参考資料なども掲載されており、多くの学びがあったのがよく分かります。実装方法も参考資料によって様々あったそうで、同様の実装を行うことで学び取れることは多そうです。

FaithJSはnode/JavaScript製のオープンソース・ソフトウェア(ISC License)です。

FaithJS sairoutine/faithjs: FaithJS is a NES emulator which runs on your chrome.