1MEMORY
2{
3  TEXTMEM (ARX) : ORIGIN = 0x10000, LENGTH = 32K
4  DATAMEM (AW)  : ORIGIN = 0x20000, LENGTH = 32K
5  LOADMEM (AW)  : ORIGIN = 0x30000, LENGTH = 32K
6}
7
8/* Map should be:
9
10           SIZE    VMA    LMA
11   .bss1     10  20000  20000
12   .bss2     30  20000  20010
13   .bss3     20  20000  20040
14   .mbss    230  20030  20060
15
16   .mtext    20  10000  30000
17   .text1    80  10020  30020
18   .text2    40  10020  300a0
19   .text3    20  10020  300e0
20
21   .data1    30  20260  30100
22   .data2    40  20260  30130
23   .data3    50  20260  30170  */
24
25SECTIONS
26{
27  OVERLAY :
28    {
29      .bss1 { *(.bss1) }
30      .bss2 { *(.bss2) }
31      .bss3 { *(.bss3) }
32    } > DATAMEM
33
34  .mtext : { *(.mtext) } > TEXTMEM AT > LOADMEM
35
36  .mbss : AT (__load_stop_bss3)
37    {
38      *(.mbss)
39      . += 0x200;
40    } > DATAMEM
41
42  OVERLAY :
43    {
44      .text1 { *(.text1) }
45      .text2 { *(.text2) }
46      .text3 { *(.text3) }
47    } > TEXTMEM AT > LOADMEM
48
49  OVERLAY :
50    {
51      .data1 { *(.data1) }
52      .data2 { *(.data2) }
53      .data3 { *(.data3) }
54    } > DATAMEM AT > LOADMEM
55
56  . = 0x8000;
57}
58