Yahoo Groups archive

AVR-Chat

Index last updated: 2026-04-28 22:41 UTC

Thread

Re: [AVR-Chat] AVRavel AVR program analyzer

Re: [AVR-Chat] AVRavel AVR program analyzer

2003-12-12 by Dave VanHorn

At 10:18 AM 12/12/2003 +1100, Rob Storey wrote:
>
> > A very common problem is where one routine messes with another's variables.
> > Either by direct reference, or indexed as My_Ram+5 accidentally stepping on
> > Your_Ram
>The trouble here is the concept of "ownership" of the variables (This is
>clearly defined and controlled in high level OOP languages, but not in
>assembler). The same problem arises in detecting corruption of variables
>by interrupt handlers - it alters a register, but should the ISR have
>preserved the register, or does it "own" the register and therefore the
>action is legitimate?

That's for me to decide, but if routine X uses Thing_A by name,  and 
routine Y uses the same address in ram by Thing_D+14, then I would suspect 
a collision.
Just having an absolute, and automated search for all refs to a given sram 
or register var would be a big help.
Atmel seems to not get that a very frequent debug problem is "who hosed my 
data".
Breakpoint on write to X isn't in the cards, apparently.


>Don't know, but I'd be looking for one! 'twas a general comment that
>comtemplating techniques like that is a dead giveaway that you've
>outgrown your hardware capacity.

In this case, it was a tour de force :)

Re: AVRavel AVR program analyzer

2004-01-05 by Kathy Andrea Quinlan

--- In AVR-Chat@yahoogroups.com, Brian Dean <bsd@b...> wrote:
> On Fri, Dec 12, 2003 at 12:50:02PM -0500, Dave VanHorn wrote:
> 
> > Atmel seems to not get that a very frequent debug problem is "who
> > hosed my data".  Breakpoint on write to X isn't in the cards,
> > apparently.
> 
> Is this not possible using a JTAGICE?  I could've sworn I used that
> capability a while back.  Granted, I was using GNU 'gdb' w/avarice,
> not AVR Studio, so it's possible that what I used was implemented 
as a
> software watchpoint as opposed to a hardware watchpoint.
> 
> -Brian
> -- 
> Brian Dean, bsd@b...
> BDMICRO - Maker of the MAVRIC ATmega128 Dev Board
> http://www.bdmicro.com/

Does AVRICE run under windows ? along with the winGCC ??
if not I may have to get cgywin again and set it up lol

Re: [AVR-Chat] AVRavel AVR program analyzer

2004-01-05 by Brian Dean

On Fri, Dec 12, 2003 at 12:50:02PM -0500, Dave VanHorn wrote:

> Atmel seems to not get that a very frequent debug problem is "who
> hosed my data".  Breakpoint on write to X isn't in the cards,
> apparently.

Is this not possible using a JTAGICE?  I could've sworn I used that
capability a while back.  Granted, I was using GNU 'gdb' w/avarice,
not AVR Studio, so it's possible that what I used was implemented as a
software watchpoint as opposed to a hardware watchpoint.

-Brian
-- 
Brian Dean, bsd@bdmicro.com
BDMICRO - Maker of the MAVRIC ATmega128 Dev Board
http://www.bdmicro.com/

Re: [AVR-Chat] Re: AVRavel AVR program analyzer

2004-01-05 by Brian Dean

On Mon, Jan 05, 2004 at 03:21:28AM -0000, Kathy Andrea Quinlan wrote:

> Does AVRICE run under windows ? along with the winGCC ??
> if not I may have to get cgywin again and set it up lol

I think so.  The last message I exchanged with Eric Weddington, the
guy who created the WinAVR package, he mentioned 'avarice' and spoke
of it as if it worked.  But I cannot speak from personal experience -
I've been doing my work on FreeBSD Unix.  The version of avarice in
the FreeBSD ports is a bit dated - early April of last year.  But it
works.

-Brian

P.S. - Get Well Soon!

-- 
Brian Dean, bsd@bdmicro.com
BDMICRO - Maker of the MAVRIC ATmega128 Dev Board
http://www.bdmicro.com/

Re: [AVR-Chat] AVRavel AVR program analyzer

2004-01-05 by Rob Storey

>That's for me to decide, but if routine X uses Thing_A by name,  and 
>routine Y uses the same address in ram by Thing_D+14, then I would suspect 
>a collision.> Just having an absolute, and automated search for all refs to a given sram
> or register var would be a big help.
It does display an xref showing direct references by name. 
The more subtle Thing_D+14 access is trickier to detect, but I'll look
into adding that.

Currently working on making AVRavel read original source files, rather
than .MAP/.LST output.

Rob Storey

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.