News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Sega Mega Drive - Setting breakpoints on VRAM  (Read 998 times)

RadioTails

  • Sr. Member
  • ****
  • Posts: 338
  • Holding the Mega Drive controller
    • View Profile
Sega Mega Drive - Setting breakpoints on VRAM
« on: March 11, 2017, 06:36:28 am »
The game I'm hacking is Dr. Robotnik's Mean Bean Machine where it stated off as a spoof hack replacing the dialogue.  While working with my brother on this, I felt I needed to modify the font to include letters like * & ( ) etc.

Long story short, this game is a modified version of Puyo Puyo.  In that game, it uses a custom graphics compression.  The rest of the graphics that were added to DRMBM use Nemesis.  I used Nemesis Search and found 53 graphics (one being the font, which I can now edit and found the table values).

My crazy idea is, any graphics that use that custom compression, I can compress with Nemesis compression instead (I'm guessing the game can detect the type of compression, or I have to tell it).  Two graphics I want to edit are the Playing Field Background and the 8x16 Playing Field font.

So the problem I'm having is, how do I set a Breakpoint to check what gets written into the VRAM?

The two debuggers I've been using are:
- Regen
- r57shell Mod Gens

Using Regen, I can see the custom compressed font graphics get stored at 0500:


Using the Main 6800 Debugger does allow Breakpoints to be set in the VRAM:


It says I can set the VRAM access between 00000-2FFFF, where at this point I got confused.  Hopefully someone can clear it.

I have heard r57shell Mod is better for Breakpoints (although it is slower than Regen when more things are open).

This was also in the hook_log:
  Genesis memory map (Mem_M68K.asm):
  $00:0000-3f:ffff = ROM
  $a0:0000-a7:ffff = Misc (I/O)
  $c0:0000-c7:ffff = VDP
  $ff:0000-ff:ffff = RAM
Avatar by LazyNinjartist