あたりまえですが、No&Gmb;はPC98シリーズ(NEC)/Mac/Unixなどなど、IBM PC/ATでないマシンでは動きません。で、今まで諦めてもらっていたんですけど、これを見れば他のエミュレーター+セーブデーター改造とかで似たようなことできる(はず)です。

No&Gmb;動く方で「デバッガー使えないよ〜(困)」って場合でも、これなら簡単!?

と・・・思いきや。今度はエミュのチェックサムが合わなくて結局ダメらしい(^-^;
【セーブデーターで書かれるデーターの並び】

    こんな感じで書かれます。アドレスはNo&Gmb;で作られたセーブデーターをバイナリーエディターで開いた時のものです。別のエミュレーターでも、アドレスは(多分)違うでしょうけど、並びは同じだと思います。探しましょう〜

    プログラム中のアドレスが何を意味するのかは、わかっているメモリーアドレスを参考にして下さい。

    C100-C2FF	2CD5-2ED4	画面のデーター
    D11D-D122	2598-259D	プレイヤーの名前
    D123-D27A	2ED5-302C	連れているポケモン
    D27B-D9B1	259E-2C04	ずかん
    D3EF		2712		ピカチュウのごきげん
    D3F0		2733
    D9B2-DF17	202D-2592
    
    		3594		チェックサム(2598-3593)
    

【チェックサム】 for ピカチュウ版
    上の全部のデーターを足し算して下2桁のデーターはチェックサムと呼ばれていて、データーが正しいかどうかこれを判断する、とても良く使われる手法です。

    ポケモンの場合は、上のデーターは実際は3回に分けて書かれて、読み込まれる時は、2回チェックされます(違うと判断されたら、もう1度チェックする。それでも違うと「データーがこわれています」となる)

    ゲームの外でセーブデーターを改造すると、まずチェックサムが違うので、このチェックでアウトになります(^^; なので、ついでにプログラムも改造して、このチェックを外してしまいましょう(おいおい) セーブデーターを改造できれば簡単なはずです。

        チェックサム判断ルーチン(@オープニング)

        1.1回目のチェック OK?		→つづきからプレイできる
        2.2回目のチェック OK? →つづきからプレイできる
        3.「データーがこわれています」 →「さいしょからはじめる」


    1回目のチェックを外しましょう。具体的には分岐は JP NC,[2回目のチェック] (一致しなかったら、[2回目のチェックの部分]に飛ぶ)なので、ここを無条件ジャンプ命令に変更します。

    具体的には、アドレス 0007358B〜 の CA 9F 75 21 98 の[CA]を[C3]にするだけです(^-^) アドレスは"鶏肋(K6)"(Win用#vectorとかでダウンロードしてね)のものですけど、もしアドレスが違っても、上の文字列(CA 9F....)を検索しましょう。これでチェックサムはOKです。ゲームの中で、ちゃんとレポートすれば、次は正しいチェックサムが書かれます。

    ※本当にデーターが壊れている時でもゲーム始まるので、やる/やめておく はおまかせ(^^;
    ※他のソフトに応用してはいけません。登録コードチェックとか(笑)

戻る