Tinybasic Versions Save

A BASIC interpreter for Arduino, ESP, RP2040, STM32, Infineon XMC and POSIX with IoT and microcontroller features.

v2.0-Iot-Basic

1 week ago

This is the 2.0 release of my BASIC interpreter. It a redesign of the 1.x version.

Currently supported platforms are Mac, Windows, RaspPi, and MSDOS. Most Arduino MCU platforms are supported with a focus on AVR 8bit and 32bit, ESP8266 and ESP32. RP2040 is supported as well. XMC and SMT code runs. Many peripherals are supported.

Main new features of the 2.0 version:

  • Hardware dependent code, basic interpreter and configuration files are separated.
  • The interface to the hardware runtime library runtime. c or runtime.cpp is identical for all OSes.
  • Structured programming with WHILE WEND, REPEAT UNTIL, SWITCH CASE is fully integrated in the code.
  • Local variables in subroutines and procedures.
  • Multiline functions and procedures are included.
  • String code is reworked.
  • Compatibility settings for various BASIC dialects can be changed at runtime.
  • More test and demo programs included.
  • Line editor is included.
  • Arduino R4 supported.
  • User names and passwords for MQTT is supported.

Code is cleaned up and many of the old inconsistencies are removed.

v1.4.1-IoT-BASIC

1 year ago

Bug fixes of the 1.4 release -> faulty basic.h checked in.

v1.4-IoT-BASIC

1 year ago

Version 1.4 of IoT BASIC released.

Major changes to 1.31 are:

  • Error handling with the ERROR function
  • Handling of Interrupts with the EVENT function
  • Timers EVERY and AFTER to interrupt running programs
  • Signal handling to interrupt a running program on POSIX systems
  • Serial port handling on POSIX systems

New hardware platforms supported:

  • STM32 various versions
  • Infineon XMC
  • Several different displays

Improvements in the Arduino code:

  • Support of pulse output
  • Built-in clock function
  • Picoserial integrated without the need of a library
  • Real time clock support integrated without the need of a library
  • Use of software SPI in Arduino MEGA

What's Changed

New Contributors

Full Changelog: https://github.com/slviajero/tinybasic/compare/v1.31-Iot-BASIC...v1.4-IoT-BASIC

v1.31-Iot-BASIC

1 year ago

1.3 release has a complete BASIC language set, including

  • 2d Arrays
  • String Arrays
  • Dartmouth language extensions
  • MQTT and IoT capabilities
  • a number of devices like TFT, OLED, and LCD screens
  • complete port of the 101 BASIC computer games
  • most of the built-in Arduino examples ported to BASIC
  • Supported POSIX platforms are

Mac

  • Windows with MinGW
  • Raspberry PI including Wiring support
  • MS DOS

Supported microcontroller platforms are

  • most Arduino AVR
  • mega AVR
  • RISC based Arduino boards
  • many ESP8266 and ESP32
  • RP2040 based boards

This is a minimal bugfix on the 1.3 code.

v1.3-IoT-BASIC

1 year ago

1.3 release has a complete BASIC language set, including

  • 2d Arrays
  • String Arrays
  • Dartmouth language extensions
  • MQTT and IoT capabilities
  • a number of devices like TFT, OLED, and LCD screens
  • complete port of the 101 BASIC computer games
  • most of the built-in Arduino examples ported to BASIC

Supported POSIX platforms are

  • Mac
  • Windows with MinGW
  • Raspberry PI including Wiring support
  • MS DOS

Supported microcontroller platforms are

  • most Arduino AVR
  • mega AVR
  • RISC based Arduino boards
  • many ESP8266 and ESP32
  • RP2040 based boards

v1.2.1-basic

2 years ago

Bugfix release of 1.2.1 - handling of interactive commands improved Cleanup of device driver code Features in 1.2.1 as compared to 1.2.

  • VGA code for ESP32
  • ESP32 port
  • clock, wire, some external EEPROM

tinybasic

2 years ago

My tinybasic interpreter has grown to a fairly complete BASIC for Arduino, ESP, Mac, Windows, Linux and MSDOS. It supports Arduino based standalone computers and various smaller use cases.

basic-mac is the MacOS Intel 64bit executable. basic.exe is the MSDOS executable. basic-win.exe is the Windows 10 executable.