BASIC language

Great Cow BASIC (GCB), GPLv2, LGPLv2 licensed.

“Great Cow BASIC has three main aims - to remove the need for repetitive assembly commands, to produce efficient code, and to make it easy to take code written for one microcontroller type and run it on another microcontroller type. The design intent is to remove the complexity of using and programming a microcontroller”.

“Great Cow BASIC is suitable for beginners, for those who do not like or wish to learn assembly language and for experienced microcontroller programmmers.”

Installed on Windows includes GCB@SynIDE, an integrated text editor based on SynWrite (MPL v1.1 license); on GNU/Linux, GCB Compiler can be used with Geany as IDE (requires Freebasic as dependency), or to run GCB under wine.

GCB has extensive integrated libraries for external devices, and allows to include user’s own libraries. In addition, it allows to insert Assembler code within the code developed in BASIC.

GCB has an extensive online help, facilitating to learn and use the BASIC language, and the software and its libraries.

C language

Small Device C Compiler (SDCC), GPLv2 or GPLv3 license, + IDE.

“SDCC is a retargettable, optimizing Standard C (ANSI C89, ISO C99, ISO C11) compiler suite that targets the Intel MCS51 based microprocessors , Maxim DS80C390 variants, Freescale, HC08 based, Zilog Z80 based MCUs and STMicroelectronics STM8. Work is in progress on supporting the Microchip PIC16 and PIC18 targets. It can be retargeted for other microprocessors”.

SDCC suite is a collection of several components derived from different sources with different FOSS licenses.

SDCC does not provide a native IDE, but it is fully supported by Code::Blocks in v17.2 version, and by Eclipse IDE through a plugin.

ASSEMBLER language

gpasm (gputils suite), GPLv2 license, + text editor.

The gputils suite includes gpasm, a compiler for Assembler from the command line (it does not have a GUI). Can be used with Geany as IDE: it has an Assembler syntax highlight feature, and accepts gpasm as compiler from Build menu.