2014年05月15日

P6のフロッピー関連(4)

  SRを含めて、ディスク周りの話です(余りまとまってません)。


1.内蔵ドライブの起動時のドライブの認識

  66/66SRは内蔵ドライブを持っていますが、ドライブの認識は次のように行います。

  起動時に、まず内蔵ドライブ1、2に対して、SPECIFYコマンドを発行した後、RECALIBRATEコマンドを発行します。この時、ドライブが接続されていないと、レスポンスが返ってきません。タイムアウトになれば、そのドライブは接続されていないと認識します。

  また、背面のドライブ数切り替えスイッチは、nDS0、nDS1 を物理的に接続するか、切断するかを切り替えています。ドライブ数0にした場合は、nDS0、nDS1は接続されず、ドライブ数1は、nDS0のみ接続されます。

  さらに、READY信号を使っていないため、BASICでは「常にドライブにはディスクが入っている」という認識です。

  そのため、起動時にドライブが存在した場合は、必ずドライブ1のディスクのトラック#0セクタ#1が読めるまで、ずーーっと待っています。タイムアウト処理でスキップするようにすればよさそうなんですけどねぇ。


2.SRの1D/1DDについて

  66SRは、1DDドライブを積んでいます。

  66との互換を図るため、1Dのディスクを読めるようにBASICが対応していますが、66SRの1DDドライブは、物理的には、1DDのディスクしか読めません。

  1Dのディスクを読む時は、1DDのディスクの偶数トラックに相当する部分を読んでいるだけです。トラック間隔が丁度2倍になるので、この方法で読み込めます。

  トラック#0セクタ#1が"SYS"で始まっているディスクは、起動時に1Dと判断します(起動時に1度だけ判断します)。BASIC内部で1D/1DDのフラグを持っており、トラック間隔を2倍にするかどうかを決めています。

  1Dのディスクに書き込む時も同様なのですが、1Dに比べてトラック幅が狭いため、書き込みが不安定だったり、66などの1Dドライブで読み込めない事があるようです。


posted by えすび at 19:17| Comment(4) | P6解析:FDC周り | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
>  さらに、READY信号を使っていないため、BASICでは「常にドライブにはディスクが入っている」という認識です。

実際には、ファイルを開く・閉じる度にディスクを入れ替えたという処理でしょうね。
(ファイルを開いている間はディスクを入れ替えてはいけない、これはその後も
今日も同様)
N80/N88同様に、Nにあったアノ忌々しいMOUNT/REMOVEがないのですから。
蛇足ですが、PC-98でも2DDではReadyを使っていません。2DDのシステムでは
ディスクキャッシュが使えないのはこのせいです。

> そのため、起動時にドライブが存在した場合は、必ずドライブ1のディスクのトラック#0セクタ#1が読めるまで、ずーーっと待っています。タイムアウト処理でスキップするようにすればよさそうなんですけどねぇ。

とありますが、66にDOS用の2DDを入れた場合など読めないディスクの場合は
どうなりますか?
これもずーーっと待ちますか?それともIndex等は返ってくるのできちんと
エラーになりますか?
Posted by かかっくん at 2014年06月11日 01:35
>>66にDOS用の2DDを入れた場合など読めないディスクの場合はどうなりますか?
>>これもずーーっと待ちますか?それともIndex等は返ってくるのできちんと
エラーになりますか?

6601の場合は、ずーっと待ちます。6601SRの場合は、1分ほどで立ち上がります。

6601の場合は、ずーっと待っているため、フォーマットされたディスクを持っていない場合は、DISK-BASICを起動する事が出来ません。


Posted by えすび at 2014年06月11日 08:32
> 6601の場合は、ずーっと待ちます。6601SRの場合は、1分ほどで立ち上がります。

うわぁ予想通り
もしかしたらROMをmkIIに載せる際にパッチしたルーチンと同じかも?

> 6601の場合は、ずーっと待っているため、フォーマットされたディスクを持っていない場合は、DISK-BASICを起動する事が出来ません。

そのために新規ユーザはformat5dが必要になるワケですね。これは内蔵FDD用ではないか
確か、FDD 0台で起動してからSWを切り替えてFDをフォーマットする方法があったような?
Posted by かかっくん at 2014年06月12日 04:12

この辺りです。

http://p6ers.net/mm/pc-6001/66fmt/

Posted by えすび at 2014年06月12日 05:42
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。