したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

PC-88

780774:2021/06/30(水) 23:43:37 ID:NpWcZyr20
うう、STOP+RESET は盲点でした。
ホットスタートでは N88-BASIC のワークエリアこそ初期化されるのに、各フックは初期化されず、
各拡張 ROM のイニシャライズルーチンもコールされない、というのがこのマシンの仕様であるようです。

仕様なので打つ手がない、では身もふたもないので、こんな対策プログラムを残します。

06 01 3e fe 07 10 fd f3 d3 71 cd 02 60 3e ff d3 71 fb c9

これは "e1.rom" 用コードです。 diskdrv の e1.rom を e2.rom〜e7.rom にリネームしている場合、
それに合わせて上記コード 2 バイト目の 01 を 02〜07 に変更してください。

リロケータブルなので適当なアドレスに置きます。ホットスタート後、先頭番地をコールして
これを実行すれば、diskdrv の再イニシャライズが行われ常駐部が復活します。

この機能をどうにかして新版 e1.rom に組み込むことも不可能ではないのですが、そのためには
メモリのいくばくかをこのために占有せざるを得ず、他アプリとの競合の可能性が生じてしまうため、
なかなか難しいところです。

ではどうすればいいのか?
アイデアはいくつか浮かんでいるものの、いずれにせよちょっと大きな変更となりそうなので、
これは将来のバージョンへの課題としておきましょう。
それまではやや面倒ですが、上記の策で我慢していただきたく…。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板