リナザウ+USBシリアルケーブルを使って某観測機器の制御をするプログラムの作成。
といっても、基本的にはシリアルコンソールのようなものだが。
 いきなりリナザウ上で開発するのはかなり面倒なので、クロスコンパイル環境を入れた
Vine Linux上で動くものをとりあえず作ることに。VMWAREはUSBにも対応しているので、
ウインドウフォーカスをVMWAREにしておいてからUSBシリアルケーブルを挿すと
ブヒっと鳴って認識完了。もちろん先にリナザウと同じ手順でpl2303.oを用意しておいた。
ただし同じパッチは使えなかったので、PL-2303X対応に書き直したpl2303.cのソースを
拾ってきた。


 Linux上でのシリアルの使い方をググって調べ、とりあえずシリアルポートを初期化して
受信したデータをリアルタイムに表示するプログラムを作成。改行など、おかしい部分は
あるがとにかく拾えるようになった。
 次に、待ちループにキー入力データを送信するルーチンを追加する作業。
ところがLinuxにはDOS BASICのINKEY$のようなものが見当たらなかった。
調べていくと、curses(ncurses)というライブラリの中に似たような機能の関数を発見。
ただ、使うには画面制御をcursesに渡さねばならないらしい。何かのベクタをフックして
しまうのか、終了時にきちんと処理をしないとその後コンソールが使い物にならなくなってしまう。
簡単に済ませようと思っていたが、かなりステップ数が増えてしまう模様。


 cursesを使うコーティングをしたところで時間切れ。