すべてのスーパーファミコンソフトをプレイできるというエミュレーター「bsnes」が完成したそうだ (本の虫の記事、開発者のブログ記事より) 。

スーパーファミコンのエミュレーターは多数存在しているが、bsnes はスーパーファミコン本体だけでなく、
ROM カートリッジ内に搭載された拡張チップの動作までもエミュレートする点が特徴で、
スーパーファミコンソフトで使われたすべての拡張チップ、そしてスーパーゲームボーイまでもエミュレートできるという。

bsnes は Windows および Mac OS X、Linux で動作する。ライセンスは不明だが、ソースコードは公開されている。


ttp://it.slashdot.jp/story/12/03/13/0225240/


さて、最後に残ったのはST018である。これはたった一つのソフトにしか使われていない非常に珍しいプロセッサーである。
ソフトの名前は、「早指し二段 森田将棋2」。将棋ソフトは処理速度を必要としたので、独自プロセッサーをカートリッジ側に搭載したのも分かる話だ。

その解析裏話も面白い。どうやら、ST018にはデバッグコマンドがあり、プログラムや内部ROMをダンプする機能があった
。デバッグコマンドを実行するのは難しいが、Blarggというこれまた有名なエミュレーター作者によって、
スーパーファミコンにシリアルポートをつなぎ、PC側から任意のコードを実行させることができるツールが提供された。
さて、ダンプはできたのだが、一体どのような言語なのかわからない。そのバイナリを実行するHLEコードもない。
幸運なことに、Cydrakなる人物がバイナリを一目見ただけで、ARMv3 CPUだと鑑定してくれたので、実装を終えることができた。


ttp://cpplover.blogspot.com/2012/03/bsnes.html