DSには、2つのほぼ同一の2Dコアがあります。
メインコアは追加のバックグラウンドモードがあります。
注 : この情報はところどころ間違えている可能性があります。
Core-specific registers
Core |
レジスタオフセット |
A |
0x04000000 |
B |
0x04001000 |
オフセット:幅 |
モード |
名前 |
0x00:32 |
R/W |
DISPLAY_CR |
0x08:16 |
R/W |
BG0_CR |
0x0A:16 |
R/W |
BG1_CR |
0x0C:16 |
R/W |
BG2_CR |
0x0E:16 |
R/W |
BG3_CR |
0x10:16 |
W |
BG0_X |
0x12:16 |
W |
BG0_Y |
0x14:16 |
W |
BG1_X |
0x16:16 |
W |
BG1_Y |
0x18:16 |
W |
BG2_X |
0x1A:16 |
W |
BG2_Y |
0x1C:16 |
W |
BG3_X |
0x1E:16 |
W |
BG3_Y |
0x20:16 |
W |
BG2_HDX |
0x22:16 |
W |
BG2_HDY |
0x24:16 |
W |
BG2_VDX |
0x26:16 |
W |
BG2_VDY |
0x28:32 |
W |
BG2_X0 |
0x2C:32 |
W |
BG2_Y0 |
0x30:16 |
W |
BG3_HDX |
0x32:16 |
W |
BG3_HDY |
0x34:16 |
W |
BG3_VDX |
0x36:16 |
W |
BG3_VDY |
0x38:32 |
W |
BG3_X0 |
0x3C:32 |
W |
BG3_Y0 |
0x40:16 |
W |
WIN0_X |
0x42:16 |
W |
WIN1_X |
0x44:16 |
W |
WIN0_Y |
0x46:16 |
W |
WIN1_Y |
0x48:16 |
R/W |
WIN_IN (3f3f) |
0x4A:16 |
R/W |
WIN_OUT (3f3f) |
0x4C:16 |
W |
MOSAIC |
0x50:16 |
R/W |
BLEND_CR (3fff) |
0x52:16 |
R/W |
BLEND_AB (1f1f) |
0x54:16 |
W |
BLEND_Y |
0x6C:16 |
R/W |
BRIGHT_CR (c01f) |
DISPLAY_CR
ビット |
名前 |
31 |
拡張スプライトパレット有効 |
30 |
拡張バックグラウンドパレット有効 |
29..27 |
スクリーンベース (64K ステップ) (BGxCNT の 2K ステップを含む) |
26..24 |
キャラクタベース (64K ステップ) (BGxCNT の 16K ステップを含む) |
23 |
OBJ Processing during H-Blank (was located in Bit5 on GBA) |
22..20 |
拡張スプライトモード |
19..18 |
フレームバッファ選択 (extended mode 2) |
17..16 |
拡張モード |
15 |
スプライトウインドウ有効 |
14 |
ウインドウ 1 有効 |
13 |
ウインドウ 0 有効 |
12 |
スプライト有効 |
11 |
BG3 有効 |
10 |
BG2 有効 |
9 |
BG1 有効 |
8 |
BG0 有効 |
7 |
ブランク強制 |
6..4 |
スプライトモード |
3 |
0: BG0 を 2D layer にする 1: BG0 を 3D レイヤーにする |
2..0 |
ディスプレイモード |
ディスプレイモード :
Mode |
BG0 |
BG1 |
BG2 |
BG3 |
0 |
Text/3D |
Text |
Text |
Text |
1 |
Text/3D |
Text |
Text |
Affine |
2 |
Text/3D |
Text |
Affine |
Affine |
3 |
Text/3D |
Text |
Text |
Extended |
4 |
Text/3D |
Text |
Affine |
Extended |
5 |
Text/3D |
Text |
Extended |
Extended |
6 |
3D |
- |
Large |
- |
拡張モード :
- 0: フレームバッファ
- 1: GBA スタイル (ディスプレイモードを参照)
- 2: フレームバッファのような動作
- 3: ?
DISP_CR2
ビット |
名前 |
31 |
拡張スプライトパレット有効 |
30 |
拡張バックグラウンドパレット有効 |
29..23 |
? |
22..20 |
拡張スプライトモード |
19..18 |
? |
17..16 |
拡張モード |
15 |
スプライトウインドウ有効 |
14 |
ウインドウ 1 有効 |
13 |
ウインドウ 0 有効 |
12 |
スプライト有効 |
11 |
BG3 有効 |
10 |
BG2 有効 |
9 |
BG1 有効 |
8 |
BG0 有効 |
7 |
ブランク強制 |
6..4 |
スプライトモード |
3 |
? |
2..0 |
ディスプレイモード |
拡張モード :
- 0: ?
- 1: GBA スタイル (ディスプレイモードを参照)
- 2: ?
- 3: ?
注: この情報はたぶん間違ったディスプレイモードに関するものです。
(拡張モード 1 は無視してください):
- 0: Mode 0 (4つのテキストレイヤー)
- 1: Mode 1 (2つのテキストレイヤー、 1つの回転・拡大縮小レイヤー)
- 2: Mode 2 (2つの回転・拡大縮小レイヤー)
- 3: Mode 3 (15 bpp のフレームバッファ、シングルページ)
- 4: Mode 4 (8 bpp インデックスフレームバッファ、ダブルバッファ)
- 5: Mode 5 (bg0 が text/3d、 bg1 がテキスト、 bg2 が拡張回転・拡大縮小バックグラウンド)
- 6: Mode 6 ?
Mode 5 の拡張回転・拡大縮小バックグラウンド : Size fields: BG_BMP16_128x128 BG_BMP16_256x256 BG_BMP16_512x256 BG_BMP16_512x512
Each element in the background is a 16 bit direct-color entry A1B5G5R5. If the top bit is zero, the pixel is transparent, otherwise it is opaque.
GBA との違い :
- アルファ(透明)ビット(GBAでは、Mode 3 と Mode 5 は常に透明モードです)
- 複数のサイズ
- 回転・拡大縮小レジスタは、デフォルトではセットされません
BRIGHT_CR
ビット |
名前 |
15..14 |
モード |
13..5 |
- |
4..0 |
量 |
モード:
- 00, 11: 量の値は無視されます。中間の輝度です
- 01: 輝度を増やす = 中間 + 量 (0x8 以上は使いません)
- 10: 輝度を減らす = 中間 - 量 (0x8 以上は使いません)
ビットマスク - 0を読み込み、書き込みを無視する
(訳注:何を指しているのか分かりません…)
最終更新:2007年12月09日 22:20