●リソース競合
リソース競合はかなり頻繁に起きる。一見正常動作をしているように見えても、USBストレージにアクセス中に突然フリーズしたり、保存されているデータが壊れたように見えたり、FAT32.IFSが正常動作しないときは、リソース競合の可能性がある。これらの症状が出たら、とりあえずUSBポートを変更して試す。それでも駄目ならIRQを変更する(BIOSで元のIRQをLegathyにして他のIRQに追い出す)。なお、データが壊れているように見えても、迂闊に修復作業をしてはいけない。まずは、Windowsで読めるかどうかを確認してから。
この症状の厄介なところは、とりあえず動作してしまう点。使っている内にフリーズしたり、知らない内にデータが壊れたりするくらいなら、いっそ全然動かない方がありがたい。事前に正常動作しているかどうか、チェックする方法はないだろうか?−−てんで、私は圧縮ファイルを使ってUSBストレージの動作チェックをすることにしている。数十MB程度のLZHファイルをLHA tして、問題なく最後まで終了したら正常。もし、USBに問題があれば、正常ファイルでも破損メッセージが表示される。
なお、PCIのUSB増設ボードを使用する際も注意。リソース競合が原因かどうかは不明だが、よく似た症状が出ることがある。不具合が出たら、とりあえずオンボードのUSBポート(あれば)を試して見るとよい。
●Removables:の数
マスストレージを使用する際は、スロットの数に注意すること。基本的に、OS/2は使用していないスロットにもリソースを割り当てるようだ。ブート時にメディアが挿入されているスロットが優先されるようだが、空スロットでもリソースは消費する。したがって、内蔵のカードリーダーを使用する際には、Removables:の数をスロット数よりも多く指定しておくこと。そうしないと、後からUSBメモリや外付けリーダーを使用しようとしても、認識されないことがある。
●リムーバブルメディアのHPFS化
市販のSDHCカードやUSBメモリなどはFAT32フォーマットだが、HPFSフォーマットで使用することも可能。と言っても、そのままFORMAT x: /FS:HPFSでは受け付けない。面倒だが、Windowsで領域の開放と再確保をした上で、OS/2でフォーマットすること。なお、フォーマットの最終段階で、かなり長い時間だんまりを決め込むが、必ずしもハングアップしているわけではないので、気長に待つこと。下手に途中でリセットすると、カードがクラッシュして使い物にならなくまる。また、SDHCカードやUSBメモリは、メーカーによる相性が激しいようで、この方法でも上手くHPFS化できないものもある。失敗すると、やはりメモリを潰すことになるので、覚悟は必要。CFカードは比較的成功率が高いように感じられる。個人的には、CF以外のHPFS化は推奨しない。FAT32.IFSでFAT32のまま使用する方がよいと思う。
●USBのバージョンの問題
原則的に、USBポートとUSB機器のバージョンは統一する必要がある。具体的には、USB1.1のポートには、USB1.1専用の機器を使用すること。「2.0/1.1両用」という表記を真に受けてはいけない。全く動作しないだけならまだしも、非常に不安定な状態で動作してしまう(つまり、壊れたデータを転送してしまう)場合がある。これは恐い。
なお、現状の我が家のシステムでは次のようになっている(VIA APOLLO PLE133T + Celeron 566 + VIA VT6212L)。主にUSBフラッシュメモリでチェックした。
USB 1.1デバイス+USB 1.1ポート | → | ○正常動作
|
USB 1.1デバイス+USB 2.0ポート | → | ○正常動作
|
USB 2.0デバイス+USB 1.1ポート | → | ×不動(デバイス認識不能)
|
USB 2.0デバイス+USB 2.0ポート | → | △動作はするが異常なウエィトが掛かる
|
●動作確認報告報告(Warp 4.52)
種類 | 機種名 | ドライバ
|
---|
MOUSE | サンワサプライ eMouse(ホイール/光学) M$インテリマウス | USBMOUSE.SYS
|
FDD | IOデータ USB-FDX01 | USBMSD.ADD
|
USBメモリ | pqi Travelling Disk U190 512MB(USB2.0必須)
|
ELECOM MF-CU204GWH 4GB(USB2.0必須)
|
IOデータ EasyDisk 32MB & 256MB (USB 1.1/2.0可)
|
ADTEC Intelligent Stick 256MB (USB1.1のみ可)
|
SMドライブ | FlashGate HBC-USM1
|
CFドライブ | RATOC CF03 Princeton PRD-CF
|
メモリカード・ドライブ | IOデータ USB-6MRW(SM/MS/CF/SD等6種類に対応)
|
デジカメ
| Fuji Finepix A202 (リーダー・モード)
|
Minolta Dimage X20 (リーダー・モード)
|
プリンタ | Canon Pixus 550i | USBPRT.SYS
|
USBスキャナ | EPSON GT-9700F(TAME:別項参照) | USBSCAN.SYS
|
| |
USB-FDDとメモリカード・ドライブの共存も確認。ただし、最初はかなりトラブったので、USBUHCD.SYSとUSBMSD.SYSをインストールし直したところ、正常に動作するようになった。
|
---|
●ドライバのインストール
ベースドライバと用途別のドライバ(たとえば、マウスとやマスストレージ)の両方をインストールする必要がある。以下は正常動作を確認し、現在も使用中のもの。
【注意】ホストコントロール・ドライバ(USBUHCD.SYSなど)は、ポートの数だけ組み込まれる。CONFIG.SYSに同じ行が複数あるからと言って、削除してはいけない。
driver | archive file | driver file | time stump | installation
|
---|
ベース | USBBASIC.EXE | USBD.SYS(*) | 02-09-19版 | USBINST.EXEを実行
|
ストレージ | USBSTOR.EXE | USBMSD.SYS | 03-01-12版 | [デバイス・ドライバのインストール]を実行
|
マウス | USBMOUSE.EXE | USBMOUSE.SYS | 01-10-25版 | [デバイス・ドライバのインストール]を実行
|
(*)USBBASICには、ベースドライバ本体(USBD.SYS)以外にもいくつかの必須ドライバが含まれている。
なお、W45_PACKにはIBM純正の(恐らく)最後のUSBドライバが収録されている(タイムスタンプは2004年)。これはかなり安定的に動作するようだ。私も上記のバージョンから、このバージョンに更新したところ、ほとんど諦めかけていたHPFSやFAT32のリムーバブル・ストレージが実用レベルで使用できるようになった(FAT32の使用にはFAT32.IFSが必要)。なお、W45_PACKは現在(2010年12月)でも入手可能なようだ。Googleで検索すればわりと簡単に見つかるだろう。また、2010年12月には、Lars Erdmann氏による改良版ドライバが発表されたが、我が家の環境ではUSBCFG(USB設定ツール)がハングするといった副作用が出たため、純正品の方を使用している。
●ドライバ・ファイルの構成
ベースドライバにはUSBドライバ、ホストコントロール・ドライバ、ヒューマンインターフェース・ドライバの三種類があり、すべて必須。ただし、ホストコントロール・ドライバは使用されているチップセットに応じて、UHCI用、OHCI用、EHCI用の内から1つを選んでインストールする(インストーラが自動判別してくれる)。また、ホストコントロール・ドライバは、ポートの数だけ組み込む必要がある(たとえば、UHCI用2つ+EHCI用1つなど)。したがって、CONFIG.SYSに同じ内容の行が複数あってもエラーではない。
ベースドライバ
|
---|
USBドライバ | USBD.SYS
|
ホストコントール・ドライバ | USBUHCD.SYS/USBOHCD.SYS/USBUECD.SYS
|
ヒューマンインターフェース・ドライバ | USBHID.SYS
|
用途別ドライバ
|
---|
マスストレージ・ドライバ(*) | USBMSD.SYS
|
CD-ROMドライバ | USBCDROM.ADD
|
マウスドライバ | USBMOUSE.SYS
|
(*)FDD、メモリカード・ドライブ、ZIPなど各種のリムーバブル・メディア・ドライブが含まれる。
ホストコントロール・ドライバ
|
---|
driver | controler | chip |
|
---|
USBUHCD.SYS | UHCI | VIA & Intel系 | 現状では多数派のようだ
|
USBOHCD.SYS | OHCI | SiS & ALi系 | 少数派?
|
USBEHCD.SYS | EHCI | USB 2.xの統一規格 | 今後はこれに統一される?
|
▼CONFIG.SYSの例
BASEDEV=USBUHCD.SYS /V ←1番目のUHCIポート用
BASEDEV=USBUHCD.SYS /V ←2番目のUCHIポート用
BASEDEV=USBEHCD.SYS /V
BASEDEV=USBD.SYS /REQ:USBUHCD$,USBOHCD$,USBEHCD$
BASEDEV=USBHID.SYS
BASEDEV=USBMSD.ADD /V /FLOPPIES:0 /REMOVABLES:1 ←マスストレージ用
DEVICE=D:\OS2\BOOT\USBMOUSE.SYS ←マウス用
●付記:USB 1.1フラッシュメモリ
我が家の環境で安定的に動作するUSBメモリは、1.1規格(2.0非対応)のもののみ。ところが、1.1のUSBメモリは大容量のものが滅多にない。一番入手しやすいのが(勿論オークションのハナシ)、I・OデータのEasyDisk Cute/Mateだが、1.1規格は256MBが上限だったと思う。ADTEC Intelligent Stickも私が持っているのは256MB。BuffaloのClipDriveも初期製品は1.1規格のようだが、32MBのRUF-32Mあたりまでか? 変わり種では、指紋認証機能付きUSBメモリや、初期のペン型USBメモリ、カメラ付きUSBメモリの中にも、1.1規格で比較的容量の大きなものがあるようだ。もし、スマートワイヤレスのSafe Flashが1.1規格ならば、1GBのUSB 1.1メモリも存在することになる。
【重要追記】スマートワイヤレスのSafe Flashは特殊な仕様で、フォーマットも領域解放も不可能。OS/2では全く使用できないようだ。残念。また、Windows 7では指紋認証プログラム(verify.exe)がトロイの木馬Trojan.sisronと見なされるようだ。真偽は不明…というか、そんな事件はなかったハズなので、多分、誤認識だとは思うが、ちょっと気持ち悪くて使う勇気が出ない。
【逆襲のOS/2目次】
【ホーム】