FM-TOWNSキーボードのUSB変換(続2

大型の台風接近で折角の祝日に外出もままならないので、FM-TOWNS用USBキーボードアダプタのキーマップカスタマイズ対応を行いました。

実際手を動かしてコードを書くまでは「USB HIDプログラミングって何か難しそう」という印象だったのですが、ネットで公開されているサンプルを参考に試行錯誤するうちにあっさり対応出来ました。なんだ、HIDクラス使うのって結構簡単じゃん(笑

キーマップ設定

見た目がダサいですがWIndows側のアプリです(汗。さすがにキー1つずつ変換定義を入力するのは面倒と思いました(というか私自身、面倒で使ってられなかった)ので、全キーの変換定義を記したファイルを一気に流し込めるようにしています。キー変換定義はPIC内蔵のEEPROM に記録しています。つまり

  • WindowsからEEPROMの指定アドレスを1バイト書き換える指示を出す
  • 変換アダプタのファームは指示に従ってEEPROMを1バイト書き換える
  • キーコード変換処理の際はEEPROM内の変換テーブルに従う

こんな感じです。

今回、Windows側アプリはVB.NETで作成しました。こうした小物を作成するならVB.NET(や、今回は使ってないけどC#)は優秀だと感じました。VisualStudioのExpress版を無償で公開しているMicrosoftに感謝です。

 

HIDクラスを手軽に扱える事が分かったので、USB内蔵PICを使ってもっと色々出来そうです。

Tweet about this on TwitterShare on FacebookShare on Google+

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です