海外版スーパーファミコン、「古くなるとむしろ動作が早くなる」怪現象が報告される。“ゲーム機若返り”の謎を、コミュニティ総出で大検証

海外ユーザーによって、SNES(Super Nintendo Entertainment System、海外版スーパーファミコン)が「経年によって動作がむしろ早くなっているのではないか」との憶測が生じている。いくつかの推論も立てられているものの、現時点ではその理由は定かではない。Time Extensionなどが報じている。
SNESはスーパーファミコンの海外バージョンにあたるゲーム機だ。1990年にリリースされた日本国内版スーパーファミコン(SHVC-001)から遅れること約1年で北米向けに展開。その後ヨーロッパやアジア各国などにも発売された。特に北米版のSNS-001では、ゲーム機本体のデザインが異なり、ボタンのカラーが紫を基調としたものとなっている、といった特徴がある。

「年を取ると早くなる」怪現象
そんなSNESについて2月27日、BlueSkyにてTASBotというアカウントを介し、dwangoAC氏がSNESに関する投稿をおこなった。なおdwangoAC氏は、TASVideosのスタッフだ。TASVideosは、ツールを用いて人力では再現の難しい操作をおこない最速クリアなどを目指すTAS(Tool-Assisted Speedrun)の記録を集積するサイトおよびコミュニティである。
dwangoAC氏の投稿によれば、SNESでは「経年によってむしろ動作速度が向上している」という現象が確認できたそうだ。通常電子機器であれば、日光や湿気、ホコリなどといった数々の要因のほか、そもそも用いられているコンデンサなどの劣化により、動作不良となることもあるだろう。しかしながらdwangoAC氏の計測においては年数が経ったSNESにもかかわらず動作が高速になっていたようだ。この怪現象は何が原因となっているのか追求すべく、ユーザーに向けてデータ収集への協力を呼びかけていた。
ここでSNESの「動作が早くなる」とはどういうことか。コンピューターや電子機器においては、クロック信号と呼ばれる、常に一定周期で振動する信号を用いて、複数の回路の同期を図っている。基本的にCPUなどは1回のクロック信号ごとに処理を実施するため、クロック信号の周波数が高いほど、「高速で」処理を実行できることになる。そしてクロック信号を生み出すには、振動子と呼ばれる、一定の周波数で振動する部品が用いられる。
振動子のクロックが早い、つまりクロック信号の周波数が高ければ高いほど、電子機器が一定の時間において処理できる信号の数が増える。簡単に言うと周波数が高いと機械の処理速度が上がるわけだ。ちなみにスーパーファミコンのCPUのクロック信号には水晶を用いた振動子を用いており、APU(オーディオ処理ユニット)にはセラミックを用いた振動子を用いているという。SNESの処理速度が向上したということは、この振動子が、何らかの要因によって、本来想定されている周波数より高い周波数で振動したからではないかと考えられているわけだ。
コミュニティ総出の実機検証

TASをおこない記録を追い求めるコミュニティとしては、周波数が何らかの原因で高くなることで、処理速度が上がり、“再現不可能”な記録が出てしまうことを懸念しているようだ。そのためdwangoAC氏は、実際に一定の手順でこの怪現象が再現されるのか、原因を調査することにしたとみられる。またもし原因が特定されれば、経年劣化したはずのSNESの処理速度が上がった理由の説明にもなるだろう。
調査にあたっては、専用の調査ツールが制作された。このツールによって、各個人が所持しているSNESで信号処理における周波数が計測されたという。ツールを用いて起動直後の周波数と、一定の手順を踏んだ後の周波数を比較され、実施された手順が“怪現象”のトリガーであるかどうかを判定する調査がおこなわれた。
なお今回調査の発端となったdwangoAC氏の報告によれば、同氏の所持するSNESで、温度がある程度高くなると低温時に比べ周波数があがったという。そのため上述した調査において「起動直後」と「手順を踏んだ後」で周波数が比較されたのは、SNESの本体温度の違いによる周波数の違いを比較するためのようだ。実際に他のSNESでも本体温度が高くなると周波数が上昇するのか、またその上昇幅のデータを集める狙いがあるのだろう。調査では、起動およびツールの実行から5分未満時点の温度を基準として、起動/ツール実行から15分以上経ち温度変化がほとんどなくなったタイミングの温度を比較している。
約2週間にわたってユーザーより寄せられた143件のデータによれば、測定された平均の周波数は3万2076Hzとなった。また全体の傾向として、高温状態になると8Hzほどの周波数上昇がみられたという。ただ高温状態に計測された周波数として寄せられたデータは、下限が3万1965Hz、上限が3万2182Hzとなっており、同じ高温状態のデータ同士でも217Hzの開きがある。
なお具体的な温度のしきい値は定められていなかったものの、集計結果の一部を確認する限りでは、外装の温度で測定開始時点が約23℃、高温状態が約34℃ほどになったデータがあった。ユーザーによって条件は異なるだろうが、少なくとも10℃前後の温度差がある状態での比較データとなっているようだ。
さらにTASbotの投稿によれば、dwangoAC氏自身もこのテストをおこなったようだ。同氏はSNESを“凍らせて”から測定したそうだが、それでも約30℃の温度変化に対し、周波数は32Hzしか変化しなかったという。温度変化による周波数上昇幅に対し、先述したとおり高温状態で計測されたデータ間には最大217Hzという開きもあり、ユーザーごとの値のブレの方がはるかに大きい。つまり加熱したことによる周波数上昇は計測における誤差の範囲内である可能性が考えられるだろう。

少なくとも今回の調査結果を見る限り、「温度上昇によって振動子の周波数があがり、その結果処理速度が上がった」という仮説は原因としては不適当そうだ。したがって、dwangoAC氏のSNESが「高速化」した原因は、長時間起動したことによる本体の温度上昇ではないとみられる。とはいえ、今回の結果は経年劣化したはずのSNESがなぜか高速化した原因を究明していくにあたり、まず一つの可能性を除外したにとどまるだろう。
ちなみにTASBotは、今回の調査結果を受けて、温度差による記録への影響は低く、TASのタイムに影響を及ぼす可能性は低いとの見解を示している。ひとまずTASにおいて“SNES加熱レギュレーション”を設ける必要はなさそうだ。しかし高速化する原因や、ゲームプレイへの影響に関して検証では明らかにされていないままで、TASbotは今後も謎の高速化については分析が必要だとの見解を示している。経年劣化したはずのSNESの高速化の原因が将来明らかにされることはあるのか、調査の行方が注目されるところだ。