DOC_pwoff.jp 2.25 KB

        ライト中の電源強制遮断について


1. 症状

        64DD に対してのライト中にユーザが電源を遮断した場合、その時点で
        書き込み中のブロックの内容が壊れてしまう可能性があります。その場
        合、次にそのブロックをリードしようとすると、

                i)  エラー23が発生する
                ii) エラーは何も起きないが、データが壊れている

        のいずれかの症状が発生します。しかし、ディスクやドライブが故障に
        なるわけではありません。詳しくは「3. 対処法」を参照してください。

        本パッチをあてる前は電源遮断によりエラー24が起きる可能性もあり
        ましたが、エラー24は他にも発生原因があるため、このエラーが起き
        てもそれが(ライト中の電源遮断によって引き起こされた)一時的なエラー
        なのか、それとも(修理の必要な)致命的なエラーなのかの区別がつきま
        せんでした。本パッチをあてることで、電源遮断によって引き起こされ
        たエラーは23に統一されます。

        (ライト中にディスクが強制的にイジェクトされ、ディスクの再挿入を
        待つ間(64DD プログラミングマニュアル第10章のエラー処理シーケン
        ス参照)に電源が遮断されても同じことです。以下、この場合もあわせ
        て電源遮断として考えることにします)。


2. 検出

        ii) の「エラーが起きない」という場合があることに注意してください。
        これは1ブロック内に85あるセクタのうち、前の方のセクタには新し
        いデータが入り、後ろの方のセクタには古いデータが入ったままになる
        ことから起きてしまいます。

        これを検出するために、ゲーム側でチェックサムを設ける等の手段を講
        じてくださりますよう、よろしくお願いします。


3. 対処法

        どちらの症状が起きた場合も、データ自体を復旧することはできません
        が、データを再度上書きすることでディスクを使用し続けることができ
        ます。故障にはなりませんので、エラーメッセージは画面に出さないで
        ください。

        上書きするデータはセーブデータの初期値を適宜使用してください。

        なお、ROM 領域のリード中にエラー23が発生した場合は、ライト中の
        電源強制遮断とは別の原因と考えられますので、エラー番号を表示し、
        取り扱い説明書を読むよう、ユーザに促してください。

        データ自体を復旧することはできない、と書きましたが、64DD プログ
        ラミングマニュアル第 12.12 章で述べた「ミラーリング」(セーブ領域
        を2つ確保する方法)を使うと、復旧することも可能です。