Corrupt.wiki
  • Videogame corruptions
    • Introduction
    • Communities
    • Safety and Ethics of Corruptions
    • What makes a good corruption?
  • Real-Time Corruptor
    • RTC Discord
    • Download RTC
    • Beginner Guides
      • Tutorial Video Guide
      • Corruption Classroom
      • Cheat Sheet Guide
    • In-Depth Guide
      • Introduction
      • Frequently Asked Questions
      • Simple Mode
      • Concepts and Vocabulary
      • General Parameters
      • Corruption Engines
      • Emulation-centric features
      • Classic Vector Lists
      • Glitch Harvester
      • Blast Editor
      • Blast Generator
      • Virtual Memory Domains
      • VMD Generator (Advanced)
      • Cluster Engine (Advanced)
      • Hotkeys
      • Tips, tricks and quirks
    • More RTC Guides
      • RTCV Dev Startup Guide
      • Running RTCV on Linux
      • How to make Passthrough Lists
      • Sequence Loader Plugin
  • Other Corruptors
    • Classic Corruptors
      • Vinesauce ROM Corruptor
      • VineCorrupt
      • Android Vinesauce ROM Corruptor
      • Lesser known corruptors
      • Old Corruptors
    • Scares Scrambler
    • Cheat Engine
    • Web-Based Corruptors
  • Systems
    • NES
      • Corrupting the NES
      • NES Architechture
      • NES Memory Domains
    • SNES
      • Corrupting the SNES
      • SNES Architechture
      • SNES Memory Domains
      • SNES Audio Tinkering
    • Sega Genesis
      • Corrupting the Sega Genesis
      • Genesis Architecture
      • Genesis Memory Domains
      • Cracking the Checksum Routine
    • N64
      • Corrupting the N64
      • N64 Architecture
      • N64 Memory Domains
      • N64 Basic/Advanced ROM Corruption
      • N64 Expert ROM Corruption
    • Gameboy Advance
      • Corrupting the GBA
      • GBA Architecture
      • GBA Memory Domains
    • Nintendo DS
      • Corrupting the DS
      • MelonDS Memory Domains
      • MelonDS-Specific Lists
      • Rom Corruption (Deprecated)
    • Gamecube/Wii
      • Corrupting the GC/Wii
      • Dolphin Memory Domains
      • Dolphin-Specific Lists
      • Using a real Wiimote with Dolphin
      • Dolphin Narry's mod (Deprecated)
    • Playstation 1
      • Corrupting the PSX
      • Advanced corruptions
    • Playstation 2
      • Corrupting the PS2
      • PCSX2 Memory Domains
      • PCSX2-specific Lists
    • Playstation 3
      • Playstation 3 Executable Corruptions
    • Xbox 360
      • Xbox 360 Executable Corruptions (Real Console)
      • Xbox 360 Executable Corruptions (Xenia)
    • Nintendo Switch
      • Switch ROM Corruptions
    • Computers & Mobile
      • Corrupting Android Unity games
      • Corrupting Files with FileStub
      • Corrupting PC Games with ProcessStub
      • Corrupting VMware snapshots
    • Java
      • Java Corruptor Plugin
      • Corrupting Minecraft with the Java Corruptor Plugin and FileStub
      • Corrupting Project Zomboid with the Java Corruptor Plugin and FileStub
Powered by GitBook
On this page

Was this helpful?

  1. Systems
  2. Sega Genesis

Genesis Memory Domains

by Brad Corrupts

PreviousGenesis ArchitectureNextCracking the Checksum Routine

Last updated 1 year ago

Was this helpful?

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 Registers

    • 0xA11000- Memory mode register

    • 0xA11100 - 0xA11101- Z80 bus request

    • 0xA11200 - 0xA11201- Z80 reset

    • 0xA14000 - 0xA14003- TMSS register

    • 0xC00000 - 0xC00009- VDP registers

    • 0xFF0000 - 0xFFFFFF- 64KB 68K RAM Sega CD Changes

    • 0x000000 0x01FFFF- BIOS ROM

    • 0x020000 0x03FFFF- "Program RAM" Bank Access

    • 0x200000 0x23FFFF- "WORD RAM"

    • 0xA12000 0xA120XX- "Gate Array"

    • 0xFFFD00 0xFFFDFF- Interrupt/Exception vectors

Source