OSを作ろうpart5
■ このスレッドは過去ログ倉庫に格納されています
0430デフォルトの名無しさん
NGNG書き込み色プレーン指定、ビットマスクの指定の後、
ビットデータを書き込みたい場所のメモリ位置へ転送することで、1ドットを描画しています。
この方法では、横8ドットを一度に書き込む必要があるので、
赤白黒緑赤白黒緑 のようなランダムなドット絵を描画するには、
同じ場所をビットマスクを変えて8回ビットデータを転送しなければいけません。
色々、アルゴリズム的な最適化をしてもかなり遅いです。
Celeron1.7GのCPUで、Bochsだと全画面書き換えに1.5秒ぐらい、
実機でも書き換えがかんたんに見えるぐらい遅いです。
PC-98では、
Bプレーン 0xA8000〜 Rプレーン 0xB0000〜 Gプレーン 0xB8000〜 Iプレーン 0xE0000〜
となってて、メモリアクセスだけで高速に描画できると思います。
DOS/V の VGA に高速で書き込むには、640*480(2色) or 320*200(256色) モードに
設定するしかないのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています