[25111]  IF-2769のパラメータ解析 @変換番長
投稿者:はむはむ さん   2015-04-01 22:43:01
クラシックPC救済委員会さま謹製の「変換番長」を手に入れたので、久しぶりに手持ちのAp3をいじっています。

上記の変換番長に、SanDiskの8GBのCFを組み込んで使用しようと考えていますが、うまく認識されず途方にくれました。

環境は以下の通りです。
本体:PC-9821Ap3/M2
CPU:PODP83V
メモリ:32MB×4=128MB
拡張スロット
1段目:PC-9821A2-E01(FDDインターフェイス)
2段目 ICM IF-2769(SCSI)
3段目 ATARIジョイスティックインターフェイス
4段目 空き
SCSI専用スロット PK98-2SYUMORI(SCSIスルー&LAN)

IF-2769のROMはV1.03となっており、他の機械で初期化した8GBであれば、パラメータ解析ができるはずです。
手元にはPCIを積んだPC-98がないので、とりあえずPC-9801-100で認識、初期化、領域作成した状態にして、IF-2769のパラメータ解析をかけたのですが、丸半日放置しても「解析中です」のままでした。

まりも氏謹製のformatxでシリンダ数/ヘッド数/セクタ数を確認して、手動入力させれば、と思ったのですが92モード、55モードでもともに手入力することができませんでした。

以前、CF-IDE変換⇒AEC-7720U⇒IF-2769環境をつくったときには、PCI機を持っていたのでIFC-USPで初期化してすんなりと92モードで動かすことができました。

特殊な環境およびキワモノを使用している状況なので、相性といってしまえばそれまでかもしれませんが、何かしら解決のヒントが得られれば、とおもい投稿いたしました。

長文になってしまいましたが、とりあえずPC-9801-100で認識されているものをIF-2769で認識させるにはどうするべきか、をご教授いただければと思います。

識者のみなさま、よろしくお願いします。
  1. KAZZEZ さん   2015-04-02 04:43:00
    確かに過去ログやウェブ検索でIF-2769はBIOS1.03以降であれば8GBくらいは使用例がありますし、
    直接フォーマットできないので他のI/Fでフォーマット済みのHDDを認識させれば良さそうな記述も見かけます。
    何が悪いのでしょうね?

    もしかしたら2769は高速なだけに、ちょっとした相性で不安定になる場合もあるのかもしれません。
    転送モードをDMAやFIFOでは試したでしょうか?また非同期モードが(あれば)試したでしょうか?
    使用するターミネータはアクティブターミネータでしょうか?

    それと以下はあくまで自信の無い仮説でしかないのですが・・・。

    まず一般論として、ある程度新しいSCSIボードでは、HDDがNECで始まるベンダ名を返さない場合は
    未フォーマット時のデフォルトとして(すなわちマルチベンダ機能は使わない場合に)
    8ヘッド32セクタという92パラメータで認識するというのが定説です。
    ところが個人的な経験上、一般的な92互換パラメータのSCSIボードであっても
    (HDDがNECで始まるベンダ名では無いのに)
    古いHDDによっては何故か非92パラメータで認識される事もあるようなのです。

    しかし経験上、IFC-USPはそういう特殊なHDDであっても
    (NECで始まらないHDDであれば)強制的に92パラメータで認識する仕様らしく、
    同じHDDなのに他のSCSIボードで認識した場合とCHSパラメータが異なるケースがありました。

    もしかしたらですが、内部的にSASI互換モードを持つ(?)変換番長が非92パラメータでフォーマットされ、
    2769のBIOS内部で想定されるパラメータと何らかの矛盾を起こしているのかもしれません・・・。
    自信は無いですが。

    > まりも氏謹製のformatxでシリンダ数/ヘッド数/セクタ数を確認して、手動入力させれば、と思ったのですが92モード、55モードでもともに手入力することができませんでした。
    恥ずかしながら、このへんの状況がよく分かりませんので少々質問させてください。
    私もIF-2769は持っていたはずですが、奥にしまいこんであってすぐには確認できませんので
    見当違いの質問等がありましたらご容赦ください。

    formatxでC/H/Sを調べたというのは100ボードと2769どちらでの話でしょうか?
    また、得られた数値はどれくらいだったでしょうか?
    入力できなかったというのは具体的にどのような状況を指しているのでしょう?
    # 入力しても数値によっては受け付けなかったのか、入力自体が始まらないのか、
    # それとも入力する数値が得られなかったのか。
    また、ここで言う92モード、55モードというのは何の話でしょうか?
    # 100ボードと2769どちらでの話なのか、
    # PnP設定の話なのか、転送モードの話なのか、CHSパラメータの話なのか。
  2. はむはむ さん   2015-04-02 10:36:58
    ありがとうございます。

    ご質問にお答えします
    ・formatxでのC/H/S数値は、100ボードでのものです。2769では認識されないので。
    C/H/S:61304/8/32

    ・92モード、55モード
    すみません、IF-2769のCHSパラメータ互換の意味です。

    ・CHSを入力できない
    自動解析では、「解析中です。」が点滅して延々と続く。
    92および55互換パラメータ設定では、CHS:15500/-/63が表示され、数値の入力を受け付けません。セクタ長も空欄となっており、入力を受け付けません。この状態で起動すると、HDDアクセスランプが超拘束に点滅します。

    ・DMA/FIFO/Asyncなど転送モードはすべて確認しました。挙動は変わらずです。

    取り急ぎ、現状をお知らせします。
    確かに、仮説の「内部にSASI互換をもつ〜」という部分にヒントがあるような気がします。
    4GBや1GBのCFだとどうなるのかを、試してみたいとも思います。(まず探さないと…)
  3. KAZZEZ さん   2015-04-02 19:28:41
    そういえば物理セクタ長は512KBでしょうか?
    SASIの設定だと256KBになっていることもあるかもしれませんが、
    SCSI-HDDは原則512KBですので。

    (一部修正)
  4. 総額7600円 さん   2015-04-02 20:20:00
    >2769では認識されないので
    >数値の入力を受け付けません
    >DMA/FIFO/Asyncなど転送モードはすべて確認しました。挙動は変わらずです
    ・"正式対応機種"でさえまともに動かない場合があるのがIF-2769である
    ・本体は(SCSI-II I/Fとの相性報告の少なくない)Mate-Aである
    の二重苦状態のようですね。別な機種があればそちらで解析させてみてはどうでしょう。
  5. はむはむ さん   2015-04-02 23:49:47
    今日1日、いろいろと検証してみたので報告します。
    まず、結果を述べますと「認識に成功しました」です。

    検証したこと
    1.1GBおよび4GBのCFを使っての検証
    (1)1GBのCF
    ・IF-2769の自動解析では、CHSが61928/16/2と解析され、967MBで認識。
    そのままでDOS/Windows3.1およびWindows95のインストールや起動ができました。
    ただし、Windows95は再起動時にアクセスランプが点灯しっぱなしになり、止まります。(フリーズではない)
    ・PC-9801-100で初期化し、CHSを確認後IF-2769の自動解析にかけ、値をPC-9801-100で確認した値に変更
    CHSの値は1965/16/63とPC-9801-100上で認識。
    なぜか手動入力ができ、上記の値を入力することで認識しました。

    (2)4GBのCF
    ・IF-2769の自動解析では、CHSが62183/2/63と解析され、3785MBで認識。
    そのままでDOS/Windows3.1およびWindows95のインストールや起動ができました。
    ただし、Windows95は再起動時にアクセスランプが点灯しっぱなしになり、止まります。(フリーズではない)。1GBのCF時と同様の挙動でした。
    ・PC-9801-100で初期化し、CHSを確認後IF-2769の自動解析にかけ、値をPC-9801-100で確認した値に変更
    CHSの値は30605/8/32とPC-9801-100上で認識。
    1GBのCF時と同様になぜか手動入力ができ、上記の値を入力することで認識しました。

    2.8GBのCFをPC-9801-100のCHS値を入力してみました。
    (1)8GBのCFを自動解析にかけると、「解析中です」で点滅しそのまま。手入力もできません。
    (2)4GBや1GBのCFで自動解析時に手入力することができたので、ここでPC-9801-100で認識されたCHS:61304/8/32を手入力し、保存しました。
    一度電源をきり、再起動したところ、8GBのCFを認識し、DOS/Windows3.1およびWindows95がインストールでき、起動しました。

    *セクタ長は変換番長上で512KBに設定されています。

    以上が今日の検証結果です。
    PC-9801-100で認識させたときの、1GBと4GBのCFのヘッド数とセクタ数が違うあたりに、変換番長の特性があるような気がします。
    少なくとも、92パラメータ互換では上記のようなCHS値にはなりませんでした。

    92パラメータ互換になれば、もっと楽にできそうなので、製作者のクラシックPC救済委員会にお聞きしてみようとも思っています。
    やはり、SASI互換機能が何らかの影響を与えているようにも思えます。(IF-2769に関しては)

    >総額7600円さま
    以前はお世話になりました。
    IF-2769が暴れん坊なのは十分に理解しています。
    でも2769の速さはこれまでの経験上、他のSCSIボードとは比較にならないので、何とかしたいと思っています。
    残念ながら、98はAp3/M2を残してすべて処分してしまいましたので、試せません。
    こんなときのために、PCI機を1つ持ちたいとは思っているのですが、設置場所に困るので、PC-9821F200あたりが安価で手に入ればいいな、なんて思っています。
  6. KAZZEZ さん   2015-04-03 01:58:53
    結局、IF-2769はver1.03であっても
    大容量HDDの場合は自動解析があてにならないということでしょうか。

    それにしても100ボードでも非92パラメータになる場合があるのですね。
    ベンダ名がNECで始まるHDDでなくとも、
    SCSI-1(CSS未満?)であれば55パラメータになるのでしょうか?

    SASI互換のせいかどうかは分かりませんが、
    うちで92パラメータにならなかったHDDも100MBクラスの古いHDDだったので
    何らかの古い規格の部分が影響すると92パラメータが適用されない感じですが、
    どうもwebでもそのへんの情報が見当たらないのでよく分かりません。

    ただ、
    > CHSの値は1965/16/63とPC-9801-100上で認識。
    については、C/H/Sに12bit/8bit/8bitが割り当てられるケースですので、
    実際に55相当のパラメータとして認識されている可能性はあると思います。
    (初期の55ボードではC/H/Sが16bit/4bit/8bitという構成には対応していませんので)

    なお、
    >(1)1GBのCF
    >・IF-2769の自動解析では、CHSが61928/16/2と解析され
    >(2)4GBのCF
    >・IF-2769の自動解析では、CHSが62183/2/63と解析され
    を比べると、前者はシリンダ数が12bitを超えているのにヘッド数が4bitに収まらないので
    ヘッドとセクタが逆ではないかと思います。

    何にせよ興味深い話ですので、私もIF-2769とPC-9801-100が発掘できたら
    通常のCF-IDE変換+AEC-7720で8GBのCFの認識を試してみたいと思います。
  7. はむはむ さん   2015-04-03 14:07:10
    >KAZZEZさま
    いろいろとありがとうございます。
    9.1GBのHDDを使用していたときには、やはり自動解析ができずに92互換パラメータを手入力して使いました。
    CF-IDE変換⇒AEC-7720でも自動解析では無理だったので、上記のような対応をとりました。
    いずれにしても、IF-2769の自動解析の仕様が4GB程度までしか対応していないような感じです。

    Windows95の起動でこけるのは、変換番長に関する掲示板でも多く載っていました。
    セクタ長256KB説が有力な様子でした。でも動作報告も上がっていましたので、SCSIボードの相性のような感じです。

    さて、この現象を製作者のクラシックPC救済委員会へメールで問い合わせてみましたところ、ご返信をいただきましたので簡単に残しておきます。

    以下、製作者さまのメールより引用
    >制限をしていない場合には、CFそのままのCHS値を返しております。
    >
    〜省略〜
    >
    >恐らくでございますが、IF-2769のヘッド数を格納するレジスタが4BITのため、
    >ヘッド数16(2進数:10000)場合には、下4桁の4bitのみを決め読みしてしまい、
    >ヘッド数0となっていると思われます。4GBの場合はヘッド数が15以下のため、
    >全量から62183/2/63と計算をしたのだと思います。
    >(トランセンドは128MB以降、全てヘッド数16 セクタ数63で決め打ち)
    >
    〜省略〜
    >
    >変換番長では、CFの持っている生の情報をそのまま本体側へ伝えて、
    >なるべくデータをいじくり回さないようにしております。
    >他の機器がヘッド数を15に書き換えてくれても、生データを引っ張り出しますので、
    >そのあたりで相性が発生してしまうと思います。

    とのことでした。したがって、15500/-/63と92パラメータ互換で認識されたのは、CFの生データを変換番長が引っ張ってきたということになるので、15500/16/63を手入力すればいいということになるようです。

    これから再設定して試してみようかと思います。
  8. はむはむ さん   2015-04-03 15:07:22
    その後の検証
    15500/16/63の設定では、FDDから起動する際に一瞬HDDにアクセスしてハングアップしました。
    これでIF-2769の「ヘッド数を格納するレジスタが4bit」ということと合点がいく形となりました。
    よって、容量が合うように16533/15/63に手入力して、再度各OSをインストール中です。
    (このヘッド数ならばハングアップしない)

    CFの元のCHS値をそのまま持ってくる変換番長の仕様により、SCSIボードでの認識がいろいろと変化するようです。
    CFのCHS値がメーカーによっても違うので、その都度場合によっては手入力が必要になると思われます。

    Windows95の起動しない問題が解決するといいのですが、また報告します。
  9. はむはむ さん   2015-04-05 11:28:17
    その後の検証
    DOSでの起動やWindows3.1での動作は問題ありません。
    Windows95では、起動途中に反応しなくなります。(キー入力は受け付け、アクセスランプは消灯してそのまま)

    結局、IF-2769の問題な気がしてきました。PC-9801-100であれば、起動しますから。
    暴れん坊のIF-2769を抑え込むために奮闘中です。

    ところで、
    >使用するターミネータはアクティブターミネータでしょうか?
    にお答えしていませんでした。ターミネータは終端と思われるCDドライブ(内蔵)で行っています。
    ここで気になったのですが、以下の構成の場合、ターミネータはここでよいのでしょうか?

    IF-2769
    ⇒FDS-120(外付けスーパーディスク)
    ⇒PK98-2SYUMORI(SCSIスルーボード)
    ⇒変換番長&CF
    ⇒CRD-BP3N(内蔵SCSI CD-RWドライブ) このターミネータをON

    A-MATEのHDDとファイルスロット(ファイルベイ)の順序があいまい(どちらが先か)なので、一応いまはこの状態です。
    ちなみに変換番長のターミネータを取り付けて確認してみましたが、挙動は変わらずでした。
  10. KAZZEZ さん   2015-04-05 13:55:50
    失礼しました。PK98-2SYUMORIということを忘れておりました。
    私は結局、2SYUMORIは入手しそびれてしまったのですが、
    持っている人の話では、箱にアクティブターミネータ搭載と書いてあるそうです。
    箱の記述が本当なら、機器側のターミネータはOFFで構わないと思います。
    もちろん外付け機器には別途ターミネータは必要ですが。

    変換番長も私は予算的に入手していないのですが、95が動かないという話は、他でも見かけます。
    もしかしたらセクタ長が256バイトと見なされているのかもしれない?という話も聞かれます。

    私も昔、セクタ長が256バイトとか2048バイトのSASI系HDDに95のDOS相当部分を試しに入れてみたことがありましたが、
    まともに動作しなかったり、データ破壊を起こしたりしました。
    もしも仮にセクタ長の問題だとすれば、一見して動いているように見える95のDOS相当部分も
    内部的には正常に動いていない場合もありますから、注意する必要がありそうです。
  11. はむはむ さん   2015-04-05 15:25:34
    >箱にアクティブターミネータ搭載と書いてあるそうです。
    すみません、うっかりしていました。
    確かに箱に「アクティブターミネータ内蔵」と記されていました。
    どおりでCD-RWドライブのターミネータをONにすると、読み込みエラーが出るわけです。^_^;

    セクタ長256KB疑惑は、製作者の方にお聞きしてみようと思います。
  12. KAZZEZ さん   2015-04-09 02:07:08
    ようやくIF-2769が発掘できましたので
    件のトランセンドの8GBのCFを使って
    CF-IDE変換とAEC-7720を介して繋いでみました。
    # アイオーのCardDock/SCとPCカードアダプタ経由でも試しましたが、
    # こちらは2769ではうまく認識できない様子でした。

    なお、手持ちのIF-2769はROMシールが1.01
    # なぜかセットアップメニュー類の表示は2.01
    となっていますので1.03と挙動が同じとは限りません。あくまで参考です。

    未フォーマットのCFであれば
    自動的にパラメータ解析メニューの入力を求められました。
    そういう意味では未フォーマット状態にすれば良かったのかもしれません。

    いったん別のHDDを繋いで認識を解除させ、
    8GBのCFを100ボードでFAT16フォーマット(2GB+2GB+2GB+1.5GB)したあと
    再び2769で認識させたところ、あっさり8ヘッド32セクタで7647MBと自動解析されました。

    BIOSバージョンが違うせいなのか、変換番長が特殊なのかは分かりませんが、
    一応この環境での95のインストールも、あとで試してみたいと思います。

    ところで100ボードではPCカード変換を介して
    4MBしかないMMCから8GBのCFまで様々なメモリカードを認識させてみましたが、
    すべてが8ヘッド32セクタで認識されました。
    やはり
    > (1)1GBのCF
    > CHSの値は1965/16/63とPC-9801-100上で認識。
    のような例外は、ごく希なようですね。
    変換番長が特殊なせいかどうかは分かりませんが・・・。
  13. KAZZEZ さん   2015-04-10 00:47:25
    参考までに続きです。

    試した本体を書くのを忘れましたが、時期の近いものということでBX3(486DX2に換装)でした。
    それとIF-2769上のDIPスイッチはうっかり非PnPモードの設定でした。
    95ドライバがPnP用なので、最初からPnPモードで試すべきでしたね。

    違いとしては、PnP設定のIF-2769でCardDock/SCを接続したときに、
    おっしゃるような解析中の表示で待たされる状態になりました。
    非PnPでは解析画面にならず接続チェック画面で待たされます。
    いずれにせよIF-2769でCardDock/SC経由ではまともに使えそうにありません。

    100ボードではCardDock/SCでも8GBのCFが安定動作し、95も入りましたが、
    95上では固定ディスクでなくリムーバブルディスクとして認識されます。

    一方でAEC-7720経由ではIF-2769の同期バスマスタ転送でもCFに95がすんなり入りました。
    こちらはちゃんと固定ディスクとして認識されました。

    変換番長の挙動はCardDock/SCの挙動ともAEC-7720の挙動とも異なるようですが、
    95上ではちゃんと固定ディスクに見えるのかどうか少々気になるところです。
  14. はむはむ さん   2015-04-10 22:04:09
    >KAZZEZさま
    様々な検証、ありがとうございました。
    当方でもAEC-7720+トランセンドの8GBは同期バスマスタで安定して使えていました。

    変換番長の場合ですが、Windows95をセーフモードで起動することができるのですが、
    そのときはリムーバブルディスクではなく、ハードディスクと認識されています。

    製作者さまからいただいたメールの中に、次のような記載もありました。
    >また変換番長の分割では、
    >128M 500M 1G 2G 4Gの場合には、
    >ヘッド数=15 セクタ数=63で決め打ち(PC-98の上限値)し、
    >シリンダ数で辻褄を合わせておりますので、
    >最悪、8GBを2分割、16GBを4分割していただけましたらお使い頂けます。

    基本的にCFの生データを引っ張ってくるそうですが、分割した場合には上記のようにしているそうです。
    2分割しても挙動は変わらずでしたので、SanDiskのCFがIF-2769と相性が悪いのかもしれません。

    トランセンドのCFでも試したいところですが、AEC-7720で動く環境を一度消去しなければならないので、躊躇しています。

  15. はむはむ さん   2015-04-12 00:07:32
    現況報告

    結局のところ、Windows95の起動中にIF-2769からリセットがかかるような動作があります。
    (起動途中にSCSI機器を探しにいくような挙動で、IDサーチのようなことをする)

    Windows95がよくないのかと思い、100ボードにつないでC/H/Sを61304/8/32としてWindows95⇒Windows98をセットアップ。
    その後、IF-2769につなぎ直したところ、起動中の妙な挙動はなくなりました。
    ちなみにドライバはWin95用の1.01です。

    速度はこれから計測してみますが、体感的に少しだけ速くなった気がします。
    オリジナルのC/H/Sで動かせていないのが気持ち悪いのですが、とりあえず今週の検証はこれまでとします。

    KAZZEZさま、いろいろとありがとうございました。
  16. はむはむ さん   2015-04-25 22:00:19
    うまく起動したと思いましたが、IF-2769のドライバが入ってなく、55互換ドライバで動いていました。
    2769のドライバを入れると、起動途中に反応しなくなります。
    SanDiskの4GBでも同様の結果に…。

    諦めてトランセンドの8GBで構築をしてみようと思います。