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.