Chris H schrieb:
Even with several ten thousands rows of assembler that needs not be a problem. BTDT. It's a matter of structure and documentation. (I am still doing many projects completely in assembler.)
Even with C you need to access the SFRs (ports, peripherals) somehow. If these accesses are splattered across the whole sources, it doesn't matter if it's C or assembler.
Memory allocation is normally uncritical, since that is easily portable between many similar derivatives. Of course, if you previously had a device with large XRAM (being used indeed) and try to port that to a smaller chip, you'll run into problems... But again, in this case C wouldn't help you either.
Basically, the part that you can leave unchanged with C, is the same part that you can leave unchanged with assembler.
Tilmann