-lm -lg -ll

user.rel

8500lib.lib
c900ml.lib

/*******************************************/
/*  User could provide suitable values     */
/*      to the following variables         */
/*******************************************/
MainStackSize = 0x001000;
HeapSize      = 0x000100;
MaxSysRamSize = 0x020000;


/*********************************************/
/*  Do not modify anything beyond this line  */
/*********************************************/
memory
{
    IRAM	 : org = 0x03d00, len = 0x002300    
    RAM      : org = 0xa05800, len = 0x1a8000
    ROM      : org = 0xc00000, len = 0x3e0000
}

sections
{
    code  org = 0xc00000 : {
        *(f_head)
        *(f_code)
    } > ROM

    area org = 0xa05800 : {
        . += MainStackSize;
        . += HeapSize;
        *(f_bcr)
        *(f_area)
    } > RAM

    data  org=org(code)+sizeof(code)  addr=org(area)+sizeof(area) : {
        *(f_data)
    } /* global variables with initial values */

    xcode org = org(data) + sizeof(data)  addr = addr(data) + sizeof(data) : {
        *(f_xcode)      /* code reside on RAM */
    }

    RAM_OVERFLOW_CHECK org = org(area) +  MaxSysRamSize : {
		. += 1;
    } > RAM

    icode org = org(xcode) + sizeof(xcode)  addr = 0x003d00 : {
        *(f_icode)      /* code reside on IRAM */
    }

    const org = org(icode) + sizeof(icode) : {
        *(f_const)
        *(f_tail)
    } > ROM
}

ActualRamSize  = (addr(xcode) + sizeof(xcode)+3)/4*4 - 0xa05800 ;   /* long boundary */
SysRamEnd      = org(area) + MaxSysRamSize;   /* long boundary */
DataRam        = addr(data);
XCodeRam       = addr(xcode);
ICodeRam       = addr(icode);
HeapTop        = org(area) + MainStackSize;

/* End */

