GBA 開発部屋:ハードウェア構成


基本スペック

メイン CPU ARM7TDMI / 16.78MHz
サブ CPU カスタム Z80 / 4.2MHz もしくは 8.4MHz
BIOS ROM 16KB
内部 RAM 32KB(CPU 内蔵)
外部 RAM 256KB
VRAM 96KB
ゲームパック 32MB ROM / Flash ROM+64KB SRAM
液晶 2.9 インチ反射型カラー TFT 液晶
解像度 240×160 ドット
表示能力 32,768 色
サウンド GB 上位互換サウンド(3ch+ノイズ)、ダイレクトサウンド(2ch)
サウンド出力 内蔵スピーカー、ステレオヘッドフォン端子
キー 4 方向十字キー、6 ボタン(A,B,L,R,SELECT,START)
通信ポート シリアル通信(GBA 専用プロトコル)
電源 3.3V DC
参考資料:UNIX USER 2003 年 6 月号 P.80 など

グラフィック

画面は何枚かの BG とスプライトで構成される。

BG モード

BG モードは 0〜5 までの 6 種類ある。
0〜2 はタイルモード(8×8 ドット単位のタイルを敷き詰める)、3〜5 はビットマップモード。

BG
モード
BG番号 拡縮
回転
画面サイズ タイル
定義数
色数 /
パレット数
スプライト
メモリ
0 BG0〜3 × 256×256〜
512×512
1024 16 / 16 or
256 / 1
32KB
1 BG0〜1 × 256×256〜
512×512
1024 16 / 16 or
256 / 1
32KB
BG2 128×128〜
1024×1024
256 256 / 1 32KB
2 BG2〜3 128×128〜
1024×1024
256 256 / 1 32KB
3 BG2 240×160 - 32768 / - 16KB
4 BG2〜3 240×160 - 256 / 1 16KB
5 BG2〜3 160×128 - 32768 / - 16KB

BG

まだ。
・テキストモード:16 色 / 16 パレット or 256 色 / 1 パレット
256×256
512×256
256×512
512×512
・拡縮回転モード:256 色 / 1 パレット、ループ ON/OFF
128×128
256×256
512×512
1024×1024
・ビットマップモード:拡縮回転可、ループ OFF 固定
240×160×15bit
240×160×8bit 2 面
160×120×15bit 2 面
タイルブロック 0x06000000 + T * 0x4000 (T=0〜3)
マップブロック 0x06000000 + M * 0x800(M=0〜31)
球面スクロール

スプライト

まだ。
1D/2D マッピング
通常は左上座標指定、拡縮回転時は中心座標指定
16 色 / 16 パレット or 256 色 / 1 パレット
タイル 0x06010000 + T * 0x20
拡縮回転
水平/垂直反転(拡縮回転 OFF 時)
最大 2 倍(拡縮回転 ON 時)
8×8 ドット単位のタイルを敷き詰める
 8× 8
16×16
32×32
64×64
16× 8
32× 8
32×16
64×32
 8×16
 8×32
16×32
32×64

プライオリティ

まだ。
OBJ / BG0 / BG1 / BG2 / BG3 それぞれ 0(高)〜3(低)
同じ値なら OBJ > BG0 > BG1 > BG2 > BG3

拡縮回転

まだ。
BG:それぞれに回転マトリクス+XY オフセット(S20Q8)
スプライト:回転マトリクス 32 個
回転マトリクス A,B,C,D(S8Q8)

モザイク

まだ。
縦横それぞれ 1〜16 ドット

ブレンド

まだ。
BG / OBJ / 背景?
アルファブレンド
白にフェード
黒にフェード
0/16〜16/16 倍の加算

ウィンドウ

まだ。
BG / OBJ / ブレンド
ウィンドウ 0 とウィンドウ 1
レクタングル指定(左端、右端+1、上端、下端+1)
内側/外側

その他

まだ。
強制ブランク
ラスター番号
V/H/ラスター割り込み

サウンド

まだ。

その他

まだ。

戻る