1//-----------------------------------------------------------------------------
2// ILINK command file template for the Renesas RX microcontroller R5F565N
3//-----------------------------------------------------------------------------
4define exported symbol __link_file_version_4 = 1;
5
6define memory mem with size = 4G;
7
8// ID Code Protection
9define exported symbol __ID_BYTES_1_4   = 0xFFFFFFFF;
10define exported symbol __ID_BYTES_5_8   = 0xFFFFFFFF;
11define exported symbol __ID_BYTES_9_12  = 0xFFFFFFFF;
12define exported symbol __ID_BYTES_13_16 = 0xFFFFFFFF;
13
14// Endian Select Register (MDE)
15// Choose between Little endian=0xFFFFFFFF or Big endian=0xFFFFFFF8
16define exported symbol __MDES           = 0xFFFFFFFF;
17
18// Option Function Select Register 0 (OFS0)
19define exported symbol __OFS0           = 0xFFFFFFFF;
20
21// Option Function Select Register 1 (OFS1)
22define exported symbol __OFS1           = 0xFFFFFFFF;
23
24//define region ROM_region16 = mem:[from 0xFFFF8000 to 0xFFFFFFFF];
25define region RAM_region16 = mem:[from 0x00010000 to 0x00017FFF];
26//define region ROM_region24 = mem:[from 0xFFF00000 to 0xFFFFFFFF];
27//define region RAM_region24 = mem:[from 0x00000004 to 0x0001FFFF];
28define region ROM_region32 = mem:[from 0xFFF10400 to 0xFFFFFFFF];
29//define region RAM_region32 = mem:[from 0x00000004 to 0x0001FFFF];
30//define region DATA_FLASH_region = mem:[from 0x00100000 to 0x00107FFF];
31
32initialize by copy { rw, ro section D, ro section D_1, ro section D_2 };
33do not initialize  { section .*.noinit };
34
35define block HEAP     with alignment = 4, size = _HEAP_SIZE { };
36//define block USTACK   with alignment = 4, size = _USTACK_SIZE { };
37//define block ISTACK   with alignment = 4, size = _ISTACK_SIZE { };
38
39//define block STACKS with fixed order { block ISTACK,
40//                                       block USTACK };
41
42//place at address mem:0xFFFFFF80 { ro section .nmivec };
43//"ROM16":place in ROM_region16        { ro section .code16*,
44//                                       ro section .data16* };
45//"RAM16":place in RAM_region16        { rw section .data16*,
46//                                       rw section __DLIB_PERTHREAD };
47//"ROM24":place in ROM_region24        { ro section .code24*,
48//                                       ro section .data24* };
49//"RAM24":place in RAM_region24        { rw section .data24* };
50//"ROM32":place in ROM_region32        { ro };
51//"RAM32":place in RAM_region32        { rw,
52//                                       ro section D,
53//                                       ro section D_1,
54//                                       ro section D_2,
55//                                       block HEAP,
56//                                       block STACKS,
57//                                       last section FREEMEM };
58
59//"DATAFLASH":place in DATA_FLASH_region
60//                                     { ro section .dataflash* };
61
62define movable block ROPI with alignment = 4, fixed order, static base CB
63{
64  ro object txm_module_preamble_rx65n.o,
65  ro,
66  ro data
67};
68
69define movable block RWPI with alignment = 8, fixed order, static base SB
70{
71  rw section .sbdata*,
72  rw section .sbrel*,
73  rw section __DLIB_PERTHREAD,
74  block HEAP
75};
76
77place in ROM_region32   { block ROPI };
78place in RAM_region16   { block RWPI };
79