simulavr-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Simulavr-devel] Help with New Example


From: Knut Schwichtenberg
Subject: Re: [Simulavr-devel] Help with New Example
Date: Sun, 29 Mar 2009 18:06:39 +0200
User-agent: Thunderbird 2.0.0.19 (X11/20081227)

Joel Sherrill wrote:
> Knut Schwichtenberg wrote:
> OK.  Makes perfect sense.  Eventually I will need to find something
> the real application is not using if I want debug IO.  Luckily in this
> case, I think they are using one of the UARTs for debug IO but for
> testing the feedback, I wanted all of the IO to go to the feedback
> program.  I will just have to find addresses left or do away with it. :)
Well, left addresses are not around. I hope to find the TWI (IIC or I2C)-IF in
this address range, but it is above.

> Great.  Now you are as far as I am.  Did the "simfeedback.tcl" show
> up in an xterm and print messages which look like it is getting the
> events but no data from the UART?     
Not that fast please. It ran directly not breaking at the main as expected!

Test number 2 was a little different and more as I thought:
make dogdb
../simulavr.tcl -d atmega128 -f feedback -s ./feedback.tcl -W 0x21,/dev/stderr
-R 0x22,- -F 4000000 -T exit -V -S ./simfeedback.tcl -g

You see the changed addresses and the -V flag. Now the debugger stopped and
after entering commands into the gdb-window the program stepped,... I'll need to
check but I have the idea that in the verbose mode the components become more
into sync.

Anyway, there is no gui.tcl started. Is this a bug or a feature?

> The old checkdebug was attaching to the avr program.  Not
> the simulator itself.  The new simulavr.tcl should be able to
> do that but doesn't start the gdb in another window yet.
> It will get there eventually.
Sorry, but that paragraph is fully unclear.

> 
> FWIW how to debug simulavr DLL in this mode is unclear
> to me.
I did some debugging with checkdebug inside of the the simulavr-lib. Funny
game... What I describung is the checkdebug-GDB-session - so with tclsh and
simularv.tcl it's the same.

gdb wish # Of course the TCL interpreter is your target :-)
catch fork # GDB will stop while TCL is forking (each exec is a fork)
set args checkdebug.tcl # the wish commandline
r  # run
Now TCL starts and loads the simulavr-lib and next forks to start the GUI.

gdb breaks and now with the loaded simulavr-lib you can set breakpoints in the 
C++.


One thing to add to the simulavr.tcl:
I don't like to struggle with the character IF of gdb. Please add a cmd-line
parameter to switch between ddd and gdb-native UI.

I hope to find a full grow chapter in the documentation for simulavr.tcl :-).
Writing this email I found several hints in the simulavr.tcl script for
extensions (such as avr-gdb-commands-file). I know some people always stating:
"The code is the documentation", but it is always difficult to find the right
chapters ;-).

Knut




reply via email to

[Prev in Thread] Current Thread [Next in Thread]