Summary: BASIC is an acronym for Beginner's All-purpose Symbolic Instruction Code. Developed by John Kemeney and Thomas Kurtz in the mid 1960s at Dartmouth College, BASIC is one of the earliest and simplest high-level programming languages, incorporating components of FORTRAN and ALGOL.
In October 1978 Atari contracted with Shepardson Microsystems, Inc. (SMI; headed by Bob Shepardson) to create a version of BASIC (as well as a File Management System) for the upcoming Atari personal computers. Credits: Paul Laughton - Main programmer (also wrote: FMS for DOS I and DOS 2.0S) Kathleen O'Brien - Floating point routines (also wrote: Assembler Editor) Bill Wilkinson - Preliminary specifications for the language; floating point scheme design Paul Krasno - Implemented the transcendental routines
While SMI developed Atari BASIC to occupy 10KiB of ROM, including a 2KiB Floating Point Package (FPP) for internal use by the language, Atari placed the FPP component in operating system ROM (memory locations 55296 to 57343 or $D800 to $DFFF) for universal availability. Thus, the Atari BASIC ROM was slimmed to 8KiB. Please see the "What is the Atari OS" section of this FAQ for further information about the FPP.
Atari released 3 different Revisions of Atari BASIC:
Revision A ---------- - Shipped with the 400 computer systems from 1979-1981 - Shipped with the 800 computer systems from 1979-1982
Atari BASIC Rev. A was produced by Atari on cartridge (CXL4002), standard 400/800-style brown label, which reads either "BASIC Computer Program" (early) or "BASIC Computing Language" (most).
The cartridge was produced in mass quantities before SMI had finished debugging it. One place these bugs are documented is in this article by Steve Hanson from Compute! magazine, Oct. 1981: http://www.atarimagazines.com/compute/issue17/171_1_DOCUMENTED_ATARI_BUGS.php
On February 25, 1981, the source code to Atari BASIC (including the FPP) was purchased from SMI by Optimized Systems Software (OSS), headed by former SMI employees Bill Wilkinson and Mike Peters.
The Atari BASIC Source Book (Compute! Books, 1983, 0-942386-15-9), authored by Bill Wilkinson, Kathleen O'Brien and Paul Laughton, made the source code to Atari BASIC (Rev. A; and including the FPP) available to the public. Available: http://users.telenet.be/kim1-6502/6502/absb.html
Revision B ---------- When the 600XL/800XL computers shipped in the fall of 1983 they included a newly debugged Atari BASIC Rev. B built-in on ROM. Unfortunately, while most existing bugs were fixed, Rev. B introduced a new bug more serious than any of the earlier problems. In his article in the June 1985 issue of Compute!, Bill Wilkinson writes: Each time you LOAD (or CLOAD or RUN "filename") a program, rev B adds 16 bytes to the size of your program. If you then save the program, the next time you load it in it grows by ANOTHER 16 bytes, and so on. http://www.atarimagazines.com/compute/issue61/323_1_INSIGHT_Atari.php The problem can be alleviated by periodically, if not exclusively, using LIST instead of SAVE or CSAVE to save your programs.
Atari never produced Atari BASIC Rev. B on cartridge.
"Revision C Converter: Type-in fix for buggy BASIC revision B" by Matthew Ratcliff was published in the September 1985 issue of Antic: http://www.atarimagazines.com/v4n5/revisioncconverter.html
Revision C ---------- Atari BASIC Rev. C is the final "fully debugged" version. Rev. C was first shipped on cartridge (CXL4002) by Atari, Inc. in June 1984 according to Antic (http://www.atarimagazines.com/v4n5/revisioncconverter.html). The silver label on the first Rev. C cartridges reads "(c)1982 Atari, Inc." and "Made in U.S.A." Atari, Corp. also produced Rev. C on cartridge, using two different silver labels designs, both of which read "(c)1985 Atari Corp." and "Made in Taiwan". Rev. C was also built-in on ROM in late-production 800XL computers as well as the 65XE, the 130XE, the XE System Console, and the 800XE.
Determining Revision version ---------------------------- When running Atari BASIC, memory location 43234 ($A8E2, BASIC ROM) indicates which Revision of BASIC is running. At the READY prompt, enter: ? PEEK(43234)
If the result is: You have Revision: Atari Part#: 162 A C012402+C014502 96 B C060302A 234 C C024947A
All 3 versions of Atari BASIC may be available for download here: http://www.ataripreservation.org/websites/freddy.offenga/atari_dev.htm
Manuals from Atari: (See the "What is the Atari OS" FAQ section for FPP documentation.) - Atari BASIC (Wiley Self-Teaching Guide) C014385 by Albrecht/Finkel/Brown (c)1979, 332 pages (see: http://www.atariarchives.org/basic/) - Shipped with the 400 computer systems from 1979-1981 - Shipped with the 800 computer systems from 1979-1982 - BASIC Reference Manual (400/800 ed.), C015307, (c)1980, 120 pages - Authors: Carol Shaw and Keith Brewster - Shipped with the 800 computer systems from 1980-1982 - Inside Atari BASIC, C060992, Carris for Reston, (c)1983, 183 pages - Atari BASIC Reference Manual Update, C061038, (c)1982, 6 pages - BASIC Reference Manual (400/800/1200XL ed.), C061456 / BX4211, (c)1983, 126 pages - Atari BASIC Reference Guide For Experience Programmers, C061570, (c)1983, 14 pages - Atari BASIC Reference Guide, C061948, (c)1983 (international; 61 pages) |
|