garlog改造への道 9

ていうか個人的なメモです。(H13.12.03)




 loggerシリーズがv0.10からv0.20になってから、garlog改造への道3(H13.11.01)で書いたstflogの模擬動作がイマイチになっているので、いろいろいじってます。その途中報告です。

 ハイパーターミナルの接続のプロパティは、
○接続の設定タブ
 接続方法=Com1へダイレクト
 モデムの設定は、
 ビット/秒=9600、データビット=8、パリティ=なし、ストップビット=1、フロー制御=なし

○設定タブ
 ASCII設定は、
 「ASCIIの送信」内の「行末に改行文字を付ける(S)」にチェックを入れます。
 PCの画面で送信内容を見るために、「ローカルエコーする(E)」にもチェックを入れます。
 さらにgigoさんの
   1000msに一行=55文字と考えて、送信に必要な時間が約55ms、一文字ごとに1msで+55ms、
   行末で残りの890msを待たせるという設定にしています。

 というアドバイスに従い、ディレイ(行)=890ミリ秒、ディレイ(文字)=1ミリ秒とします。

 しかし私のデスクトップPCのシリアル環境の場合、どこか変です。
 まず1文字1ms程度のディレイのハズですが、実際はそれ以上のディレイが入っている感じで、stf方式のテキストを1行送信するだけで1〜2秒くらいかかります。 んで、行の送信中にSwanがエラーを出すみたいです。かと言って文字ごとのディレイを0msにするとバッファが溢れるのかエラーは変わらず... 0.1msとかの設定もできないようだし...
 ちなみに左は、エラーが出ている時の画面例です。 当然ながら各データ値は正しく出てませんし、そのせいか軌跡も描画されません。
 これについては継続して、いろいろ試していく予定です。

●追記 (H13.12.26)
 その後の結果ですが、私の環境ではTeraTermProで試しても同様に、うまくいきませんでした。
 が、パソコン通信時代に使っていた秀Term(シェアウェア)で試してみたところ、うまくいきました。(^^)
 私が使ったのは「秀Term Evolution Ver4.45」で、メニューの「電話」→「シリアルポートに接続」でCOMポートと速度(9600bps)を設定、「転送」→「テキスト送信」で任意のSTF形式のファイルを選ぶだけでOKでした。
 うまくいかなかったら、他の通信ソフトを当たってみるのがいいかも知れません。



 続いて、gigoさんの掲示板で、
 「Swanってスクリーンを2枚持っていたと思うのですが、軌跡表示と速度などの数字は重ね合わせ表示できるでしょうか? 」という質問をさせていただいた(後から考えれば、画面関係を勉強もせずに無茶な質問をして申し訳ありません(^^;;>gigoさん)のですが、gigoさんより、
  現在のやり方では、スクリーンが2面あっても使えるキャラクタが512しかなく、スクリーン
  1枚で504キャラクタ必要ですから無理です。
  #これがスプライトは512-504の8個を越えられない理由。

  空白のキャラクタは共用とかして一画面で使うキャラクタを制限すれば二画面に出来なくは
  ありませんが文字の描画をBIOSに頼れなくなってしまい一気に複雑化してしまいます。
  カラースワンは1024キャラクタあるという話なのでカラー限定なら..

というお答えをいただきました。なるほど...そのような制限があったとは...

ところで、モノは試しということで、今の状態のまま、単に文字を軌跡表示部分に表示させたらどうなるのかなと思ってやってみたのが下の画像です。


 Y軸の表示場所がちょうど画面の中央あたりになるように設定してみました。2×2キャラクタの文字は出ているようですが、text_put_stringで書いた文字は出ていないようです。また、軌跡表示画面がスクロールすると一緒に文字も移動したり.. なかなか楽しい状態です。(^^;;

 ところでさっき思いついたのですが、使えるキャラクタは8個だけとなると、例えば7セグメントLEDみたいに|と―だけで数字を表現するなんてどうかな?  ...はい、勉強して出直します。 戯言でした。(^^;;


 続く...(かも)



目次に戻る