[50753]  IPLについて
投稿者:toyama さん   2006-03-23 12:54:41
PC9801のIPLについて知りたいのですが、ITFとBIOS実行後のフロッピーディスク起動
とフロッピーディスクが挿入されているかどうかを判別するBIOSの部分が知りたいのですが
どこでフロッピーディスク挿入の判別をしているのか知りたいのですが詳しい方いますでしょうか。システム
共通領域55Cの1MBインターフェースFDD接続を設定しているところだと思うのですがよく分かりません。
IPLに詳しい方いませんでしょうか。
  1. KAZZEZ さん   2006-03-24 11:29:54
    IPLもITFも詳しく知りませんが、単にFDの存在を検知する方法が知りたいだけであれば、
    DISK BIOSのSENSEコマンド(INT 1Bhファンクション04でしたっけ?)が使えるのではないかと思います。

    > 共通領域55C
    undoc2で調べると、ドライブ自体の接続状況みたいですね。
    基本的にはシステム共通領域のようなメモリアドレスに反映される情報は
    起動時に得られた情報がコピーされたものだと思いますから、
    起動後のハードウエア的な変化は(少なくとも直接は)感知できないのではないかと思います。
  2. toyama さん   2006-03-24 16:32:22
    返信有難うございます。現状を説明しますと、ITF処理とBIOSの処理後からROM BASICしか起動させることが出来ずに困っています。フロッピーディスクのIPLが起動できません。どなたかご存知の方IPLに詳しい方エミュレータに詳しい方いましたら宜しくお願いします。
  3. KAZZEZ さん   2006-03-25 11:25:08
    あ、もしかしてエミュレータの話でしたか?
    エミュレータは使ったことがないのですが、
    エミュレータ側の設定でFD起動はできないのでしょうか?

    PC-98実機の場合、メモリスイッチの設定で起動デバイスを強制的に
    指定できますので、設定が狂っているのかもしれません。
    その場合は、HELPキーを押しながら立ち上げた時のメニューから
    メモリスイッチを初期化してみてください。

    また、HELPメニューのほうでROM BASICを強制的に
    立ち上げる設定がある機種(ノートなど)もありますので
    そうなっていないか設定を確認してみてください。
    またROM BASICを使用しない設定に出来る機種
    では、起動デバイスが無ければFDを読みに行くと思います。

    それと、ROM BASICからはNEW ON 12と入力すると
    FDやHDDを読みに行く場合もあるそうです。
    参考まで。
  4. toyama さん   2006-03-25 17:37:08
    説明不足でした。申し訳ありませんでした。エミュレータを開発しているのですが問題に突き当たってしまったので投稿しました。説明不足でいろいろ回答頂きすみませんでした。
  5. かねやす さん   2006-03-27 18:14:12
    メディアから割り込み確認ワークエリアなら0:055Eh〜055Fhです。
    しかしながらDA/UAを一通り確認してメディアがあればブートセクタをロードする
    のはBIOS側ですので、そこのインプリメントがおかしいと見るべきです。
  6. toyama さん   2006-03-27 19:39:21
    かねやすさん返信有難うございます。
    一通り見直してみましたがよく分からずメディアからの割り込みはITF処理中に発生す
    るものと考えているのですがこの考え方で間違いないのでしょうか?
    BIOS側で55E〜55Fの確認場所も何度も見直しているのですが見当たらず55Cを
    確認しているようなのですが55Cの1MB・I/Fの接続は前の処理で0にクリアされて
    しまっているためそのままリターンし起動確認と思われるBIOS部分が今ひとつつかめません。
    何かアドバイスがありましたら宜しくお願いします。
  7. toyama さん   2006-03-27 21:44:04
    55C見つかりましたようやく分かりました。割り込みがどこで発生しているのか解析してみたいと思います。どうも有り難うございました。