Hi,

i have a question about SDLD. On systems where programs are 
loaded inro RAM, say, MSX or ZX Spectrum or whatever else 
computer, there is some sense in saving RAM by making
_INITIALIZED and _INITIALIZER section have the same base address.
Unfortunately, that is not very easy task, because you can not 
put sections one after the other efficiently because of the unknown 
sizes of sections which land before. for example:

.area _CODE
.area _INITIALIZER
.area _WHATEVER

and then

-b _CODE=0x100 -b_INITIALIZED=l__CODE+0x100 

is not working because l__CODE is only known after that linking 
phase.

another solution adding a sommandline option into SDCC itself, 
that force emission of initialized variables together with labels 
into one single section.

what do you think about this? any suggestions?

ps: Not related with that problem, but another notice. SDLD linker is 
not too convenient for using with systems with OS, say, CP/M or 
MSX-DOS. It does not leave any information in the IHX file 
itself, that allow to produce executables rather than ROM dumps. 
However, IHX format allows to add comments and thus extensions, so 
maybe it is an easy way to emit info about sections into it?
Related link: https://en.wikipedia.org/wiki/Intel_HEX#Record_structure

-- 
Best regards,
 Tony                            mailto:unt...@mail.ru



_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to