Tag Archives: microsoft

The IBM PC, Part 3

In November of 1979, Microsoft’s frequent partner Seattle Computer Products released a standalone Intel 8086 motherboard for hardcore hobbyists and computer manufacturers looking to experiment with this new and very powerful CPU. The 8086 was closely related to the 8088 that IBM chose for the PC; the latter was a cost-reduced version of the former, an 8-bit/16-bit hybrid chip rather than a pure 16-bit like the 8086. IBM opted for the less powerful 8088 partly to control costs, but also to allow the use of certain hardware that required the 8-bit external data bus found on the 8088. But perhaps the biggest consideration stemmed, as happens so often, from the marketing department rather than engineering. The 8086 was such a powerful chip that an IBM PC so equipped might convince some customers to choose it in lieu of IBM’s own larger systems; IBM wanted to take business from other PC manufacturers, not from their own other divisions.

The important thing to understand for our purposes, though, is that both chips shared the instruction set, and thus could run the same software. Everyone wanted to run CP/M on the SCP boards, but CP/M existed only for the Intel 8080 and Zilog Z80. Thus, SCP had the same problem that Sams and IBM would face months later. Digital Research repeatedly promised an 8086/8088 version of CP/M, but failed to deliver. So, in April of 1980 Tim Paterson of SCP decided to write his own 8086/8088 operating system. He called it QDOS — the “Quick and Dirty Operating System.”

The ethicality or lack thereof of what Paterson did has been debated for years. Gary Kildall stridently claimed many times that he ripped off the actual CP/M source code, but this is a very problematic assertion. There is no evidence that he even had access to the source, which Digital, like most companies then and now, guarded carefully. On the other hand, Paterson freely admits that he pulled out his CP/M reference manual and duplicated each of its API calls one by one. On the other other hand, and while it may not have reflected much originality or creative thinking, what he did was pretty clearly legal even by the standards of today. Courts have ruled again and again that APIs cannot be copyrighted, only specific implementations thereof, and that reverse engineering is therefore allowed. (Well, there is patent law, but that’s a swamp we’re going to stay well away from…) Food for thought for open-source advocates and Microsoft haters: if QDOS was ethically wrong, then Linux — largely a reimplementation of the Unix standards — must be equally wrong. Paterson claims that he had a good reason to copy CP/M so closely: he wanted to make it as easy as possible for programmers to move existing CP/M software over to QDOS. He also claims that beneath the surface, where he could get away with it, he substantially improved upon his model, notably in disk- and file-handling.

In the meantime Gates was wondering how he was going to come up with an operating system for IBM in the time frame they wanted. Then one day Paterson called Paul Allen of Microsoft to tell him about QDOS, just in case Microsoft was interested in writing some software for it or using it in-house. Gates, just the man to recognize an out-of-the-blue savior when he saw one, called Sams, asking, “Do you want to get [it], or do you want me to?” Sams’s answer to that question would cost IBM billions and billions over the decades to come. “By all means, you get it,” he said. Recognizing that PC software was far from his realm of expertise, Sams had already pretty much thrown all of his systems-software problems into Microsoft’s lap, and he saw no reason to change course now. “We wanted this to be their problem,” he later said. Microsoft’s “problem” would in a few years become a big, big problem for IBM.

On September 30, Gates, Ballmer, and Bob O’Rear flew down to Florida to make their final proposal to IBM. For Sams, who wanted to essentially foist the software problem on someone else, their plan sounded ideal. Microsoft would take responsibility for providing an operating system, four programming languages (BASIC, COBOL, FORTRAN, Pascal), and a range of other software to be available at launch (including our old friend Microsoft Adventure). One point Gates carefully stipulated: Microsoft would license all of this to IBM, not outright sell it to them, and would expect to be paid on a per-copy royalty basis. IBM, feeling there was opportunity enough for everyone to do well out of this and that it couldn’t hurt to have Microsoft’s own fate tied so closely to that of the IBM PC, agreed. This huge company, legendarily risk-averse and conservative, elected to place the fate of one of their biggest projects ever in the hands of a 24-year-old. If Microsoft failed to come through, the IBM PC itself would be stillborn. On November 6, Microsoft and IBM officially signed the contract, which immediately paid Microsoft $700,000 to begin porting all of this disparate software to the new architecture. Ironically, by that time both Lowe and Sams, who had played such prominent roles in everything that came before, had been transferred to other divisions. Project Chess may have been an Independent Business Unit, but it obviously wasn’t entirely immune to the fickle ways of the IBM bureaucracy. Don Estridge took over leadership of the project.

While the software deal was being finalized, Project Chess had not been idle. That same November Microsoft received its first two prototype machines. IBM, desperately concerned about secrecy, demanded they keep them in a windowless vault secured with locks they themselves provided. Microsoft and IBM’s Project Chess, just about as physically far apart as two organizations can be and still be in the United States, nevertheless developed a working relationship that seems similar to those of today, when geography matters far less. They communicated constantly through telephone and (especially) a special email system they set up, shuttled packages back and forth via an overnight service, and visited one another frequently — and sometimes without warning. (This became a particular concern for Microsoft; IBM had a habit of dropping in unannounced to see if all of their byzantine security procedures were being practiced.) The IBM team of course had plenty to keep them busy, but Microsoft were truly up against it. Thanks to all of the negotiations, they were according to Gates already “three months behind schedule” the day the contract was finalized. Everyone worked months of seven-day weeks. Most didn’t even take Christmas off.

The first goal had to be to get the machine running in its two modes of operation: BASIC and the disk-based operating system. The former Microsoft could handle on their own, but the latter left them dependent on Seattle Computer Products. Even as Microsoft had been finalizing their deal with IBM and starting to work, Paterson and SCP had been continuing their own work, refining QDOS from a “quick and dirty” hack into an operating system they could sell. Along the way they renamed it, for obvious reasons, to 86-DOS. As 1980 drew to a close, they at last had a version they felt was suitable for the outside world.

Until this point, Bill Gates has basically behaved himself, acting like a hard-driving but straightforward businessman. Now, however, we start to see some of that legendary Gates shiftiness come out. He wanted for Microsoft a royalty-based agreement that would let them share in the hoped-for success of the IBM PC. But he wasn’t ready to share those fruits with SCP, who still had no idea that the IBM project was even happening or that their modest little one-man-authored operating system was key to the plans of one of the biggest companies in the world. Gates wanted to keep them in the dark, but he needed 86-DOS, like, yesterday. He therefore needed to pry 86-DOS out of their hands without letting them know why he wanted it.

Paul Allen negotiated an agreement with SCP owner Rod Brock in January, implying that Microsoft had a whole stable of customers eager to run 86-DOS. The deal would essentially allow Microsoft to act as middleman — or, if you like, retailer — in these transactions. For each customer to whom they sold a license for 86-DOS, they would pay SCP $10,000, or $15,000 if the license also included the source code. They would also pay SCP an initial fee of $10,000 to begin the agreement. For SCP, a much smaller, hardware-focused company without the reach or marketing skills of Microsoft, the agreement sounded great — especially because business lately had not been particularly good. Microsoft seemed convinced that they could sell quite a few licenses, bringing in effortless money for SCP for this operating system Paterson had begun almost on a lark. One clause buried in the contract might have raised a red flag: “Nothing in this licensing agreement shall require Microsoft to identify its customer to Seattle Computer Products.” Brock later said, “That seemed strange to us, but we agreed to go along.” In reality, of course, Microsoft had no stable of eager licensees. They had just one, the biggest fish of all: IBM. Microsoft sold just one license under the agreement, acquiring IBM’s operating system for them complete with source for just $25,000.

In February, Bob O’Rear of Microsoft got 86-DOS to boot for the first time on one of the prototype machines:

“It was like the middle of the night. It was one of the most joyous moments of my life, to finally after all the preparation and work, and back and forth, to have that operating system boot up and tell you that it’s ready to accept a command. That was an exciting moment.”

IBM was soon requesting a number of changes to 86-DOS. Microsoft thus found themselves in the awkward position of having to go back to Paterson, who of course knew 86-DOS far better than anyone else and whom they had signed to a consulting contract, to request changes without telling him where the requests were really coming from. In the end they convinced him to leave SCP and come to work for them full-time. “It’s IBM!” they told him as soon as he walked through the door on his first day as an employee. Ironically for Paterson, who has spent decades battling critics who claim he ripped off CP/M, many of the changes IBM requested actually made 86-DOS look even more like CP/M. For instance, the command prompt showing the current drive — i.e., “A>” — was the result of one of IBM’s requests, and a carbon copy of CP/M’s. Paterson says it made him “want to throw up,” but of course on this project what IBM requested IBM generally got.

IBM planned to announce the IBM PC in August of 1981 — as per the original plan, which gave Project Chess exactly one year to complete its work. They weren’t interested in postponing, so everyone in Boca Raton and especially at Microsoft just worked harder as smaller deadlines were missed but the biggest one just stayed fixed. They also began confidentially approaching other developers, of software such as VisiCalc and the word-processing package Easy Writer, to add to Microsoft’s lineup of applications and games. They even arranged to make another of our old friends, the UCSD Pascal P-System, available for those who wanted to run it in lieu of 86-DOS or the Microsoft BASIC environment. Incredibly given its expanding scope, the project remained a complete secret for quite a long time. But finally in June InfoWorld printed a detailed article that described the entire plan down almost to the last detail, even mentioning that the operating system would not be CP/M but would be “CP/M-like.” They missed only the planned announcement date, saying it would happen in July rather than August. The Datamaster, the earlier “PC-like” project that had provided technology and personnel to Project Chess, did make its own belated debut that month. Many assumed that the project InfoWorld had scooped was the Datamaster, and thus that the magazine had gotten it all quite wrong. Those better connected, however, knew better by this time.

Then on July 27, 1981, barely two weeks before the planned announcement, Bill Gates made what has often been called the deal of the century.

Rod Brock at SCP was a disappointed man. The legion of 86-DOS licensees he had anticipated following the Microsoft deal hadn’t materialized, and now he had lost Paterson, the one software guy at his hardware-focused company, to Microsoft. It was pretty obvious by now who the one 86-DOS sub-licensee must be, but SCP was strapped for cash and lacked the ability to support an operating system. He started to shop 86-DOS around a bit, looking for someone willing to take over support in return for an exclusive license to it. Gates pounced immediately, offering SCP a much-needed $50,000 for the deal — with one crucial difference. He stipulated that Microsoft would not be buying an exclusive license, but would be buying the software itself, outright. They would then grant the exclusive license to SCP, essentially turning the deal on its head. Brock was uncertain, but he really did need the money, and he didn’t quite know what to do with 86-DOS himself anyway…

He signed the agreement, making Microsoft the sole owner of 86-DOS — or, as it was immediately renamed, MS-DOS. It’s yet another example of the terrible financial decision-making that was so endemic to the early microcomputer industry, as hackers who knew everything about bits and bytes but nothing about business suddenly found themselves running companies. These were the kinds of mistakes that Gates never made, but knew how to exploit and even engender in others. When dealing with innocents like Brock, it was as easy as leading the proverbial lambs to slaughter. MS-DOS, purchased for $50,000, was earning Microsoft more than $200 million per year by 1991. Even more importantly, it was the key building block in the Microsoft monopoly that would absolutely dominate business computing by the mid-1980s, and dominate virtually all computing throughout the 1990s. This decision, more than any other, is the one that made Microsoft the giant it still is today.

But Microsoft (and IBM) suddenly had one more legal hurdle to clear. By this time, with the IBM PC becoming more and more of an open secret in the industry, Gary Kildall had seen a copy of 86-DOS/MS-DOS in action. He was convinced that Paterson had stolen his operating system, that he had somehow gotten a copy of the source code, made only those changes needed to get it running on the Intel 8086/8088, filed off the digital serial numbers, and sold it to IBM. Now he began to threaten legal action, and (perhaps of more concern to IBM) to cause a huge stink in the press that could cast a cloud over the upcoming announcement. He and Gates met for lunch to try to hash things out, but to no avail. “It was one of those meetings where everybody was nice to each other, then everyone shouted at each other, then everyone was nice to each other, then everyone shouted at each other,” recalled John Katsaros, a Digital Research colleague who was also there. And so IBM stepped in to make a deal. They would also offer CP/M-86, the 8088-compatible version of the operating system which Digital were still messing about with, on the IBM PC just as soon Kildall could give them a completed version. Kildall, at least somewhat placated, accepted. The IBM PC, which IBM had from the start envisioned as a true “anything machine,” would now have no fewer than four available operating paradigms: the ROM-hosted BASIC, MS-DOS, CP/M, or UCSD Pascal.


Tags: , ,

The IBM PC, Part 2

Having been so favorably impressed with Bill Gates and Microsoft, Jack Sams returned to them almost as soon as IBM officially gave Project Chess the green light — on August 21, 1980. After having Gates sign yet another NDA, he was ready to move beyond the theoretical and talk turkey. He explained that IBM was planning to make its own PC, something that surprised no one in the room. In keeping with the philosophy of building a machine that could be configured to do anything, he planned to offer the user a choice of using a ROM-hosted BASIC environment similar to that of the Apple II, PET, and TRS-80, or of booting into the disk-oriented operating system CP/M, hugely popular among business users. Microsoft, the premier provider of microcomputer BASICs, was the obvious place to go for the first of these. They had also recently branched out into other, compiled languages like FORTRAN, and Sams wouldn’t mind having him some of those either. Robert X. Cringely and others make much of IBM’s turning to an outside vendor like Microsoft for its software (more of the “slapdash” trope), but this was really not at all unusual. Apple, Commodore, and Radio Shack amongst many others had in fact all done the same, sourcing their BASICs from Microsoft.

Sams was, however, very confused about something else. That spring Microsoft had introduced its first hardware product, the Z80 SoftCard. It was a Z80 CPU on a card which plugged into one of the Apple II’s expansion slots. Once the card was installed, the user could elect whether to give control of her machine to its standard 6502 CPU or to the Z80; the card contained circuitry to allow the Z80 to use the Apple II’s standard memory and other peripherals. Developed in partnership with Seattle Computer Products, a small hardware company with which Microsoft had quite close relations at this time, it really was a marvelous little hack. Because CP/M ran only on Z80 processors, Apple II users had hitherto been cut off from the universe of CP/M business software. Now they had the best of both worlds: all of the fun and educational software that took advantage of the Apple II’s graphics capabilities (not to mention VisiCalc), and all of the text-oriented, businesslike CP/M applications. The SoftCard became a huge success, second only to VisiCalc itself in making the Apple II the only 6502-based machine to be significantly adopted by American business; an Apple II with SoftCard soon became the single most popular CP/M hardware configuration. Based on the SoftCard, which shipped with a copy of CP/M, Sams assumed that Microsoft owned the operating system. Now Gates explained that this was not the case, that Microsoft had only licensed it from its real owner, a company called Digital Research.

Gates and Gary Kildall, the head of Digital and original programmer of CP/M, had known each other for years, and had developed a mutual respect and sort of partnership. When a new machine came out, Microsoft did the languages and Digital did the operating system. Steve Wood, an early Microsoft programmer:

“When we were talking to another OEM, a hardware customer who wanted to run BASIC or any of our products, we got to a point by 1977 or ’78 where we were always trying to get them to go to Digital first and get CP/M running because it made our job a whole lot easier. When we were doing custom things like the General Electric version or NCR version, it got to be a real headache. It made our lives a lot easier if someone would just go license CP/M and get that up on their machines and then our stuff would pretty much run as is. And Gary would do likewise. If someone went to him to license CP/M and they were looking for languages, he would refer people to Microsoft. It was a very synergistic kind of thing.”

Gates and Kildall had even discussed merging their companies at one point. As it was, there was a sort of unwritten understanding that Microsoft would stay out of operating systems and Digital would stay out of languages. In late 1979, however, Digital began distributing a non-Microsoft BASIC with some of their CP/M packages, a development Gates and others at Microsoft viewed as a betrayal of that trust.

Still, Gates dutifully called Kildall right there in Sams’s presence to set up a meeting for Sams and his team for the very next day. He told him they were very important customers, “so treat them right.” For his part, Sams was not thrilled. He was so very impressed with Gates and Microsoft, and “we really only wanted to deal with one person” for all of the systems software. Yet he didn’t see a choice. CP/M, you’ll remember, ran on the Z80 CPU. Sams therefore needed much more than to just purchase a license from Digital; he needed them to agree to port the operating system to the newer 8088 architecture, and to do it on his schedule. The next morning he and his team were on an airplane bound for Pacific Grove, California, home of Digital Research.

This is where the story gets famously unclear. Both Sams and Kildall were asked many times in later years about the events of August 22, 1980. Their stories are so factually disparate that it seems impossible to attribute their differences to mere shading or interpretation. Someone (or perhaps both), it seems, was simply not telling the truth.

Sams claims that he and his team arrived at the Victorian house that served as Digital’s headquarters right on time, only to be told that Kildall had decided to take advantage of a beautiful day by blowing off the meeting and going flying in his private plane. Sams and company were left in the hands of Digital’s business manager, Kildall’s wife Dorothy. Shocked but stalwart, Sams pulled out his NDA as a prelude to getting down to business. Now, on the face of it, this was an intimidating and unfair agreement, saying essentially that the other party could be sued if they revealed any of IBM’s secrets, but that IBM had complete immunity from legal action for the reverse. Gates had had, in his own words, “faith,” and signed right away. Dorothy, however, said no, that she would have to consult with her lawyer first. While Sams fidgeted impatiently in the lobby, she and the lawyer, Gerry Davis, dithered until three o’clock in the afternoon, when she finally signed. With most of the day gone and with the technical mastermind who would need to actually do the port not even present, negotiations didn’t really get anywhere. Sams left Digital, frustrated and annoyed, without even the beginning of an agreement, and immediately started casting about for an alternative to dealing with these people.

For his part, Kildall (who died in 1994 under very strange circumstances) admitted that he was out flying when Sams arrived for his meeting. He claimed, however, that, far from joyriding (joyflying?), he was flying himself home from a business trip. He said it was perfectly okay for the IBM team to have been left in the hands of Dorothy at the beginning of the meeting, as she was much more involved in all business negotiations than he. He nevertheless said that he was back by the afternoon, and that it was in fact him who convinced Dorothy and Davis to just sign the NDA and get on with it. After that negotiations proceeded quickly, and IBM and Digital had a “handshake agreement” by the time the day was over. Further, Kildall claimed that he and Dorothy flew out that night (via commercial airliner this time) to begin a vacation in Florida, and that the IBM group happened to be on the same flight. There they all talked about their plans some more.

Sams says that he did not even fly to Florida immediately after the meeting, but rather back to Seattle to continue to talk with Microsoft, admitting only that perhaps one or two members of the group might have gone directly back to Boca Raton. For years he also adamantly maintained that he never met Kildall at all that day, “unless he was there pretending to be someone else.” Only in recent years has he softened that stance somewhat, saying it’s “possible” Kildall was there, although he “doesn’t remember it.” He also recently said, “We spun it, Kildall spun it, and Microsoft spun it.” This might be read as the last refuge of a man who hasn’t always been entirely truthful, but who knows really. There are witnesses that partially corroborate each version of events. A Digital executive and friend of Kildall named Tom Rolander says he was on the business trip with Kildall, and that they did indeed meet with Sams that afternoon. Meanwhile Davis, Digital’s lawyer, says that he is certain no handshake deal was reached that day, and other IBM staffers do recall Sams saying immediately after the expedition that Kildall never showed up for the meeting.

So, what to make of all this? We might start by looking at Kildall’s personality in contrast to Gates’s. Popular accounts of these events often boil Gates and Kildall down to caricatures, the maniacally driven East Coast businessman versus the laid-back California hippie. They’re actually not awful as caricatures go. Both were wonderful hackers, but they could otherwise have hardly been more different. Gates was determined to prove himself and to win, over and over. When a bigger fish like IBM came calling, he was perfectly willing to humble himself, even to the point of obsequiousness, as long as he needed them as a steppingstone to the next level. (Once he didn’t need them anymore, of course, all bets were off.) It may not have been grounded in the most admirable of traits, but Gates’s ambition made Microsoft beloved by many of their partners. Not only had Gates assembled a very talented team, but they reflected their boss’s personality in being willing to work like dogs and walk through walls to get the job done and outdo their competitors. Kildall, meanwhile, often didn’t even seem certain he wanted to be running a business in the first place:

In one of the darkest of those moments in the late ’70s, Gary passed the parking lot by on his way in to work, and continued around the block, realizing that he just couldn’t bring himself to go in the door. He circled the block three times before he could force himself to confront another day at DRI.

One can’t imagine a remotely similar moment of doubt plaguing Gates.

The joy of hacking was what was important to Kildall. Users needed just be patient. While he would be happy to work with IBM, they needed to get in line like everyone else. Certainly he wasn’t interested in groveling to them. Digital’s vice president in 1980, Gordon Eubanks, says, “Gary cared a lot more about partying than running a business.” In addition to partying, Kildall cared about software. Gates cared about the software business. Eubanks:

The differencees between Bill and Gary were just striking. Bill saw an opportunity, he would drive, he’d commit, he’d probably over commit, no problem. Gary was like, “I don’t care, I’m Digital Research. You deal with me, and you deal with me on my terms.”

And then of course there’s the personality of Sams, or rather of his corporate parent. IBM was the big dog in computers, and they expected to be treated like it. If they condescended to visit the likes of Microsoft or Digital, they should be treated like the VIPs they were, shown that the company in question really wanted their business. When Digital failed to demonstrate their respect and thankfulness to the same degree as did Microsoft — and whatever else happened that day, it does seem pretty clear that this at least was the case; Eubanks describes Dorothy as constantly “bitchy” to everyone, including potential customers — Sams was angry. “Don’t these people know who I am?” he must have wondered. Further, it’s pretty clear that Sams was unhappy about having to deal with Digital in lieu of Gates before he ever boarded that flight for California. As our mothers always told us, going into something with a bad attitude usually yields a bad result.

What is certain is that, handshake or no handshake and regardless of what impression Kildall might have been under, Sams was not pleased with his experience at Digital. He asked Gates, who had by this time signed an official consulting deal, whether he might find him an alternative to CP/M. Gates said he would see what he could do. In the meantime Sams claims he continued to try to work out something with Digital, but couldn’t get a commitment to develop an 8088 CP/M on the strict timetable he needed. Eubanks says that Kildall just didn’t find the project all that “interesting,” in spite of the obvious, pressing business need for it, and thus worked on it only halfheartedly.

And then Gates came back with QDOS.


Tags: , ,

The IBM PC, Part 1

What with the arrival of the category-defining Commodore VIC-20 and the dramatic growth of the British PC market, 1981 has provided us with no shortage of new machines and other technical developments to talk about. Yet I’ve saved the biggest event of all for last: the introduction of the IBM PC, the debut of an architecture that is still with us over 30 years later. As such a pivotal event in the history of computing, there’s been plenty written about it already, and no small amount of folklore of dubious veracity has also clustered around it. Still, it’s not something we can ignore here, for the introduction of the IBM PC in late 1981 marks the end of the first era of PCs as consumer products as surely as the arrival of the trinity of 1977 spelled the end of the Altair era of home-built systems. So, I’ll tell the tale here again. Along the way, I’ll try to knock down some pervasive myths.

One could claim that the IBM PC was not really IBM’s first PC at all. In September of 1975 the company introduced the IBM 5100, their first “portable” computer. (“Portable” meant that it weighed just 55 pounds and you could buy a special travel case to lug it around in.)

The 5100 was not technically a microcomputer; it used a processor IBM had developed in-house called the PALM which was spread over an entire circuit board rather than being housed in a single microchip. From the end user’s standpoint, however, that made little difference; certainly it would seem to qualify as a personal computer if not a microcomputer. It was a self-contained, Turing complete, programmable machine no larger than a suitcase, with a tape drive for loading and saving programs, a keyboard, and a 5-inch screen all built right in along with 16 K or more of RAM. What made the 5100 feel different from the first wave of PCs were its price and its promoted purpose. The former started at around $10,000 and could quickly climb to the $20,000 range. As for the latter: IBM pushed the machine as a serious tool for field engineers and the like in remote locations where they couldn’t access IBM’s big machines, not as anything for fun, education, hacking, or even office work. The last of these at least changed with two later iterations of the concept, the 5110 and 5120, which were advertised as systems suitable for the office, with accounting, database, and even word processing applications available. Still, the prices remained very high, and actually outfitting one for this sort of office work would entail connecting it to a free-standing disk array that was larger than the machine itself, making the system look and feel more like a minicomputer and less like a PC. It’s nevertheless telling that, although it was almost never referred to by this name, the IBM PC when it finally arrived had the official designation of (with apologies to Van Halen) the IBM 5150, a continuation of the 5100 line of portable computers rather than an entirely new thing — this even though it shared none of the architecture of its older siblings.

In February of 1978 IBM began working on its first microcomputer — and it still wasn’t the IBM PC. It was a machine called the System/23 Datamaster.

Designed once again for an office environment, the Datamaster was built around an Intel 8085 microprocessor. It was large and heavy (95 pounds), and still cost in the $10,000 range, which combined with its very business-oriented, buttoned-down personality continued to make it feel qualitatively different from machines like the Apple II. Yet it was technically a microcomputer. IBM was a huge company with a legendarily labyrinthine bureaucracy, meaning that projects could sometimes take an inordinately long time to complete. Despite the Datamaster project predating the PC project by two years, the former didn’t actually come out until July of 1981, just in time to have its thunder stolen by the announcement of the IBM PC the following month. Still, if the question of IBM’s first microcomputer ever comes up in a trivia game, there’s your answer.

The machine that would become known as the real IBM PC begins, of all places, at Atari. Apparently feeling their oats in the wake of the Atari VCS’s sudden Space Invaders-driven explosion in popularity and the release of their own first PCs, the Atari 400 and 800, they made a proposal to IBM’s chairman Frank Cary in July of 1980: if IBM wished to have a PC of their own, Atari would deign to build it for them. Far from being the hidebound mainframer that he’s often portrayed as, Cary was actually something of a champion of small systems — even if “small systems” in the context of IBM often meant something quite different from what it meant to the outside world. Cary turned the proposal over to IBM’s Director of Entry Systems, Bill Lowe, based out of Boca Raton, Florida. Lowe in turn took it to IBM’s management committee, who pronounced it “the dumbest thing we’ve ever heard of.” (Indeed, IBM and Atari make about the oddest couple imaginable.) But at the same time, everyone knew that Lowe was acting at the personal behest of the chairman, not something to be dismissed lightly if they cared at all about their careers. So they told Lowe to assemble a team to put together a detailed proposal for how IBM could build a PC themselves — and to please come back with it in just one month.

Lowe assembled a team of twelve or thirteen (sources vary) to draft the proposal. In defiance of all IBM tradition, he deliberately kept the team small, the management structure informal, hoping to capture some of the hacker magic that had spawned PCs in the first place. His day-to-day project manager, Don Estridge, said, “If you’re competing against people who started in a garage, you have to start in a garage.” One might have expected IBM, the Goliath of the computer industry, to bludgeon their way into the PC market. Indeed, and even as they congratulated themselves for having built this new market using daring, creativity, and flexibility stolid IBM could not hope to match, many PC players lived in a sort of unvoiced dread of exactly this development. IBM, however, effectively decided to be a good citizen, to look at what was already out there and talk to those who had built the PC market to find out what was needed, where a theoretical IBM PC might fit. In that spirit, Jack Sams, head of software development, recommended that they talk to Microsoft. Sams was unusually aware of the PC world for an IBMer; he had actually strongly pressed for IBM to buy the BASIC for the Datamaster from Microsoft, but had been overruled in favor of an in-house effort. “It just took longer and cost us more,” he later said. Sams called Bill Gates on July 21, 1980, asking if he (Sams) could drop by their Seattle office the next day for a friendly chat about PCs. “Don’t get too excited, and don’t think anything big is about to happen,” he said.

Gates and Steve Ballmer, his right-hand man and the only one in this company of hackers with a business education, nevertheless both realized that this could be very big indeed. When Sams arrived with two corporate types in tow to function largely as “witnesses,” Gates came out personally to meet them. (Sams initially assumed that Gates, who still had the face, physique, and voice of a twelve-year-old, was the office boy.) Sams immediately whipped out the non-disclosure agreement that was standard operating procedure for IBM. Gates: “IBM didn’t make it easy. You had to sign all these funny agreements that sort of said IBM could do whatever they wanted, whenever they wanted, and use your secrets however they felt. So it took a little bit of faith.” Nevertheless, he signed it immediately. Sams wanted to get a general sense of the PC market from Gates, a man who was as intimately familiar with it as anyone. In this respect, Gates was merely one of a number of prominent figures he spoke with. However, he also had an ulterior motive: to see just what kind of shop Gates was running, to try to get a sense of whether Microsoft might be a resource his team could use. He was very impressed.

After consulting with Gates and others, Lowe presented a proposal for the machine that IBM should build on August 8. Many popular histories, such as the old PBS Triumph of the Nerds, give the impression that the IBM PC was just sort of slapped together in a mad rush. Actually, a lot of thought went into the design. There were two very interesting aspects.

At that time, almost all PCs used one of two CPUs: the MOS 6502 or the Zilog Z80. Each was the product of a relatively small, upstart company, and each “borrowed” its basic instruction set and much of its design from another, more expensive CPU produced by a larger company — the Motorola 6800 and the Intel 8080 respectively. (To add to the ethical questions, both were largely designed by engineers who had also been involved with the creation of their “inspirations.”) Of more immediate import, both were 8-bit chips capable of addressing only 64 K of memory. This was already becoming a problem. The Apple II, for example, was limited, due to the need to also address 16 K of ROM, to 48 K of RAM at this time. We’ve already seen the hoops that forced Apple and the UCSD team to run through to get UCSD Pascal running on the machine. Even where these CPUs’ limitations weren’t yet a problem, it was clear they were going to be soon. The team therefore decided to go with a next-generation CPU that would make such constraints a thing of the past. IBM had a long history of working with Intel, and so it chose the Intel 8088, a hybrid 8-bit / 16-bit design that could be clocked at up to 5 MHz (far faster than the 6502 or Z80) and, best of all, could address a full 1 MB of memory. The IBM PC would have room to grow that its predecessors lacked.

The other interesting aspect was this much-vaunted idea of an “open architecture.” In Accidental Empires and even more so in Triumph of the Nerds Robert X. Cringely makes it out to be a choice born of necessity, just another symptom of the machine as a whole’s slapdash origins: “An IBM product in a year! Ridiculous! To save time, instead of building a computer from scratch, they would buy components off the shelf and assemble them — what in IBM speak was called ‘open architecture.'” Well, for starters “open architecture” is hardly “IBM speak”; it’s a term used to describe the IBM PC almost everywhere — and probably least of all within IBM. (In his meticulous, technically detailed Byte magazine article “The Creation of the IBM PC,” for example, team-member David J. Bradley doesn’t use it once.) But what do people mean when they talk about “open architecture?” Unfortunately for flip technology journalists, the “openness” or “closedness” of an architecture is not an either/or proposition, but rather, like so much else in life, a continuum. The Apple II, for example, was also a relatively open system in having all those slots Steve Wozniak had battled so hard for (just about the only battle the poor fellow ever won over Steve Jobs), slots which let people take the machine to places its creators had never anticipated and which bear a big part of the responsibility for its remarkable longevity. Like IBM, Apple also published detailed schematics for the Apple II to enable people to take the machine places they never anticipated. The CP/M machines that were very common in business were even more open, being based on a common, well-documented design specification, the S-100 bus, and having plenty of slots themselves. This let them share both hardware and software.

Rather than talking of an open architecture, we might do better to talk of a modular architecture. The IBM would be a sort of computer erector set, a set of interchangeable components that the purchaser could snap together in whatever combination suited her needs and her pocketbook. Right from launch she could choose between a color video card that could do some graphics and play games, or a monochrome card that could display 80 columns of text. She could choose anywhere from 16 K to 256 K of onboard memory; choose one or two floppy drives, or just a cassette drive; etc. Eventually, as third-party companies got into the game and IBM expanded its product line, she would be all but drowned in choices. Most of the individual components were indeed sourced from other companies, and this greatly sped development. Yet using proven, well-understood components has other advantages too, advantages from which would derive the IBM PC’s reputation for stolid reliability.

While sourcing so much equipment from outside vendors was a major departure for IBM, in other ways the IBM PC was a continuation of the company’s normal design philosophy. There was no single, one-size-fits-all IBM mainframe. When you called to say you were interested in buying one of these monsters, IBM sent a rep or two out to your business to discuss your needs, your finances, and your available space with you. Then together you designed the system that would best suit, deciding how much disk storage, how much memory, how many and what kind of tape drives, what printers and terminals and punched-card readers, etc. In this light, the IBM PC was just a continuation of business as usual in miniature. Most other PCs of course offered some of this flexibility. It is nevertheless significant that IBM decided to go all-in for modularity, expandability, or, if we must, openness. Like the CPU choice, it gave the machine room to grow, as hard drives, better video cards, eventually sound cards became available. It’s the key reason that the architecture designed all those years ago remains with us today — in much modified form, of course.

The committee gave Lowe the go-ahead to build the computer. IBM, recognizing itself that its bureaucracy was an impediment to anyone really, you know, getting anything done, had recently come up with a concept it called the Independent Business Unit. The idea was that an IBU would work as a semi-independent entity, freed from the normal bureaucracy, with IBM acting essentially as the venture capitalists. Fortune magazine called the IBU, “How to start your own company without leaving IBM.” Chairman Cary, in a quote that has often been garbled and misattributed, called the IBU IBM’s answer to the question, “How do you make an elephant [IBM] tap dance?” Lowe’s IBU would be code-named Project Chess, and the machine they would create would be code-named the Acorn. (Apparently no one was aware of the British computer company of the same name.) They were given essentially free rein, with one stipulation: the Acorn must be ready to go in just one year.


Tags: , ,

Microsoft Adventure

There’s a good chance that you’ve received a forwarded email at least once or twice during the past ten years or so with the photograph above and a snarky caption such as, “Would you have invested?” The picture shows eleven of the thirteen Microsoft employees as of December 7, 1978, just before the company decamped from its first home in Albuquerque, New Mexico (initially chosen because it was the home of Microsoft’s first customer, the now increasingly irrelevant MITS) for the big time in Seattle. The twelve-year-old at the bottom left is of course Bill Gates himself… and, believe it or not, he’s actually already 23 there.

Ah, what can I say about Bill? I suppose you don’t become a multi-billionaire without leaving some bruised egos in your wake, but old Bill has always had a special knack for pissing people off and generally coming off like the computer industry’s own version of Darth Vader. In the abstract, I’m not sure that he was really so much more evil than most of his peers. Even by the time this photo was taken, the digital utopianism of the People’s Computer Company and Creative Computing was beginning to take a beating from a whole lot of would-be titans of industry looking to get a piece of the new microcomputer action — people like Commodore head Jack Tramiel, who announced that “business is war” and then wondered why all of his business partners and employees were so surprised when he lied to them and betrayed them; or like Steve Jobs, who even before co-founding Apple swindled his best friend out of a $5000 bonus he had earned doing his job for him, disingenuously prattling on about hippie togetherness and Eastern philosophy all the while. Perhaps the closest to moral in this lot was the management of Tandy, who were so unimaginative and so out of touch with their competitors that they couldn’t really be bothered to actively try to wrong them.

The big difference with Gates was that he was so damned good at being evil. While everyone else wound up to one degree or another hoisted from their own petards for their misdeeds, Gates just prospered. He wasn’t so much immoral as amoral. Unlike Tramiel, who seemed to positively revel in his evil, or Jobs, who desperately wanted to be seen as the good guy whatever dirty tricks he was pulling behind the scenes, Gates seemed utterly indifferent to his image and utterly disinterested in the niceties of right and wrong. On a personal level, he seems to have inspired something between ambivalence and out-and-out dislike in everyone who wasn’t directly depending on him for their salary (or, perhaps, the latter group just couldn’t speak up about it). It wasn’t just that his personal hygiene left as much to be desired as his interpersonal skills. Nor was it just that he displayed all the arrogance of both a brilliant programmer and the Harvard scion of a prosperous family; that was to be expected, considering that he was both of these things. No, it was the sheer magnitude of Gates’s need to win and to dominate those around him that made him downright disturbing to be around for so many people. If Gates couldn’t win at something fairly, one never doubted that he would cheat. Hell, if he could win at something fairly but it was just easier to cheat, he’d probably choose the latter course there as well. But, here’s the thing: Gates always cheated smart. If ethics didn’t mean much to him, he was very aware of legalities, and always careful to make sure that even at his shadiest he stayed on the right side of that line. (Of course, he became increasingly less good at that in the 1990s, but that’s a story for another time…) Remember the blinkered MIT nerds that Joseph Weizenbaum railed against in Computers and Human Reason? Well, the young Gates fit that stereotype perfectly, with an added heaping measure of cold-blooded ruthlessness. His wasn’t a personality likely to win a lot of friends. As an investment opportunity, however…

The story of Microsoft Adventure provides a good early illustration of both the very real technical and marketing acumen of Gates’s company and its genius for ignoring ethical considerations while still staying on the right side of the law. It provides an early example of what was already becoming the company’s modus operandi, one guaranteed to piss off idealistic hackers as much as it would delight its financial backers. And, not incidentally, it also represents a very important moment in the continuing evolution of adventure games.

In 1979, fully two years before Gates’s genius stroke in partnering with IBM on the original IBM PC, Microsoft was already a very big fish in the still relatively small pond that was the microcomputer industry of the era, having built a strong business upon the solid foundation of that initial Altair BASIC. In fact, Microsoft was simply the company to go to for a microcomputer BASIC implementation; it provided not only the TRS-80 Level 2 BASIC, but also the BASICs in the Commodore PET and the just-released Apple II Plus. It had also already expanded into other high-level programming languages, producing the first implementations of FORTRAN and COBOL to appear on microcomputers. Microsoft Adventure was part of a new initiative for 1979, the Microsoft Consumer Products Division, which aimed to market games and less esoteric applications to everyday consumers. The division as a whole was arguably somewhat ahead of its time, and would not be a rousing success in the long term. (Microsoft gave up on it within a few years to focus almost exclusively on technical and business products, and, the long-lived oddity Flight Simulator aside, would not begin marketing games and applications directly to home users once again until the 1990s.) For now, though, Consumer Products was big at Microsoft. With adventure games becoming so big on the TRS-80, when an employee named Gordon Letwin said he could port the original Crowther and Woods Adventure, something of a semi-legendary holy grail to microcomputer adventurers, onto the little machine, the go-ahead wasn’t long in coming.

Gordon Letwin is the bearded, black-haired fellow at the far right of the second row in the picture above. Born in 1952 and thus three years older than Bill Gates himself, his character and background is not too far removed from that of other hackers we’ve already met on this blog. A withdrawn, almost disturbingly nonverbal personality, Letwin read non-fiction books by the dozen throughout his childhood and teen years. Upon entering Purdue University as a physics major (the same major Will Crowther had chosen a decade earlier), Letwin found his real calling in the university’s computer center. After university, he got a job with Heath Company, who were well known among electronics hobbyists of the time for their “Heathkits,” do-it-yourself kits that let hobbyists build test equipment, amplifiers, radios, even televisions. In 1977 the line was expanded to include a computer, the H8, for which Letwin designed a simple operating system called H-DOS. He also designed a BASIC of his own, but a young and aggressive Gates, much to Letwin’s chagrin, dropped in on Heath while making the rounds of microcomputer manufacturers to try to convince them to buy Microsoft’s version. Letwin did something interesting, something that few others would ever do: he stood up to Gates. In Gates’s own words:

“There are different ways to do this stuff. His had some advantages which he was pointing out to me. We ended up in this argument between two technical guys. There were about 15 people in the room and no one else could follow along. We’re talking all in terms of data structure, single representations, double scan, stuff like that… Like if you typed a bad line, his would immediately check the syntax, and mine wouldn’t. Which is one of the negative points of our design. Anyway, he was being very sarcastic about that, telling me how dumb that was.”

Deciding perhaps that the adage that no one ever got fired for buying Microsoft was true even in 1977, Heath’s management elected to replace Letwin’s in-house design with Microsoft’s BASIC. This left them with one very angry Letwin. Gates, who whatever his other failings knew talent when he saw it, poached him for Microsoft about nine months later, not too terribly long before the above photograph was taken.

Although Letwin and his wife lived very modestly even years after Microsoft had made them wealthy, he more so than most hackers always knew the value of a buck, and always wanted to get what was coming to him. A 1988 Seattle Times profile alleges that he was a major impetus behind the decision of Gates and Paul Allen to transform Microsoft from a partnership to a corporation in 1981, and to grant him and other early employees like him the shares that would make them very rich indeed by the end of the decade. I mention this here because it may explain something odd about Microsoft Adventure: it was published by Microsoft, but allegedly developed by an entity called Softwin Associates, a company that apparently consisted of only Letwin himself. It seems that Letwin developed Adventure as something of a moonlighting project, then licensed it back to his employer. Why do it that way? Well, doing so gave Letwin the ability to collect royalties on sales as an outside contractor, above and beyond his regular employee salary. That the very finances-focused Gates let him get away with such a scheme probably says a lot about his perceived value to the company.

As Microsoft claimed in the instruction manual, “With Microsoft Adventure, you have the complete version of the original Adventure. Nothing has been left out of the original DEC version.” That stands as quite a neat trick; remember that Scott Adams, himself an experienced programmer, had not even tried to do a direct port but had instead developed Adventureland as its own, much smaller game. How did Letwin manage it?

He first of all took advantage of Radio Shack’s expansion interface, which allowed the user both to expand memory beyond 16 K and to replace cassette-based storage with floppy disks. This was a bold choice in its way, dramatically limiting the potential buyers of Adventure; in its September, 1979, issue, SoftSide reported that “only a few” of its readers had yet bought Radio Shack’s $500 disk drive. Yet Adventure would have been impossible without it.

The benefits of expanded memory were obvious in allowing longer and more complex programs, but those of the floppy disk were both obvious and more subtle. On the obvious level, the floppy was superior to the cassette in every way, allowing users to store much more data on a single piece of media and to save and retrieve it many times faster and with many times the reliability. But another attribute of the floppy would be key to the implementation of major games like Adventure given the still tiny amount of memory 32 K actually is. Unlike the cassette, the floppy was a random-access storage device, meaning the TRS-80 could be programmed to load into memory chunks of data from all over the disk as a program ran. By comparison, reading from the cassette required that the user manually position the tape in the correct position using the player’s counter, then press play… and then, of course, wait, for up to 20 minutes just to load one of Scott Adams’s simple adventures. With a disk drive, then, Letwin could leave all of that text that was stored in an external file even in Crowther and Woods’s original on the disk, loading in only the bit and pieces that he needed as they were needed. He needed only pack the core code of the game itself into his 32 K — not that that was a trivial task in itself, requiring as it did that Letwin port the original FORTRAN code into Z80 assembly language while optimizing everywhere for speed and size. Letwin’s pioneering use of the disk drive as a sort of auxilliary memory would soon enough be everywhere, refined to something of an art by companies like Infocom. Countless classic games would have been simply impossible without it.

The arrival of disk drives also brought with them another, less welcome innovation: copy protection. Every computer has a standard format in which it arranges data on its disks. To simplify rather extremely, locations on the disk are broken down into track and sector numbers, with a master directory stored in some standard location that records all of the files stored on the disk and their location by track and sector; this allows the computer to locate and retrieve files as they are requested. Most early disk copying programs assumed that the disk being copied would be laid out in this standard format, and would simply attempt to copy each file they found in the master directory over to the new disk one by one. It was, however, relatively easy for a program like Adventure to replace the standard disk format with one of its own devising — one that it knew how to read, but which would completely flummox another program expecting a standard format. By later standards, Adventure‘s copy protection was relatively simple, just rearranging the numbering scheme used to identify the different sectors on the disk. It was also relatively kind in allowing at least those with two disk drives to make a single backup copy by entering a special command within the program itself. Later protection schemes would get much more sophisticated, and much less kind.

Microsoft Adventure also points toward the future in its packaging. It shipped in a real box with real, professionally produced artwork and a multi-page, glossy manual written by Dottie Hall. Contrast this with the packaging of the early Scott Adams games, constructed from a plastic sandwich bag, a business card, and a baby formula liner. In 1979, Microsoft was one of the few software companies with the resources to give its products a professional presentation. As the games industry grew more professional and profitable, however, packaging would become a huge part of the whole experience of adventuring, reaching glorious (some might say absurd) heights of lurid artwork, lengthy manuals, included novellas or even novels, elaborate maps (sometimes from cloth or parchment), and evocative physical props (“feelies”).

Microsoft Adventure also started another, related trend that became almost as prevalent: its artwork has almost nothing to do with the actual game it represents.

I certainly never imagined the jokey response to “KILL DRAGON” (“CONGRATULATIONS! YOU HAVE JUST VANQUISHED A DRAGON WITH YOUR BARE HANDS!”) playing out quite like that. Although, I guess with sufficient imagination…

Having dwelt on the original DEC versions at length, there’s not really that much to say about the actual playing experience of the version of Adventure that Letwin developed. It is exactly what Microsoft claimed it to be, a slavishly faithful port of the original, minus only such PDP-centric niceties as “cave hours.” I suspect that most of the in-game text is literally the same as that on the PDP original, being the original’s external data file simply copied over to a TRS-80 floppy. Interestingly, Letwin does make an effort to ease some of the original’s more nonsensical puzzles. In the original, for instance, one could earn the “last lousy point” only by dropping the Spelunker Today magazine at Witt’s End, a completely unmotivated action; in Letwin’s version, reading the magazine yields the vital clue that “ITS ADDRESSED TO WITTS END!” Even better, the richly described but previously useless “Breath-Taking View” now has a purpose of sorts, for Letwin adds a single line that helps out with another notorious puzzle: “WORDS OF FIRE, APPARENTLY HANGING IN AIR, SAY ‘PLOVER.'” What a guy!

Nudges like that aside, Letwin makes just one addition, the “Software Den.”





Messing with any of the computers results in:








Talk about your delusions of grandeur…

But now we come to the elephant in the room: the question of credit. At no place in the Microsoft Adventure program or its accompanying documentation do the names of Crowther and Woods appear. We are told only that “Adventure was originally written in FORTRAN for the DEC PDP-10 computer,” as if it were the result of a sort of software immaculate conception. Needless to say, Crowther and Woods were never contacted by Microsoft at all, and received no royalties whatsoever for a program that by all indications turned into quite a nice seller for the company; it was later ported to the Apple II, and was one of the programs IBM wanted available at day one for the launch of its new PC in 1981. Because Crowther and Woods, immersed in old-school hacker culture as they were, never even considered trying to assert ownership over their creation, Microsoft violated no laws in doing this. However, the ethics of cloning someone else’s game design and lifting all of their text literally verbatim, and then copy protecting it (the irony!) and selling it… well, I don’t think that calling it “ethically dubious” is going too far out on a limb. In his famous “Open Letter to Hobbyists” of 1976, Gates asserted the moral right of the creators of software to have control over their creations. How to reconcile that stance with Microsoft Adventure? Incidents of commercial co-option of free software like this one are what eventually led to the creation of licenses like the GPL, designed to make sure that free software stays free. If you’ve ever wondered why so many in the open-source communities are so obsessed with the vagaries of licenses, maybe stories like this one will give an idea.

Be that as it may, Gates now seems as dedicated to doing good in the world and giving away his money as he once was to crushing his business competition and amassing it, to which I give a big hooray. I’d say that saving a single child makes up for the dubious aspects of Microsoft Adventure many times over. Gordon Letwin, meanwhile, also stayed with Microsoft for many years, going on to head the ill-fated OS/2 project before retiring on all that stock in 1993. He now also devotes himself to charity, specifically to environmental causes. A second hooray there.

Ironically, Microsoft Adventure is such a perfect clone of the original that it is now the ideal choice of anyone who wants to experience said original in as authentic a form as possible without building a whole virtual PDP-10 of their own. I’ve made a TRS-80 disk image of it available here, which will stay up as long as Microsoft’s lawyers don’t come after me for pirating their stolen 32-year old software and talking bad about their “non-executive chairman,” but for an easier time of things you might want to hunt down the IBM PC version on an abandonware site. If you do go with the TRS-80, you’ll have to play it using the SDLTRS emulator rather than the MESS version, as, due to the on-disk copy protection mentioned earlier, the disk image has to be stored in the “DMK” format — a format that MESS unfortunately cannot read. Really sorry about that!

I’ll be looking at text adventures in 1980 — a very exciting year — soon. But next I want to make a little detour into some theory and then into another genre of story-oriented game.


Tags: , ,