True or False? Promise Ultra66@100 !!

前掲の「Ultra66 がUltra100 に大変身(☆o☆)」が意外な反響を呼んでいます。
私のスタンスは、『でも、いいんです。「夢」と「展望(Promise)」を、ひとときでも
味あわせてもらうだけで。』 ということで、U-ATA100で動作するとは思ってい
ませんし(淡い期待はもっていますが(^^ゞ)、動作を約束するものでもありません。

Promiseのサイトでは、Ultra100については、まだなんだアナウンスされていませんし
(00.05.27時点)、仕様についても当然、公表されていません。わからない物を、推論
して楽しんでいるわけですから、人柱志望の方以外は、信じて実行しないでください。
実物が手に入り、比較検証できるようになれば、おのずと結論がでる類の問題です。
ですから、それまでの「夢」なのですo(^-^)o

一方、改造系のBBSを中心に、貴重な意見・見解が先達によって発表されています。
私なりに、もう少しこのテーマを追求してみることにしました。
初めての方は、05.26日付の記事を、まずお読みください。

    2000.05.28  Takapen Signed


UltraATA/100 の実在機による「Fiverさん」の検証と見解

前記事で、以下の様にUltraATA/100 対応のハード状況をコメントしました。

すでに、数社から、UltraATA/100規格の拡張カードの発売がアナウンスされています。
Abit からは、UltraATA/100対応をうたったAthlon用マザー「KA7-100」もアナウンスされています。
このマザーはHighPoint Technologies製のHPT370コントローラーを、オンボード実装して、
UltraATA/100 を実現するそうです。アナウンスされている拡張カード類も、今のところ同チップを
実装する予定のようです。


前回の実験結果を「きち」さんの「伝説の伝言板」に要約して書き込みましたところ、
Fiver」さんから、すばらしい実証に基づく反応をいただきました。
失礼ながら、全文を引用させていただきます。

<きちさんのBBSでのFiver さんの投稿> 投稿日 : 2000年5月26日<金>23時55分

おそらく、Takapenさんも気づかれているように(^^; Driverが共用になっただけ
だと思われます。Promiseから、Ultra100も製品として、出るみたいですから、
もしも、BIOSのUpdateだけで、66が100に <合法的に(^^;> なるんだったら
Ultra100なんて、誰も買いませんよねえ。

うちでは、そのATA100対応というHigh-Pointの370チップをオンボードした
AthlonマザーKA7-100を、サブマシンとして、使ってます。また、メインマシン
用には、ATA100対応というIBMのDTLAも、使ってます。で、DTLAをそのATA100
である370端子の方に繋いでみたところ、ATA100動作であるUDMA5(ATA66は
UDMA4)モードと、表示されました。ですから、本当に動作しているかどうかは
ともかく(^^; ATA100モードで、IBMのDTLAが繋がることは、間違いないので、これを
そのUltra100?に、繋いで、UDMA5と表示されれば、ATA100モードで繋がっている
事になると思うんですが。

ただ、言われる通り、最速と言われるIBMのDTLAだって、最大転送がReadでも
36MB/Sくらいですから、ATA66でも、十分余ってますね。だから、ATA100なんて
当分、必要ないかも。ATA66で飽和してしまうIDE HDは、いつになったら出るのやら。

うちにも、Ultra66を何しちゃった(^^; なんちゃってFT66があるのですが、半田付け
しているので、それを剥がさないと(^^; Ultra66には、戻せないんですよねえ、そのうち
暇になったら、やってみます。

PS
予価ですが、一応、この手の新製品に強いパーツ堂では、Ultra100が6800円
FT100が17800円と出ています。まあ、ATA66で出た頃の値段と思えば、妥当かも
知れないですが、どうも、高く感じてしまいます。

すばらしいでしょo(^-^)o
UltraATA/100対応ハードでの、実機での検証で、U-DMA5となるのです。
しかも、ハードの状況から、Driverが共用になっただけはと結論づけながらも、
ハードディスク性能がまだUltraATA/66規格を越えていないなかでは、
実際の転送速度は計測できないため、規格通りの性能で動作しているかどうか、
については、結論を留保されています。
さらに、Ultra100の発売最新情報までつけていただきました。
Fiver さんの、この論理的科学的態度、ぜひに見習いたいものです。

Fiverさんの投稿で、結論がそう遠くないことがわかりました。
要は、誰かが人柱になって、Promise Ultra100 と IBM DTLA HDD を購入して、
BIOSのHDDの認識が「U-DMA5」になるかどうか、検証すればよいのです。
さらの後々、内部の実効転送速度が66MB/S を越えるようなHDDがでたら、
ファイルのシーケンシャルRead,White が、66MB/S を越えて、
100MB/S に近づくかどうか、検証すればよいのです。
そのUltra100の値と、同環境でのUltra66@100改の値を比べれば、
もう議論の余地はありませんね。

残念ですが、経済的余力がわたしにはないため、
ぜひに「人柱たらん!」という方の、出現を希うばかりです。

 


Ultra66 βドライバのINFファイルの謎に迫る。

これだけで終わったのでは、私の貢献はありませんので、以下、少し探求いたします。

そもそもの問題は、Ultra66を刺したPCに、Ultra_160_Bld18.zip ドライバを入れると、
「Promise Ultra100(tm) IDE Controller」と、デバイスマネージャーに表示されることにあります。
この表示情報は、WindowsのRegistryに登録されています。
では、このRegistry情報は、何によって書かれるか?というと・・・・。
インストール情報を記した、同梱の「Ultra.inf」によって書かれます。

言わば、本来は、Ultra66のドライバとして登録されなければならないのに、どこかで誤って、
Ultra100のドライバが (もしくは名前だけが) インストールされているのです。

ここで、重要な点が2点あります。
1) このドライバは、Ultra33/66/100 の共用ドライバ集だということです。
   後ほど詳細に見ますが、実は、インストールされるドライバファイルは、
   Ultra33/66/100 のどれであろうと、全て同じなのです。共用というより共通なのです。
2) こうした共用のINFファイルは通常、インストール時に、ハードの持つ情報を見て、
   ハードに最適なドライバを選択してインストールします。
   この場合、ハードの何を見てINFファイルが判断しているかというと、チップのベンダーID
   や、BIOS上に書き込まれているコードだと思われます。


有名な、Ultra66のUltraTrak66への改造では、チップ抵抗の配置−>信号先の結線を変える
ことで、U66であるか、FT66であるかの識別情報を、送っていると思われます。

私は、全くの素人ですので、違っていたらご指摘をお願いいたしますm(._.)m。
以下の推論も、素人なりに勉強しての見解ですから、間違っている可能性は高いですm(._.)m

さて、それでは、INFファイルの中身を、少しのぞいてみましょう。
ポイントと思われるところだけを抜粋して、比較します。

Ultra_160_Bld18
--------------------------------------------------------------

[Manufacturer]
%Promise%=Promise

[Promise]
%PCI\VEN_105A&DEV_4D30&SUBSYS_4D33105A.DeviceDesc%=ultra100PCI,PCI\VEN_105A&DEV_4D30&SUBSYS_4D33105A
;%PCI\VEN_105A&DEV_4D38&SUBSYS_4D33105A.DeviceDesc%=ultra66PCI ,PCI\VEN_105A&DEV_4D38&SUBSYS_4D33105A
;%PCI\VEN_105A&DEV_4D33.DeviceDesc% =ultra33PCI ,PCI\VEN_105A&DEV_4D33

;************** U100 **************
[ultra100PCI]
CopyFiles=MoveMiniPort,PTISETUP,ADVPACK
AddReg=ios,ultraPCI.reg,RegUninstall100
;RenFiles=RenMiniport
Reboot

;************** U66 ***************
[ultra66PCI]
CopyFiles=MoveMiniPort,PTISETUP,ADVPACK
AddReg=ios,ultraPCI.reg,RegUninstall66
;RenFiles=RenMiniport
Reboot

;************* U33 ******************
[ultra33PCI]
CopyFiles=MoveMiniPort,PTISETUP,ADVPACK
AddReg=ios,ultraPCI.reg,RegUninstall33
;RenFiles=RenMiniport
Reboot


[MoveMiniPort]
Ultra.mpd
pu66vsd.VXD
smartvsd.vxd


[RenMiniport]
SMARTVSD.VXX,SMARTVSD.VXD

[RenMiniport.back]
SMARTVSD.VXD,SMARTVSD.VXX

[PTISETUP]
PTISTP.dll

[ADVPACK]
advpack.dll,,,0X00000020
-------------------------------------------------------------

いかがでしょうか。INFファイルの記述から、以下の3点がわかります。

1)Ultra33/66/100 のどれであろうと、同じファイルがPCのWindowsディレクトリの
  System\ , System\iosubsys のフォルダにコピーされます
2)Ultra33/66/100 の違いは、ベンダーIDの「VEN_105A& ********」の********の部分を
  見て判断しています。ちなみに
    DEV_4D30  なら ultra100PCI
    DEV_4D38  なら ultra66PCI
    DEV_4D33  なら ultra33PCI
  となります。
3)ところが、Ultra66にこのドライバをインストールすると、Ultra100 としてインストールされます。

以上から、考えられる可能性は、
  (1)Ultra33/66/100 のハードはいずれも、DEV_4D30 のコードを返す。
  (2)ベンダーIDの取得のINFコードに誤りかバグがある。
  (3)なんだかの理由で(例えばβ版のテストのため)、Ultra100に一意にしている。
ということのいずれかです。


そこで、単体用の既存のドライバのINFファイルと、この部分を比べてみましょう。

U33/66/100 ultra_160_bld18 VEN_105A&DEV_4d30 U100
    VEN_105A&DEV_4d38 U66
    VEN_105A&DEV_4d33 U33
Ultra66 u66d143 VEN_105A&DEV_4d38 U66
  u66d150 VEN_105A&DEV_4d38 U66
Ultra33 u33d136 VEN_105A&DEV_4d33 U33
FT66 ft66d114 VEN_105A&DEV_4d33 FT66
    VEN_105A&DEV_4d38 FT33
FT(33) ftd114(NT) VEN_105A&DEV_4d33 FT66
    VEN_105A&DEV_4d38 FT33


目が回りそうですね(◎_◎)。整理すると、

  Ultra系 FT 系
DEV_4d33

33

66

DEV_4d38

66

33

DEV_4d30

100

−−

どうも、信号線からくるUltraとFTの識別と、チップまたはBIOSからくるベンダーIDを、
クロスに掛け合わせて、パターンを作り出しているようです。
それにしても、33 -> 33 になったり、33 -> 66になったりややこしいですね。

 

<結論は・・大どんでん返しの見落とし>

ここまできて、やっと気が付いたのです( --)/~~~~~(>_<)。
私はこのテキストをプロポーショナルフォントで書いています。しかも最近目がちょっと(◎_◎)
これを、固定ピッチのフォントでみてびっくり\(_ _)、なんたる見落とし(-o-)y-゚゚゚、徒労の山。
もうお気づきの方も多いと思います。

もう一度、INFファイルの引用部分の先頭をよく見ると・・・m(._.)m
--------------------------------------------------------------
[Promise]
%PCI\VEN_105A&DEV_4D30 ******
;%PCI\VEN_105A&DEV_4D38 ******
;%PCI\VEN_105A&DEV_4D33. ******
--------------------------------------------------------------

わかりますか?なんと「」。2行目と3行目は、コメントアウトされているではありませんか!
このドライバは、「Ultra100」の記述しか生きていないのです!

ということは、ベンダーIDを使って識別もしていないのかもしれません。

Ultra66に入れようと、Ultra33に入れようと、Ultra100の表示になってしまうのです(><@)
要は、前回書いた以下のフレーズが、実は当たっていたのです。
あぁ〜なんたること!

ところで、本当にUltraATA/100 として、機能しているのでしょうか?
ドライバの説明には、UltraATA/33/66/100 共通ドライバとなっていますから、
なんだか、表示名だけ 「ちょっと変えてみました(ё_ё)
なんてお茶目じゃないよね、Promise さん。


ただ、これだけで、Ultra100として機能していないとは、言い切れません。
ドライバ(ソフト)は共通なのですから、
ハードがまったく同じであれば、動く可能性は高いと言えます。
一歩ゆずって、メインのチップが同じであれば、配線を変えて同じパターンにできれば・・・
Ultra66 -> Ultratrak66 のように、裏技が通用するかもしれません。

メインのチップが違えば、100では動作しないと思われます。
ここで、冒頭の「Fiver」 さんの投稿のすばらしさと先見性が、またしても蘇ります。

Ultra100の使用チップについては、スペックも実物もないので、今はわかりません。
しかし、先行して実現したAbitのマザーやボードは、High-Pointの370チップを使用しています。
UltraATA/66対応の時には、High-Pointの368チップだったのです。
内部の処理やアサインを変えて実現している、と考えるのが自然です。

この点については、High-Pointのスペックシートが手に入れば、分析してみたいとおもいます。

以上、大どんでん返しの、あっけない幕切れになりました。そして結論は、

<結論>
実証できていないので不明な点もあるが、
レジストリ登録の名前が、置き換わっているだけで、
ハードが対応していなければ、
UltraATA/100モードでは、100%動作しないであろう。

 


<エピローグ>

悲しい結末を迎えそうです。
それでも私は希望と夢を追います。
Promiseとは「展望」です。Keep your Promiseは「約束を守る」です。
Ultra66は、型落ちBXマザーの私達に、延命の展望をくれました。
FT66は、ほんとに安価な構成で、高速ディスクアクセスの体験をくれました。

今でもよく覚えています。Ultra66が発売された当初、
日本橋のPCなんでもショップで、バッタ品のように売られていた英語版Ultra66を。
   

嘘か本当か?PCがATA66に変わる
今なら、ATA66ケーブルを2本付けて

           3980円


箱の横に、ケーブルを1本添えて、ラップでぐりぐり巻きにされたUltra66。
ATA66ケーブルが、まだ1本1780円していました。
箱を手に取り、しげしげ眺め、
恵比寿町の駅にもぐる前にもう一度立ち寄り、前から横から箱の裏まで眺め、
「値段だけでひっかかる奴がいるんだよね(・_・)/、うちはその手にゃのらないよ!ふっ。」

約束します。私がUltraATA/100 対応カードを買うときには、Ultra100を買います。