AS6 debug annoyances.

Go To Last Post
6 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Just like death one puts off using AS6, but enevitably, just like death, one ends up dealing with it, unless death comes first in wich case all is well. :mrgreen:

So "Build and run" is gone replaced by a 3 steps debugging ritual instead of a single step. (Even NXP's LPCXpresso makes this simpler, comparison only, not pushing other products)

Start debugging, fix any bugs and try to rebuild and run, can't do that!

"Rebuild solution" (or project).

"Would you like to stop debugging"? Well not really I will be doing this all day maybe, but I have no choice so yes please, I would you like to stop debugging for now and rebuild my code.

"Start debugging" again (I didn't really want to stop in the first place :? ) rinse and repeat.

And what happened to the register view? Is it still there as a separate view? I can see the registers in the processor view but the view collapses every time I change from processor view to I/O view, so another time waster. Click on registers to expand the view and scroll down to the register you want to see.

I keep my registers visible at all times with AS4 in the R/H side of the screen regardless of what else I may be doing, very important working in assembler.

The other annoying thing is that the registers, just like recent version of AS4, no longer can be renamed as variables and stored into the project.

Maybe I can put all registers on a single watch page which hopefully can be kept for as long as the project runs.

But hey who uses assembler anymore anyway? Surely not with Xmegas....EVERYBODY is using C. :shock:

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

John,

Undock the window. Float it to where you like it.

Organise your project to keep more local variables.

Of course, if you like to have masses of globals, that is up to you, but surely it is harder to manage.
Incidentally, I am sure that you can keep track of named register variables quite easily.

I am going to the pub. If you can post a 'problem project' perhaps we can offer suggestions.

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
I am sure that you can keep track of named register variables quite easily.
Just tried it and it doesn't work.

I have r24 defined as temp and r25 as temp1, if I put temp or temp1 in the watch window it comes up as error.

Quote:
Organise your project to keep more local variables.
Put your assembler hat on please. :-)

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

js wrote:

So "Build and run" is gone replaced by a 3 steps debugging ritual instead of a single step. (Even NXP's LPCXpresso makes this simpler, comparison only, not pushing other products)

Start debugging, fix any bugs and try to rebuild and run, can't do that!


I found I can rebuild from debug with one key. I assigned the Ctrl+` key (only because I haven't yet spent the time to find a better unused key) to Debug.Restart. Then, while I'm still in the debugger, I make my changes, then hit the Ctrl+` key, it will automatically exit the debugger (without the annoying 'Do you want to stop debugging' message, then will recompile, then will launch back into debug. All in one step.

The only possible side-effect I found so far, it doesn't stop at main, it runs to your first breakpoint. This I think may be a benefit in some cases.

Quote:
And what happened to the register view? Is it still there as a separate view? I can see the registers in the processor view but the view collapses every time I change from processor view to I/O view, so another time waster. Click on registers to expand the view and scroll down to the register you want to see.

I agree, this is annoying. It helps to un-dock the register window, then you can go back and forth to the IO View without losing your registers. But every time you exit the debugger to re-compile, it closes up again.
Quote:

But hey who uses assembler anymore anyway? Surely not with Xmegas....EVERYBODY is using C. :shock:

I still use assembler on the Xmega, although I tend to not do the whole project in assembler like I used to. :D

Al

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
Put your assembler hat on please. Smile

I have got my assembler hat on. You either pass arguments in temporary registers or with a stack frame.

Whichever way you do it, you need very few globals. In fact the global 'requirement' is independent of whichever language you choose.

Post a REAL project.

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I found the separate "register view" window, it's in the "Debug" tab > Windows at the very bottom rather that in the View tab like AS4.

So everything that was in "View" in AS4 is now under the Debug tab > Windows, one less thing I can complain about...darn. :-)

Quote:
I found I can rebuild from debug with one key
Ok that's better than nothing, I'll try it out later on.
Quote:
you need very few globals.
In the project I'm working on at the moment I have a huge ammount of variables, 5*2 bytes ram variables, 6*1 byte ram variables, 10*1 register variables, 2*2 registers variables, all "globals"
Quote:
Post a REAL project
How about this one? http://spaces.atmel.com/gf/proje... it has been a spectacular worldwide success with 17 downloads! :lol: possibly from people who want to laugh at the way I do things.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly