Thursday, November 21, 2013

Debug executive madness, Updated!

I mentioned that there are 2 possible ways to download your code, one which is able to run on its own, and one that is used for debugging. You can read more about it here: Debug Executive

Now that I'm able to read the programmed code from my dsPIC, let's see what the debug executive looks like. So I downloaded my blinky once pressing the green, and once pressing the red button.


Afterwards I've read both codes back from the device. Now let's see what is different:

Pretty much looks like, only 1 byte is different.
Astonishing how a debug executive fits into only 1 byte. If you'd ask me, I'd squeezed that extra byte into the silicone to make the program run even after a debugging session.

Update:


So, I figured out what this difference means. This is the Stack Pointer address.
So I figure then the only resource difference between a download code and a debug code, is the 80 bytes, which is used by the debug tool at the address 0x0800-0x84f.


This little nuance has made me some headache while trying to debug my bootloader code once more. More on this on the next post.

No comments:

Post a Comment