- スプライトと各スクロール画面のドットカラーデータがパレット形式の場合は、パレットナンバーとドットカラーコードから構成されたドットカラーデータにカラーRAMアドレスオフセットレジスタの値を加算したものがカラーRAMアドレスとなり、そのアドレスのカラーデータをドットのカラーデータとして出力します。RGB形式の場合は、RGBそれぞれのデータから構成されるドットカラーデータをそのまま、そのドットのカラーデータとして出力します。
スクロール画面のドットカラーデータがパレット形式の場合、ドットカラーデータの下位4ビットの値によって、特殊プライオリティ機能や特殊カラー演算機能を使うかどうかを指定することができます。
■10.1 パレット形式のドットカラーデータ
- パレット形式のドットカラーデータは11ビットのデータで、対応した画面のカラーRAMアドレスオフセットレジスタの値を上位3ビットに加算して、そのドットのカラーデータを格納しているカラーRAMアドレスとします。
●スプライトドットカラーデータ
- パレット形式のスプライトドットカラーデータは、指定されたスプライトタイプによって異なります。ドットカラーデータが10ビット以下のスプライトタイプを指定した場合には、足りない上位ビットを0に固定し、上位3ビットにスプライト用のカラーRAMアドレスオフセット値を加算して、そのドットのカラーRAMアドレスとします。なお、カラーRAMモードをモード0またはモード2に設定している場合は、カラーRAMアドレスの最上位ビットは無視されます。
- パレット形式のスプライトドットカラーデータを図10.1に、スプライトのカラーRAMアドレスを図10.2に示します。
- 図10.1 パレット形式のスプライトドットカラーデータ
- ◆スプライトタイプ0〜3,5の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ドットカラーデータ 11ビット |
- ◆スプライトタイプ4,6の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0 |
ドットカラーデータ 10ビット |
---|
- ◆スプライトタイプ7の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0 | 0 |
ドットカラーデータ 9ビット |
---|
- ◆スプライトタイプC〜Fの場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0 | 0 | 0 |
ドットカラーデータ 8ビット |
---|
- ◆スプライトタイプ8の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0 | 0 | 0 | 0 |
ドットカラーデータ 7ビット |
---|
- ◆スプライトタイプ9〜Bの場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0 | 0 | 0 | 0 | 0 |
ドットカラーデータ 6ビット |
---|
- 図10.2 スプライトのカラーRAMアドレス
- ・スプライトドットカラーデータ
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ドットカラーデータ 11ビット |
- ・スプライト用カラーRAMアドレスオフセット
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
オフセット値 3ビット |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
---|
- ・そのドットのカラーRAMアドレス
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
カラーRAMアドレス 11ビット |
- [注]
- カラーRAMモードがモード0またはモード2の場合は、カラーRAMアドレスの最上位ビット(LSB)は無視されます。
●スクロールドットカラーデータ
- パレット形式のスクロールドットカラーデータは、指定されたキャラクタ色数によって異なります。11ビットのドットカラーデータの上位3ビットに、それぞれの面に対応したカラーRAMアドレスオフセット値を加算して、そのドットのカラーRAMアドレスとします。なお、カラーRAMモードをモード0またはモード2に設定している場合は、カラーRAMアドレスの最上位ビットは無視されます。
- ラインカラー画面には、対応するカラーRAMアドレスオフセット値がないので、ラインカラー画面テーブルから読み込まれた11ビットの値が、そのままカラーRAMアドレスになります。
- パレット形式のスクロールドットカラーデータを図10.3に、スクロール画面のカラーRAMアドレスを図10.4に示します。
- 図10.3 パレット形式のスクロールドットカラーデータ
- ◆キャラクタ色数が16色の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
パレットナンバー 7ビット | ドットカラーコード 4ビット |
- ◆キャラクタ色数が256色の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
パレット ナンバー 3ビット | ドットカラーコード 8ビット |
- ◆キャラクタ色数が2048色の場合
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ドットカラーデータ 11ビット |
- 図10.4 スクロールのカラーRAMアドレス
- ・スクロールドットカラーデータ
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ドットカラーデータ 11ビット |
- ・各スクロール用カラーRAMアドレスオフセット
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
オフセット値 3ビット |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
---|
- ・そのドットのカラーRAMアドレス
10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
カラーRAMアドレス 11ビット |
- [注]
- カラーRAMモードがモード0またはモード2の場合は、カラーRAMアドレスの最上位ビット(LSB)は無視されます。
●カラーRAMアドレスオフセットレジスタ
- カラーRAMアドレスオフセットレジスタは、スプライトおよび各スクロール画面に対するカラーRAMアドレスオフセット値を指定します。書き込み専用の16ビットのレジスタで、1800E4H〜1800E6H番地にあります。電源投入後またはリセット後、値は0にクリアされますので必ず設定してください。
- CRAOFA 1800E4H
- CRAOFB 1800E6H
15 | 14 | 13 | 12 | 11 | 10 | 09 | 08 |
- |
- |
- |
- |
- |
- |
- |
- |
- カラーRAMアドレスオフセットビット:Color RAM address offset bit
- (N0CAOS2〜N0CAOS0, N1CAOS2〜N1CAOS0, N2CAOS2〜N2CAOS0, N3CAOS2〜N3CAOS0, R0CAOS2〜R0CAOS0, SPCAOS2〜SPCAOS0)
スプライトおよび各スクロール画面に対するカラーRAMアドレスオフセット値を指定します。
N0CAOS2〜N0CAOS0 | 1800E4H | ビット2〜0 | NBG0用(またはRBG1用) |
N1CAOS2〜N1CAOS0 | 1800E4H | ビット6〜4 | NBG1用(またはEXBG用) |
N2CAOS2〜N2CAOS0 | 1800E4H | ビット10〜8 | NBG2用 |
N3CAOS2〜N3CAOS0 | 1800E4H | ビット14〜12 | NBG3用 |
R0CAOS2〜R0CAOS0 | 1800E6H | ビット2〜0 | RBG0用 |
SPCAOS2〜SPCAOS0 | 1800E6H | ビット6〜4 | スプライト用 |
- 実際のカラーRAMアドレスオフセット値は、次の式で計算されます。カラーRAMモードがモード0またはモード2の場合、カラーRAMアドレスオフセット値を加算した結果のカラーRAMアドレスの最上位ビットは無視されます。
- ・カラーRAMモードがモード0またはモード1のとき
(カラーRAMアドレスオフセット値)
= (カラーRAMアドレスオフセットレジスタ値3ビット)×200H
- ・カラーRAMモードがモード2のとき
(カラーRAMアドレスオフセット値)
= (カラーRAMアドレスオフセットレジスタ値3ビット)×400H