cat <<EOF OUTPUT_FORMAT("${OUTPUT_FORMAT}") OUTPUT_ARCH("${OUTPUT_ARCH}") MEMORY { rom : ORIGIN = 0x00000300, LENGTH = 16k ram : ORIGIN = 0x00000300 + 16k, LENGTH = 16k ramblk0 : ORIGIN = 0x02026000, LENGTH = 0x1000 ramblk1 : ORIGIN = 0x02027000, LENGTH = 0x1000 } SECTIONS { .vectors 0x00000000 : { *(vectors) } .text : { *(.text) } > rom .const : { *(.const) __etext = . ; } > rom .mdata : AT( ADDR(.const) + SIZEOF(.const) ) { __data = . ; *(.data); __edata = . ; } > ram .bss : { __bss = . ; *(.bss); *(COMMON); __ebss = . ; } > ram .ram0 : { *(ram0) } > ramblk0 .ram1 : { *(ram1) } > ramblk1 } EOF