#9th creative web site
ファミコンのメモリマップ

CPUとPPU

ファミコンはメインとなるCPUと、描画を担当するPPU(Picture Processing Unit)に分かれていて、CPUの領域へは自由にアクセスできるのに対して、PPUの領域へは手続きを踏んで、データを送受信する形になる。

CPUのメモリマップ

$0000番地〜$FFFF番地の領域が定義されている。($xxxxは16進表記を表します。)
アドレス説明用途
$0000-$07FFRAM領域演算結果などを保持
$0800-$1FFF$0000-$07FFのミラー
$2000-$2007PPU接続I/Oグラフィックの制御
$2008-$3FFF未使用
$4000-$401Fサウンド、その他接続I/Oサウンドの制御、状態の取得、設定
$4020-$5FFF未使用
$6000-$7FFFバッテリーバックアップRAM領域セーブデータの保持
$8000-$FFFFROM領域プログラム本体

PPUのメモリマップ

$0000番地〜$3FFF番地の領域が定義されている。
CPUの$2006と$2007番地を使って、読み書きを行う。
アドレス説明用途
$0000-$0FFF背景パターン背景パターンを格納
$1000-$1FFFスプライトパターンスプライトパターンを格納
$2000-$2FFF画面情報背景パターンの配置を制御
$3000-$3EFF未使用
$3F00-$3F1Fパレット情報背景、スプライトの色を指定
$3F20-$3FFF未使用