Interactive FORTH console

Dependencies:   BSP_DISCO_F746NG LCD_DISCO_F746NG mbed

FORTH

This is interactive FORTH system targeted as ROM OS for a retro-style home computer I'm going to develop.

About

This RetroPC will use STM32F7 Discovery board for the first time: it has powerful MCU able to emulate some old 8- and maybe 16-bit computers, and it is the best devboard for STM32 series. This is a hobby project, primary for my resume/portfolio upgrade and skills demo, so I must implement all features can be frequently seen in modern MCU applications: networking, user interface, DSP and some set of usable programs.

STmicro sells its devboards with dumping prices, but we have a risk of production shutdown or sales cancellation by local distributors, so main idea to build custom PCB with hardware minimized price (maybe STM32F4 will be better for next generation), and tuned not only for fun and hobby but for commercial use:

  • smart home
  • industrial control
  • retail equipment

Implementation

FORTH uses bytecode which can be interpreted by FVM. The main advantage of bytecode: it is highly portable. Using this portability we can avoid vendor lock, and use any hardware to run our programs, with small porting efforts. This platform transparency allows us to develop main software part on any PC, run it on Android phone, and do quick porting to any hardware able to run in affordable speed and have enough RAM. Hardware-dependent software components must be as small as possible to make FVM and applications to be portable in one evening.

no such method: FVM