■MSX-DOS(1) で 画面を多色刷り(通称SCREEN1.5)に設定するサンプル

後述の BIOS を使用して 画面を多色刷り(SCREEN1、VDPのみSCREEN2)に設定するプログラム(DOSコマンド)のサンプルです。
フォントは MAIN-ROM から読み出し、太字化して設定します。

DOS環境から インタースロットコールを使用して BIOS を呼び出しています。
※インタースロットコール後は割り込み禁止状態となるため、割り込み許可(EI)が必要です。
※ 極力BIOSを利用しているので速くはないです。
 VRAMは 直接I/Oポート経由でアクセスする等 効率化の余地はありますが、
 サンプルということでわかりやすさ重視としています。

【使用する BIOS】
RDSLT (000CH)
 指定したスロット/アドレスのメモリを 1 バイト読む。
CALSLT (001CH)
 指定したスロットのルーチンを読み出す (インタースロット・コール)。
WRTVRM (004DH)
 指定したアドレスの VRAM にデータを書き込む。
CHGMOD (005FH)
 スクリーン・モードを変える。
SETGRP (007EH)
 VDP のみを GRAPHIC2 モードにする。


実行結果イメージ



この記事が気に入ったらサポートをしてみませんか?