【PCエンジンを弄る その2】
実際にCD-ROM SYSTEM CARDを使ったセーブデータの編集をします
編集対象のゲームは「桃太郎伝説II」にします
セーブデータを一番先頭に書き込んで欲しいので
天の声2やDUOのバックアップRAMは一度削除します
CD-ROM SYSTEMのPUSH RUN BUTTON!でセレクトを押せばメニューが出ますね
6ボタン設定にしてヒヤヒヤした人も多い事でしょう・・・
さて、桃太郎伝説IIスタートです
最初の家を出たところに居る婆さんに、きびだんごと100両をもらったら
すぐ最初の町の寺でセーブをします
セーブ完了後、メモリエディットでメモリデータを見ます
所持金は100両なので16進数で「64」の数値が怪しいのですが
見当たらないのでとりあえず、メモをします。ビバデジカメ♪
次にちょっとお金を使って、もう一度セーブしてみます
30両のしないを買って、残り70両となった桃太郎のデータは以下の通り
明らかに怪しく減ってる数値を探します
半ば感性の問題ですが、怪しい数値は以下の部分です
32→23に変わりました
他に露骨に変化してる場所は無いので、間違いなくコレでしょう
ちょっと考えてみると、70は16進数だと「46」となります
16進数の世界だと64→46に変化する事を想定していたが
32→23と変わったという事は、どう見ても÷2です
実際はそういう単純な仕組みではないですが
データの考え方としては間違っていないと思います
では、この数値を変更すれば良いかと試したところ
実際はそう簡単な話ではなく、単に変更するだけでは
破損データとなり、セーブデータが無くなった事になりました
予想はしていましたが、先ほどの100両→70両になった時に
変更があったメモリの値は他にもありました
マウスカーソルを合わせると変更前と、変更後が分かります
C012の45→94に変化してますが、これがチェックサムと言われるデータの異常を調べている値です。
人為的に弄る事を察知するよりも、データ破損をチェックする為の物で
目的の数値を変更するだけではこれに引っかかってしまい、破損セーブデータとなります。
ちなみに、想像ですがC020の00AC→4410は時間で
C057の00→18は装備品で「しない」だと思われます
チェックサムがある中でデータを変更すると言う行為を行う際の技としてデータの移動があります。
まず、チェックサムの簡単な仕組みの説明ですが
チェックサムは単純に数値を足し算した物です
00 01 02 03 のチェックサムは1+2+3=6となります
単純に足してるだけなので、この数値の順番を変える事には反応できません
00 02 03 01 とデータを変更しても、サムチェックではエラーは出せないのです
そこで23と言う数値をひとつ右にずらします
※マウスカーソルで移動前を表示
変更してい、いざスタートです
今度は正常にプレイできるようです
早速、所持金を調べてみると
キター! 70両から奇跡の17920両へ増加されました
この数値の仕組は
23x2=46→10進数変換→70
2300x2=4600→10進数変換→17920
となったのです。
さて、ココで疑問です。
このゲームには1両と言う存在はありますが
数値の移り変わりを見る限りでは1両はどうやって処理をしているのか?
そこで、1両と言う数字を作ってデータを見てみます
お金を預けて、引き出してを駆使して1両にしました
これが1両の状態のセーブデータ
これで謎が解けました(たぶん)
2進数の話になりますが
10進数 16進数 2進数
70両 00 23 0000 0000 0010 0011
100両 00 32 0000 0000 0011 0010
17920両 23 00 0000 0000 0010 0011
1両 80 00 1000 0000 0000 0000
101両 80 32 1000 0000 0011 0010
2進数の一番左が1の場合1両プラスという仕組みのようです
サムチェックの応用編として、せっかくなので1両で生まれた
80と言う数値を使ってデータ編集をしてみます
足して80になれば数値を分解する事できます
そんなわけで、7F 01と分けて入力してみましょう
↓
1両から65026両へ大幅に所持金アップです
これで、桃太郎も鬼を退治しなくても遊んで暮らせるでしょう
めでたし めでたし
おまけ+問題
桃太郎伝説IIを一度クリアするとターボモードと言うモードで遊べます
敵を倒した時の経験値とお金が4倍でIIを押しながらだと
早くで動けると言うモードです。(早く歩けるモードは通常でも欲しかった)
今更、チンタラノーマルモードで遊ぶのは嫌だ
ターボモードでサクサクストーリーを楽しみたいと言う場合
赤い文字のアドレスC08Cを00→02に変更するとターボモードになります
もし、このデータ変更をする事があれば
是非変更をしてターボモードスタートに挑戦して見て下さい。
気をつけなければならないのは、サムチェックがあるので
単純に00→02に変えるだけではいけません
サムチェックの値を変更するか、02と言う数値を作って入れ替えるのです
サムチェックについては、次に説明します
入れ替えで行う場合のヒントは4両です
おまけ2
桃太郎伝説IIをスタートさせて100両ときびんだんごを貰って
すぐに神社でセーブしたデータで、経験値を999999に変更したデータです
マウスカーソルを乗せれば変更前が見れます
プレイ時間は一致しないと思いますが、その他状態は一致すると思うので
9箇所変更するだけで、999999にする事ができます
一回戦うと・・・
↓
↓
60段で「ろっかく」を覚えると、使用する技が1で「ろっかく」が使えると言う
ろっかく大バーゲンとなります
サムチェックについて