Paul Lawton. A personal look at the early days of Apple Computer

Original author: Paul Laughton
  • Transfer
Memories of Paul Lawton - the developer of the first operating system for the Apple II computer - Apple DOS 3.1. Pictured is Paul in his home office in 1980. Behind him is the Apple II, which was delivered to him personally by Steve Jobs to work on the operating system, which will be discussed later. Next to the monitor are two Disk II Disk drives with serial numbers 3 and 4.

In 1977, I then burst into flames with microcomputers that were formerly new. By that time, I had been working at IBM as a system programmer on large mainframes for eight years. The IBM operating system has grown to enormous size (many megabytes!). It became so large that no one could understand it thoroughly. The limited address space (64k) and the possibility of owning my own personal computer inspired me.
Once I went to the Byte Shop (the first personal computer store) and found there a brochure about the new Apple II personal computer and an order form. The Apple II was amazing. I wanted such a computer. It so happened that almost at the same time I came across a small ad in Shepardson Microsystems in the newspaper. They were looking for a programmer. Early in the morning I sent them my resume. A few days later I came for an interview. It turned out that Bob Shepardson had just signed a contract with Apple Computer to develop an interpreter for the Basic language. He suggested writing an interpreter to me.
Two weeks later, I left my solid and reliable position at IBM to start working in a company of three (now four) people. A few days later I had my own Apple II workstation. The computer brought me Steve Jobs. I found out that Basic will be included in the next generation of Apple computers, code-named Apple Annie. Woz (Steve Wozniak - approx. Transl.) Was enthusiastic about the new car. She had to have ROM cartridges with programs and many custom chips.
One of the problems that we had to solve was downloading files with object code 6502 from our development system in Apple II. The development system consisted of a COPS microprocessor with a 6502 compiler developed by Bob Shepardson. The compiler had a deck of punch cards at the input, and a paper tape at the output. How to read paper tape in Apple II?
Woz found a solution. He designed for Apple II a card that controls a paper tape reader. Once, when Woz and I set up this device, I noticed that Woz looks depressed. I asked him what was the matter. He said that he developed a floppy disk controller for Apple II. He was proud of it, but Apple's management set him a completely unrealistic schedule for developing both the hardware and the disk operating system. I said that I can take over the disk operating system (DOS). Woz was delighted, and after a short meeting with Bob Shepardson and Steve Jobs, we got to work.
When Woz showed me his disk controller and software driver projectsfor him, I was absolutely shocked. At that time, all disk controllers were healthy circuit boards with dozens of large and small microcircuits. Woz designed the controller, which consisted of only seven small integrated circuits. Even more striking was the fact that the Woz controller had significantly better characteristics (performance, data density, reliability, cost) than existing controllers.
When Woz started this project, he did not look at how others had done it before. He thought about how it was supposed to be done. And so he created something completely wonderful. This gave me an example of what was later called "thinking outside the box." Subsequently, when I led the teams of engineers, I often told the story of the creation of this controller, in order to encourage them to think outside the box. Unfortunately, most engineers will never reach the creative level of Steve Wozniak.
Bob Shepardson and Steve Jobs spent two weeks agreeing on all the details (cost, schedule, etc.), and then signed a contract. If you look at this contract, you will be amazed. The price Apple paid was very small compared to the value of the product it received. The deadlines for such a volume of work were extremely tight. Product specifications, delivery conditions, quality criteria, penalties, bonuses and other legal gibberish, which became familiar to me in subsequent years, were completely absent. Those were the good old days!
Since I stopped working with BASIC now, and since we had another job, Bob had to hire another programmer. I knew a great candidate - my life friend Kathleen O'Brien was a very good programmer, and we worked very well in tandem. A few weeks later, Kathleen became a No. 5 employee at Shepardson Microsystems.
While I was working on DOS, there were big changes at Apple. They moved from the small office behind the Good Earth restaurant in Cupertino to their new “World Wide Headquarters” on Bandley Drive. We loved to make fun of “universality”. Apple was a tiny startup that was just starting to deliver the first samples of its products to customers. Shepardson Microsystems has already done many projects for such small start-up companies, and all of them have sunk into oblivion. Why doesn't the same happen with Apple?
One fine day, Steve Jobs offered to buy Shepardson Microsystems to form the core of Apple's software development team. Bob refused. The fact is that Steve could only pay for Apple shares for Shepardson Microsystems. It is possible that Bob would have shown more interest if Steve had offered a significant stake, but Steve did not agree to cede more than 10% of Apple.
One of these big changes happened when Apple hired Jeff Raskin as the leader of a group of technical writers. Jeff had the task of writing user manuals for DOS and the new Basic. The task was extremely complicated by the fact that no specifications existed for any of these products. Jeff had an almost complete version of DOS, but with Basic things were worse - by then only the parser was ready. Jeff decided to write a manual that would serve as specifications at the same time. All of this would have been nice, but Jeff had a lot of his own ideas. As the guide was written, the specifications for both products went far beyond the initial agreements. As for DOS, I had to conclude additional contracts at the last minute, including additions made by Jeff. Fortunately, the ability to make changes to DOS was constrained by product delivery times.
But with Basic, these constraints were not there, and our little Basic grew, grew, and grew. It ceased to fit in 48k of RAM. We had to develop code segmentation and overlays. Jeff recognized the size of the resulting monster, calling it NOTZO BASIC (pun with not so basic - approx. Transl.). We called it NutSo Basic (apparently, the “crazy" Basic - approx. Transl.).
The final chapter of our collaboration with Apple came shortly after a joint meeting in October 1978. I scanned the minutes of the meeting led by Randy Wigginton. The meeting.gif file contains the introduction, and the meeting.txt file- full meeting minutes. As you can see, the first part of the meeting was devoted to fixing some errors in the DOS 3.0 we are passing. The second part of the meeting turned into a discussion of the bloated NOTZO Basic. I fixed bugs in DOS in place by submitting Apple to a markup listing . The BASIC issue resolved very soon after Apple closed the Apple Annie project and terminated the Basic contract. Shepardson and I were not particularly saddened. We were waiting for Atari and the contract for writing Basic for the new Atari 800 computer. But that's another story ...
It is often asked why the first release of Apple DOS was named Apple DOS 3.1. The fact is that with each recompilation of the code, I increased the version counter. The counter started with version Rev 0.1. When I got to (n) .9, I went to (n + 1) .0. The first listing I passed to Apple was Rev 2.8. Someone at Apple (I forgot exactly who) decided that they could not name the DOS 2.8 operating system, so they changed the name to DOS 3.0. It was with this version (2.8 renamed to 3.0) that Apple conducted beta testing, and when they started shipping this DOS, they increased the number by 3.1 to show that the code had changed from the beta version. When I last transferred the source code to Apple in October 1978, the version number reached Rev 6.3.

Also popular now: