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

Author Topic: Help with breakpoints in RegenD  (Read 2959 times)

Category

  • Jr. Member
  • **
  • Posts: 24
    • View Profile
Help with breakpoints in RegenD
« on: August 08, 2013, 05:37:05 pm »
Hi, having a little issue here using RegenD. I'm working on the title screen for my Starflight/Mass Effect hack for the MD/Genesis, but can't find the tilemap anywhere. So far my title screen looks like this:-



As you can see, it's not perfect - but with a few changes to the tilemap, I should be able to fix it up. I found the tilemap in VRAM, but can't find it anywhere in the ROM directly. As per the VDP registers below, it is at h0x2000 in VRAM (the on-screen title is on Plane B)



As I can't find the tilemap details plainly in the ROM, I thought I could track down where it s written from using breakpoints. I've tried to set up a breakpoint in RegenD like this:-



I've set it to break whenever the byte at the beginning of the tilemap is read or written, but it never breaks. I can see the VRAM fill up at that location with the VDP debugger, so it is clearly being written to, but the emulator never breaks to show me the assembly of what's going on.


So my main question, really, is what have I done wrong setting up this breakpoint?

Any help is greatly appreciated, it's got me a little stumped!

Klarth

  • Sr. Member
  • ****
  • Posts: 495
    • View Profile
Re: Help with breakpoints in RegenD
« Reply #1 on: August 10, 2013, 06:48:39 am »
I'm not familiar with this debugger, but if it's not an emulator bug then here are some possibilities:

If you're enabling the breakpoint when the intro is already drawn to screen, it won't break because it doesn't need written to every frame.  Also, choosing the base offset is probably a bad idea because it likely corresponds to the upper left corner, which is blank (probably a zero byte) and may not be updated when the title screen is drawn, but rather in an initialization routine when the game is loaded.

RedComet

  • Hero Member
  • *****
  • Posts: 3168
    • View Profile
    • Twilight Translations
Re: Help with breakpoints in RegenD
« Reply #2 on: August 10, 2013, 10:51:32 am »
It's also possible that the tilemap is loaded into VRAM via DMA and Regen is only checking for direct writes via $c00000. I would grab Gens Tracer and see if that gives you more information.

I've had a lot of luck in the past using Gens Tracer and Regen in conjunction since they both have shortcomings that the other tool compliments.
Twilight Translations - More than just Dragonball Z. :P

Category

  • Jr. Member
  • **
  • Posts: 24
    • View Profile
Re: Help with breakpoints in RegenD
« Reply #3 on: August 10, 2013, 01:40:52 pm »
If you're enabling the breakpoint when the intro is already drawn to screen, it won't break because it doesn't need written to every frame.  Also, choosing the base offset is probably a bad idea because it likely corresponds to the upper left corner, which is blank (probably a zero byte) and may not be updated when the title screen is drawn, but rather in an initialization routine when the game is loaded.

I've double checked the VRAM, and I enable the breakpoint while the Electronic Arts splash screen is running - and location 0x2000, while being the upper left corner), definitely changes. Shows as 00 during the splash, and 6C afterwards.

It's also possible that the tilemap is loaded into VRAM via DMA and Regen is only checking for direct writes via $c00000.

Damn, I was hoping DMA changes would still trigger a break as a write operation.

I would grab Gens Tracer and see if that gives you more information.

I've given that a go, but Gens (and all it's variants) crash when emulation begins under Wine. And as I only have a Linux system at the moment, that is quite frustrating. I may have to spin up a Windows VM and give this another try. Unless anybody knows of a Genesis emulator with tracing that runs natively on *nix systems?

RedComet

  • Hero Member
  • *****
  • Posts: 3168
    • View Profile
    • Twilight Translations
Re: Help with breakpoints in RegenD
« Reply #4 on: August 11, 2013, 11:57:01 am »
Gens tracer is the only Genesis emulator that I'm aware of that supports tracing. If you find any for *nix, please post.
Twilight Translations - More than just Dragonball Z. :P