2020年4月25日の日記を表示中
2020年 4月25日 (土)
■基板
これまでCPS3の電池切れカートリッジで動かしていたプログラムは海外で解析済みの情報(プログラムのバイナリ列の中のどこが命令でどこがデータか)を元に構成したものだったりするんですが、すべてのバージョンが解析されいてるわけではないようです。というか、ストIII 3rd以外は単一バージョンしか解析されていない模様。
一方で、あらゆる電池切れCPS3を復活させようと思うと、未解析のバージョンにも対応しなければなりません。もちろん未解析のバージョンであっても頑張れば一から解析できるとは思いますが、できることなら楽をしたいもの。
そこで、バージョン違いであるならば大きなプログラム上の差異は存在しないと仮定して、差分のみを抽出し、そこを追加で解析することで未解析のバージョンの解析を楽に行う方法を考えました。
差分は、解析済みのバージョンと未解析のバージョンの両方のプログラムを2Byte単位で区切った16進数に変換し、diff コマンドで差分を取ることで得られるはずです。後は、差分で置換・挿入・削除された箇所の属性(命令 or データ)を推測できれば・・・。
■マリオ3Dワールド
読み込み不良だったWii Uのマリオ3Dワールド、ダメ元で任天堂に修理に出してみたところ、やはりメディア不良とのことで、何と有償でメディア交換となりました。かかった費用は送料込みでわずか1,000円ちょっと。任天堂、凄過ぎなんすけど・・・。ありがたや。
交換済みのメディア。
おおお、認識された! よかったよかった。
[コメントを書く]
2020年4月25日の日記を表示中
[コメントを書く]