コメを噛め

コメを噛め

rerofumi の電子工作メモ

hatena bookmark

ROMだけでなくAVRも読み書きできてウハウハなユニバーサルプログラマ TOP2005+ だけれども、実はかなり大きめな問題がある。

インストールするときに気がつくのだけれども、「古いドライバーを上書きしようとしています、続行しますか」といった感じのメッセージが表示される時がある。このとき、上書きせずにそのままにしておくと、TOPWIN を起動したときにブルースクリーン(!)でOSが落ちる。
なので、そのドライバを上書きして使用することになるのだけれども、なんかの拍子でより新しいドライバがインストールされてしまい、またブルースクリーンで動作しなくなる場面にであることがある。
今回は AVR Studio をインストールした後に出会った。

この不具合の原因は windrvr6.sys というカーネルモードドライバ(たぶんUSB)にある。WinDriver というのはデバイスドライバを簡易に開発できる JUNGO の製品。日本では XLSOFT が扱っている。USBドライバなどはWDMで書きやすくはなっているものの、カーネルモードドライバなのでその開発は容易ではない。WinDriver はそういったドライバ開発の煩雑さを無くすために、JUNGO 製のカーネルモードドライバプロキシを用い、ドライバ本体はユーザーモードで製作することができるという製品。これを用いることでドライバ開発はぐんと容易になるものの、カーネルモードドライバプロキシに依存することとなる。
それが windrvr6.sys。

この WinDriver を用いている USB商品は以外と多いらしく調べると大体のマシンに入っているものだ。
まあ、複数のドライバが windrvr6.sys を要求してもそれなりに動く。
んが、TOP2005+ やTOPWINに添付している windrvr6.sys はえらく古いといったのが、今回の問題となる。最近の windrvr6.sys は Ver9か8 なんだけれども、TOPWINのそれは Ver6 であった。これが原因でブルースクリーンになる。
逆に TOPWIN の古いwindrvr6.sys を入れていると使えない USB機器とソフトが存在するかもしれない。

原因がわかってしまえばそんなものということで、使うときに windrvr6.sys
を入れ替えることで回避することができる。

Leave a Reply