#1373 pdata start reported at 0x00ff in .mem file

linker (61)

the .mem file reports the start of pdata at 0x00ff
(should be 0xf400) when the code below is compiled with:

sdcc --code-loc 0x1000 --xram-loc 0xf400 --idata-loc 0x60 --data-loc 0x40 main.c

unsigned char __xdata x[3];
unsigned char __pdata p[3];
unsigned char __idata i[3];
unsigned char __data d[3];

void main (void)

From main.mem:

Other memory:
Name Start End Size Max
---------------- -------- -------- -------- --------
PAGED EXT. RAM 0x00ff 0xf402 3 256
EXTERNAL RAM 0xf403 0xf405 3 65536
ROM/EPROM/FLASH 0x1000 0x1078 121 65536

eventually the Max sizes reported for EXTERNAL RAM and
ROM/EPROM/FLASH could be corrected for their start address, so Max would read 3072 and 61440 (instead of
65536 and 65536) then.



  • Maarten Brock

    Maarten Brock - 2008-04-17

    Logged In: YES
    Originator: NO

    The start of pdata is fixed in SDCC 2.8.1 #5137.

    To automatically change the Max sizes is harder. If you really want it please make this a feature request.

  • Maarten Brock

    Maarten Brock - 2008-04-17
    • milestone: --> fixed
    • assigned_to: nobody --> maartenbrock
    • status: open --> closed-fixed

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks