Advent of Computing - Episode 28 - Applesoft BASIC, Microsoft and Apple's First Collaboration

Episode Date: April 19, 2020

It's easy to think of Apple and Microsoft as bitter rivals, but that's not always the case. The two companies have a very complicated relationship, and a very long history. This connection goes all th...e way back to the 1970s and a product called Applesoft BASIC. It would become stock software on nearly every Apple II computer ever sold, it kept Apple competitive in the early home computer market, and it may have saved Microsoft from bankruptcy. Like the show? Then why not head over and support me on Patreon. Perks include early access to future episodes, and stickers: https://www.patreon.com/adventofcomputing Important dates in this episode: 1997: Bill Gates saves Apple from Bankruptcy 1976: Apple I hits shelves, Integer BASIC soon follows 1977: Apple II Released 1978: AppleSoft BASIC Ships

Transcript
Discussion (0)
Starting point is 00:00:00 In 1997, Steve Jobs was on a call with Bill Gates. This had been the worst year on record for Apple. For the last 10 years or so, Jobs had been running a competing computer firm called Next, which was eventually bought out by Apple in 1997. Upon returning, he found that the company he co-founded was in absolute shambles. A series of botched projects, poor decisions, and an overall shift in thinking had brought Apple to the very brink of bankruptcy. They were losing market share to competitors every day, and if nothing was done, the company would simply fade away completely.
Starting point is 00:00:38 So, what did Jobs do to turn around this disaster? In his words, do to turn around this disaster. In his words, quote, Microsoft was the biggest software developer outside of Apple developing for the Mac, so it was just crazy what was happening at that time. And Apple was very weak, and so I called up Bill and we tried to patch things up, end quote. And Gates came through in a big way. Microsoft would agree to invest $150 million into Apple, saving the company. Thanks to the large infusion of cash and aggressive restructuring, Apple was able to come back from the brink and flourish into the company we're familiar with today. As strange as it sounds, Microsoft had stepped in to save their biggest competitor. Now, this story underlines a much larger theme.
Starting point is 00:01:26 Apple and Microsoft have a very complicated relationship, to say the least. They've been in constant competition and they've been constant comrades for decades. The two are very different companies, but the fact is that Apple and Microsoft, well, they grew up together. Not as family, but definitely as close neighbors. Both companies started at roughly the same time, the middle of the 1970s. Both were founded by two computer enthusiasts working out of makeshift offices. And, as strange as it may seem today, the two companies have a very long history of working together. And a big part of that relationship is a long history of each company
Starting point is 00:02:05 saving each other from near disaster. These two giants would start working together as early as 1976, before the rivalry, before either company measured sales in terms of millions of dollars. There was a product called Applesoft Basic. It was written by Microsoft, and it was licensed by Apple. And this one contract, well, it may have kept both companies from failing in their infancy. Welcome back to Advent of Computing. I'm your host, Sean Haas, and this is episode 28, AppleSoft Basic. Now, in 2020, Apple and Microsoft are two of the largest companies in the world, and they're often characterized as bitter competitors.
Starting point is 00:02:54 But that one-dimensional view of things, it misses a lot, especially in a story full of such larger-than-life characters as this one. The story of Microsoft is tied deeply to the story of Apple, at a lot more points than you would think. Part of that comes down to the fact that, despite being viewed as competitors, Apple and Microsoft aren't in direct competition all that often. You see, each operates in a slightly different market. Since day one, Apple has primarily been a hardware company. They do produce a lot of software, but by and large, their differentiating factor has always been their hardware, be that
Starting point is 00:03:31 the Macintosh or the iPhone. On the flip side, Microsoft's bread and butter is in software. It's even right there in the name. Their first big wins were all in licensing software to manufacturers, and as time went on, they broke into the consumer market. In more recent years, Microsoft has made inroads into the hardware scene, but those are minor compared to its core business model. When you look at it that way, the two companies are much closer to complements than competition. This becomes especially clear when we look at the early life of these companies. When Apple wasn't huge into the software game and Microsoft had no hardware to speak of, well, there was all the more reason for these two companies to work together. The first opportunity for this would come in 1978
Starting point is 00:04:14 with the release of AppleSoft Basic. This was a dialect of Basic written by Microsoft and then adapted for the new Apple computer. But it wasn't as simple as just a business deal. There was a lot that led up to this. So what exactly was AppleSoft Basic? How did Apple get into a situation where they needed outside help to stay competitive? And how did this contract save Microsoft from their impending financial doom? The timeline here can get a little strange, so bear with me for a minute. The story actually starts before Apple was founded, so bear with me for a minute. The story actually starts before Apple was founded, and it doesn't even start with Steve Jobs. Instead, let's start out with the other founder, Steve Wozniak.
Starting point is 00:04:54 There are a lot of things that can be said about Woz. He's a fantastic hardware designer, the brains behind Apple's early success. He's always been a huge computer nerd. behind Apple's early success. He's always been a huge computer nerd, and in the 1970s, he was in the exact right place and right time to enjoy being a computer nerd. He grew up in the heart of Silicon Valley right as it was developing into what it is today. He was active in the hacker scene in the area, and would eventually find his way into HP, where he worked as a calculator designer. He'd even end up doing some game development for Atari in the early half of the decade. But out of everything he did, Waz's passion was always
Starting point is 00:05:31 in computing. And so early on, he became an ardent member of the Homebrew Computing Club. Now, as the name suggests, this club primarily catered to those interested in building their own computers. Today, you can order all the parts you want to make a new PC online, and in most cases, you won't even need anything beyond a screwdriver to complete the task. But in the 1970s, well, building a computer was a much more involved task. Members of the Homebrew Computer Club, like Wozniak, were building computers from utter scratch. This only really attracted diehard
Starting point is 00:06:05 enthusiasts. Most members were already entrenched in the new computer industry. The club ended up becoming a breeding ground for new ideas and innovation in Silicon Valley. From all accounts, it sounds like the perfect place for someone interested in computers in this era, and Woz was really lucky to be right in the middle of it all. As early as 1970, Woz was working on his first computer. At the time, that entailed designing everything from the ground up. You'd have to source all the parts down to chips and resistors, lay out and hand etch a circuit board, and then solder everything together. Eventually, you'd even get to program the thing. This whole process was time-consuming, and it was difficult, and it really made for a pretty steep barrier to entry into home computing.
Starting point is 00:06:50 For Wozniak, this experience seemed sort of mixed. He loved this type of work and definitely had a knack for it. Home computing held a lot of promise. He also saw firsthand just how hard it was to work with these hand-built machines. He also saw firsthand just how hard it was to work with these hand-built machines. And as Wozniak was toiling away on his own designs, things would start to change. One of the defining characteristics of this era was the rapid pace of development. That's something that's true of most parts of the history of the computer.
Starting point is 00:07:24 In the latter half of the 70s, home computing would finally start to pick up considerable steam. In 75, the Altair 8800 was released, considered by most, at least, to be the earliest home computer. One of the big selling points was that you could buy an Altair fully assembled and ready to go. Sure, you couldn't really do much with it out of the box, but it was a huge leap forward. Instead of muddling around with chips and wires, you could go out and buy a whole computer and just plop it on your desk. It was lowering the barrier to entry for this home computing future considerably. And that was just the start. The other big feature, the killer app of the Altair, was a little something called Microsoft Basic. It was a program written by Bill Gates,
Starting point is 00:08:05 Paul Allen, and their associated comrades. The software turned your fancy new computer into a much, much more useful tool. Out of the box, there wasn't all that much you could do with an Altair, actually. You could only enter in data via toggle switches on the front of the machine, and you had to read out results as a pattern of blinking lights. But BASIC, plus a RAM expansion, serial interface card, and a terminal, well, that allowed you to change the computer into something much more interactive. Instead of painfully entering in data or changing around wires, you could type out a BASIC program.
Starting point is 00:08:42 While still a long ways off from a user-friendly system, it showed a glimmer of what was going to be possible. The members of the Homebrew Computer Club absolutely loved this development. It was the cutting edge in home computing, and the club quickly recognized the potential of this type of technology. And amongst that club and other tech circles, Gates started to become somewhat of a celebrity. And it wouldn't take long for Woz to notice.
Starting point is 00:09:09 Now, as cool as Microsoft BASIC was, there was one glaring issue. On release, it only worked with the Altair 8800. Most of the homebrew computers made by the club were already pretty close to the Altair. They used the same processor. So for them, it would be relatively easy at least to get BASIC up and running on their own machines. But Woz was in a different boat. Microsoft BASIC was written for the Intel 8080 processor, while Wozniak's computer used an MOS6502 processor. These two CPUs were totally incompatible,
Starting point is 00:09:44 so there was no chance of getting Microsoft's code turning on Waz's system. So he decided that he'd just have to write his own version of BASIC that would work with the 6502. Now, there were actually a whole lot of reasons that went into Waz choosing this route. Programming in machine code or assembly language was getting pretty tedious since he didn't really have programming tools for his home-built computer. So he undoubtedly wanted to move away from that for some tasks. Partly it was necessity, there simply wasn't a
Starting point is 00:10:16 basic interpreter or, like I was saying, anything comparable for the 6502 yet. As was admitted in later years, there's also a vanity aspect to it. But I had in the back of my head that I could be a star, that I could get a little fame in the hobby world, like Bill Gates, if I created the first BASIC for the 6502. So, in a very real way, Bill Gates was influencing Apple before Apple even existed. Anyway, Waz would start in on his BASIC interpreter pretty quick. But here's the thing. He had never actually used BASIC that much.
Starting point is 00:10:53 In high school, he had got a chance to program in it on a shared terminal for maybe a week. And sure, he had seen demos of the language at the Homebrew Computer Club meetups. To make up for that, Waz would grab an HP BASIC manual from his work and a book of example programs called 101 Games in BASIC. These would serve as his references while programming, almost like a bible to reconstruct the language. Now, this is in stark contrast to Microsoft's resources. MS BASIC was written by Gates, Paul Allen, and Monty Davidoff, three programmers that all had experience with Basic to begin with.
Starting point is 00:11:30 Gates' team was working in Harvard computer labs, and they would end up getting kicked out of there and moved on to work in dorms, and then eventually offices. Along the way, they had access to mainframes, and they had access to a lot of expertise. Woz, on the other hand, he was working out of a garage. But Woz was undaunted. He would hammer out his very own version of BASIC at a feverish pace.
Starting point is 00:11:53 But he was only a one-man team with severely limited resources. And he was dead set on coming out with the first 6502-compatible BASIC interpreter. So, some choices had to be made to save time. One of those was to only support integer math. He wouldn't worry about anything beyond the decimal point. Now, that may seem like a small consideration, but the implications end up getting pretty big later on. By neglecting floating-point math, Waz would be able to save time, but his version of BASIC would have severely limited applications.
Starting point is 00:12:28 You can't calculate interest with this software, but as far as Waz cared, that wasn't very important. He was more interested in games, and you really don't need fancy floating-point math for that. Initially, he'd call this Game BASIC. Wazniak would have a working prototype done pretty quickly within a few months. Once complete, he showed it around to his fellow Homebrew Computer Club members and to one of his close friends, Steve Jobs. It was impressive, an implementation of BASIC on a new chip, and it
Starting point is 00:12:57 had support for simple games and simple graphics. But this particular project would end up getting shelved for a little while. Software was only half of Woz's interests in those days. The other side of the coin was, of course, hardware design. Once Game Basic was basically complete, he turned his attention to improving his hand-built computer. Woz would take what he learned building various systems, add in what he liked about the Altair, and end up with a pretty competent computer. The new and improved machine was in line with the currents of the time. systems, add in what he liked about the Altair, and end up with a pretty competent computer. The new and improved machine was in line with the currents of the time. One of the issues with the Altair and similar computers came down to usability.
Starting point is 00:13:40 While capable, these early personal systems were hard to use and ended up needing a lot of support and peripherals in order to really do much. Waz's new machine corrected much of that. To get full use of an Altair 8800, you would need a terminal, a serial interface card, and on top of that, just the base computer itself. By contrast, Waz's computer was simplified down to a single circuit board. A keyboard could be plugged directly into it, and it was able to use a standard TV set as a display. Driving the show was, of course, the MOS6502, his chip of choice, backed up by 8 kilobytes of RAM. In that respect, this new machine was close to the Altair, at least in terms of raw power and spec. But the software side of things was considerably different. But the software side of things was considerably different. Waz wrote out a bootstrap program, called a monitor, that ran automatically when
Starting point is 00:14:30 the computer was turned on. This was incredibly simple. It allowed a user to manually enter binary programs into RAM via the keyboard. But it was a big step up from the competition. Remember that the Altair booted up into, well, nothing really. Even to connect to a terminal, a user had to slowly enter a bootstrap program using its bank of switches. Compared to that, Woz was creating a user-friendly machine. Starting in early 76, he would show off his work at the computer club, even passing out circuit designs and instructions to build your own. But things would only grow from there. On April 1st of 1976, Steve Wozniak and Steve Jobs would officially found Apple Computers, and their first product would be Woz's own machine, initially simply
Starting point is 00:15:17 called the Apple Computer, but it's better known today as the Apple One. After some design tweaks and initial investment, the two Steves started selling the computer in kit form, and eventually a limited release of pre-assembled boards. The killer app for the Apple I was, just as with the Altair, BASIC. Shortly after release, Apple started to sell copies of Game Basic recorded onto tape cassettes alongside a cassette expansion board for their computer. The little computer would sell well enough for Apple to get off the ground as a serious business.
Starting point is 00:15:50 And by the end of the year, Waz and Jobs were already planning a sequel to their first success. In June of 1977, the Apple II came to market. In the time since their first computer, Apple had turned into a much more serious company. In the time since their first computer, Apple had turned into a much more serious company. This was reflected in their hardware. Where the Apple I came as a bare-circuit board, the follow-up, the Apple II, came inside a custom housing, complete with an integrated keyboard. Everything about the new computer showed off the vision for a truly personal and accessible system that the two Steves were dreaming of.
Starting point is 00:16:24 Setup of a new system was easy. A user just had to plug their new Apple II into a power outlet and a TV and then just turn the thing on. And that accessible experience continued into the software. The machine booted directly into a modified version of Waz's Game Basic, now more officially called Integer Basic. The big changes for Apple II's version of Basic were for support for color graphics and improved sound functionality, but outside of that,
Starting point is 00:16:52 it remained pretty similar to what Apple I users would have experienced. Hardware-wise, the Apple II was similar to the company's first computer. It used the same 6502 processor and a similar amount of RAM. But don't let the similarities fool you. In the words of Wozniak, quote, some people consider the Apple II to be a second design built from the Apple I, but I want you to know that that's not so. Not at all. End quote. The Apple II was a totally new computer built using experience gained from the Apple I, not a redesign. This can be seen all over the new motherboard, from the radically different way the machine deals with displaying graphics to the Apple II's massively improved expansion options. It wasn't just a
Starting point is 00:17:37 vastly improved computer, it was a totally new machine that was largely superior to the Apple I. But there was more to it than just the computer. While Wozniak was toiling away at the hardware and software that would make the Apple II tick, Jobs was ironing out the rest of the new machine. Woz's specialty was the computing side of things, but Jobs was better at knowing how to turn these designs into products. For the other Steve, it wasn't enough that the computer worked and was relatively user-friendly. In his approximation, the look, feel, and design of the entire machine needed to feel user-friendly. They were building a new kind of computer, one
Starting point is 00:18:16 that a layperson would be able to actually use, so it needed to look the part. And you can see this thinking on the exterior of the Apple II plainly. It was designed to look less like a contemporary computer and more like an appliance, something that wouldn't look out of place in a home in the 1970s. Instead of a metal and exposed wire assembly, this new Apple computer was cast out of beige plastic and had rounded edges. It didn't look like a complicated piece of machinery, It looked closer to inviting, almost. Diverging from the contemporary was a smart move, and would go a long way towards making the new computer a real personal computer. On release day, the Apple II was very well received.
Starting point is 00:18:56 A 1977 review in Byte Magazine put it this way, The Apple II is a well-executed example of the way a personal appliance computer should be made circa 1977. It is suited for the relative beginner who knows BASIC but doesn't know the hardware design, as well as for the advanced hacker who feels no qualms about using the system's documentation to create custom peripherals for the system. custom peripherals for the system. For the user who wants color graphics, the Apple II is the only practical choice available in the appliance computer class. End quote. The dream of a personal computer, or an appliance computer as some were calling it back then, was coming true. And a big part of that was the cooperation between Jobs and Wozniak. This was one of the first computers that a user could have
Starting point is 00:19:45 up and running within minutes of purchase. BASIC made it easy to use, and its overall design made it at home outside of a lab or garage. The writers at Byte weren't the only ones who liked the Apple 2. Initial sales were really strong. Going off some early estimates, as many as 64,000 Apple IIs may have sold in the first two years it was on the market. And as with any product, work continued at Apple after the computer's release. A big part of that was improving the Apple II's storage options. Initially, the computer came with a cassette tape interface for storage. This was a common option for systems at the time. It allowed a user to plug in a standard tape recorder and use a normal audio cassette to read and write data. It worked, it was cheap, and it leveraged technology that users were already comfortable with.
Starting point is 00:20:35 However, this wasn't always the best solution. Tape drive storage like this is very slow. Since the computer has to sequentially access data on the tape one byte at a time, it can take forever to get to the end if that's where your data is living. Depending on what type of tape recorder you're using, the drive could also be unreliable. And overall, storing data on tape isn't very flexible. So one of the first big upgrades to the Apple II was a floppy drive add-on. Before 1977 was over, Wozniak was already hard at work
Starting point is 00:21:06 on this expansion, called simply the Disk II. A floppy disk drive was a big step up from tape drives for a few major reasons. It could hold more data, you could more easily access discrete files on it, and it was just a whole lot faster and in general more reliable than a tape. And it's also just a newer technology. The disk drive Woz settled on using, the SugarArt SA400, was a 5.25-inch floppy drive. In fact, it was one of the first ones on the market. Released just a handful of years prior in 1976, it was the best and newest storage device one could hope to have on a personal computer.
Starting point is 00:21:44 So, over the next few months, Wozniak and other assorted Apple employees set about creating an interface to connect up the new floppy disk drive to the Apple II. Once again, we have an example of how Apple is really good at hardware design. Even in this early period, the company is really good at identifying what consumers want, leading the trends, and putting out just good products. The Disk 2 would be completed and released in the latter half of 1978, the final device coming in the form of an expansion card for the Apple II that could connect up to two disk drives to the computer. It was simple, it was well designed, and it would go on to sell really well. But in the interim, while Woz was busy finishing the new disk drive, a problem was starting to make itself apparent.
Starting point is 00:22:30 A key choice made years earlier was about to backfire in a big way. So Integer Basic came stock on every Apple II. Really, it was the only option for end users. And while it was a pretty good environment for the time and pretty user-friendly, it had one big problem. As the name suggests, it could only work with integers. This was fine for a good number of users. You don't need floating point math for simple games or easy math. But there were a lot more people that wanted to do more with the computer. With Integer Basic, you can't do financial calculations. It can't handle interest. It can't even handle whole dollars and cents.
Starting point is 00:23:11 There were third-party programs that could be used for those applications. Spreadsheet software like VisiCalc comes to mind. But for some users, that wasn't a good fit. It was overkill or it was inaccessible to them, or maybe the users just wanted to write their own software in BASIC. Now, this may have been forgivable if Apple's competitors also had issues with floating point math, but the fact of the matter was that Apple was alone in this. The other two big home computers at the time, Commodore's PET and the TRS-80, both booted into a basic environment and they both supported floating point math out of the box. So not only was the competition very
Starting point is 00:23:52 similar in terms of features, but as far as stock software went, they had an edge over Apple. To remain competitive, Apple would have to do something about Integer Basic. But here's where it gets even worse. In these early days, Apple was running on a shoestring budget. At one point, Jobs would sell his car, and Wozniak would sell a very nice calculator just to keep the company going. This relative lack of funds, at least compared to other manufacturers, came into play in some very strange ways. When programming and updating Integer Basic, Wozniak was working with assembly language, about as close as you can get to talking directly to
Starting point is 00:24:30 the computer. But despite being such a low-level language, assembly language still needs to be translated to machine code that can actually be read by a processor. That's done using a program called an assembler. Nowadays, programming tools like this are often free, or at least they're easy to get access to. But in the 1970s, that wasn't really the case. You had to buy a license to the assembler from the same company you bought the processor from. But Apple couldn't afford that initially. In fact, it's doubtful they could afford a computer that could even run the assembler. But Wozniak wouldn't let something like this stop him.
Starting point is 00:25:08 To quote, A friend taught me that you just sort of look at each instruction. You write your instruction on the right side of the page, you write the address over on the left side, and then you look up the hex data for each instruction. You could assemble it yourself. So, I would just sit there and assemble it myself. The Integer Basic, which we shipped with the Apple IIs, was never assembled. Ever.
Starting point is 00:25:30 There was one handwritten copy, all handwritten, all hand-assembled. So we were in an early era that we could not afford tools. End quote. So, using a pen, paper, and a reference manual, Wozniak slowly assembled Integer Basic by hand. Once converted from notes into machine code, it was loaded onto chips and installed into each Apple II. It's a cool solution, and it definitely adds to Woz's street cred. But as inventive as the solution was, in the end, it would only exacerbate issues. Key among them was that all the source code for Apple's BASIC was spread across
Starting point is 00:26:06 a series of handwritten notes. Any updates to the software would be slow and extremely delicate work. In other words, it wasn't very feasible to add floating point support, especially with Waz busy finishing the Disk 2 project. Apple would need help from the outside if they wanted this to get done anytime soon. While Apple was developing their next computer, another young company out in New Mexico was struggling to find their next customer. Microsoft had been founded in 1975, and their first product had been a huge success. MS Basic, the must-have software for the Altair 8800,
Starting point is 00:26:45 had pushed the fledgling software company into the spotlight. But Microsoft couldn't thrive off the success of a single product. With one wind under its belt, they had to expand. Pretty soon after Altair Basic shipped, Bill Gates and Paul Allen decided their next step should be to stick with what they knew and write up a version of Basic. They already had a working version for the 8080, so they went for the next popular chip, the 6502. The thinking was that if they had this new 6502 BASIC, then clients would eventually come on their own. But plans rarely work out that well. The software was finished by the summer of 1977, but finding a new client would be no small task. Microsoft's business model in those days worked out something like this. A manufacturer would license their BASIC interpreter.
Starting point is 00:27:32 That manufacturer would then get a copy of Microsoft's source code that they could edit and customize as needed. Usually, this arrangement worked out such that Microsoft got a royalty for each machine sold with BASIC. In theory, it was a lucrative business model. With the Altair 8800, Gates and Allen made some pretty good returns. But taking the next step into the market was no small task. Before the end of the year, Microsoft had a few smaller clients for 6502 BASIC. According to some sources, Apple would be one of the first companies that Microsoft tried to pitch their new Basic to. By the time the 6502 Basic was complete, the Apple II was either on market or very close to it. So, the computer seemed to be a good target for Microsoft.
Starting point is 00:28:17 Supposedly, Jobs himself turned down the offer, saying something to the effect of that they already had a Basic interpreter, and if they needed to update it, then they would just, quote, do it themselves over the weekend, end quote. I say supposedly here because, while an interesting story, I haven't been able to find much corroborating evidence that this exchange took place. But however it happened, we know that Apple was at least aware of Microsoft's BASIC. As far as verified purchases, Ohio Scientific would license a copy of 6502 BASIC for their home computer, and MOS Technology would also negotiate a license for their KIM-1 evaluation board. Neither of these contracts were huge, but they brought in a slow trickle of money. The final early customer for 6502 BASIC was Commodore,
Starting point is 00:29:04 and this contract would end up pushing Microsoft into a very precarious position. So in 1977, the Commodore PET would be released. It's the same year that Apple II was unveiled. These two computers plus the TRS-80 would be the three most successful computers in the late 70s. For our purposes today, the TRS-80 isn't really in play. Now, if we just look at Commodore and Apple, well, the differences couldn't be more stark. Commodore was already extremely well established, having opened for business all the way back in the 50s. Over the decades, they had transitioned from typewriters to calculators, and finally were just entering the computer market.
Starting point is 00:29:45 The PET was their first computer, but Commodore's relative newness in the field wasn't a very big handicap for them. Commodore had a whole lot of money to play with, decades of institutional experience, and all the connections that come with it. Commodore even outright owned MOS Technology, the company that produced the processor used by both the PET and the Apple II, among a lot of other systems. Compared to Apple, they weren't just on a whole other level. Commodore was playing a different game entirely. Despite that, there are some big similarities between the Apple II and the Commodore PET. Both used the MOS6502 processor, and both came stock with BASIC, but outside of that, the two computers diverge significantly.
Starting point is 00:30:33 One of those big differences is that the Commodore PET used Microsoft BASIC from the beginning, which meant that, among other things, it supported floating-point math. With a big company like Commodore licensing from Microsoft, Gates must have been pretty happy, right? Well, not so much. There were two big issues with this licensing agreement, at least on Microsoft's side. The biggest one was that Commodore wasn't licensing on a royalty basis. Instead, Gates had negotiated a pretty bad deal. At the time, Microsoft wasn't that experienced, and entering the negotiation table with Commodore ended up being dangerous for them. When all was said and done, Commodore agreed to a $25,000 perpetual license, meaning Microsoft would only get $25,000 from that agreement. Between the royalty payments from Altair Basic, a few smaller contracts, and this one-time Commodore deal, Microsoft wasn't bringing in enough money.
Starting point is 00:31:31 Unless they could get a better deal, then there was a very real chance that Gates and Allen would be out of a job. The other problem came down to branding. At the time, Microsoft's standard MO was to allow a licensee to do basically whatever they wanted to BASIC. That usually came down to branding. At the time, Microsoft's standard MO was to allow a licensee to do basically whatever they wanted to BASIC. That usually came down to some simple modifications for the final hardware it would be on, and adding some custom commands. This also meant that the products using Microsoft BASIC didn't necessarily have the word Microsoft anywhere on them. A PET computer simply booted up with the message Commodore BASIC printed across the top of the screen. So in addition to getting a poor license deal with Commodore, Microsoft would
Starting point is 00:32:10 get no brand recognition out of the deal. They would remain obscure and underpaid. While Microsoft was trying to deal with their financial problems, Apple was trying to replace Integer BASIC. While looking through options, Apple realized they had a pretty clear and available choice. Microsoft had already tried to sell them licensing for Basic. So, before 1977 was over, Apple struck a deal with Microsoft. The new arrangement was an 8-year license for a flat $31,000. It may not have been the preferred royalty contract Microsoft was after, but it was enough to keep the company going.
Starting point is 00:32:52 And over the next few years, software deals with Apple would continue to bring in a steady stream of cash. This involvement with Apple came at the exact right time to have maximum impact. Without this, it's unlikely that Microsoft would be the company we know today. Once at Apple, the project would become AppleSoft Basic, a combination of both companies' names. While Microsoft's problems were solved, or at least abated in the short term, Apple still had a lot of work before they could get a new version of Basic pushed out. With their licensing agreement, Apple now had a copy of 6502 Basic's source code.
Starting point is 00:33:26 To work on an Apple II, it would need some adjustments. Things like changes to account for the machine's design and some new commands would have to be added in. But here's the thing. Apple still didn't own an assembler. But thanks to the stream of steady sales from the Apple II, there was a little bit of money to work with. The programming team that worked on AppleSoft Basic ended up using a time-sharing service called CallComputer. Essentially, Apple was able to rent part of a mainframe. For a while, this worked out alright. The rented mainframe had an assembler, and so work grinded along. It looked like AppleSoft was going to be ready for an early 1978 release. The biggest changes Apple made were adding in color graphics commands,
Starting point is 00:34:06 doing a considerable amount of bug fixes, and some tweaks to ensure that AppleSoft would be able to run old Integer Basic code natively. As a final quick aside, the launch window for Apple's new Basic would get a little treacherous due to some unforeseen circumstances. Partway through development,
Starting point is 00:34:24 Call Computer had a bit of a mess up and lost a whole lot of customer data, including Apple's modified basic source code. Normally, this wouldn't be an issue, since anyone running a mainframe should be keeping regular backups, and Call Computer did have monthly backup tapes. However, on attempting to restore the data, they found out that all the tapes were totally unusable. It turned out that the tape drive they'd been using to make backups, well, it was broken. So effectively, they'd been running for months without backing up any data. Apple lost almost all of their work on the project because of this issue. But not all was hopeless. There was a single months-old printout of AppleSoft Basic. It wasn't an ideal solution, but it would have to do. Not wanting
Starting point is 00:35:13 to trust their project to call computer after their major failure, it was decided to keep things in the office. Luckily, one of Apple's employees had brought in his personal computer to work with, one of Apple's employees had brought in his personal computer to work with, an IMSAI. What makes this interesting for our purposes is that the computer had a working 6502 assembler. However, the details are a little murky, so we don't know where he got that program from. Anyway, the team working on AppleSoft was able to jerry-rig a solution by reading in the original source code from Microsoft and then applying the changes from these outdated printouts. With a lot of extra work, they were able to make the January 1978 deadline, and AppleSoft Basic would hit markets before the month
Starting point is 00:35:56 was out. At first, the new, improved version of Basic was sold on cassette tape so it could be loaded into an Apple II. This worked in general. It was a way to quickly get a fix out to complaining customers. But it came with all the issues of tape-based storage. It was slow to load and could be unreliable depending on your tape deck. To worsen matters, the software was actually pretty buggy at first. Remember, it had been adapted for the Apple II on a pretty short timeline, and the whole process wasn't exactly smooth. But despite all the problems, AppleSoft Basic was a pretty big hit amongst Apple users.
Starting point is 00:36:32 It gave them all the improved features they wanted, primarily being floating-point math. AppleSoft Basic was fast becoming a successful product in its own right. The next big step Apple took was making AppleSoft the default BASIC interpreter for the Apple II. This was solidified in June of 1979 with the release of the Apple II Plus. This new machine was largely identical to the original, save for the inclusion of AppleSoft BASIC in ROM. Now, users were booted directly into the new environment, ready to get working. And after a bit of a journey, Apple's flagship system was now up to speed with the competition. The entire Apple II
Starting point is 00:37:13 series would be a long-lived one, only being discontinued in 1993. That's some real longevity, and over those 16 years, the Apple II would sell incredibly well. And every model of the computer after 1979 came stock with AppleSoft Basic. This early and sustained success set up Apple for the company that it would become. Without the Apple II, we wouldn't have gotten the Macintosh. And a big part of the Apple II's success came down to the Microsoft software under the hood. Alright, that does it for the show today. I hope that shed some light on the start of Apple and Microsoft's complex relationship. Before Apple even started, their founders were aware of Microsoft, and the two companies would start working together very early on. Wozniak's work to beat Gates and his team to a 6502 version of BASIC led to some
Starting point is 00:38:11 shortcuts, namely the exclusion of floating point math. And that would lead to the early collaboration once Apple gained some traction. It's strange to think about, but a tiny choice made years earlier would have a butterfly effect-like outcome. When looking at the connection between Apple and Microsoft, I think Bill Gates says it best in a 1997 interview. Quote, Steve and I first met nearly 30 years ago, and have been colleagues, competitors, and friends over the course of more than half our lives. End quote. These two companies grew up side by side, and without their mutual competition and occasional collaboration,
Starting point is 00:38:53 it's unlikely that either would have survived as long as they have. Like any friendship that lasts this long, it's complicated. It can get messy. But that makes it all the more interesting. Thanks for listening to Adren of Computing. I'll be back in two weeks' time with another story from computing's past. And hey, if you like the show, there's now a few ways that you can support it. If you know someone else who would like the show, then why not take a minute to share it with them? You can also rate and review on Apple Podcasts.
Starting point is 00:39:19 And if you want to be a super fan, then you can support the show through Advent of Computing merch or signing up as a patron on Patreon. Patrons get early access to episodes, polls for the direction of the show, and other assorted perks. You can find links to everything on my website, adventofcomputing.com. If you have any comments or suggestions for a future episode, then shoot me a tweet. I'm at Advent of Comp on Twitter. And as always, have a great rest of your day.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.