令和に将棋ゲームをやるためにスーパーファミコンを買った

スーパーファミコン、はじめました。

なんで買ったの?

スーパーファミコンには、「早指し二段 森田将棋2」というある意味で有名なゲームがある。
このゲームは、私が10年以上RTA*1を行っている「最強羽生将棋」と同じセタから発売されたゲームである。
特筆すべき特徴は、カセット内に組み込まれた性能強化用の特殊チップである。
このゲームのためだけに作られたST018というチップは、本体のCPU性能を優に上回る32bit ARMプロセッサを搭載している。
このチップは非常に複雑で、トランジスタ数だけで言えばPS1*2のメインCPUをも上回るという。

 

さて、ここでエミュレータ*3の話をしよう。
形あるものはすべて壊れる運命にある。そうして過去の作品たちが永遠に闇に葬り去られる前に、できる限り実機に近い挙動をオープンな技術で再現し後世に伝えようというのが、エミュレータ開発の動機の一つらしい。

 

スーパーファミコンは、一昨年亡くなられたNear氏をはじめとする多くの技術者の尽力によりすべての商用タイトルがエミュレーション可能な状態になったとされている。
この極めて複雑なST018チップを含めて、である。

 

そんなエミュレータを使ったプレイ動画がYouTubeにアップロードされているのを見かけた。
しかし、その指し手に私は大きな違和感を覚えた。

 

おかしい、弱い。弱すぎる。

 

私はスーパーファミコンは持っていないが、ファミコンは父の実家から譲り受けたものを持っている。そのため、ファミコンの将棋ソフトの棋力はよくしっている。
この動画の「早指し二段 森田将棋2」は、スーパーファミコン最強どころか、どこからどう見ても前世代機のファミコンにすら遥かに劣る棋力である。

 

私は「最強羽生将棋」プレイヤーの端くれとして、セタの技術力の高さと常軌を逸した棋力への執念はよく知っている。
セタの主要な将棋ゲームにおいて、AIの開発元はそれを専門とする企業である。
そしてセタは、各ハードへの最適化を丁寧に行い、その実力を100%引き出してくる。

 

このソフトはそんなセタ、そして将棋ソフトの古豪「森田将棋」のタッグで、棋力を売りにした製品である。
ここまで弱いなどということは、絶対に、何がどうあっても、ありえない。

 

更にいえば、このゲームには段位認定機能がついており、所定の条件を満たせば将棋連盟に免状の交付申請ができる。
将棋連盟の段位認定はそこまで高精度ではないとはいえ、いくらなんでもファミコンにも劣るような棋力のソフトとの対局で段位認定など認められるものなのだろうか。


そこで、スーパーファミコン本体と「早指し二段 森田将棋2」を購入した。

実際にプレイしてみて

プレイしてみると、予想通りエミュレータによる動画のものと異なる手を示したのである。
また、実機でプレイされたとみられる動画の指し手とは一致した。
このゲームの指し手に乱数要素はないか、あったとしても極めて少ないようである。
つまり、何度もプレイしてまったく同じ進行にならない可能性は極めて低い。
エミュレータ、もしくは使用者の設定に問題があるのである。


該当動画では、投稿者本人のものを含め、ゲームに対する辛辣なコメントが多くある。
エミュレータの不具合か投稿者の設定ミスかは知らないが、こんなことでゲームの評価を歪めて伝えられてなるものか。
また、本来あるべき姿が歪んで伝わるのは、実機をできる限り忠実に再現し後世に残そうと尽力されたエミュレータ開発者の方々からしても不本意であろう。


さて、筆者は古い将棋ソフトについて、開発者目線ではなくプレイヤー目線として並より多少詳しい。
しかし、半導体回路については私は全くの門外漢である。ここから先は素人の放言としてお読みいただきたい。


思えば、ST018の話を聞いた時点で違和感は他にもあった。

 

まず、わざわざただのARMを専用に起こすのかという点である。
ST018は既存のARMパッケージをそのまま使ったものではなく、少なくとも確認されている限りではこのソフトにしか使われていないASICだそうだ。
そこまでするなら、何かしら将棋に最適化されていても不思議はない。

 

次に、なぜ「森田将棋」なのかということである。
90年台中頃以降のセタは、森田将棋と金沢将棋の二種の将棋製品を展開をしていた。
80年代から90年代初頭に無敵を誇った森田将棋だが、90年代中頃にはその棋力は金沢将棋に押され気味であった。
そこで、セタは新たに金沢将棋をラインナップに加えることになる。
その後のラインナップについて―これはあくまで私の見解だが―、PCやPS、N64などのモダンなマシンで棋力を追求する場合には金沢将棋、SFCなどハードウェア的な成約の大きい環境や棋力以外に売りがあるゲームでは森田将棋、というAIの使い分けがされているように見える。

 

さて、「早指し二段 森田将棋2」はどうだろう。
もし汎用的な32bit ARMを起こし、スーパーファミコン本体ではなくそちらをメインCPUとするのであれば、それは十分にモダンなマシンであったのではないだろうか。
そういった環境で森田将棋を採用した背景には、なにかこのチップが特殊だったため、という可能性はないだろうか。


スーパーファミコンのすべてのゲームがエミュレートできたというのが幻想なのか、はたまた単にこの動画投稿者のミスなのか。

ST018は単なるARMなのか、それとももっと常識はずれのなにかなのか。
とにかく、まずは調べてみなければはじまらない。

*1:やりこみの一種。ゲームの早解き。

*2:スーパーファミコンの次の世代のゲーム機

*3:あるシステムを別のシステム上で実行するための装置/ソフトウェア