Contributors
 

The ARMbasic compiler itself is property of the Coridium Corp. and all rights are reserved.

Mike and Bruce began this project in 2003.  The original target was a Cygnal 8051 using the Keil Compiler.  As part of the development, the BASIC was compiled on a PC in both Visual C and GCC.  This allowed quicker development of the language parser. Then a need arose for a hardware debugger on an ARM based cell phone that used the CodeWarrior compiler.  To check out hardware such as new displays and camera subsystems a new approach was required.  At the time it took 3-5 hours to make a change in the main software on the platform.  The BASIC made it possible to verify interfaces in minutes. Then Zilog introduced the websurfer and the BASIC was ported to that platform with a web interface replacing the serial port.  Later it moved to the Rabbit 3100 modules and was productized on the 3710.  This product is the BASIC-8.  For performance the interpreter was replaced with code compiler that performed a two pass compile-link step.  The speed of code increased by at least an order of magnitude.  Now Coridium has moved this compiler back to the ARM using GCC.  This time it includes a single pass BASIC compiler that incrementally builds programs in Flash.  Code tables are maintained even after the program is "run" which allows the user the look and feel of an interpreter.  Its easy to check the value of variables when the program has stopped, or to even change them.  Also during this time the BASIC-8 product's web interface was translated to Japanese and is available as the NAPI-BASIC server.

As you can see the compiler has been around the block, and now the world too. Its quite portable as having lived on 6 different C-platforms.  As it has been used extensively, its also quite stable.  Coridium will continue to add features as needed and offer customizations for OEM customers.

A number of utilities have been used to produce the ARMexpress system.

Freewrap is used to generate BASICtools from a Tcl/Tk script.

The MinGW cpp is used for pre-processing the BASIC.

The Tcl'ers Wiki Oscilloscope was the source for the basis of the LogicScope code.

ARMbasic was compiled with Winarm GCC.

The ARMbasic documentation has been based on the documents of the GPL WikiPedia and FreeBASIC project.  This document is also covered under the GFDL license.