|
-DROMSTART=40000200
-DROMEND=40009FFF//************************************************
// Address range for reset and exception
// vectors (INTVEC).
// The vector area is 32 bytes,
// an additional 32 bytes is allocated for the
// constant table used by ldr PC in cstartup.s79.
//************************************************-Z(CODE)INTVEC=40000000-4000003F
//************************************************
// Startup code and exception routines (ICODE).
//************************************************-Z(CODE)ICODE,DIFUNCT=ROMSTART-ROMEND
-Z(CODE)SWITAB=ROMSTART-ROMEND//************************************************
// Far code segments may be placed anywhere, but
// all __nearfunc declared Thumb/ARM functions,
// located in the NEARFUNC_T/NEARFUNC_A segment,
// must fit in a single 4/32 Mbyte area.
//************************************************-Z(CODE)NEARFUNC_T,NEARFUNC_A=ROMSTART-ROMEND
-Z(CODE)FARFUNC_T,FARFUNC_A=ROMSTART-ROMEND//************************************************
// Original ROM location for __ramfunc code copied
// to and executed from RAM.
//************************************************-Z(CONST)NEARFUNC_T_ID,NEARFUNC_A_ID=ROMSTART-ROMEND
-Z(CONST)FARFUNC_T_ID,FARFUNC_A_ID=ROMSTART-ROMEND//************************************************
// Various constants and initializers.
//************************************************-Z(CONST)INITTAB,HUGE_ID,HUGE_C=ROMSTART-ROMEND
-Z(CONST)CHECKSUM=ROMSTART-ROMEND//*************************************************************************
// Read/write segments mapped to RAM.
//*************************************************************************-DRAMSTART=4000A000
-DRAMEND=4000FFFF//************************************************
// Data segments.
//************************************************-Z(DATA)HUGE_I,HUGE_Z,HUGE_N=RAMSTART-RAMEND
//************************************************
// __ramfunc code copied to and executed from RAM.
//************************************************-Z(DATA)NEARFUNC_T_I,NEARFUNC_A_I=RAMSTART-RAMEND
-Z(DATA)FARFUNC_T_I,FARFUNC_A_I=RAMSTART-RAMEND//************************************************
// ICCARM produces code for __ramfunc functions in
// *_I segments. The -Q XLINK command line option
// redirects XLINK to emit the code in the
// corresponding *_ID segment instead, but to keep
// symbol and debug information associated with
// the *_I segment, where the code will execute.
//************************************************-QNEARFUNC_T_I=NEARFUNC_T_ID
-QNEARFUNC_A_I=NEARFUNC_A_ID
-QFARFUNC_T_I=FARFUNC_T_ID
-QFARFUNC_A_I=FARFUNC_A_ID//*************************************************************************
// Stack and heap segments.
//*************************************************************************-D_CSTACK_SIZE=100
// -D_SVC_STACK_SIZE=10
-D_IRQ_STACK_SIZE=100
-D_HEAP_SIZE=100-Z(DATA)CSTACK+_CSTACK_SIZE=RAMSTART-RAMEND
// -Z(DATA)SVC_STACK+_SVC_STACK_SIZE=RAMSTART-RAMEND
-Z(DATA)IRQ_STACK+_IRQ_STACK_SIZE,HEAP+_HEAP_SIZE=RAMSTART-RAMEND
E-mail: info@telesys.ru