そんなもんか…

鬼吸いは Cypress の FX2 チップを使っている。このチップには EZ-USB の流れを汲むドライバーとして ezusb.sys が一般に使われている。ULAや他のブートケーブルでもこれだ。ただ、Cypress はあまりこのドライバを使って欲しくないようだ。と言うことで、CyUSB.sys が薦められている。とは言ってもこの辺の情報はネットワークを探してもほとんど、手に入らない。ツールチェインに付いてくるサンプルコードやマニュアルが頼りだ。
バッファサイズや来たるべき 64bit 時代を考えると少し焦る。新しいドライバを使って開発をしないと…と。遅かれ早かれやらなければいけなくなりそうなので、挑戦してみた。CyUSB.sys に同梱されている CyAPI はクラスライブラリだが、抽象化がかなり進んでいる。機能的にも非同期I/Oなどをサポートしている。これをそのまま使うと、ホストソフトウェアにかなりのインパクトになるので、WrapperClass を作成して、以前に手がけた CEzusb クラスと同じような感じに仕上げてみた。
一応、動作はするようになった。途中でドライバーの差し替えでかなり悩んだけど、動作するようになった。(ただし、Renum後の再起動でほぼ、100%しくる。そのままホストソフトを再実行すればOK。現在、原因を究明中。)
転送速度はかなり期待したのだが、全然ダメダメである。70%~80%の転送速度だ。かなり、痛い…。
ドライバーを元に戻すかどうか、悩んでいるところだ…。

Leave a Reply

Your email address will not be published. Required fields are marked *