Basic XL#

OSS

Background#

The original Atari BASIC was written at Shepardson Microsystems (SMI) shortly before the 8-bit machines were released. A short time later, Shepardson dissolved, and the Atari programmers re-formed as Optimized Systems Software (OSS), taking the source code to the Atari products with them. In 1981, they released OSS Basic A+, based on the original Atari BASIC code but containing a number of bug fixes and a few expansions. This made it too large for the 8k ROM cartridges of the era, and A+ shipped only in disk form.

Basic XL was a further, but much larger, expansion on the Basic A+ model. As it was also based on the original source code, Basic XL remains a strict superset of Atari BASIC, and will run any Atari BASIC program without modification. In contrast to A+, however, XL added many new commands to work with player/missile graphics, simplified handling of joysticks and light pens, autogenerated line numbers and renumbering, and other extensions.

Much more notable, however, was Basic XL's FAST command. Atari BASIC was notoriously slow, due largely to two problems. One was that the floating point routines in the Atari OS ROMs were very slow, and every number in BASIC, even line numbers and array indexes, were sent through this code. The other issue stemmed from the way Atari BASIC handled GOTO and FOR/NEXT commands. FAST fixed the later of these problems; when this command was encountered within a program, Basic XL cached the location line numbers pointed to by the GOTO and FOR/NEXT loops. This made the jumps dramatically faster than Atari BASIC, which had to scan through the entire source code every time through a loop.

Another notable feature of Basic XL was the AUTORUN system. This was a small runtime library that could be added to a disk with Basic XL programs, allowing them to run on machines that did not have the Basic XL system. This made it far more practical than A+. On top of this, Basic XL was shipped in the form of a 16k "supercartridge" that used bank switching so it only took up 8k of memory, making its footprint the same as Atari BASIC, as opposed to A+'s much larger size.

Basic XL was widely lauded in the press, and some stated it should be renamed Atari BASIC and built-into every machine. However, the release of TURBO-BASIC XL a year later largely ended the market for Basic XL. A further expansion, Basic XE, never became very popular.

CAR-Images:#

ROM-Images:#

ATR-Images:#

On Side B the suffix BXE is used. Don't get confused, it is Basic XL, OSS just used the suffix BXE for that disk.

In October of 2019 robdaemon from AtariAge made a strange discovery the community didn't had a clue of, please see the discussion on AtariAge. Due to some discussions in the backgroud and again with the great help from 'kind soul', we could receive the toolkit in version 1.02. After a binary compare of each file on both disks, we could find, that 2 files only are different. These are AUTORUN.SYS and EXTEND.COM. The investigations still continue as of March 2020. If you have the 1.02 cartridge, then please use the toolkit 1.02 and if you have the 1.03 cartridge, then please use the toolkit 1.03. AtariWiki further highly recommends the reading of the fall 1986 OSS Newsletter from page 6 on for this case. In the newsletter the reader will even find a 6 lines code fix for problems regarding with the toolkit.

ROM version 1.02 works with extensions from toolkit 1.02 and 1.03 without errors. ROM version 1.03 works with extensions from toolkit 1.03 only without errors. Thanks to GoodByteXL for testing and letting us know.

Manuals#

Source Code for OSS Basic XL version 1.02 from February 5th, 1985:#

  • BASICXL102.zip(info) ; thank you so much for your help in this bob1200xl from AtariAge, that is such a great contribution, we really appreciate your help in that case. You will always be in our hearts and we will never forget you.
Thank you so much for your help bob1200xl from AtariAge!

This is(!) the source code for OSS Basic XL 1.02 on two DOS II Version 2.0D disks without any DOS. That means they are DD disks and can be opened with the original 815 DOS, which is inside the archive above.

The source has a .bak-file from February 5th, 1985. You need Mac/65 to read in the file: "master", which is without any suffix.

Further you need two DD drives: D1 and D2. Both atr images are renamed with the corresponding D. While running, files on drive 2 are accessed. All files which can be read are in a .txt-file inside the archive. So you all can get a quick look at.

DIR:
1 BASICXL102D1.atr
2 BASICXL102D2.atr
3 DOS 2.0D.atr
4 Basic XL (OSS Type A-034M).bin
5 Basic XL (OSS Type B-M091).bin
6 Example from Master.jpg
7 Types of carts.jpg
8 Win Latin 1.jpg
9 BASICXL102D1
10 BASICXL102D2
11 D2-BASICC.923
12 D2-BASICC.APL

the txt files are coded in Win Latin 1. Hope the CRs are coming the right way. The content of the two disks are in a folder each, too. So, you can get a quick look at. Position 11 and 12: these two files are accessed from the file: "CONVRT.LIS", but they are not on the disks. Maybe someone can help us here? Further, a call goes out here to enhance the source code to the final version of Basic XL 1.03.

Bob, we are so deep in your debt. Thank you so much again. :-)

Articles#

Image#

OSS BASIC XL - manual cover

Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
pdf
30 Days to Understanding BASIC... 5,068.0 kB 1 22-Apr-2014 01:38 Roland B. Wassenberg 30 Days to Understanding BASIC XL-Bill Wilkinson and Diane Goldstein
pdf
30_Days_to_Understanding_BASIC... 625.2 kB 1 18-Mar-2020 05:48 Roland B. Wassenberg 30_Days_to_Understanding_BASIC_XL-Bill_Wilkinson_and_Diane_Goldstein-revised_edi
atr
BASIC XL Toolkit 1.02-Disk-Sid... 92.2 kB 1 18-Mar-2020 04:00 Roland B. Wassenberg BASIC XL Toolkit 1.02-Disk-Side A-Original.atr
atr
BASIC XL Toolkit 1.02-Disk-Sid... 92.2 kB 1 18-Mar-2020 04:01 Roland B. Wassenberg BASIC XL Toolkit 1.02-Disk-Side B-Original.atr
atr
BASIC XL Toolkit Disk-Side A.a... 92.2 kB 1 24-Feb-2014 22:01 Roland B. Wassenberg BASIC XL Toolkit Disk-Side A
atr
BASIC XL Toolkit Disk-Side B.a... 92.2 kB 1 30-May-2014 21:58 Roland B. Wassenberg BASIC XL Toolkit Disk-Side B
zip
BASICXL102.zip 496.4 kB 1 04-Feb-2015 01:06 Roland B. Wassenberg BASICXL102.zip
png
BASIC_XL.png 60.9 kB 2 02-Jan-2011 21:55 Carsten Strotmann
pdf
BASIC_XL_Manual.pdf 1,187.9 kB 1 02-Jan-2011 21:50 Carsten Strotmann
pdf
BASIX_XL_manual-revised_editio... 1,171.0 kB 1 26-Jun-2016 21:21 Roland B. Wassenberg BASIX_XL_manual-revised_edition_2015_by_GBXL
pdf
BASIX_XL_manual-revised_editio... 1,263.7 kB 1 18-Mar-2020 05:49 Roland B. Wassenberg BASIX_XL_manual-revised_edition_2020_by_GBXL.pdf
zip
BXL_BXE_programs.zip 308.4 kB 1 23-Jul-2016 15:10 Roland B. Wassenberg BXL_BXE_programs
car
Basic XL 1.03.car 16.4 kB 1 24-Feb-2014 22:30 Roland B. Wassenberg Basic XL 1.03.car
pdf
OSS BASIC XL-Reference Manual-... 3,811.9 kB 1 22-Apr-2014 01:37 Roland B. Wassenberg OSS BASIC XL-Reference Manual-1st Edition 1983
pdf
OSS-The Basic XL Toolkit-Inclu... 27,191.3 kB 1 22-Apr-2014 01:44 Roland B. Wassenberg OSS-The Basic XL Toolkit-Including the BASIC XL Runtime Package-Reference Manual
car
OSSBasicXL102.car 16.4 kB 1 14-Feb-2015 23:47 Roland B. Wassenberg OSSBasicXL102 CAR
rom
OSSBasicXL102.rom 16.4 kB 1 14-Feb-2015 23:47 Roland B. Wassenberg OSSBasicXL102 ROM
car
OSSBasicXL103.car 16.4 kB 1 14-Feb-2015 23:47 Roland B. Wassenberg OSSBasicXL103 CAR
rom
OSSBasicXL103.rom 16.4 kB 1 02-Jan-2011 21:52 Carsten Strotmann
pdf
Optimized_Systems_Software_Sof... 351.2 kB 1 19-Oct-2017 22:54 Roland B. Wassenberg Optimized_Systems_Software_Software_License_Agreement.pdf
jpg
Thank you bob1200xl.jpg 17.8 kB 2 06-Feb-2015 05:12 Roland B. Wassenberg Thank you bob1200xl
jpg
Thank_you_bob1200xl.jpg 15.9 kB 1 14-Feb-2015 23:54 Roland B. Wassenberg Thank_you_bob1200xl
jpg
bob.jpg 3.3 kB 1 06-Feb-2015 05:09 Roland B. Wassenberg bob
« This page (revision-31) was last changed on 01-Apr-2020 01:13 by Roland B. Wassenberg