/*   Do *not* directly modify this file.  It was    */
/*   generated by the Configuration Tool; any  */
/*   changes risk being overwritten.                */

/* INPUT ceNM_PE.cdb */

/* MODULE PARAMETERS */
-u _FXN_F_nop
GBL_USERINITFXN = _FXN_F_nop;

-u SDRAM
MEM_SEGZERO = SDRAM;
-u SDRAM
MEM_MALLOCSEG = SDRAM;

-u CLK_F_getshtime
CLK_TIMEFXN = CLK_F_getshtime;
-u HWI_F_dispatch
CLK_HOOKFXN = HWI_F_dispatch;

-u _KNL_tick
PRD_THOOKFXN = _KNL_tick;

-u SDRAM
RTDX_DATAMEMSEG = SDRAM;

-u SDRAM
HST_DSMBUFSEG = SDRAM;

-u GBL_NULL
SWI_EHOOKFXN = GBL_NULL;
-u GBL_NULL
SWI_IHOOKFXN = GBL_NULL;
-u SWI_F_exec
SWI_EXECFXN = SWI_F_exec;
-u SWI_F_run
SWI_RUNFXN = SWI_F_run;

-u SDRAM
TSK_STACKSEG = SDRAM;
-u _FXN_F_nop
TSK_VCREATEFXN = _FXN_F_nop;
-u _FXN_F_nop
TSK_VDELETEFXN = _FXN_F_nop;
-u _FXN_F_nop
TSK_VEXITFXN = _FXN_F_nop;

-u IDL_F_stub
IDL_CALIBRFXN = IDL_F_stub;

-u _UTL_doAbort
SYS_ABORTFXN = _UTL_doAbort;
-u _UTL_doError
SYS_ERRORFXN = _UTL_doError;
-u _UTL_halt
SYS_EXITFXN = _UTL_halt;
-u _UTL_doPutc
SYS_PUTCFXN = _UTL_doPutc;

-u _FXN_F_nop
GIO_CREATEFXN = _FXN_F_nop;
-u _FXN_F_nop
GIO_DELETEFXN = _FXN_F_nop;
-u _FXN_F_nop
GIO_PENDFXN = _FXN_F_nop;
-u _FXN_F_nop
GIO_POSTFXN = _FXN_F_nop;

/* OBJECT ALIASES */
_CACHE_L2 = CACHE_L2;
_SDRAM = SDRAM;
_PRD_clock = PRD_clock;
_PrdTimer_1ms = PrdTimer_1ms;
_PrdTimer_500ms = PrdTimer_500ms;
_RTA_fromHost = RTA_fromHost;
_RTA_toHost = RTA_toHost;
_HWI_RESET = HWI_RESET;
_HWI_NMI = HWI_NMI;
_HWI_RESERVED0 = HWI_RESERVED0;
_HWI_RESERVED1 = HWI_RESERVED1;
_HWI_INT4 = HWI_INT4;
_HWI_INT5 = HWI_INT5;
_HWI_INT6 = HWI_INT6;
_HWI_INT7 = HWI_INT7;
_HWI_INT8 = HWI_INT8;
_HWI_INT9 = HWI_INT9;
_HWI_INT10 = HWI_INT10;
_HWI_INT11 = HWI_INT11;
_HWI_INT12 = HWI_INT12;
_HWI_INT13 = HWI_INT13;
_HWI_INT14 = HWI_INT14;
_HWI_INT15 = HWI_INT15;
_PRD_swi = PRD_swi;
_KNL_swi = KNL_swi;
_Timer1ms_swi = Timer1ms_swi;
_Timer500ms_swi = Timer500ms_swi;
_TSK_idle = TSK_idle;
_TSK0 = TSK0;
_LNK_dataPump = LNK_dataPump;
_RTA_dispatcher = RTA_dispatcher;
_IDL_cpuLoad = IDL_cpuLoad;
_LOG_system = LOG_system;
_LogMain = LogMain;
_IDL_busyObj = IDL_busyObj;

/* MODULE GBL */

SECTIONS {
   .vers (COPY): {} /* version information */
}

-priority
--trampolines
--"diag_suppress=16002"
-llnkrtdx.a67
-ldrivers.a67          /* device drivers support */
-lsioboth.a67          /* supports both SIO models */
-lbiosC6000.a67        /* BIOS clock specific library */
-lbios6x1x.a67         /* BIOS c6x1x specific library */
-lbios.a67             /* DSP/BIOS support */
-lrtdx.lib             /* RTDX support */
-lrts6700.lib          /* C and C++ run-time library support */

_GBL_CACHE = GBL_CACHE;

/* MODULE MEM */
-stack 0x20000
MEMORY {
   CACHE_L2    : origin = 0x0,         len = 0x10000
   SDRAM       : origin = 0x80000000,  len = 0xf00000
}
/* MODULE CLK */
SECTIONS {
   .clk: {
        
        CLK_F_gethtime = CLK_F_getshtime;
        *(.clk) 
   } > SDRAM, RUN_START(CLK_A_TABBEG) 
}
_CLK_PRD = CLK_PRD;
_CLK_COUNTSPMS = CLK_COUNTSPMS;
_CLK_REGS = CLK_REGS;
_CLK_USETIMER = CLK_USETIMER;
_CLK_TIMERNUM = CLK_TIMERNUM;
_CLK_TDDR = CLK_TDDR;

/* MODULE PRD */
SECTIONS {
   .prd: RUN_START(PRD_A_TABBEG), RUN_END(PRD_A_TABEND) {
   } > SDRAM
}
PRD_A_TABLEN = 2;

/* MODULE RTDX */
_RTDX_interrupt_mask = 0x0;

/* MODULE HST */
_LNK_dspFrameReadyMask = LNK_dspFrameReadyMask; 
_LNK_dspFrameRequestMask = LNK_dspFrameRequestMask; 
_LNK_readDone = LNK_readDone; 
_LNK_readFail = LNK_readFail; 
_LNK_readPend = LNK_readPend; 
_LNK_writeFail = LNK_writeFail;
_HWI_CFGDISPATCHED = HWI_CFGDISPATCHED;

/* MODULE SWI */
SECTIONS {
   .swi: RUN_START(SWI_A_TABBEG), RUN_END(SWI_A_TABEND) {
   } > SDRAM
}
SWI_A_TABLEN = 4;

/* MODULE TSK */
SECTIONS {
   .tsk: {
        *(.tsk) 
   } > SDRAM
}

/* MODULE IDL */
SECTIONS {
   .idl: {
        *(.idl) 
   } > SDRAM, RUN_START(IDL_A_TABBEG)
   
   .idlcal: {
        *(.idlcal) 
   } > SDRAM, RUN_START(IDL_A_CALBEG) 
}


LOG_A_TABLEN = 2; _LOG_A_TABLEN = 2;

PIP_A_TABLEN = 2;


SECTIONS {
        .bss:     {} > SDRAM

        .hwi_vec: {
            *(.hwi_vec)
        } align = 0x400, RUN_START(HWI_A_VECS) > SDRAM

        .far:     {} > SDRAM

        .sysdata: {} > SDRAM

        .dsm: {} > SDRAM

        frt:    {} > SDRAM

        .mem: 	  {} > SDRAM

        .bios:    {} > SDRAM

        .cio:     {} > SDRAM

        .data:    {} > SDRAM

        .gio:     {} > SDRAM

        .pinit:   {} > SDRAM

        .sys:     {} > SDRAM

        .sysregs: {} > SDRAM

        .text:    {} > SDRAM

        .cinit:    {} > SDRAM

        .switch:    {} > SDRAM

        .gblinit:    {} > SDRAM

        .sysinit:    {} > SDRAM

        .trcdata:    {} > SDRAM

        .hwi: {}  > SDRAM

        .rtdx_data: {}  > SDRAM

        .rtdx_text: {}  > SDRAM

        .TSK_idle$stk: {
            *(.TSK_idle$stk)
        } > SDRAM

        .TSK0$stk: {
            *(.TSK0$stk)
        } > SDRAM

        /* LOG_system buffer */
        .LOG_system$buf: align = 0x100 {} > SDRAM

        /* LogMain buffer */
        .LogMain$buf: align = 0x400 {} > SDRAM

       /* RTA_fromHost buffer */
       .hst1: align = 0x4 {} > SDRAM

       /* RTA_toHost buffer */
       .hst0: align = 0x4 {} > SDRAM

        GROUP {
         .const: align = 0x8 {} 
         .printf (COPY): {} 
        } > SDRAM

        .args: align=4 fill=0 {
            *(.args)
            . += 0x4;
        } > SDRAM

        .trace: fill = 0x0  align = 0x4 {
           _SYS_PUTCBEG = .;
           . += 0x200;
           _SYS_PUTCEND = . - 1;
        } > SDRAM

        .hst: RUN_START(HST_A_TABBEG), RUN_START(_HST_A_TABBEG), RUN_END(HST_A_TABEND), RUN_END(_HST_A_TABEND) {
        } > SDRAM

        .log: RUN_START(LOG_A_TABBEG), RUN_START(_LOG_A_TABBEG), RUN_END(LOG_A_TABEND), RUN_END(_LOG_A_TABEND) {
        } > SDRAM

        .pip: RUN_START(PIP_A_TABBEG), RUN_START(_PIP_A_TABBEG), RUN_END(PIP_A_TABEND), RUN_END(_PIP_A_TABEND) {
        } > SDRAM

        .sts: RUN_START(STS_A_TABBEG), RUN_START(_STS_A_TABBEG), RUN_END(STS_A_TABEND), RUN_END(_STS_A_TABEND) {
        } > SDRAM

        .stack: align = 0x8 {
            GBL_stackbeg = .;
            *(.stack)
            GBL_stackend = GBL_stackbeg + 0x20000 - 1;
            _HWI_STKBOTTOM = GBL_stackbeg + 0x20000 - 8;
            _HWI_STKTOP = GBL_stackbeg;
        } > SDRAM

        .SDRAM$heap: {
            . += 0x180000;
        } RUN_START(SDRAM$B), RUN_START(_SDRAM_base), RUN_SIZE(SDRAM$L), RUN_SIZE(_SDRAM_length) > SDRAM

}

