I am compiling some code for the 8051 where some (constant) arrays are marked as __xdata. These naturally are placed in external memory.
SDCC (does not generate a binary ? but) generates a hex file in intel hex format. As far as I know, intel hex cannot describe memory contents of separate memories. This is problematic because both CODE and XDATA range from 0-xFF...
How will the loader know which parts of the hex file go to XDATA and which to CODE?
Any advice is greatly appreciated. Thanks.
Note: I technically can place constants in CODE, but there are code size issues.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
I am compiling some code for the 8051 where some (constant) arrays are marked as __xdata. These naturally are placed in external memory.
SDCC (does not generate a binary ? but) generates a hex file in intel hex format. As far as I know, intel hex cannot describe memory contents of separate memories. This is problematic because both CODE and XDATA range from 0-xFF...
How will the loader know which parts of the hex file go to XDATA and which to CODE?
Any advice is greatly appreciated. Thanks.
Note: I technically can place constants in CODE, but there are code size issues.
Please don't double-post.