Skip to content

Commit d44a3c3

Browse files
Estus-Devavivace
andauthored
Fill in CGB register holes in the Memory_Map page (#603)
* Fill in CGB register holes in the Memory_Map page I was implementing BESS support and needed a quick reference for which registers are mapped or unmapped, DMG+ or CGB+, and so on. And luckily the specification called out KEY0 explicitly or I would have missed these four registers. I'm adding them to the main MMIO table for that reason, as I believe it should be reliable for the use case of quickly determining used and unused addresses. I did not include undocumented CGB registers because they can be treated as though they are unused. I also did not add a documentation section for KEY0 even though it stands out as not having a link. If someone were to write up a description of that register they could come back and wire up the link here. In the meantime it would also be reasonable to link the whole box to KEY1, link to the CGB registers page, or link to the relevant section of the Power Up Sequence page. Whichever you feel is most appropriate. * Added link to KEY0 documentation Co-authored by: alloncm <alloncm@gmail.com> * Update header names to match master branch --------- Co-authored-by: Antonio Vivace <avivace4@gmail.com>
1 parent a9a3c0b commit d44a3c3

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

src/Memory_Map.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,13 @@ $FF0F | | DMG | [Interrupts](<#FF0F — IF: Interrupt flag>
3030
$FF10 | $FF26 | DMG | [Audio](<#Audio Registers>)
3131
$FF30 | $FF3F | DMG | [Wave pattern](<#FF30–FF3F — Wave pattern RAM>)
3232
$FF40 | $FF4B | DMG | LCD [Control](<#FF40 — LCDC: LCD control>), [Status](<#FF41 — STAT: LCD status>), [Position, Scrolling](<#LCD Position and Scrolling>), and [Palettes](<#Palettes>)
33+
$FF4C | $FF4D | CGB | [KEY0](<#FF4C — KEY0/SYS (CGB Mode only): CPU mode select>) and [KEY1](<#FF4D — KEY1/SPD (CGB Mode only): Prepare speed switch>)
3334
$FF4F | | CGB | [VRAM Bank Select](<#FF4F — VBK (CGB Mode only): VRAM bank>)
3435
$FF50 | | DMG | [Boot ROM mapping control](<#Power-Up Sequence>)
3536
$FF51 | $FF55 | CGB | [VRAM DMA](<#LCD VRAM DMA Transfers>)
37+
$FF56 | | CGB | [IR port](<#FF56 — RP (CGB Mode only): Infrared communications port>)
3638
$FF68 | $FF6B | CGB | [BG / OBJ Palettes](<#LCD Color Palettes (CGB only)>)
39+
$FF6C | | CGB | [Object priority mode](<#FF6C — OPRI (CGB Mode only): Object priority mode>)
3740
$FF70 | | CGB | [WRAM Bank Select](<#FF70 — SVBK/WBK (CGB Mode only): WRAM bank>)
3841

3942
## VRAM memory map

0 commit comments

Comments
 (0)