[52210]  USBデバイスサーバ
投稿者:KAZZEZ さん   2008-06-21 11:57:36
今更ですが、LANでUSBを使う「USBデバイスサーバ」製品がPC-98+Win2kで動作しましたのでご報告します。
試したのはUSBが2ポート使えるコレガのCG-FPSU2BDSで、サイレックス社の製品の技術が使われているようです。
# なお旧製品のCG-FPSU2BDは、外見こそサイレックスの製品のOEMですが、
# ファームが違うのかプリンタしか認識しないという噂ですので注意。

ただ、仕様上アイソクロナス転送に対応していないので、
言われていた通り、USBカメラやUSBオーディオは動作しませんでした。
本家サイレックスの製品ではアイソクロナス転送に対応した製品も出ているようですが。

とりあえずPCIが1基しかないV13/Sで試してみましたが、
結論から言えばマウスもキーボードも『サインはVGA』も一応動作しました。
OS起動後にスタートアップで専用ソフトを立ち上げてデバイス認識する仕様なので、
サインはVGAをメインディスプレイにできなかったり(専用ツールも使えないのでミラーモードにできない)、
マウス・キーボードが起動時の自動接続に失敗することがあったりしますが、
両者を併用すればPCの遠隔コントロールも一応可能でした。
# PC側を起動後にそのように設定しなければならないのであまり意味は無いですが。

さすがにCバスLAN経由では『サインはVGA』は遅くて実用になりません(PCIの100baseならそこそこ使えました)が、
マウス・キーボード程度ならCバスの10baseでも問題ありませんでした。
ただし自動認識に失敗した時は別のコンソールから手動で接続しなければならないので
マウス・キーボードに使う場合も実用になるかどうかは微妙ですが。

USBハブで3つ以上のUSB機器を接続することもできました。
ただしハブ自体はデバイスマネージャに認識されず、ハブに繋がれたデバイスだけ認識します。
これは何気に嬉しい仕様で、普通のUSBデバイスと違って、ハブ上の繋ぐUSBポートを変えても、
OSから見れば同じポートに接続されているらしく、繋ぎなおすたびにドライバをいちいち要求してきません。
つまりPC-98の2kにUSBキーボードを繋いだときに英語配列になってしまう問題が繰り返されないという利点もありました。
PCIが少ない機種でCバスLANから(一応)汎用のUSBが使えるのは便利かもしれません。

ただし、この仮想USB(?)は間接的に本物のUSBデバイスのファイルを利用しているようですので、
非PCIでUSBを全く使えないような機種では(そのままでは)うまくいきませんでした。
Bfでやってみたところ、USBデバイスは認識するのですが、ドライバを組み込もうとすると
> デバイス ドライバを読み込めませんでした。 エラー状態は 0xc0000034 です。
と出ます。このエラー、調べてみるとどうも関連する他のデバイスのドライバファイルが無い時に出るようです。

ただ、リアルUSBが必ず必要なわけではなく、V13ではUSBボードを除去しても仮想USBの利用はできたので、
WindowsにUSBのドライバファイルが残っていれば使えるようです。
Bfのように物理的にUSBを増設できない機種でも、USBのドライバさえ組み込めば動作しました。

ただし通常の方法では存在しないデバイスはレガシーデバイスしかリストに出ませんし、
存在しないPnPデバイスのドライバを組み込むにはドライバ更新でのドライバ変更を利用することになりますが、
この場合は同じカテゴリのドライバしか組み込めません。
ちなみに仮想USBのドライバはUSBカテゴリではなくシステムデバイスでした。

そこで、いったん仮想USBにUSBメモリなどのUSBカテゴリのデバイス(この場合マスストレージ)を繋いで、
それを一時的に標準のUSBドライバ類に変更するという手順でUSB関連ファイルを組み込みました。
使用するファイルが特定できれば単純コピーでも対処できるのかもしれません。
  1. KAZZEZ さん   2008-06-21 21:12:28
    Bfでもう少し試してみましたが、CバスLAN(PC-9801-83)経由でも、
    『サインはVGA』は遅いながらもある程度動きましたので、
    V13で遅過ぎたのはPCI機のCバスウェイトのせいもあったのかもしれません。

    以下余談・・・。
    9821グラフィックの無い機種でもCバスGAで一応2kが起動できる場合はありますが、
    http://weblabo.griffonworks.net/dorlog/2nddorcom/98maniacs/24133.html
    http://weblabo.griffonworks.net/dorlog/2nddorcom/epson98/3114.html
    緊急時に9821画面が使えないので検証用としてもやはり少々苦労しました。

    今回『サインはVGA』のドライバをインストールしたら、
    何かの拍子にNTドライバ流用のCバスGAがDISABLEDにされて、
    9821画面(当然真っ白)で立ちあがるようになってしまいました。
    HDDを9821画面を持つ別の機種に繋ぎ、2kインストールFDから回復コンソールを立ち上げ、
    CバスGAのサービスをBOOTに変更してからHDDをBfに戻して復活しました。ご参考まで。
  2. Marume さん   2008-08-01 04:04:52
    サイレックスのSX-2000WGを買ってみました。

    上記の CG-FPSU2BDS の報告との違いとしては、
    USB オーディオデバイスが動作しました。
    試したのは Roland UA-25 です。
    アドバンスドモード、ノーマルモード両方とも音がでました。
    ただ、アドバンスドモード動作中は完全に占有されてしまうようで、
    一緒に接続していた USB マウスは全くの無反応でした。
    確認方法がわからない為、アイソクロナス転送となっていたかは不明です。

    RvII と手元の USB フラッシュメモリでベンチを取ってみたところ、
    通常のホストコントローラ接続時と比べ有意な差がみられたので報告しておきます。
    結構遅いようなので、HDD を繋いでガリガリ使うようなことには向いていないようです。

    ★ ★ ★ HDBENCH Ver 3.40 beta 6 (C)EP82改/かず ★ ★ ★
    M/B Name RvII26
    Processor Pentium III 698.04MHz[GenuineIntel family 6 model B step 4]
    Cache L1_D:[16K] L1_I:[16K] L2:[512K]
    VideoCard NVIDIA Dualview
    Resolution 1600x1200 (32Bit color)
    Memory 1048,116 KByte
    OS Windows 2000 5.0 (Build: 2195) Service Pack 4
    Date 2008/07/31 02:33

    NEC SV-98/3-B02 PC-9821X-B02/B02L/B09/B10 または Adaptec AHA-294X/AIC-78XX

    ● 1394US2G-PCI (μPD720101 + HB1) に接続時
    ALL Integer Float MemoryR MemoryW MemoryRW DirectDraw
    3111 0 0 0 0 0 0

    Rectangle Text Ellipse BitBlt Read Write RRead RWrite Drive
    0 0 0 0 9203 6130 8679 877 J:100MB

    ● SX-2000WG (+ i82257)に接続時
    ALL Integer Float MemoryR MemoryW MemoryRW DirectDraw
    1049 0 0 0 0 0 0

    Rectangle Text Ellipse BitBlt Read Write RRead RWrite Drive
    0 0 0 0 2429 2827 2449 683 J:100MB
  3. SRX250F さん   2008-08-18 22:59:26
    サイレックスのSX-2000U2を買いました。
    SCSIとGAでPCIが埋まっているPC-9821Xa16/R12のCバスLAN経由で試しました。

    「Microsoft Usb Driver Version 5.1.2600.0」のinfファイルを読ませたのですが、リアルUSBが無いからか、そのままでは上手くいきませんでした。
    (デバイスマネージャーに黄色い「!」が表示される)

    そこでUSBボード(IO-DATA CBUS2L)を導入しているPC-9821Nr233の「WINNTsystem32drivers」フォルダー(WinNT4.0アップグレード環境です)の中に「usb」から始まるファイルが10個ありましたので、PC-9821Xa16/R12にコピー(3〜4個のファイルが上書きになりました)したところ、上手くいきました。

    動作確認したUSB機器は以下のとおりです。
     ・FLASHメモリー ELECOM MF-AU201GSV 
     ・カードリーダー BUFFALO MCR-A24/U2-BK
     ・HDD CENTURY CSL25U2
     ・マウス Arvel MS28BL
     ・デジカメ FUJIFILM FinePixF401
  4. KAZZEZ さん   2008-12-03 11:43:38
    確認が遅れましたが、あれからワンセグチューナもたどたどしいながら一応動作しました。
    やはり映像関係だからといって必ずしもアイソクロナスというわけではないようですね。

    というか、どるこむ過去ログ検索を利用しても「ワンセグ」の言葉自体が
    ヒットしませんでしたので、駄文ながら少し詳しく書いておきます。
    やはりPC-98ではマシンパワーが足りなかったのでしょうか。

    用いたのはブルウィルのデジセグDTV-1SUAです。
    Windows2000に対応している安いものということで選んだのですが、
    どうやら付属CDの専用ソフトがWindows2000に対応していないようです。
    ネット上から新しいドライバ・ソフトをDLしたら2kでも動作するようになりました。
    この製品は半年くらい前は秋葉とかでよく見かけたのですが、最近は見ない気がします。
    ただ、同じ形の製品は今でもよく見ますので、どこかのOEMなのかもしれません。
    # 同じ形だからといって2kに対応しているわけではないようですが。

    マニュアルの必須環境がPen4の1GHz+メモリ256MBなのに対し、
    今回のPC側の環境はRa40/M、PenIIIの1.1GHz(733MHz駆動)、メモリ256MBと、
    メモリの動作速度を考えればやや貧弱な印象が否めません。
    なおGAはGF2MX400(32MB)でした。

    結果的にそのままの状態では1〜2秒おきに映像が一瞬停止するという、実用的ではない動作でした。
    しかしIntelsatで言うところの54 00 58 2C相当のチューニングを加えることによって、
    「一瞬停止」が「一瞬スローになったかも?」程度にまで改善されました。
    内容がわかれば良い程度なら見れないこともありませんでしたので、
    恐らくPen3SとかにチューニングしたRvIIのような環境でしたら
    もっと普通に動くのではないでしょうか。

    しかし逆を言えば多くのPC-98環境ではまともに動作しないということでもあり、
    手持ちのV13(Winchip2A/220MHz程度+メモリ128MB)では全く映りませんでした。
    無理してPC-98でワンセグを見る意味は無さそうです。

    他にあれからUSBサーバで確認をしたデバイスで気になったものは、
    ソニーのMSリーダライタ付きマウスでしょうか。

    これはデバイスマネージャでは見かけ上ハブを介してマウスとMSリーダが
    繋がっているというデバイスですが、特徴的なのはメモリスティックを差したときだけ
    MSリーダがデバイスとして出現する点です。
    そのためメモリスティックを差した時だけドライブのアイコンが出現しますし、
    MSを抜く時はタスクトレイの「ハードウエアの取り外し」を使うことになります。

    しかしUSBデバイスサーバで使う場合は前述の通り、ハブは認識せず全て並列のデバイス扱いとなり、
    専用ソフトからデバイス個別に手動で接続・切断を行う仕様になりますから、
    メモリスティックを差したときに自動でドライブ認識しなくなる点に注意が必要でした。

    もちろん、マウスとMSリーダを別々のPCに割り振って利用するなんてこともできそうですが。
  5. KAZZEZ さん   2008-12-14 23:02:03
    ついでながら玄人志向 KURO-SHOTを試してみました。

    これはUSBサーバ上でストレージデバイスモードでは認識しましたが、
    案の定、ビデオデバイス・オーディオデバイス(ただし録音のみ)
    としてはどちらも認識しません。さすがに両方ともアイソクロナス転送のデバイスっぽいですね。

    通常、カメラモードで認識させるにはボタンを長押ししてから差すのですが、
    PCに直接差すときはデバマネでコンポジットデバイスの下に
    カメラデバイスとオーディオデバイスが並びます。
    しかしUSBサーバ上ではどちらも現れないようでした。AT互換機で試しても同じです。