Multi Menteの不具合? その22017年01月20日 21:30


MultiMente
1ChipNextorMSXでMultiMenteを利用しようとすると画像のように
「MSX-DOSディスクではありません」というエラーが発生する。
Ver2.07_A(英語版)、2.07_K(日本語版)ともに現象が出る。

OKEIさんに相談したところ、動作版をいただけたので動かないものと比較。

で、原因というか対処法。
1バイト書き換えを行うと利用できるようになる。
3D0F:CA -> C3
※最初間違えてCFなんて書いてた…何と見間違えたんだ?

セクタサイズが512かどうかチェックし、512でない場合に実行されると言う所を、強制的に実行するように変更しているみたい。
これまたOKEIさんのMMのパッチドキュメントに「セクタサイズが512の場合は直接セクタを読み、512以外はDOS2ファンクションを利用する」とあるので、そのあたりのことかな。
Nextorの場合はDOS2ファンクションでディレクトリを得ないとだめなのかな?




コメント

_ OKEI ― 2017年01月21日 16:44

MM ver 2.07A、ver 2.07KはCDエクステンション(MEGASCSI用ソフト)に対応させるため、セクタサイズのチェックを追加したようです。

_ ゆうくん ― 2017年01月21日 18:11

なるほど、CD-ROMはセクタサイズ2048Byteが標準でしたね(例外もあるんでしょうけど…)
確かに、そちらに対応するためにはセクタから直接データを読む必要ありますね…
ん、ってことはこの改変したMMはCD-ROMの中身を読めない!?

_ ゆうくん ― 2017年01月21日 20:14

なんか勘違い。
OKEIさんのサイトのMMパッチの説明改めて読んだら
CD-ROMはDOS2ファンクションでディレクトリ取得とあった。
であれば、DOS2ファンクションだけで動作しても問題ないということか。

むしろ、512バイト/セクタでセクタから直接データ読むのは高速化目的かな?

_ MSX ― 2019年12月15日 16:55

このバイトを書き換えると、複数のファイルを削除するときマークが消えなくなりません。複数のファイルを移動するときもマークが消えません。もっといいパーチがありますか?

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※投稿には管理者が設定した質問に答える必要があります。

名前:
メールアドレス:
URL:
次の質問に答えてください:
答えは「MSX」です。

コメント:

トラックバック

このエントリのトラックバックURL: http://miyako.asablo.jp/blog/2017/01/20/8327974/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。