ぷろぐらむぅ

昨日に続き、STOLの高速化。昔やったリバース接続による実験ではV30の10MHzのマシンで、画面表示する・しないにかかわらずDTEを51200bpsにしたあたりから文字が落ちだした。それでも51200bpsでは実用範囲内で収まったのだからV30マシンとしては予想以上の結果だったのだが、STOLの開発目的の「文字落ちなしでかつ速い」ということからすると文字落ちは非常に悔しい結果だった。

というわけで、最初のテーマは画面表示なしの時の文字落ち対策。いままでもいかにも文字落ちの原因になりそうで、どうにかしたかったBIOSとファンクションコール。さっそく、本で調べてみるとちゃんと代替手段があるじゃないの:-)。3つあったINT18HやINT21HをI/Oポートやワークエリアの参照で置き換えたり、使用頻度を減らしたりで、画面非表示時だと1.5倍近い高速化。リバース試験のデータではないから額面通りにはいかないが、おそらく割込不可能な期間も大幅に減ってるはず。うーんこれはかなり期待。

この結果に調子に乗り、せっかくだからスクロールもいろいろ試して見ようということで実験。昨日試したVRAMのスクロールにバッファをかます方法は3割ほど速い。ただし、48KBもRS&ファイルバッファを取っているSTOLではバッファはちょうど25行分くらいしか取れない。今後のバージョンアップ時に足りなくなるかもしれない。次に裏VRAMまで用いたハードウェアスクロール。これがめちゃくちゃ速い。2~3倍の速度は出ている。しかし、当然裏VRAMを破壊するし、TT組み込み時にどうなるか不明、あと行数が増えるとやや効果が落ちてくる。特に画面分割を多用した完全なハードウェアスクロールだとプログラムがややこしい。単なる速度面で言えば画面表示を抑制すればハードウェアスクロールより速いわけで、手間をかけてまで使うかどうか迷うところ。でもメモリブロック転送が減ることによる文字落ちが抑制できるなら考えてもいいかも。

コメント

コメントを書く