Jump to content

Photo

7800 emulator with debug


10 replies to this topic

#1 Rybags OFFLINE  

Rybags

    Quadrunner

  • 12,860 posts
  • Location:Australia

Posted Fri Oct 28, 2011 10:28 AM

Do any exist?

What I'd like is to be able to pause execution, then check out stuff like Display Lists, register values, memory.

#2 Mitch OFFLINE  

Mitch

    Quadrunner

  • 6,159 posts
  • 7800 Guy
  • Location:Southern California, USA

Posted Fri Oct 28, 2011 10:56 AM

I know that the MESS emulator has some debug functionality but I've never tested it personally.

Mitch

#3 GroovyBee OFFLINE  

GroovyBee

    Games Developer

  • 7,938 posts
  • Busy bee!
  • Location:North, England

Posted Mon Oct 31, 2011 8:58 AM

What game are you interested in knowing more about?

#4 Rybags OFFLINE  

Rybags

    Quadrunner

  • Topic Starter
  • 12,860 posts
  • Location:Australia

Posted Mon Oct 31, 2011 9:14 AM

Working on a conversion now... can't reveal what. Also might do the odd bit of 7800 stuff in future.

As Altirra has proven, a good debug facility inside an emulator can vastly improve the development time.

#5 GroovyBee OFFLINE  

GroovyBee

    Games Developer

  • 7,938 posts
  • Busy bee!
  • Location:North, England

Posted Mon Oct 31, 2011 9:30 AM

Working on a conversion now... can't reveal what. Also might do the odd bit of 7800 stuff in future.


:cool: Welcome aboard the 7800 train!

#6 mimo OFFLINE  

mimo

    Preppie!

  • 6,778 posts
  • It's easy living in a bubble

Posted Mon Oct 31, 2011 9:52 AM

Working on a conversion now... can't reveal what. Also might do the odd bit of 7800 stuff in future.

As Altirra has proven, a good debug facility inside an emulator can vastly improve the development time.


cool :thumbsup:

#7 DanBoris OFFLINE  

DanBoris

    Dragonstomper

  • 970 posts
  • Location:New Jersey, USA

Posted Mon Oct 31, 2011 5:43 PM

Do any exist?

What I'd like is to be able to pause execution, then check out stuff like Display Lists, register values, memory.


The MESS emulator has a very nice debugger, but it's not included in the standard build, you would need to download the MESS source and build the debug version.

I've always wanted to graft my 6502SIM debugging GUI on EMU7800 but it's just one of those project I have never gotten around to doing.

Dan

#8 andym00 OFFLINE  

andym00

    Stargunner

  • 1,036 posts
  • Location:A geordie cowfield...

Posted Sun Nov 13, 2011 9:15 AM

Don't want to resurrect this too prematurely, but I've been playing with ProSystem over the last day mainly out of curiosity..
So far I've got it building with last latest dxsdk (jun 2010) and building g under VS2010.. Still uses direct draw which is deprecated, but I've got it working with dinput8 now, so it'll build out of the box with the latest asks and ides.. I've also cleaned up all the warnings in the code, so now it compiles warning free at error level 4.. This also brought to light a fair few errors in th code..
My main aim was to sort out the cycle accurate timing of it.. My first pass indicates that the CPU is left with too few cycles when taking into account the Maria timing.. The Maria cycle counts are wrong.. Sirius for example takes way more cycles for the Maria rendering that it has available.. My thinking is the hokey dma actually aborts the current dma operation rather than feeding 0's in.. Also the dma is aborted in the case of exceeding the 159'th lineram pixel.. Even with these allowances Sirius still takes more cycles than are available on some lines..
I've also added a display that shows the Maria cycle useable per scanline, live on the display.. Very enlightening I can tell you..
Also I've fixed the annoying sound system so it doesn't click loudly whenever it tries to pause the audio at startup, menus etc..
Also it's speed up enormously now.. Uses around 1% of my i5 instead of maxing out one CPU previously..
Either way, enabling the Maria cycle stealing leaves the CPU with way less cycles than expected..
Particularly things like one on one and commando where there's clue splits and changes that aren't synced to the display, but instead are times loops. Which take longer than expected currently..
That aside, I'm quite getting into the code, but it would take a massive overhaul to implement a debugger into it, given how it works..
I'm wondering what work Groovybee and Curt might have done whilst working on the XM ? Am I repeating work you chaps have already done ? As I assume you've developed some emulation of it for development purposes ?

Just wondering if there's any interest in these changes, and pursuing cycle accurate emulation ?

#9 andym00 OFFLINE  

andym00

    Stargunner

  • 1,036 posts
  • Location:A geordie cowfield...

Posted Sun Nov 13, 2011 9:18 AM

God, remind me never to write a long forum post on an iPhone!! I'm sure you can figure out what I meant amongst the huge spelling replacement failure above :)

#10 PacManPlus OFFLINE  

PacManPlus

    River Patroller

  • 4,141 posts
  • Atari 7800 Dev
  • Location:SouthWest Florida

Posted Sun Nov 13, 2011 9:28 AM

That would be awesome to use. I think the only thing that might not be in yours at this point is High Score Cart support.
Personally, I think there would be quite a bit of interest in these changes.

Bob

#11 andym00 OFFLINE  

andym00

    Stargunner

  • 1,036 posts
  • Location:A geordie cowfield...

Posted Sun Nov 13, 2011 9:49 AM

In that case I'll upload that here when I get to a computer.. First thing on my agenda is allow midline changes to occur.. I find that so annoying for debugging purposes :)
Surprised by how many games don't work though.. ikari warriors is very weird, with and without cycle stealing from the CPU..
All told its been an enlightening experience thus far, especially how good Maria is when it's not crippled with the indirect mode..




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users