This worked for me in the past:

#include <at89c51ed2.h>

xdata int i, j, k;

unsigned char _sdcc_external_startup(void)
{
    //Enable all the built in expanded RAM
    AUXR=XRS2; //EXTRAM=0:uses internal xdata. XSR2=1,XSR1=0,XSR0=0:1792 bytes
    //Disable the Bootprom
    AUXR1&=(~ENBOOT);
    return 0;
}

void main (void)
{
.
.
.
}

At 06:23 AM 11/12/2009, you wrote:
>Hi,
>
>Just put it in xdata. But also check in the datasheet if this XRAM
>is enabled by default, otherwise you need to enable it in
>_sdcc_external_startup().
>
>Maarten
>
> > Good morning, everyone
> >
> > I need to use the internal XRAM AT89C51ED2.
> > Can anyone give me guidance on how to set a variable in SDCC for 
> it to be allocated in the internal XRAM?
> >
> > Thank you for your attention.
> >
> > SDCC 2.9
>
>
>
>------------------------------------------------------------------------------
>Return on Information:
>Google Enterprise Search pays you back
>Get the facts.
>http://p.sf.net/sfu/google-dev2dev
>_______________________________________________
>Sdcc-user mailing list
>Sdcc-user@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/sdcc-user


------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to