これは、SNES にのみ適用可能なメモリマップである。
"LoROM", "HiROM" 等の異なる種類のカートリッジが アドレスバス A に配置される。 カートリッジは、/CART 信号がアクティブな時に反応する。 どちらのバスのアドレスにも反応できるが、 片方はマップされない。 同様に、拡張ポートにデバイスが接続された時、 アドレスバス B の何もマップされていないレジスタに反応するだろう。
WRAM は、/WRAM 信号がアクティブな時はアドレスバス A に、 レジスタ 0x2180 ~ 0x2183 を通してアドレスバス B に配置される。
APU は、アドレスバス B の 0x40 ~ 0x7F に配置される。
PPU1 と PPU2 は、アドレスバス B の 0x2100 ~ 0x213F に配置される。
表の、"スピード" 列はその領域のメモリのアクセス速度を表す。 SNES のマスタークロックは約 21MHz である (おそらく、1.89e9/88 Hz に近い)。 CPU の内部動作サイクルは常に 6 マスターサイクルで、 Fast メモリアクセスサイクルは 6 マスターサイクル、 Slow メモリアクセスサイクルは 8 マスターサイクル、 XSlow メモリアクセスサイクルは 12 マスターサイクルかかる。
バンク | アドレス | スピード | マッピング |
$00-$3F | $0000-$1FFF | Slow | アドレスバス A + /WRAM (ミラー : $7E:0000-$1FFF) |
$2000-$20FF | Fast | アドレスバス A | |
$2100-$21FF | Fast | アドレスバス B | |
$2200-$3FFF | Fast | アドレスバス A | |
$4000-$41FF | XSlow | 内部CPUレジスタ (注 1 参照) | |
$4200-$43FF | Fast | 内部CPUレジスタ (注 1 参照) | |
$4400-$5FFF | Fast | アドレスバス A | |
$6000-$7FFF | Slow | アドレスバス A | |
$8000-$FFFF | Slow | アドレスバス A + /CART | |
$40-$7D | $0000-$FFFF | Slow | アドレスバス A + /CART |
$7E-$7F | $0000-$FFFF | Slow | アドレスバス A + /WRAM |
$80-$BF | $0000-$1FFF | Slow | アドレスバス A + /WRAM (ミラー : $7E:0000-$1FFF) |
$2000-$20FF | Fast | アドレスバス A | |
$2100-$21FF | Fast | アドレスバス B | |
$2200-$3FFF | Fast | アドレスバス A | |
$4000-$41FF | XSlow | 内部CPUレジスタ (注 1 参照) | |
$4200-$43FF | Fast | 内部CPUレジスタ (注 1 参照) | |
$4400-$5FFF | Fast | アドレスバス A | |
$6000-$7FFF | Slow | アドレスバス A | |
$8000-$FFFF | 注 2 | アドレスバス A + /CART | |
$C0-$FF | $0000-$FFFF | 注 2 | アドレスバス A + /CART |
注 1 : 内部 CPU レジスタ用のアドレスは、 アドレスバス A の外にある可能性があり、 CPU はデータバスを無視する。 データバスが全てのメモリ領域を無視するかということと、 これらのアドレスが実際にレジスタなのかは不明。 同様に、CPU の書き込みがデータバスに現れるのかどうかも不明。 現在のところ、アドレスと書き込みはバスに現れるだろうと 考えられている。読み込みは現れたり現れなかったりする。 実際にマップされているレジスタのビットのみがデータバスで無視される。 (例えば、データバスは 0x4211 のビット 7 だけを無視する)
注 2 : CPU レジスタ 0x420D のビット 0 がセットされている時、 スピードは Fast になり、セットされていない場合は Slow になる。
バンク | アドレス | 内容 | ミラーバンク |
0x00-0x2F | 0x0000-0x1FFF | 下位RAM | 0x7E |
0x2000-0x2FFF | I/Oポート (PPU1, APU) | 0x00-0x3F | |
0x3000-0x3FFF | I/Oポート (SFX, DSP, etc) | 0x00-0x3F | |
0x4000-0x41FF | I/Oポート (PAD) | 0x00-0x3F | |
0x4200-0x5FFF | I/Oポート (PPU2, DMA, etc) | 0x00-0x3F | |
0x6000-0x7FFF | 予約済み | 0x00-0x3F | |
0x8000-0xFFFF | Mode 20 ROM | ||
0x30-0x3F | 0x0000-0x1FFF | 下位RAM | 0x7E |
0x2000-0x2FFF | I/Oポート (PPU1, APU) | 0x00-0x3F | |
0x3000-0x3FFF | I/Oポート (SFX, DSP, etc) | 0x00-0x3F | |
0x4000-0x41FF | I/Oポート (PAD) | 0x00-0x3F | |
0x4200-0x5FFF | I/Oポート (PPU2, DMA, etc) | 0x00-0x3F | |
0x6000-0x7FFF | 予約済み | ||
0x8000-0xFFFF | Mode 20 ROM | 0x80-0xBF | |
0x40-0x5F | 0x0000-0x7FFF | 予約済み | |
0x8000-0xFFFF | Mode 20 ROM | 0xC0-0xEF | |
0x60-0x6F | 0x0000-0x7FFF | 予約済み | |
0x70-0x77 | 0x0000-0x7FFF | Mode 20 SRAM (256Kバイト) | |
0x8000-0xFFFF | 予約済み | ||
0x78-0x7D | 0x0000-0xFFFF | 予約済み | |
0x7E | 0x0000-0x1FFF | 下位RAM | 0x00-0x3F |
0x2000-0x7FFF | 上位RAM | ||
0x8000-0xFFFF | 拡張RAM | ||
0x7F | 0x0000-0xFFFF | 拡張RAM | |
0x80-0xDF | 0x0000-0xFFFF | バンク0x00-0x5Fのミラー | 0x00-0x5F |
0xE0-0xFF | 0x0000-0xFFFF | 予約済み |
バンク | アドレス | 内容 | ミラーバンク |
0x00-0x2F | 0x0000-0x1FFF | 下位RAM | 0x7E |
0x2000-0x2FFF | I/Oポート (PPU1, APU) | 0x00-0x3F | |
0x3000-0x3FFF | I/Oポート (SFX, DSP, etc) | 0x00-0x3F | |
0x4000-0x41FF | I/Oポート (PAD) | 0x00-0x3F | |
0x4200-0x5FFF | I/Oポート (PPU2, DMA, etc) | 0x00-0x3F | |
0x6000-0x7FFF | 予約済み | 0x00-0x3F | |
0x8000-0xFFFF | Mode 21 ROM (0xC0-0xEFより) | 0xC0-0xEF | |
0x30-0x3F | 0x0000-0x1FFF | 下位RAM | 0x7E |
0x2000-0x2FFF | I/Oポート (PPU1, APU) | 0x00-0x3F | |
0x3000-0x3FFF | I/Oポート (SFX, DSP, etc) | 0x00-0x3F | |
0x4000-0x41FF | I/Oポート (PAD) | 0x00-0x3F | |
0x4200-0x5FFF | I/Oポート (PPU2, DMA, etc) | 0x00-0x3F | |
0x6000-0x7FFF | Mode 21 SRAM (128Kバイト) | ||
0x8000-0xFFFF | Mode 21 ROM (0xF0-0xFFより) | 0xF0-0xFF | |
0x40-0x5F | 0x0000-0xFFFF | Mode 21 ROM | |
0x60-0x6F | 0x0000-0x7FFF | 予約済み | |
0x70-0x77 | 0x0000-0x7FFF | Mode 20 SRAM (256Kバイト) | |
0x8000-0xFFFF | 予約済み | ||
0x78-0x7D | 0x0000-0xFFFF | 予約済み | |
0x7E | 0x0000-0x1FFF | 下位RAM | 0x00-0x3F |
0x2000-0x7FFF | 上位RAM | ||
0x8000-0xFFFF | 拡張RAM | ||
0x7F | 0x0000-0xFFFF | 拡張RAM | |
0x80-0xBF | 0x0000-0xFFFF | バンク0x00-0x3Fのミラー | 0x00-0x3F |
0xC0-0xFF | 0x0000-0xFFFF | Mode 21 ROM |
アドレス | 内容 |
0x0000-0x00EF | RAM |
0x00F0-0x00FF | I/Oポート (DSP) |
0x0100-0x7FFF | RAM |
0x8000-0xFFBF | RAM? |
0xFFC0-0xFFFF | ROM(起動用) |