Microsoft’s latest open source/cross-platform move brings them back to their “pointy logo” era

by Joey deVilla on November 13, 2014

gates jobs time covers

Microsoft’s recent announcement that they’re open-sourcing .NET, making Visual Studio free to small developers, and supporting development for Linux, Android, and iOS is a surprising development from one point of view, but if you were noodling with computers 30 years ago, you may think of it as a return to their oldest ways.

microsoft 80s logo 2

Those of you who grew up in the 1980s and took up programming then will remember the Microsoft logo above. You might not remember the logo they used from 1980 through 1981, making it the shortest-lived logo in their history:

microsoft 80s logo 1
Back then, a computer that you could buy from a retail store and could fit on a desktop was called a “home computer”, and more often than not, it had some version of BASIC(back when it was an acronym for Beginners All-purpose Symbolic Instruction Code), particularly Microsoft BASIC. It was either already in the machine’s ROM, or you’d load it from a plug-in ROM cartridge, cassette tape, or one of those newfangled floppy diskettes. During the “pointy logo era”, BASIC interpreters were Microsoft’s bread and butter, and if you used a version of BASIC that had the LEFT$(), MID$(), and RIGHT$() functions, you were most likely using a version of BASIC with a Microsoft license.

Some of my earliest programming experiences were on a friend’s TRS-80 Model I, which boasted a whopping 16K of RAM and Level II BASIC

trs-80 model i
…or its bigger, beefier, disk drive-equipped successor, the Model III, which another friend had:

trs-80 model iii
I would’ve loved to have a portable Model 100 back then:
trs-80 model 100
…because it would’ve let me program anywhere. By this time, a Microsoft copyright notice appeared when you started up BASIC:

trs-80 model 100 microsoft basic
Computers were still largely monochrome-displaying creatures back then, so when Radio Shack released a computer that could display color, it was a big enough differentiator for them to name it the Color Computer, even though it could display a maximum of 4 colors onscreen at any given time:

trs-80 color computer
It also had a version of Microsoft BASIC:

coco basic

If you had an Atari 400 or 800 computer and wanted to program, you’d load up Microsoft BASIC by diskette, or if you didn’t have a disk drive, you’d use a ROM cartridge…

atari microsoft basic

…pull out the manual…

atari microsoft basic book

…and start coding:

atari microsoft basic screen

Terrible as the TI 99/4 was, it did have a decent enough implementation of Microsoft BASIC for me to get started with programming simple adventure games:

ti-99

At my high school in the early ’80s, we had Commodore PET computers…

commodore pet 4032

…and a good number of us at home had Vic-20s and Commodore 64s

commodore 64

Commodore machines ran some variation of Microsoft BASIC. Bill Gates offered to license it to Commodore for $3 per unit, but founder Jack Tramiel said “I’m already married” in response. He then managed to negotiate a “pay once, no royalties” deal where they got a perpetual license for $25,000. I have a theory that experiences like this and the copying of his Altair BASIC tape led Gates to become a ruthless businessman in the late ’80s and ’90s.

Here’s a video of the Computer History Museum’s 25th anniversary party for Commodore, where Jack Tramiel tells the story of how he negotiated the deal with Gates:

We think of Apple and Microsoft as rivals, but it wasn’t always that way. Once upon a time, in the days of the
Apple ][, they were hardware/software buddies…

apple 2

You could program an Apple ][ using the original BASIC that Woz implemented, but if you wanted real programming power, you used Applesoft BASIC, a variant of Microsoft BASIC. The first version was something you loaded via cassette tape:

Applesoft II came out afterwards, and it was 16K in size, which was a lot at the time. Most home computers were based on either the Z-80 processor (the TRS-80s were) or the 6502 (as Apple’s, Atari’s, and Commodore’s were), both of which had a 16-bit address bus. That meant that they could address a maximum of 64K memory locations.

A maxed-out Apple ][‘s memory was arranged this way:

  • The lower 48K were for RAM. If you had a disk drive, some of this RAM was devoted to the disk operating system.
  • The upper 16K were for ROM, which included the original BASIC.

It turned out that through some bank-switching magic, you could boost an Apple ][ to 64K of RAM. You could buy a 16K RAM card that would plug into one of the Apple ][‘s many expansion slots, where it would replace the upper 16K taken up by ROM. You often loaded Applesoft BASIC, Apple Pascal, or some other programming language into it, which is why this 16K card was often called a “language card”. A number of third-party vendors sold such language cards, including Microsoft:

microsoft ramcard

Microsoft even sold a card that put a Z-80-based computer into your Apple ][, which let it run CP/M:

microsoft softcard

Later, when the original Macintosh came out…

mac 128k

…Microsoft came out with a BASIC interpreter for it…

microsoft basic for mac

…and Bill Gates made an appearance at an Apple event where he said that he expected that the Mac would account for half of Microsoft’s revenues in 1984:

When IBM approached Microsoft for software for their new Personal Computer, they got more than just DOS (which Microsoft put together in a hurry by buying 86-DOS from Seattle Computer Products), they also got BASIC:

ibm basic

80s computer lab

It was a time when so many different computing platforms were available, each with its own operating system and features. It might have been more difficult to program them, but I found that I could leap from computer to computer with ease, because Microsoft BASIC connected them all. I knew that I could take the code from books like these…

basic computer games

…and make it work on an Apple, Atari, Commodore, IBM PC, Texas Instruments, and TRS-80 with only a few tweaks for each machine.

I’d like to see if Microsoft can repeat this with their new open-approach, open-sourced .NET.

Leave a Comment

{ 1 trackback }

Previous post:

Next post: