Module Memory.Memmap

memmap.ml - Memory-mapped location definitions

val _P1 : int

Joypad info

val _SB : int

Serial transfer data

val _SC : int

SIO Control

val _DIV : int

Divider Register

val _TIMA : int

Timer counter

val _TMA : int

Timer Modulo

val _TAC : int

Timer Control

val _IF : int

Interrupt Flag

val _NR10 : int

Sound Mode 1 sweep

val _NR11 : int

Sound Mode 1 wave pattern

val _NR12 : int

Sound Mode 1 envelope

val _NR13 : int

Sound Mode 1 frequency low

val _NR14 : int

Sound Mode 1 frequency high

val _NR21 : int

Sound Mode 2 wave pattern

val _NR22 : int

Sound Mode 2 envelope

val _NR23 : int

Sound Mode 2 frequency low

val _NR24 : int

Sound Mode 2 frequency high

val _NR30 : int

Sound Mode 3 sound on/off

val _NR31 : int

Sound Mode 3 sound length

val _NR32 : int

Sound Mode 3 output level

val _NR33 : int

Sound Mode 3 frequency low

val _NR34 : int

Sound Mode 3 frequency high

val _NR41 : int

Sound Mode 4 sound length

val _NR42 : int

Sound Mode 4 envelope

val _NR43 : int

Sound Mode 4 polynomial counter

val _NR44 : int

Sound Mode 4 counter/consecutive

val _NR50 : int

Channel Control/Volume

val _NR51 : int

Sound output terminal

val _NR52 : int

Sound on/off

val _LCDC : int

LCD Control

val _STAT : int

LCD Status

val _SCY : int

Scroll Y

val _SCX : int

Scroll X

val _LY : int

LCD Y coordinate

val _LYC : int

LY Compare

val _OAM_DMA : int

DMA transfer/start address

val _BGP : int

Background/Window palette data

val _OBP0 : int

Object Palette 0 data

val _OBP1 : int

Object Palette 1 data

val _WY : int

Window Y position

val _WX : int

Window X position

val _IE : int

Interrupt Enable

val _ROM_START : int

16 KB ROM Bank 00 (in cartridge, fixed at bank 00)

val _ROM_END : int
val _ROM_BANK_START : int
val _ROM_BANK_END : int
val _VRAM_START : int

8KB Video RAM (VRAM)

val _VRAM_END : int
val _ERAM_START : int

8KB External RAM (in cartridge, switchable bank, if any)

val _ERAM_END : int
val _WRAM_START : int

4KB Work RAM Bank 0 (WRAM)

val _WRAM_END : int
val _ECHO_START : int

Same as C000-DDFF (ECHO or Mirror RAM) (Typically not used)

val _ECHO_END : int
val _OAM_START : int

160 byte Sprite Attribute Table (OAM)

val _OAM_END : int
val _HRAM_START : int

352 bytes of High RAM

val _HRAM_END : int