Hello,

I use the option '--code-loc 0x3000' when running the linker so my
program get's placed in the flash of a Silab C8051F132 starting at
address 0x3000.

The hex file I get is fine and installs itself starting at code
location 0x3000; as expected.

When I download the AOMF file by Silab's IDE, code _below_ address
0x3000 gets overwritten. My first idea was that this could be a bug in
Silab's IDE, so I wrote a 'little' program to dump the contents of the
AOMF file. That dump now shows that there is in fact a so called
'content record' (record type 0x06) at location 0x0A60; an address
which is definitely below 0x3000. The code in this content record has
a length of 23809 bytes. When my AOMF dumper cumulates all sizes of code
in all content records of the AOMF file, it returns exactly 23809 _more_
then can be found in the map file created by the linker.

I think that this content record (located at 0x0A60 having 23809 bytes)
gets into the AOMF file by mistake.

What am I doing wrong or could this be a bug in the linker/locater?

Many thanks, Felix

PS:
My SDCC version: 
mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08 2.5.0 #1020 
(May  8 2005) (MINGW32)




-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to