Figured it was something like that... just didn't see it in the datasheet I had in the heat of the moment. Looking again I see something called DebugWIRE that looks to be a 1-pin interface to control code execution and overwrite code, that's interesting.1 pin is better than 3 and it's on the reset pin so don't have to share it with other stuff.
Thanks for the clarification... saw gcc credits in the docs but looks like it's just the preprocessor that was used, compiler itself is totally different.
Thanks for writing that up, very informative.
Yes it does seem like gcc is much nicer! I use gcc all the time to compile Linux apps, but not being much of a C programmer it's hard to spot the differences. I treat C like BASIC... if then else for while until math and logic and stay away from pointers like the plague. My uC apps almost never use interrupts other than simple stuff like wake from sleep when a button is pressed. But that's just me, I'm an old-school hardware guy, not a software guy - I like 100% deterministic behavior with no unknown variables that might bite me later. Using C is scary enough as it is... I still wade through the assembly listing to make sure it does what I think I told it to do.
Probably time to bow out on this thread and get back to other stuff but here's my takeaway...
C on an AVR is looks to be much more efficient than on a PIC, so if I need to code a big/fast app, AVR is probably better.
Cortex/ARM (esp M0) looks to be the future, huge selection and cheap. Really need to learn that stuff.
For simple stuff that just needs to work, just use what's already on the workbench and go with what ya know. But probably not wise to use that as an excuse to avoid "new" things...