Atari Microsoft BASIC

The second version, released the next year, had most of the code on a ROM cartridge with additional functions on an optional floppy.

Atari's programmers struggled to fit Microsoft's BASIC into a single cartridge while also adding features to take advantage of the platform.

In the summer of 1978, Atari decided to outsource the porting effort so that BASIC would be ready in time for the 1979 launch of the system, and this led them to Shepardson Microsystems Inc. (SMI).

SMI quickly decided the job was impossible, and instead proposed creating an entirely new version of BASIC.

A second release, Atari Microsoft BASIC II, moved most of the code onto an expanded 16 KB cartridge and placed an additional 11 KB of more rarely used code on disk, meaning that many programs intended for cross-platform use could now be run from the cartridge alone.

Depending on the use-case, Atari BASIC's complete tokenization of the line could result in less memory being used to store the program.

This difference also meant that many syntax errors would only be noticed at runtime in the MS code, unlike the Atari version where the entire line was checked at edit time.

In theory, edit-time compilation should have made Atari BASIC much faster than MS, which re-tokenizes the line every time it is encountered, but this advantage was washed away by the other performance issues noted above.

The biggest problems were: The cartridge version eliminated the first two requirements, but a disk drive was needed for all of its features.