Jump to content





Photo

Stella debugger question

Posted by Zach, 13 April 2006 · 7 views

I finally decided to wean myself off z26 logs and learn to use to the Stella debugger. It will obviously make homebrewing easier once I get used to it.

I am trying to set a break when PF1 is set to $aa. I tried the instruction below, and the program is clearly not breaking when the condition is met. Does anyone see what is wrong?

breakif { *PF1 == $aa}




I guess the answer is not as obvious as I was hoping. Anyway I was able to work around the problem by adding an extra line of code to the program that stores to RAM at the same time it stores to PF1. Then I just use this instruction:

breakif {*$f0 == $aa}
  • Report
Sorry, can't help you here, as I never tried the debugger.

I assume
breakif { *$0E == $aa}
won't work either?
  • Report
Your best bet would be to ask stephena.
  • Report

Cybergoth, on Fri Apr 14, 2006 12:52 PM, said:

Sorry, can't help you here, as I never tried the debugger.

I assume
breakif { *$0E == $aa}
won't work either?
Yeah, tried that.
  • Report
Much of the debugger is either not implemented (yet) or broken. Just now I went through the docs a bit and a lot of the stuff in there doesn't actually work. Personally, I haven't found the breakpoints/traps/whathaveyou very helpful; might just be how I work though. Mostly if I'm looking for something in the debugger I try to pinpoint where something is going wrong and then go to that spot and then step through the code.

Kind of similar to using the z26 logfiles, except that I don't have to watch my computer almost meltdown trying to handle 10+ MB text files :ponder: and you can see the entire contents of RAM.
  • Report
In case anyone missed it, the "Stella debugger guy" responded to the problem.

View PostUrchlay, on Thu Apr 27, 2006 7:46 AM, said:

View Postvdub_bobby, on Fri Apr 14, 2006 3:22 PM, said:

A few comments about non-working items in the debugger.

1. As Zach noticed (see his bloggy), this conditional break doesn't work:
breakif *PF2==$00

The debugger sees what the CPU would see. Reading from PF2 doesn't return
the value you wrote to PF2 because PF2 is a write-only location... you'll
get whatever garbage value (AKA "bus noise") you'd get if your program
did "LDA $0F" (probably, you'll get $0F, since there's no TIA read-only
register at $0F).
So you wont be able to break according to the value of a write-only register. As I described earlier, you can get around this limitation by writing to RAM at the same time you write to the register. :)
  • Report

February 2012

S M T W T F S
   1234
56789 10 11
12131415161718
19202122232425
26272829   

Recent Comments