How can I do this without using custom linker script?

Simply placing variables into a dedicated section and locating it to
absolute address with --section-start would overlap this section with
other data.

2010/6/27 Ivan Dimitrov <ivan...@hotmail.com>:
> you have to put all vars in one structure (or if you use only function
> pointers you can pack them in array of functions) and place them in the very
> begging of the RAM. This can be done with dedicated linker section.
>
> Regards I. Dimitrov
>
>
>
>> From: and...@infoathand.com
>> Date: Sun, 27 Jun 2010 00:04:22 +1100
>> To: avr-gcc-list@nongnu.org
>> Subject: [avr-gcc-list] Reusing code and variables from bootloader in main
>> program
>>
>> I have atmega64 with SD card connected. The card is used for storing
>> WAV files, logs, etc. I want to add a bootloader that would upgrade
>> the main program if certain file is present on the card. Using
>> separate copies of filesystem library in main program and bootloader
>> is too expensive in terms of flash space. I am thinking about this
>> solution: link the bootloader with filesystem libraries, and in main
>> program have a set of pointers to filesystem library functions in
>> .noinit section. When bootloader is started , it upgrades main program
>> if necessary, and then initializes the prointers with correct
>> addresses and jumps to address zero, starting the main program. Since
>> variables are in .noinit, main program would not initialize them,
>> preserving the addresses. Obviously, main program also needs to know
>> addresses of all global variables used by filesystem lib. The problem
>> is : how do I make both program use same addresses for certain
>> variables?
>>
>> _______________________________________________
>> AVR-GCC-list mailing list
>> AVR-GCC-list@nongnu.org
>> http://lists.nongnu.org/mailman/listinfo/avr-gcc-list
>
> ________________________________
> Hotmail: Powerful Free email with security by Microsoft. Get it now.

_______________________________________________
AVR-GCC-list mailing list
AVR-GCC-list@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list

Reply via email to