Genesis Memory Domains
by Brad Corrupts
Bizhawk-Vanguard exposes the following domains in RTC:
Genplus-gx
68K RAM (Rewindable): Genesis main RAM region run by the 68K. 64KB large on a 16-bit bus. Main memory containing variables, data structures, etc. Rarely, if ever, contains actual code.
Z80 RAM (Rewindable): SPU work ram run by the Z80. 8KB large on an 8-bit bus. Sound engine and data are stored here. Note that some games use the 68K for their sound engine (Sonic 1 being a notable example).
MD CART: The ROM file.
BOOT ROM: The BIOS for the Sega/Mega CD. Don't touch this, unless you're doing BIOS corruptions.
CRAM (Rewindable): Palette ram. 128 bytes. (Not recommended. Some games refresh CRAM every frame. Also looks to be broken in this build.)
VSRAM (Rewindable): Vertical Scroll RAM. 128 bytes. (Not recommended. Only affects vertical scroll position in the game.)
VRAM (Rewindable): Video ram. 96KB. Holds the actual data drawn to the screen.
System Bus: Theoretically allows access to everything that's mapped as it facilitates the communication between pieces of hardware. In execution, not everything mapped will be visible through this domain. It's a matter of whether it was properly exposed or not. Corrupt something here and it'll be reflected in the domains derived from it.
0x000000 - 0x3FFFFF
- 4MB Cartridge ROM (MD Cart)0x400000 - 0x7FFFFF
- Reserved (used by the Sega CD and 32x)0x800000 - 0x9FFFFF
- Reserved (used by the 32x?)0xA00000 - 0xA0FFFF
- Z80 addressing space (8K RAM mapped to x0000-0x1FFF)0xA10000 - 0xA10001
- Version register (read-only word-long)0xA10002 - 0xA1001F
- I/O Registers0xA11000
- Memory mode register0xA11100 - 0xA11101
- Z80 bus request0xA11200 - 0xA11201
- Z80 reset0xA14000 - 0xA14003
- TMSS register0xC00000 - 0xC00009
- VDP registers0xFF0000 - 0xFFFFFF
- 64KB 68K RAM Sega CD Changes0x000000 0x01FFFF
- BIOS ROM0x020000 0x03FFFF
- "Program RAM" Bank Access0x200000 0x23FFFF
- "WORD RAM"0xA12000 0xA120XX
- "Gate Array"0xFFFD00 0xFFFDFF
- Interrupt/Exception vectors
Last updated