The Xerox Star On A Desktop Near You

It is 1980-something and you see someone typing on a keyboard. The display is graphical, and they use a mouse to finish a document, send it over the network to another similar computer, where another user edits it a bit and prints it on a laser printer. Given the time-frame you might think the computer is a Mac, but you’d be wrong. The Xerox Star had all the features Apple “invented” about three years before the Macintosh arrived. If you never heard of the Star, that’s not surprising. At $16,500 each, there were only about 25,000 sold. Your chances of finding a working one now are slim, but thanks to emulation created by [Josh Dersch] you can try the Star out on your hardware today. If you want a preview, have a look at the 1982 video, below.

The machine had a surprisingly complex architecture. The main CPU was a microcoded computer with multiple registers that would run a sort of microcode program to execute different instruction sets depending on what was running. In addition, there was an intel 8085 that loaded the right microcode and serviced the keyboard, the mouse, the floppy, and the serial ports.

There were a few snags in the implementation. For one, the ALU produced flag outputs for flags even when they didn’t make sense. [Joel] decided to ignore flags at these moments because he didn’t expect any programs to rely on, say, the carry output of an AND operation. However, he did have to implement the OR case because some software expected the behavior.

The other issue lay with the CPU’s speed and datapath. There were some operations that are not fast enough to finish in one clock cycle. Some of them returned garbage and others were partially correct. [Joel] assumed that no sane program would depend on the incorrect parts, and he appears to be right about that.

We suggest you read [Josh’s] post before you jump right into the software because it is a great read about how all the pieces came together. However, when you are ready you can head over to GitHub. That’s just the barebones though, to do anything useful you’ll need a hard drive image from Bitsavers.

Despite marketing hype to the contrary, most of the modern desktop environment originated at Xerox PARC building on work done by Douglas Englebart. The Star was just one of the machines that kickstarted the desktop era.

48 thoughts on “The Xerox Star On A Desktop Near You

  1. The CPU was based on the AM2900 bit-slice chips, like most other CPUs of that day. DEC, Data General, HP, Tektronix, ATT, Feranti, Atari arcade machine. I wrote microcode for the Pixar Image Computer, which had four AM2900 chips for each of red, green, blue, and alpha. The microprocessor SIMD graphics instruction sets like Intel SSE descend from that architecture.

    1. I can’t think of a logical reason you’d need it, presumably it’d just be a copy of the MSB. Some copy protection on other computers depended on weird undocumented behaviour, but I imagine the Star was uncommon enough that nobody did that.

      Still, you’re right, in the sense that an emulator should emulate the hardware as it is. Josh will probably get round to that in a future version.

      1. If it’s undocumented it is indeed more difficult, though this case should be relatively easy to deduct. Usually ALU operation effect on flags is well defined because this is what ALU does.

        A real world example, a completely mundane code on 8085 would very often do “ora a” to clear carry without modifying the contents of any register. “xra a” would also clear accumulator and would often be preferrable to “mvi a, 0” because it’s faster and one byte instead of 2.

  2. Cool project!

    Good to see these kind of projects as they remind us of how things really were and not how some people like to remember it. They say that history is written by the “winner” of a battle… fortunately, times are changing.
    As some people stated in the nineties “the truth is out there”, okay I know it’s from a show with a different kind of interest, but it also had an X in it’s name, so I think there is some correlation :)

  3. Yes, that is a well known story to anyone who is even a little interested in computer history: The Xerox people were brilliant inventors, but not interested in the mass market. They were brilliant nerds, but they were unable to imagine what “the man in the street” wanted or needed – or if he needed a computer at all. Xerox lived in its closed world, and it was up to Apple (and others) to open this world to everyone.

    1. Another example. Diablo printers were THE printer for letter quality text in the 1980’s, but the company where the HyType (they claimed NOT short for Hyper Typer) was invented had no interest in bringing it to market.

      So the HyType team packed up everything and split, forming the Diablo company to manufacture the HyType II, then later the Diablo 630 series of printers.

      What company had no interest in a printer that would have made them a great whopping pile of money? Singer, whose main product line was sewing machines.

      I had a Diablo 630 with a Xerox 820-II Information Processor (note that Xerox didn’t call them computers, after their “meh” job with the Alto and Star) which was based on the “Big Board” CP/M Z-80 design. I mainly used it with WordStar and some BASIC text only games. Star Trek and Trade wars!

      1. We had a couple of Singer signal or function generators, but they were known for having bad contacts on their rotary switches.
        Now Singer is just a brand that is licensed to whoever has the money to buy it.

        1. As is Polaroid and a hundred others. I wonder if the Polaroid brand still has the rights to sell film or cameras? There’s that project to manufacture new Polaroid film that’s had some success. I wonder if they could buy the rights to the name, for just the business of film manufacture? I know trademarks don’t apply universally, eg you could start your own company called Apple, as long as you don’t sell computers / phones / etc. Famously, in the 1990s, Apple Corps, the Beatles’ company, took Apple Computer to court over Apple’s including sound and music chips in their Macs. Apple Computer paid a big fine and promised never to get involved in music publishing, a reasonable undertaking at the time.

          So maybe if nobody else is interested in making instant film, the new lads could perhaps license Polaroid’s name cheaply for just that?

          Nowadays the cheap TV aisle in the supermarket is a graveyard of big companies of yesteryear. Not just Polaroid. Mostly it seems badged on the same cheap Chinese megafactory TVs, quite possibly just the one factory.

          I’m surprised customers fall for it, whoever would buy a TV thinking “Polaroid! There’s the mark of a good TV!” ? Still, now, Hua Wei, one of the biggest factory owners in the world, have started selling phones under their own name. It’s a good idea and seems to be paying off for them. They sell highish-spec phones very cheap as an incentive to build their name. Soon enough the world will get used to buying Chinese, as they already have been doing, and there’ll be no more silly charades with dead companies selling stuff they never made in life.

    2. After doing some digging, the story I got its different.

      In PARC, engineers were given the freedom to go an create whatever they wanted.

      The issue here was that management and marketing was stuck on the idea that Xerox was a “printer and photocopier makers” company instead of themselves as a “technology” company.

      Therefore, they didn’t know what to do with some of the great inventions the engineers came up.
      They had serious troubles thinking out of the box that they put themselves into.

      Steve jobs was amazed when he visit them and later ask them to do a demo for his team.
      The rest its story… or at least the story as I know it.

      1. Lisa was 18 months after the Star and was designed at the same time.

        Jobs visited Xerox long after Jef Raskin started the Mac project. One of Jef’s students was at PARC. When his original team members saw the stuff at PARC they were most struck that PARC was doing it all wrong. I recall A Star and Lisa side by side in an engineering graphics office at Boeing. They were just developing their CAD capabilities and were working on how to represent wing surfaces. It was all about splines and I caused a bunch of trouble by suggesting a look at differential geometry. Anyway, the Lisa got used a lot because of the interface.

        Another example is Raskin’s company after Apple was Information Appliance and built the Swyft which was renamed the Canon Cat when bought by Canon. There followed internal Canon turf wars because the Cat was not bought by the typewriter division and it languished.

    3. B.S! We wanted as large a market as possible, but in the early 1980s 3rd party software developers hadn’t yet emerged so we had to build all the software. And, even if there had been lots of developers who wanted to write for this system it would be difficult – not many people had even heard of Object Oriented programming at the time much less had experience with the large class libraries we developed. When I was hired (April 1983, after the initial release) I was given 6 months to become an effective programmer in Mesa. Xerox could afford that but few developers could. When I went to Apple years later I expected that their libraries would be similarly complex. Wrong. A lot of polling instead of call-backs. Threads were common in Star, and practically unknown in Mac at the time. Same for RPC, or apps using Client-Server architecture. And, they still haven’t mastered the graceful way Xerox allowed you to browse / find network resources. In 1981 you could find the printer next to your colleague’s office and send a document to it for them.

      Take a look at the 5 part video we did in 1998 where we discussed a lot of this…

  4. The Star was used pretty extensively within Xerox. I worked there for a while and the people who had been there before they switched to Windows always were raving about how much better the Star was. They still used the Star jargon, like sending a Mail Note to tell you they put something in the department File Drawer.

          1. Back in the early ’90’s I was on the phone with an IBM tech discussing a concern about our new RS6000.
            A good half hour or so was spent on describing a “Centronics” connector. My point of reference was the parallel port found on most PC’s back then, later the IBM tech realized I was talking about a “Small Centronics” connector! The “large” connector I was referring to was a regular sized Centronics to him.
            Good thing we weren’t on opposite side of “The Pond”!

  5. At the Boeing shop I worked at in the 80’s they were still using them for document processing. They were quite neat.

    You could really see where Jobs and Gates got their ideas from. .

  6. I’m surprised that no one used the flag side-effects from other ALU operations, since that’s commonplace on other chips. For example, the Z80 has an scf (set carry flag) and ccf (complement carry flag), but no explicit reset carry flag (which would probably be called rcf in z80 terminology). Instead, we would use an AND instruction whose side effects were to clear the carry. So, AND A would be the most common way to clear carry, but of course Z80 programmers would apply a different AND instruction if it was possible to do something useful an clear the carry. I would be surprised if xerox star programmers didn’t when they were writing microcode.

  7. I learned on a Star in 1984 when I took my first job at Xerox’ corporate headquarters. The big movement to PCs came about six years later inside the company and I remember it being a huge adjustment for many.

  8. I think modern keyboards could take something from that keyboard design too. I have often thought I would like dedicated Cut/Copy/Paste keys. Not quite so sure about Bold/Italics etc, and even less sure about Open though!

  9. The hardware also included a touchpad to the right of the keyboard which was called a “CAT” (I believe it was an acronym, but I can’t remember what it stood for), as the reverse of the mouse. The small company I worked for during college had a pair of these, but I don’t think they ever had enough staff to keep more than one of them busy.

    1. You’re thinking of the Xerox 860, which was a dedicated Word Processor – a common product back then. The 860 was exceptional in that it had a “full page” display that was 8×11 (approximately) and was WYSIWYG. It was much less capable than the Xerox Star, although over time more features were added so that the two products interoperated. The 860 was much less expensive.

  10. So, you copy an existing doc. to create a new one. How do you create the first one? Does it come with a default blank doc.? If so, what if you inadvertently delete it?

    The printer setup was way more advance than what I’ve at work almost 40 years later. I still have to walk to the $#&!@ printer, take a note of its name, find it in the list of network printers, and then add it. (c:

    1. There is a catalog of “prototype objects” – although we didn’t call it that. In the lower right of the screen is an icon. Open that and you’ll find a collection of different documents you can copy to your desktop. BTW, this included network objects – like the company network. If you open that you can find different domains, and within that are the different services within those domains. That usually included printers but could also include database servers, etc. At one point I think you could find people but we decided not to release it that way.

  11. I would love to see a story on how Xerox did all of this and Apple managed to get away with using all of this technology. Also, how is it that Xerox that got the future right in so many ways managed to become almost irrelevant in the computer world. Seems like a massive business failure to me.

    1. This has been written about extensively. The last couple of paragraphs of the Xerox Star wikipedia entry gives a summary –
      https://en.wikipedia.org/wiki/Xerox_Star

      … believe that Xerox didn’t properly protect its intellectual property. The truth is more complex, perhaps. Many patent disclosures were submitted for the innovations in the Star. However, at the time, the 1975 Xerox Consent Decree, an Federal Trade Commission (FTC) antitrust action, placed restrictions on what the firm was able to patent.[19] Also, when the Star disclosures were being prepared, the Xerox patent attorneys were busy with several other new technologies such as laser printing. Finally, patents on software, particularly those relating to user interfaces, were then an untested legal area.

      Xerox did go to trial to protect the Star user interface. In 1989, after Apple sued Microsoft for copyright infringement of its Macintosh user interface in Windows, Xerox filed a similar lawsuit against Apple. However, this suit was thrown out on procedural grounds, not substantive, because a three-year statute of limitations had passed. In 1994, Apple lost its suit against Microsoft, not only the issues originally contested, but all claims to the user interface.[20]

      —–

      A friend of mine wrote several patent disclosures for new ideas in Xerox Star, including the desktop metaphor and icons. However, because software patents didn’t exist at that time, and the FTC consent decree, PARC patent attorneys decided to focus instead on patenting Laser Printing, which was also being worked on at the same time. That single patent has more than paid for all the expenses at PARC, at least as of 1998 when we did a retrospective on the Star.
      See the Q&A session

    2. There is a silly mythology that Apple had to copy from the PARC/Star project. This stuff was all floating around and gestating until the hardware could support it. Many people were researching at companies and universities. The basic ideas had been publicly demonstrated in 1967 by Doug Englebart and SRI, which is a short walk from PARC and Stanford. And films of the demonstrations were shown at conferences and in engineering departments and schools. The guy who started the Mac project (not Jobs – it was ignored by Jobs until it showed fruit) was working on this stuff at the time of the demos at UCSD.

      (IIRC MS won the suit from Apple because Apple had signed a tech sharing agreement to get MS’s word processor on the Apple II and it was worded too loosely. MS insisted it covered all Apple software.)

  12. As a final project for a class in ~1983 I wrote an emulator for a AM2910/AM2901 bitslice machine we used. I am amused that somebody is doing the same thing 35 years later :-)

  13. I supported the hardware and software in customer locations beginning just after introduction. I had a “Star” in my office, later a 6085 (the ViewPoint machine), later a SPARC 2 running the same desktop environment, after I moved to headquarters. I had a lot of documentation, but sadly most of it burned in a storage unit fire a few years ago. There were other diagnostic passwords, post wizard and elf, but I can’t recall if they were only for the 5-1/4″ floppy diags, or also for the 8″. Have to see what remains in my garage.

    Yes, I still occasionally say mail-note, and also hunt for the non-existent props key on my PC keyboard.

      1. You are right the first time. The 6085 was a D-Machine and ran Mesa instructions natively. GlobalView ran on Sun SPARC hardware. I left Xerox just before GlobalView shipped, but at that time Mesa was being compiled to native SPARC instructions – with a Cedar runtime (more advanced than Mesa).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.