Menu

Home Log in to Edit

Andrey Skvortsov

About

Terminal-BASIC is a BASIC-like language interpreter for ATMega-based uc boards.
Written in C++ using Arduino libs, it's not as lightweight as it should be, and not fits into 16k chips like ATMega168 at the moment.
From the other side, unlike many existing projects, like TinyBASIC ports, it supports real numbers and multidimensional arrays.

The language core support BASIC control structures, input, output and basic arithmetics of integer and real numbers and arrays, input, output and concatenation of the strings.
Extended functionality is available through the modules, that can be plugged to the core, adding
new commands and functions (and eating up huge ammounts of the program memory).

  1. Install.
  2. Develop/modify sources.
  3. Language reference
  4. Code examples
  5. Minimal BASIC tests status

The architecture of the Terminal-BASIC is shown on the picture below:
UML.png

The main interpreter object can be instantiated multiple times, using
different Stream objects. So, on the multi-USART systems, like
Atmega128 and Atmega2560, it is possible to create a multiterminal BASIC
timesharing system.

Variants

  • Terminal-BASIC Tetris game on Arduino MEGA 2560 based microcomputer.

  • Terminal-BASIC on Arduino MEGA 2560. Saving and chaining programs with EEPROM.

  • Terminal-BASIC on Arduino MEGA 2560 with 480x320 TFT:

  • The smallest variant, running on ARduino NANO Atmega168, simulated in Proteus 8

  • Microcomputer from ARduino MEGA


Related

Wiki: Code examples
Wiki: Installation and usage
Wiki: Reference
Wiki: Work_with_sources

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.