MSX TR TECHHAN JP 04-2
4.2 V9958の新機能
4.2.1 水平スクロール
HO8~HOは、画面の水平スクロール量を、ECREEN 6と7では2ドット単位で、その他の画面モードでは1ドット単位で、設定する。 SP2=0(初期値)ならば、水平方向画面サイズが1ページとなる。 SP2=1ならば、水平方向サイズが2ページとなる。 MSK=0(初期値)ならば、画面の左端がマスクされない。 MSK=1ならば、SCREEN 6と7では画面の左端16ドットが、その他の画面モードでは画面の左端8ドットが、マスクされ、ボーダーカラーが表示される。 HO8~HO3に対して、表示画面は設定値だけ左向きに、8ドット単位(SCREEN 6と7では16ドット単位)でシフトする。
4.2.2 ウェイト WTE=0(初期値)ならば、ウェイト機能が無効になる。 WTE=1ならば、ウェイト機能が有効になる。CPUがVRAMをアクセスした際に、それによるV9958のVRAMアクセスが完了するまで、すべてのV9958ボードへのアクセスに対してウェイトがかかる。レジスターとカラーパレットへのアクセス未完および、コマンドのデータレディーによるウェイト機能はない。
4.2.3 コマンド CMD=0(初期値)ならば、SCREEN 5~12の画面モードでのみコマンド機能が有効になる。 CMD=1ならば、全画面モードにおいてコマンド機能が有効になる。 SCREEN 5~12以外の画面モードでは、SCREEN 8として動作する。従ってパラメーターは、SCREEN 8のX-Y座標系で設定する。
4.2.4 YJK方式の表示 YJK=0(初期値)ならば、VRAM上のデータをRGB方式(各3、3、2ビット)として扱う。スプライトの表示色は従来どおり。 YJK=1ならば、VRAM上のデータをYJK方式とみなし、これをRGB信号(各5ビット)に変換し、RGB端子よりアナログ出力する。スプライトの表示色にはパレットが有効になる。 YAEは、YJK方式のデータフォーマットを選択する。
YAE=0の場合
アトリビュートがない。データーフォーマットを次に示す。連続した4ドットをグルーピングして表わす。
YAE=1の場合
1ドットごとにアトリビュートがある。データフォーマットを次に示す。連続した4ドットをグルーピングして表わす。
A=0(初期値)ならば、Y、J、Kは、すべてYJK方式のデータとなる。 A=1ならば、Yデータはカラーコードとなり、カラーパレットをとおしてRGB出力される。JとKは、YJK方式のデータとなる。
YJK方式とRGB方式の変換式(参考) R=Y+J G=Y+K B=5/4Y-1/2J-1/4K
Y=1/2B+1/4R+1/8G J=R-Y K=G-Y
(編集部注)Yの値は、アトリビュートがない場合には0~31の整数、アトリビュートがある場合には0~30の偶然である。JとKの値には、-32~31の整数である。YJKからRGBへの変換結果は、0~31にクリッピングされる。