Mecrisp is a native code Forth implementation for MSP430 and ARM Cortex M. ------------------------------------------------------------------------------ You can choose to compile to flash or to ram, and it generates native code with folding, inlining of short words and it opcodes common instructions. Note that it doesn't need to save any pointers. Hopefully it should be completely interrupt-save and you can hook your Forth definitions to interrupt vectors. Altought it is in spirit of ANS, there are some differences: Be careful. For details, have a look at README files included ! ------------------------------------------------------------------------------ Ready-to-fly MSP430 targets: MSP430F2274 (TX on P3.4, RX on P3.5, 32 kb Flash, 1 kb RAM) MSP430G2553 (TX on P1.2, RX on P1.1, 16 kb Flash, 512 Bytes RAM) MSP430G2955 (TX on P3.4, RX on P3.5, 56 kb Flash, 4kb RAM) MSP430G2855 (TX on P3.4, RX on P3.5, 48 kb Flash, 4kb RAM) MSP430G2755 (TX on P3.4, RX on P3.5, 32 kb Flash, 4kb RAM) MSP430F5529 (115200 Baud, 8 MHz, TX on P4.4, RX on P4.5) MSP430FR2433 (115200 Baud, 8 MHz, TX on P1.4, RX on P1.5) MSP430FR4133 (115200 Baud, 8 MHz, TX on P1.0, RX on P1.1) MSP430FR5969 (115200 Baud, 8 MHz, TX on P2.0, RX on P2.1) MSP430FR5994 (115200 Baud, 8 MHz, TX on P2.0, RX on P2.1) MSP430FR6989 (115200 Baud, 8 MHz, TX on P3.4, RX on P3.5) Special Mecrisp for MSP430F1612 with initialisations for Launchpad hardware is included to conquer your Launchpad completely. It fits tightly into 9kb of Flash and runs with 512 Bytes of Ram. Communication is via serial 9600 baud 8N1 over portpins. Ready-to-fly ARM Cortex M targets: - TI Stellaris/Tiva Launchpad with LM4F120H5QR / TM4C123GH6PM - TI Tiva Connected Launchpad with TM4C1294NCPDT - TI MSP432 Launchpad with MSP432P401R - STM L053 Discovery with STM32L053C8T6 - STM Nucleo L152RE with STM32L152RE - STM Nucleo 401RE with STM32F401RE - STM Nucleo 411RE with STM32F411RET6 - STM F0 Discovery with STM32F051R8 - STM VL Discovery with STM32F100RB - Shenzhen LC Technology board with STM32F103C8T6 - STM F3 Discovery with STM32F303VCT6 - STM F4 Discovery with STM32F407VGT6 - STM F429 Discovery with STM32F429ZIT6 - Freescale Freedom FRDM-KL25Z with KL25Z128VLK4 - Freescale Freedom FRDM-KL46Z with KL46Z256VLL4 - Freescale Freedom FRDM-K64F with MK64FN1M0VLL12 - Infineon XMC2GO with XMC1100Q024F0064 - EFM32 Giant Gecko with EFM32GG990F1024 - EFM32 Happy Gecko with EFM32HG322F64 - Breadboard friendly, DIP packaged LPC1114FN28 - LPC1114FBD48 - LPC1115FBD48 - Very small TSSOP20 packaged STM32F030F4 Contributions: - Teensy 3.1 with MK20DX256VLH7 - Chinese QF-LM4F232 with LM4F232H5QC - nRFgo Starter Kit & Microbit with nRF51822 - STM L152 Discovery with STM32L152RBT6 - STM Nucleo F207ZG with STM32F207ZG - STM Nucleo F303K8 with STM32F303K8 - STM Nucleo F303RE with STM32F303RE - STM Nucleo L432KC with STM32L432KC - STM L476 Discovery with STM32L476VG - STM F746 Discovery with STM32F746NG - Atmel SAME70 X-plained with ATSAME70Q21 Mecrisp is a play on words, it comes from MSP and french "écris", which means "you write", in the sense of "you write to the MSP430". Special projects included here: mecrisp-ice... runs on Lattice HX1K and HX8K FPGAs. mecrisp-across... is a new still highly experimental Forth cross compiler for small MSP430 targets featuring global optimisations. Target literature package for... contains a collection of necessary and useful datasheets for your favourite target chip. loran-c... contains an experimental software defined Loran-C longwave radio navigation receiver running on STM32F407. mecrimus-b-0.5.tar.gz is the latest bit-bang USB code for MSP430. wuseldraht-scurrywire-0.1.tar.gz is an implementation of a field bus for combined power and data transmission over long, high capacitance wires. All other packages contain ancient code for those interested in history... ------------------------------------------------------------------------------ http://mecrisp.sourceforge.net/ m-atthias@users.sf.net ------------------------------------------------------------------------------