BASIC09

BASIC09
Designed by Motorola
Developer Microware
First appeared 1980 (1980)
Stable release
1.1.0 / January 5, 2003 (2003-01-05)

BASIC09 is a structured BASIC programming language dialect developed by Microware and Motorola for the then-new Motorola 6809 CPU and released in 1980.[1][2][3][4][5][6]

Style

Somewhat in the fashion of UCSD Pascal it was implemented via 'compilation' into an intermediate representation. It was paired with the OS-9 Operating system, also from Microware and took advantage of several OS-9 features (e.g., shared memory, module loading and unloading, etc.).

Interpreter

The language processor turned BASIC09 source code into a tokenized, optimized, bytecode, called I-code in the BASIC09 literature. If that bytecode version of the source were saved (called packing), it could also be executed by a much more compact version of the interpreter, called RunB (no editor, no prettyprinter, no extraneous information included for human convenience, no debugger, ...).

Features

BASIC09 had very impressive features for its time (it was first available in 1980), and most especially for its memory requirements. It was also fast, in comparison with nearly all other microcomputer BASICs. Most of the features listed below have significant benefits for those writing more than example programs.

Other versions

Microware produced a version of BASIC09 for OS-9/68k (for the 68000), calling it Microware BASIC, but did not develop a version for OS-9000 (the portable version of OS-9).[7]

Significant features

Procedure packing

Once one or more BASIC09 procedures are debugged to the programmer's satisfaction, they can be "packed" (or converted permanently to the I-code (i.e., bytecode) form) into a file. Among other things, line numbers, comments and names of local variables are discarded during packing, so that, unlike the typical interpreted BASICs of the time, comments and intelligible variable names incur no runtime cost and were therefore not a 'burden' programmers learned to avoid to maximize runtime execution time or memory efficiency. For the BASIC09 releases intended for the OS-9 operating systems, "packed" procedures are in fact OS-9 modules; the OS-9 shell recognizes them as I-code and automatically calls the RunB interpreter to execute them. RunB avoids much of the runtime overhead found in typical interpreted BASICs of the day—not to mention that one can do integer calculations where appropriate rather than doing everything in floating point—so that BASIC09 programs run extremely quickly in comparison with equivalent programs in the interpreted BASICs of the time. RunB was also smaller than nearly every other BASIC interpreter package of even remotely comparable capabilities.

References

  1. "The NitrOS-9 Project / Wiki / BASIC09_Programming_Language_Reference_Manual". Sourceforge.net. 2016-05-17. Retrieved 2016-11-27.
  2. "OS-9 Basic 09 - The Dragon Archive". Archive.worldofdragon.org. 2016-05-07. Retrieved 2016-11-27.
  3. Advert: BASIC09 has a dual personality., 68 Micro Journal, Volume 04 Number 01, Published:January 1982
  4. Early OS-9 History, select content from 68 Micro Journal, December 1980, Microware changes their 6809 ad slightly. Basic09 is now called "The Basic09 Programming Language System" by Microware rather than "Motorola Basic09".
  5. newsgroups: comp.os.os9, From: Colin McKay, Subject: Re: OS/2 vs. W95 and OS-9, Date: 1995/04/12, summary: Excerpts from Microware History in OS-9 Users Group Newsletter, MICROWARE NEW PRODUCT NEWSLETTER April 1979., Thank you for your inquiry about our line of 6800 family hardware and software products. We are in the process of introducing some new software so our 1979 catalog will not be ready for some time. In the interim we are presenting new product information in this newsletter. 6809 SOFTWARE. Motorola contracted Microware to produce the finest possible software for the 6809. The new software we have prepared for Motorola includes a new BASIC language system plus an operating system. This software will be available soon from Motorola and Microware.
  6. About the Author, Terry Ritter, ..Software...FORMERLY: Staff Engineer, Motorola MOS Division, Microcomputer Systems Design Group, Jul. 1976 - Jan. 1981. ... Architect of structured BASIC language for 6809. Software Engineer, 1979-81 .... Originator and Supervising Project Engineer -- BASIC09, 1978-80, A structured BASIC language project, with operating system OS9 and associated specifications.
  7. "BASIC09". Geneslinuxbox.net:6309. Retrieved 2016-11-27.
  8. Basically OS-9, By Ron Voigts, 68 Micro Journal, Volume 09 Number 04, April 1984, Page 14, One of its strong features is its handling of formatted output. Other languages vary in how well they can handle the formatted output. But BASIC09 can do a very nice job of putting your lines into a form that you want

External links

This article is issued from Wikipedia - version of the 11/27/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.