David Kelly wrote: > Sounds to me as if you are making the "bootloader" too big and should > simply link an entire application for every possible target. What you > are doing would make more sense if the loadable modules could run out of > RAM. That would be no use, the loadables must be non-volatile. This is a tester that will be sent to a factory (somewhere). When a new product is to be tested, I can e-mail them the test routine which they then burn into flash (each of these is 0x900 bytes, there can be up to 0x0a of them). This will never be so often as to compromise the flash lifetime, but I must create a system whereby the 'resident' code is fixed (but maintainable) and the loadable parts can be freely added, overwritten etc. I think you will see that this needs the interface to be completely fixed (variable access, call locations) for all common parts, while the internals of e.g. the resident part is immaterial to the loadables. Provided strict adherence to the interface is observed, then a working system is realisable (I have written such systems in the past but not with AVRs or GCC). To realise this interface (API), I must be able define the variables/function calls in the resident part at known (or. at least fixed) addresses.
Robert _______________________________________________ AVR-GCC-list mailing list AVR-GCC-list@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-gcc-list