2017.12.21
前へ
次へ
ホームページトップへ戻る

マイコン独立大作戦
CRT/VGAIF+KEYIF+SDCARDIFボードの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
WindowsパソコンにUSB接続して使う現行方式はそれなりに便利ではありますが、ときとしてWindows
のしがらみから開放されて、小さいながらも独立した一個のパソコンとして機能したいと思うこともあります。
昔はそれが普通のことだったのですが、安価なCRTディスプレイが生産中止となって久しい今日ではそれ
は叶わぬことと諦めていたのですが…。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[総合第139回]



●プログラムを変更しました

前回書きましたようにせっかく必要な数の27C512にシステムプログラムを焼いたあとでまさかのバグがみつかってしまいました。
それで本日は、もう一度全部遮光フイルムをはがして消去しなければならないという余り楽しくもない作業をまずは片付けました。

世の中というのは面白いもので、もしもバグがみつかったりしないで先にプログラムを焼き付けたROMのまま出荷をしていましたら、おそらくシステムプログラムの更なる改良などということは考えることもなく、多忙のうちに過ぎていってしまったことと思います。
それがせっせと励んでせっかくROM焼きをしてご丁寧に遮光フィルムとラベルシールまで貼ったというのに、それをまた全部はがして焼き直さなくてはならない、ということを経験したものですから、このままでは面白くないぞ、という気持ちになりまして、せっかく全部消してまた焼き直すのだから、どうせならばこの機会にもう一工夫したいものだという気持ちが突然にわいてきました。
ええ。
災い転じて福となす、であります。

もう一工夫できないものかと思ったのは、表示速度の切換えについてでした。
[総合第133回]に書きましたように、文字色や背景色を指定して表示させると、従来のモノクロでの文字だけの表示に比べてがくんと表示速度が落ちてしまいます。
ZB3BASICを起動したときはカラー表示も正しく行なわれる設定になっているため、表示速度が遅くなりますが、カラー表示をしないで普通にモノクロの文字表示しかしないときでも表示が遅くなってしまうのはちょっと面白くありません。
そこでCMコマンドなどでアドレスE9BFに00を書き込むことで表示速度をUPさせることができるようにしました。
それはそれでよかったのですが、出荷前の動作テストのために毎回ROMやRAMを交換してはDIR表示やプログラムのロードなどを繰り返していますと、毎回CMコマンドでE9BFの値を00に書き換えるという操作すら面倒に思えてきてしまいます。

カラー表示のときは画面表示が遅くなるのは仕方がないとしても、普通の文字表示のときには自動的に表示速度をUPさせることはできないものだろうか?

頭は生きているうちに使うもの、であります。
必要は発明の母であります。
なんとかできないものかと考えておりましたら、おお!できるではないか!
アイデアがひらめきました。
画面の表示速度を切り換えるためにわざわざそのスイッチとなる変数を用意して、そこが00ならば色表示情報を無視することで画面表示速度をUPさせるように考えたのでしたが、そんなことをしなくてももっと簡単な方法があったことに気が付いたのでした。

画面の色表示は変数エリア(アドレスF14F)に文字色と背景色を示す8ビットの値をセットすることで行なわれます(「カラーキャラクタディスプレイインターフェース回路の製作」[第2回])。
CMコマンドやPOKE命令で直接値を書き換えることもできますが、ZB3BASICに新たに追加したCOLOR命令を使えばより簡単に行なうことができます。
ZB3BASICを起動したときはデフォルトの値として07がセットされます。
07は背景色が黒で文字が白のときの設定値です。
起動時には普通のモノクロ画面の表示になります。
この値を書き換えることで文字や背景に色をつけることができます。
逆に言えば、色表示を必要としないときは、この値を07にすればよい、ということになります。

それならば。
画面表示ルーチンはこの値を見て、もしその値が07だったならば色表示は必要ないので、色情報は無視する、というようにプログラムすればよいはずです。
そう考えましたので、そのようにプログラムを書き換えて動作を確認してみました。
結果は。
うまくいきました!

COLOR命令で表示色を指定したあとは、正しく色表示が行なわれる代わりに表示速度が遅くなります。
そして
COLOR 7,0
を実行してモノクロ表示を指定するだけで画面表示は速くなります。

ということでさっそくこのように改良したプログラムを組み込んだROMを作りました。
皆様にもうじきお届けする「新マイコン独立化セット」はこの改良プログラムを組み込んだROMをつけて出荷する予定で只今最後の作業中です。

CRT/VGAIF+KEYIF+SDCARDIFボードの製作[総合第139回]
2017.12.21upload

前へ
次へ
ホームページトップへ戻る