というわけでBccDevの続き。
以前、win32のAPIを直接弄ってwindowsアプリを
組んでみたいなぁとか思って、なーーんとなく買った
Windowsゲームプログラミングだったんだけど、
あの本読んでみて始めて解ったことが1つ。
普通のコマンドライン用C言語ならmain関数が1個
あって、そこから各関数が呼び出されるカタチに
なってるんだけど、windowsみたいにイベントドリブン
だとmain関数の代わりにWinMain関数があって、
各処理はイベントで起動されるっていう常識的な
お話。
で、GDIとか直接弄ってグラフィック表示とか。
やっぱりこういうプリミティブな部分を直接
弄っている感覚ってなんとなく楽しくて、
実行環境に無料のbcc5.5を導入して遊んでた
んだけど、怠けのものオイラとしては、コマンド
ラインからコンパイルオプションとか指定して
コンパイルって言うのがメンドウでイヤだったので、
当時はあっという間に投げ出してしまいました。
が、あらためてvectorで探しモノしてたら↓
http://www.vector.co.jp/soft/win95/prog/se180695.html
こんなの見つけちゃって、早速試してみることに。
おぉ、便利。簡易とはいってもプロジェクトファイル
一式を管理してくれて、ボタン一発でビルド&メイク。
プロジェクトファイルの設定次第でコンソール用も
windows用もdllも作れちゃう。
デバッガーもここから起動できちゃう。
統合環境って言っても違和感なしだな。アリガタヤ。
ここまでやってみて、ふとさっきの参考サイト
http://0n0.fc2web.com/bcc/index.html
の環境整備の項目を眺めたら、BccDev
についてもちゃーーんと載ってた。目がザルだな。
こういう便利なものが公開されていることには
感謝、感謝だな。
で、Bccならシリアル通信も.net環境に悪さ
されずに扱えるだろうし、あとは入出力周りの
コーディングがメンドウなだけ。ひと頑張りで
なんとかなるかと。
そういえばBccでAPI弄ってグラフィック表示
しようと思ったのは、やっぱりネコロジーPC
を組んでいて.netでトラブったからだったなぁ。
今回も同じことやってる…進歩無ェ…
そういえば、ネコロジーPC。ようやくそれなりの
実行速度にはなったんだけど、気になることを
思い出した。
ネコロジーPCはデータ取り込み処理中にプログレス
バーを表示するんだけど、その伸びる速度が途中から
変化すること。
シリアルポート上をデータが流れている間はなぜか
妙に遅いんだけど、データが一旦PC側のバッファに
取り込まれてしまうと一転して速くなるってこと。
要はVB.netの環境下ではシリアルポートの入力処理で
物凄いオーバーヘッドが生じているであろうということ。
.net環境とシリアルポートは、「別スレッドで動かす」
ということばかりに拘りすぎた結果、処理速度が
非現実的になってでも愚直に仕様を取り込んでこう
なった…という気がしてならないな。
たまたま顕著に表れるのがFT232RLなんだろうけど、
結局どのUSB-シリアル変換器つかっても、いや、
シリアルポート使う限り.netは大同小異なんだろうな。
フリーのVB6.0って無いのかな…
いまさら4.0使うわけにも…っていうか多分
箱ごと捨てちゃってるだろうしな…
|