diff --git a/software/sys_controller/Makefile b/software/sys_controller/Makefile index 08ee02d..48077d5 100644 --- a/software/sys_controller/Makefile +++ b/software/sys_controller/Makefile @@ -1140,8 +1140,8 @@ ossc/userdata_sjis.c: ossc/userdata.c iconv -f UTF-8 -t SHIFT-JIS ossc/userdata.c > ossc/userdata_sjis.c mem_init/flash.hex: sys_controller.elf - $(RV_OBJCOPY) --change-addresses -0x02A00000 -O binary --gap-fill 0 $< mem_init/flash.bin - $(RV_OBJCOPY) --change-addresses -0x02A00000 -O ihex --gap-fill 0 $< mem_init/flash.hex + $(RV_OBJCOPY) --change-addresses -0x02080000 -O binary --gap-fill 0 $< mem_init/flash.bin + $(RV_OBJCOPY) --change-addresses -0x02080000 -O ihex --gap-fill 0 $< mem_init/flash.hex mkdir -p mem_init/chunks rm -f mem_init/chunks/* split -d -b 64 -a 4 mem_init/flash.bin mem_init/chunks/flash. diff --git a/software/sys_controller/link.common.ld b/software/sys_controller/link.common.ld index 8ec949d..ec559ac 100644 --- a/software/sys_controller/link.common.ld +++ b/software/sys_controller/link.common.ld @@ -54,6 +54,7 @@ SECTIONS *(.rodata.*) *(.srodata); *(.srodata.*) + . = ALIGN(4); } > flash_imem /*--------------------------------------------------------------------*/ @@ -84,18 +85,18 @@ SECTIONS } > dataram .text_bram : AT ( LOADADDR (.rodata) + SIZEOF (.rodata) ) { - PROVIDE (__ram_text_start = ABSOLUTE(.)); . = ALIGN(4); + PROVIDE (__ram_text_start = ABSOLUTE(.)); *(.text_bram); - LONG(0) + . = ALIGN(4); PROVIDE (__ram_text_end = ABSOLUTE(.)); } > dataram PROVIDE (__flash_text_bram_start = LOADADDR(.text_bram)); .data : AT ( LOADADDR (.text_bram) + SIZEOF (.text_bram) ) { - PROVIDE (__ram_rwdata_start = ABSOLUTE(.)); . = ALIGN(4); + PROVIDE (__ram_rwdata_start = ABSOLUTE(.)); sdata = .; _sdata = .; *(.data); @@ -106,6 +107,7 @@ SECTIONS *(.sdata2.*) edata = .; _edata = .; + . = ALIGN(4); PROVIDE (__ram_rwdata_end = ABSOLUTE(.)); } > dataram