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
      • Windows Glitch Harvester
      • Android Vinesauce ROM Corruptor
      • Lesser known corruptors
      • Old Corruptors
    • Scares Scrambler
    • Super Simple Rom Corruptor
    • 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)
    • Nintendo 3DS
      • Corrupting the 3DS
      • Memory Domains
    • 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. Gameboy Advance

GBA Memory Domains

Bizhawk-Vanguard exposes the following domains in RTC:

mGBA & VBA-Next

  • IWRAM (Rewindable) : Internal (on the same chip as the CPU) work ram. 32kb large on a 32 bit bus. Generally holds the most critical data (ARM code, time sensitive data, etc).

  • EWRAM (Rewindable) : External (not on the same chip as the cpu) work ram. 256kb large on a 16 bit bus. Slower than the IWRAM. Holds anything that'd go in WRAM that isn't stored in the IWRAM. Can hold code, but since it's on a 16 bit bus it has to be ARM THUMB code.

  • BIOS : The BIOS, don't touch this.

  • PALRAM : Palette ram. 1KB Want to swap the colors? Have fun.

  • VRAM (Rewindable) : Video ram. 96KB. Holds the actual data drawn to the screen.

  • OAM: Object Attribute Memory. 1KB. Contains the actual "object" of things such as sprites (the mode, the size, what palette to use, etc).

  • ROM : The ROM file.

  • SRAM (Rewindable, unavailable on mGBA) : Saveram. Want to corrupt a save file? Corrupt this.

  • Combined WRAM (Rewindable) : IWRAM and EXRAM combined into a single memory domain that contains both.

  • System Bus: Theoretically allows access to everything that's mapped as it facillitates the communication between pieces of hardware. In execution, not everything mapped will be visible through this domain. It's a matter of if it was properly exposed or not. Corrupt something here and it'll be reflected in the domains derived from it.

    • 0x00000000 - 0x00003FFF- 16 KB System ROM (executable, but not readable)

    • 0x02000000 - 0x02030000- 256 KB EWRAM (general purpose RAM external to the CPU)

    • 0x03000000 - 0x03007FFF- 32 KB IWRAM (general purpose RAM internal to the CPU)

    • 0x04000000 - 0x040003FF- I/O Registers

    • 0x05000000 - 0x050003FF- 1 KB Colour Palette RAM

    • 0x06000000 - 0x06017FFF- 96 KB VRAM (Video RAM)

    • 0x07000000 - 0x070003FF- 1 KB OAM RAM

    • 0x08000000 - 0x????????- Game Pak ROM (0 to 32 MB)

    • 0x0E000000 - 0x????????- Game Pak RAM

      • Source

PreviousGBA ArchitectureNextNintendo DS

Last updated 8 hours ago

Was this helpful?