From ea026f8d67c411fc4a0d8b255a2653753258175e Mon Sep 17 00:00:00 2001 From: Clyne Sullivan Date: Thu, 2 Nov 2023 20:50:47 -0400 Subject: running on the devboard --- msp430/alee-msp430.cpp | 13 ++++++++++--- msp430/msp430fr2476.ld | 34 ---------------------------------- 2 files changed, 10 insertions(+), 37 deletions(-) (limited to 'msp430') diff --git a/msp430/alee-msp430.cpp b/msp430/alee-msp430.cpp index fba9c6f..92f3aa5 100644 --- a/msp430/alee-msp430.cpp +++ b/msp430/alee-msp430.cpp @@ -18,14 +18,16 @@ #include "alee.hpp" #include "libalee/ctype.hpp" -#include "splitmemdict.hpp" #include +#include "splitmemdictrw.hpp" + alignas(sizeof(Cell)) +__attribute__((section(".text"))) #include "core.fth.h" -static char strbuf[32]; +static char strbuf[80]; static void readchar(State& state); static void serput(int c); @@ -38,14 +40,19 @@ static void initUART(); static void Software_Trim(); #define MCLK_FREQ_MHZ (8) // MCLK = 8MHz +//__attribute__((section(".upper.bss"))) +//static uint8_t hidict[16384]; + int main() { WDTCTL = WDTPW | WDTHOLD; initGPIO(); initClock(); initUART(); + SYSCFG0 = FRWPPW; - static SplitMemDict dict (alee_dat); + (void)alee_dat_len; + static SplitMemDictRW dict (alee_dat, 0x10000/*(uint32_t)hidict*/); State state (dict, readchar); serputs("alee forth\n\r"); diff --git a/msp430/msp430fr2476.ld b/msp430/msp430fr2476.ld index 011683b..62004bd 100644 --- a/msp430/msp430fr2476.ld +++ b/msp430/msp430fr2476.ld @@ -224,11 +224,6 @@ SECTIONS KEEP (*(.dtors)) } > FRAM - .upper.rodata : - { - *(.upper.rodata.* .upper.rodata) - } > HIFRAM - /* This section contains data that is initialised during load but not on application reset. */ .persistent : @@ -281,19 +276,6 @@ SECTIONS PROVIDE(__romdatastart = LOADADDR(.lower.data)); PROVIDE (__romdatacopysize = SIZEOF(.lower.data) + SIZEOF(.data)); - .upper.data : - { - __upper_data_init = LOADADDR (.upper.data); - /* Status word. */ - SHORT(1); - __high_datastart = .; - *(.upper.data.* .upper.data) - __high_dataend = .; - } > HIFRAM AT> FRAM - - __rom_highdatacopysize = SIZEOF(.upper.data) - 2; - __rom_highdatastart = LOADADDR(.upper.data) + 2; - .lower.bss : { . = ALIGN(2); @@ -313,16 +295,6 @@ SECTIONS } > RAM PROVIDE (__bsssize = SIZEOF(.lower.bss) + SIZEOF(.bss)); - .upper.bss : - { - . = ALIGN(2); - __high_bssstart = .; - *(.upper.bss.* .upper.bss) - . = ALIGN(2); - __high_bssend = .; - } > HIFRAM - __high_bsssize = SIZEOF(.upper.bss); - /* This section contains data that is not initialised during load or application reset. */ .noinit (NOLOAD) : @@ -395,12 +367,6 @@ SECTIONS KEEP (*(.tm_clone_table)) } > FRAM - .upper.text : - { - . = ALIGN(2); - *(.upper.text.* .upper.text) - } > HIFRAM - .info (NOLOAD) : {} > INFOMEM /* MSP430 INFO FLASH MEMORY SEGMENTS */ /* The rest are all not normally part of the runtime image. */ -- cgit v1.2.3