??? 01/26/11 20:38 Read: times |
#180823 - I think part of the confusion stems from this ... Responding to: ???'s previous message |
I doubt the use of macro-assemblers has even been considered. The assemblers included in the HLL packages I've seen lately don't have macro capability. I'd write a macro called <setupF120> with an argument of <parmlist> which points to a table of parameters and the macro would then constitute the setup of that chip exactly as I'd specified it with the parameters in that list.
If I had a specific function I wanted, I'd write the macro to do that and either instantiate it directly or call it, depending on circumstances, and that would define my function for that particular MCU. If nothing else, it eliminates the need to type things like VOID or a parameter list. While I'm not willing to argue that ASM without macros is more productive than HLL, I'd happily argue that, all things considered, ASM with MACRO capability is as productive as HLL for small applications of fewer than 100K lines of ASM including macros. It seems to me that source of the just-under-8kB debug monitor that I like to use contains about 32KB of ASM including comments. It also has considerable table space, since it includes both a line-by-line assembler and a line-by-line disassembler, each of which use considerable text-based table space. As I recall, a popular 6502 assembler (ca. 1977) that produced a cross-reference and contained a printer-driver/formatter, and a loader, of about 8kB binary file size also required about 32kB of ASM. I think that says something about the ratio of source to executable code for 8-bitters. I don't know how it works out for 32-bit cores. RE |