On 7 Dec 2008 at 13:06, Alexandre Souza wrote:
One minor
gripe that I have is that the uC community seems to put up
with really lame assembly-language tools, insisting on using C
instead. Many are Harvard architecture( not the MSP430), which calls
Lame? Try AVR Studio and call THAT lame! :oO
That's precisely what I call lame. An assembler with clumsy syntax
that forces one to define constants as:
.EQU Name = Value
Terrible macro facilities. No strong typing or ways to form local
variables. One can't even access the name of the label field in a
macro invocation. I could compile a long list of deficiencies.
There were far better assemblers in the 1960s, running on far more
limited hardware. Perhaps the people who wrote the AVR assembler
never had to code much in assembly.
One might have argued in the beginning that these were only
microcontrollers capable of running only a very small program, so
what did it matter. But that's no longer true, which only
demonstrates the limited vision of whoever wrote the development
toolkit.
I care less about an IDE than I do about the tools which comprise it.
Give me an assembler which has at least the capabilities of, say,
MASM 5.0 or S/360 assembler and I won't feel that I'm too limited by
the tools.
Of course, since AVR has an "official" assembler, improvments on the
syntax and features are considered to be "nonstandard". So we code
with a hood tied over our heads and curse the darkness.
I know the standard answer--I've seen it on the AVR forums--use C. I
think that's a cop-out. I can write C just fine, but I enjoy writing
a well-crafted piece of assembly. Giving me a rusty screwdriver and
a dull hatchet as a toolkit is shameful.
Cheers,
Chuck