Forum : 8051
Post Information | Post |
---|---|
October 20, 2009 - 4:11pm
|
Hi, I'm writing a bootloader application. I have some C-code functions and one single assembler function acting as an interface between C-code and the Atmel bootloader API functions. I put all C-functions into one file and used the advised linker directive If I set the linker to use startaddress 0xA000 then code is placed on address 0xA000. But my single assembler function conflicts with the startup file both being located at address 0x0000. I would like to have all three items: What do I need to do? Thanks, Henk |
Hi
If I understand your issue you need to place three segments in 0xA000.
Lest say the names of your asement are:
- ?PR?C51_STARTUP?
- SEGC
- SEGASM
In this case you can try the following syntax:
CODE(?PR?C51_STARTUP?(0xA000),SEGC,SEGASM)
Regards,
Matloub