januari 2019
noforth logo

is an interactive 16-bit stand-alone forth for MSP430.
Authors: Albert Nijhof & Willem Ouwerkerk (Mail us)

Last update januari 2019

You can put the noForth image on a Launchpad and then program the chip using any serial terminal.

noForth C and V

noForth comes in two variants: However, noForth C can be used in the larger flash memories and noForth V in the smaller ones. To get an idea of the differences between C and V, see noforth words.pdf

Low Power noForths

The "Low Power" noForths are marked with a dash: noForth C-, V-, CC- and VV-.

noForth CC and VV

New january 2018
Double noForth. noForth CC and noForth VV are faster but less compact than C and V.
The priorities for noForth C and V: 1. robust and comfortable, 2. compact, 3. fast
The priorities for noForth CC and VV: 1. robust and comfortable, 2. fast, 3. compact

noForth updates

Summary of the most important noForth updates until now


This update only has some minor internal changes.
New: NoForth skips characters in the input stream which are greater than hex 7E.

Earlier updates


The noforth binaries contain only the noForth kernel without the tools. After noForth is programmed on the chip you have to send the file noforth tools.f to noForth for .S WORDS MANY DMP and SEE.
In the list below you find the general noForth Intel-hex files for the MSP430 processors. It may be necessary to adapt the CONFIG list (settings for Baud rate, Clock speed, etc.) in the noForth Intel-hex files. Follow the instructions in the README file.

noForth versions (190101)
MSP430F149 noforths 149.zip
MSP430FR2433 noforths 2433.zip
MSP430FR5739 noforths 5739.zip
MSP430FR5969 noforths 59x9.zip
MSP430FR5994 noforths 5994.zip
MSP430G2553 noforths 2553.zip
MSP430G2955 noforths 2955.zip
MSP430FR2x55 noforths 2x55.zip

Documentation about boards
MSP430F149 Minim Core Board.pdf 61kB FROM, Baud rate 9600
MSP430F149 Dupont board.pdf 61kB FROM, Baud rate 9600
MSP430F149 Mini-V3 board.pdf 61kB FROM, Baud rate 9600
MSP-EXP430FR2433 Experimenter Board.pdf 16kB FRAM, Baud rate 115k2
MSP-EXP430FR5739 Experimenter Board.pdf 16kB FRAM, Baud rate 9600
MSP-EXP430FR5969 Experimenter Board.pdf 64kB FRAM, Baud rate 115k2
MSP-EXP430FR5994 Experimenter Board.pdf 256kB FRAM, Baud rate 115k2
MSP430G2553 Launchpad.pdf 16kB FROM, Baud rate 9600
MSP430G2553 Egel Kit.pdf 16kB FROM, Baud rate 38k4
MSP-EXP430FR2355 Experimenter Board.pdf 32kB FRAM, Baud rate 115k2

How to get noForth in ...
- under Windows, Linux and Mac OS:
MSP-EXP430FR2355 Experimenter's Board with UniFlash.
Any MSP430 board with UniFlash, using the MSP-EXP430FR2355 Board as interface.
- under Windows:
MSP430G2553 Launchpad
MSP430G2553 Egel kit
MSP430F149 boards
MSP-EXP430FR2433 Experimenter board
MSP-EXP430FR5739 Experimenter board
MSP-EXP430FR59xx boards
MSP-EXP430G2955 boards
- under Linux:
MSP-EXP430FR59xx boards
MSP430G2553 Launchpad
- under Mac OS:
MSP430G2553 Launchpad

Egel project

egeltje The Egel project consists of about 50 elementary examples of hardware control with noForth on the MSP430. In each example you find a file with forth code, documentation and links to more information on the internet.

Three answered questions about noForth

  1. What do I need to get my program compiled in noForth?

    noForth receives the text, translates it into code and compiles that in flashrom. You need a simple communication program which is able to send text to noForth on the chip. (Teraterm for Windows, CoolTerm for OS X, e4thcom for Linux, ... )
      Baud rate 9600 - data 8 bit - parity none - stop 1 bit - flow control none -
      transmit delay: 0 ms/char, 100 ms/line
  2. Will compiled code stay in flashrom after a power off/on?

    No, unless you have sent the command FREEZE.
  3. Is it possible to erase 'frozen' code?

    Yes. Executing a MARKER or a SHIELD erases the code that is compiled after it.

Before you start:

Since noForth compiles in FlashROM, it is unavoidable that some words don't behave exactly as the standard prescribes. We tried, without restricting the programming freedom, to minimize the aberrations from the standard. This concerns:
HERE ALLOT ! C! +! MOVE (only RAM) , C, (only ROM) and CREATE


These files are for the 190101 versions.
 This noForth software
 is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 This software is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 GNU General Public License for more details.

How to make a turnkey system

' <my-application>   TO APP   FREEZE
(Put the application token in the value APP and type FREEZE)
The execution of the APP vector can be bypassed with a switch.

noForth is written 'from scratch'