It's unfortunate that Commodore shipped BASIC 2.0 on the 64. They already had shipped PETs with the much superior BASIC 4.0 years earlier. It was likely a cost saving measure: they had a more favorable licensing deal with MS on BASIC 2.0 and it fit on fewer ROM chips. Too late the C128 came with BASIC 7.0 which was actually quite good (for an 8-bit BASIC anyway).
Jack Tramiel was the OG of cutthroat business practices. He bought Basic for a flat fee from Gates in 1977, that included rights to modify and ship on any hardware platform he wanted.
>Doing business with Gates was decent, Tramiel said. "He came to see me, tried to sell me Basic, and he told me that I don't have to give him any money, all I had to give him was $3 per unit. I told him I was already married," Tramiel said.
>Tramiel instead told Gates he'd pay a flat fee of $25,000, rejecting the idea of paying $3 for each Commodore 64 sold. "In about six weeks [Gates] came and took that $25,000. Since then he did not speak to me," Tramiel said.
> It's unfortunate that Commodore shipped BASIC 2.0 on the 64
There are many things that are unfortunate about the way the C64 was shipped. For Commodore, the entire point of the C64 was to slap it together and shove it out the door as quickly and cheaply as possible, to try and capitalize on the unexpected success of the VIC-20, which was itself slapped together when the VIC graphics chip didn't sell.
What's fascinating about the C64 is just how right that "slap it together and shove it out the door" strategy was.
Market price and timing were absolutely key to the C64's early success. All those bugs and missing features? The 3rd party developers would quickly take care of that.
The products that Commodore tried to make good, better than "shove it out the door" quality, like the Plus/4 and C128, were complete duds. Much better design, much better software, and irrelevant.
How was C128 not slapt together without any plan or adult supervision? You paid for 2 cpus and two graphic chips, one cpu only ran a reset routine?, and the second "graphic chip" had no graphic enhancements and required expensive monitor. Zero practical upgrades when running C64 software, no incentives to develop c128 native software. Price with floppy drive on par with Atari ST and 20% away from Amiga. As a bonus C128D was more expensive to manufacture than Amiga.
> It's unfortunate that Commodore shipped BASIC 2.0 on the 64.
It might also have contributed to the success of C64 by "encouraging" early use of machine language. BASIC is great, but to truly make C64 shine you do need assembly language.
Notably, it was also pretty trivial to expand BASIC capabilities. A lot of utilities did just that, like adding graphics commands and sprite extensions. Simons' BASIC is probably the most comprehensive example, and it also came as a cartridge.
Atari shipped a final Rev C basic both in the ROMs for the XE computers and on cartridges for people that requested it.
There were several derivations. The original authors of Atari Basic produced BASIC XL and BASIC XE on cartridge, each with additional language features. There's also the really cool Altirra BASIC (see https://virtualdub.org/downloads/Altirra%20BASIC%20Reference...) which ships with the Altirra emulator as a tokenized-code compatible, but faster and more featureful, implementation. A version of that was included in the ROM for the new 576NUC+ all-in-one Atari-compatible.