On Thu, May 22, 2008 at 9:34 PM, Maarten Brock <sourceforge.brock@dse.nl> wrote:
The only solution I can think of is to put an absolute
located block in the 'forbidden' area. This is best done
in asm.

.area SKIP1 (XDATA,ABS)
       .org    0x2000
hereiam:

       .ds     0x1000

I tried this idea. I've made a restrict.asm file and put the above lines in it. Then it was linked with the rest of the project.
The region 0x2000-0x3000 is still populated with other XSEG variables.

This is what the map file says(i've added a label "hereiam"):

Area                               Addr   Size   Decimal Bytes (Attributes)
--------------------------------   ----   ----   ------- ----- ------------
SKIP12000                          0000   1000 =      4096. bytes (ABS,CON,XDATA)

.
.
  0D:0000    s_SKIP1
  0D:0000    s_SKIP12000
  0D:2000    hereiam


 


HTH,
Maarten

> Hi all,
>
> Is it possible to define multiple xdata segments?
> I have 2 seperate segments in xdata. Like 0x1000-0x1FFF and 0x3000-0x3FFF.
> Is it possible to tell sdcc to use this two segments?
>
> Is it possible to define memory allocation on source file basis?
> foo.c uses segment at 0x1000
> bar.c uses segment at 0x3000
>
> Basically I need multiple --xdata-loc/--xram-size definitions.
>
> Cheers,
> Peter Kuhar
>
>
> --
> http://www.pkuhar.com/
> skype: pkuhar
>



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user



--
http://www.pkuhar.com/
skype: pkuhar