#include "sgl.h" Uint16 type; void slSpecialPrioModeNbg0( type ); void slSpecialPrioModeNbg1( type ); void slSpecialPrioModeNbg2( type ); void slSpecialPrioModeNbg3( type ); void slSpecialPrioModeRbg0( type );
Uint16 type - プライオリティ決定モード(後述)。
void - 何も返しません。
特殊プライオリティを使用する場合のプライオリティ決定モードを設定します。
typeには、 spPRI_Scrn、spPRI_Char、spPRI_Dot のいずれかを指定します。
NBG2の、カラーコードの下位4ビットが0と1の色に対してドット単位で特殊 プライオリティを掛ける。
slSpecialPrioModeNbg2( spPRI_Dot); slSpecialFuncCodeA( sfCOL_01); slSpecialFuncSelectB( 0 );
slSpecialFuncCodeA |
slSpecialFuncSelectB |
VDP2_SFPRMD |
#include "sgl.h" Uint16 mode; Uint16 flag; void slSpecialPrioBitN01( mode, flag );
Uint16 mode - 特殊プライオリティビットをセットする画面(後述)。
Uint16 flag - 特殊プライオリティビットをセットするか否か。
void - 何も返しません。
面ごとに指定する特殊プライオリティビットをセットします。
セルモード、ビットマップモード用の両方のレジスタをセットします。
modeには、 scnNBG0、scnNBG1 のいずれかが入ります。
flagは ' ON 'または' OFF ' を入れます。
slSpecialPrioBitN01( scnNBG0, ON );
この関数は、該当する画面のパターンネームコントロールレジスタの特殊 プライオリティビットを操作します。
slPageNbg0 |
slPageNbg1 |
slSpecialPrioModeNbg0 |
slSpecialPrioModeNbg1 |
VDP2_BMPNA |
VDP2_PNCN0 |
VDP2_PNCN1 |
#include "sgl.h" Uint16 mode; Uint16 flag; void slSpecialPrioBitScr( mode ,flag );
Uint16 mode - 特殊プライオリティビットをセットする画面(後述) Uint16 flag - 特殊プライオリティビットをセットするか否か。
void - 何も返しません。
面ごとに指定する特殊プライオリティビットをセットします。
modeには、 scnNBG2、scnNBG3 のいずれかが入ります。
flagは ' ON 'または' OFF ' を入れます。
slSpecialPrioBitScr( scnNBG2, ON );
この関数は、該当する画面のパターンネームコントロールレジスタの特殊 プライオリティビットを操作します。
slPageNbg2 |
slPageNbg3 |
slSpecialPrioModeNbg2 |
slSpecialPrioModeNbg3 |
VDP2_BMPNA |
#include "sgl.h" Uint16 flag; void slSpecialPrioBitNbg0( flag ); void slSpecialPrioBitNbg1( flag ); void slSpecialPrioBitNbg2( flag ); void slSpecialPrioBitNbg3( flag ); void slSpecialPrioBitRbg0( flag ); void slSpecialPrioBitBMN0( flag ); void slSpecialPrioBitBMN1( flag ); void slSpecialPrioBitBMR0( flag );
Uint16 flag - 特殊プライオリティビットをセットするか否か。
void - 何も返しません。
面ごとに指定する特殊プライオリティビットをセットします。
セルモード、ビットマップモード用の両方のレジスタをセットします。
flagは ' ON'または' OFF' を入れます。
slSpecialPrioBitRbg0( ON );
この関数は、該当する画面のパターンネームコントロールレジスタの特殊 プライオリティビットを操作します。
#include "sgl.h" Uint16 type; void slSpecialCCalcModeNbg0( type ); void slSpecialCCalcModeNbg1( type ); void slSpecialCCalcModeNbg2( type ); void slSpecialCCalcModeNbg3( type ); void slSpecialCCalcModeRbg0( type );
Uint16 type - 演算を有効にするためのモード(後述)。
void - 何も返しません。
特殊カラー演算を使用する場合の演算を有効にするためのモードを設定します。
typeには、 spCCAL_Scrn、spCCAL_Char、spCCAL_Dot、spCCAL_MSB のいずれかを指定します。
/* カラー演算の設定。 */ slColorCalc( CC_RATE| CC_TOP| NBG1ON); slColRateNbg1( CLRate20_12); /* 特殊カラー演算使用宣言 */ slSpecialCCalcModeNbg1( spPRI_Dot); /* プライオリティの設定 slPriorityNbg1( 5 ); slPriorityNbg3( 4 ); /* 特殊機能の設定 */ slSpecialFuncCodeA( sfCOL_01); slSpecialFuncSelectB( 0 );
#include "sgl.h" Uint16 mode; Uint16 flag; void slSpecialCCalcBitN01( mode, flag );
Uint16 mode - 特殊カラー演算ビットをセットする画面(後述) Uint16 flag - 特殊カラー演算ビットをセットするか否か。
void - 何も返しません。
面ごとに指定する特殊カラー演算ビットをセットします。
セルモード、ビットマップモード用の両方のレジスタをセットします。
modeには、 scnNBG0、scnNBG1 のいずれかが入ります。
flagは ' ON'または' OFF' を入れます。
void slSpecialCCalcBitN01( scnNBG1, ON );
これは、相当する画面のパターンネームコントロールレジスタの特殊カラー演算 ビットを立てます。
slPageNbg0 |
slPageNbg1 |
slSpecialCCalcBitNbg0 |
slSpecialCCalcBitNbg0 |
VDP2_BMPNA |
VDP2_PNCN0 |
VDP2_PNCN1 |
#include "sgl.h" Uint16 mode; Uint16 flag; void slSpecialCCalcBitScr( mode, flag );
Uint16 mode - 特殊カラー演算ビットをセットする画面(後述) Uint16 flag - 特殊カラー演算ビットをセットするか否か。
void - 何も返しません。
面ごとに指定する特殊カラー演算ビットをセットします。
modeには、 scnNBG2、scnNBG3 のいずれかが入ります。
flagは ' ON'または' OFF' を入れます。
slSpecialCCalcBitScr( scnNBG2, ON );
これは、相当する画面のパターンネームコントロールレジスタの特殊カラー演算 ビットを立てます。
slPageNbg2 |
slPageNbg3 |
slSpecialCCalcBitNbg2 |
slSpecialCCalcBitNbg3 |
VDP2_BMPNA |
VDP2_PNCN0 |
VDP2_PNCN1 |
#include "sgl.h" Uint16 flag; void slSpecialCCalcBitNbg0( flag ); void slSpecialCCalcBitNbg1( flag ); void slSpecialCCalcBitNbg2( flag ); void slSpecialCCalcBitNbg3( flag ); void slSpecialCCalcBitRbg0( flag ); void slSpecialCCalcBitBMN0( flag ); void slSpecialCCalcBitBMN1( flag ); void slSpecialCCalcBitBMR0( flag );
Uint16 flag - 特殊カラー演算ビットをセットするか否か。
void - 何も返しません。
面ごとに指定する特殊カラー演算ビットをセットします。
セルモード、ビットマップモード用の両方のレジスタをセットします。
flagは ' ON'または' OFF' を入れます。
slSpecialCCalcBitNbg3( ON );
これは、相当する画面のパターンネームコントロールレジスタの特殊カラー演算 ビットを立てます。
#include "sgl.h" Uint16 type; void slSpecialFuncCodeA( type ); void slSpecialFuncCodeB( type );
Uint16 type - 特殊機能を有効にするカラーコード(後述)。
void - 何も返しません。
特殊機能を有効にするカラーコード(下位4ビット)を指定します。
typeには、 sfCOL_01、sfCOL_23、sfCOL_45、sfCOL_67、sfCOL_89、sfCOL_ab、 sfCOL_cd、sfCOL_ef を '|' でつないで指定します。
slSpecialCCalcModeNbg1( spPRI_Dot); slPriorityNbg1( 5 ); slPriorityNbg1( 4 ); slSpecialFuncCodeA( sfCOL_cd);
カラーコードの下位4ビットの内、最後の1ビットは無視される為、(ハードウェア の仕様です。)例えば、sfCOL_67を指定した場合には、下位4ビットが6と7の色 に対して特殊機能が働きます。
#include "sgl.h" Uint16 mode; void slSpecialFuncSelectB( mode );
Uint16 mode - 特殊機能コードBを使用するスクロール画面。
void - 何も返しません。
特殊機能コードBを使用するスクロール画面を指定します。
modeには、 NBG0ON、NBG1ON、NBG2ON、NBG3ON、RBG0ON のいずれかを指定します(複数指定する場合'|'で繋いで使用して下さい)。
slSpecialPrioModeNbg1( spPRI_Dot); slPriorityNbg1( 5 ); slPriorityNbg1( 4 ); slSpecialFuncCodeB( sfCOL_01); slSpecialFuncSelectB( NBG1ON);
この関数で設定したBG面のみが特殊機能コードBを使用し、それ以外のBG面は、 全て、特殊機能コードAを使用します。slSpecialFuncSelectAという関数が 存在しないのはそのためです。逆にいえば、特殊機能コードAを使用しない面を 指定するとお考えください。