The Xerox Alto monitor has a portrait orientation.
|Release date||March 1, 1973|
|Media||2.5 MB single-platter cartridge|
|CPU||TTL-based, with the ALU built around four 74181 MSI chips.|
|Input||Keyboard, 3-button mouse, 5-key chord keyset|
|Related articles||Xerox Star; Apple Lisa, Macintosh|
The Xerox Alto is one of the first personal computers (a term that was already coined at the time), a general purpose computer designed for individual use (although not as a home computer). However it was expensive and, unlike modern personal computers, not based on a microprocessor. It was developed at Xerox PARC and released on March 1, 1973. It was the first computer to use a desktop metaphor, first commercialized on the later Xerox Star, and one of the first with a mouse-driven graphical user interface (GUI) after Douglas Engelbart's oN-Line System (NLS) and several other innovations in user interfaces of the time.
It was not a commercial product, but several thousand units were built and were heavily used at PARC, other Xerox facilities, and at several universities for many years. The Alto greatly influenced the design of personal computers in the following decades, notably the Apple Macintosh and the first Sun workstations.
The Alto was conceived in 1972 in a memo written by Butler Lampson, inspired by the oN-Line System (NLS) developed by Douglas Engelbart at SRI, and was designed primarily by Chuck Thacker. Industrial Design and manufacturing was sub-contracted to Xerox, El Segundo, whose Special Programs Group team included Doug Stewart as Program Manager, Abbey Silverstone Operations, Bob Nishimura, Industrial Designer. An initial run of 30 units was produced by Xerox, El Segundo (Special Programs Group), working with John Ellenby at Xerox PARC and Doug Stewart Xerox, El Segundo as well as Abbey Silverstone at Xerox El Segundo, who were responsible for re-designing the Alto’s electronics. Due to the success of the pilot run, the team went on to produce approximately 2,000 units over the next ten years.
Several Xerox Alto chassis are now on display at the Computer History Museum in Mountain View, California, and a running system is on display at the Living Computer Museum in Seattle, Washington. For his pioneering design and realization of the Alto, Charles P. Thacker was awarded the 2009 Turing Award of the Association for Computing Machinery on March 9, 2010. The 2004 Charles Stark Draper Prize was awarded to Thacker, Alan C. Kay, Butler Lampson, and Robert W. Taylor for their work on Alto.
The following description is based primarily on the August 1976 Alto Hardware Manual by Xerox PARC.
Alto was a microcoded design but, unlike many computers, the microcode engine was not hidden from the programmer in a layered design. Applications such as Pinball took advantage of this to accelerate performance. The Alto had a bit-slice arithmetic logic unit (ALU) based on the Texas Instruments' 74181 chip, a ROM control store with a writable control store extension and had 128 (expandable to 512) kB of main memory organized in 16-bit words. Mass storage was provided by a hard disk drive that used a removable 2.5 MB single-platter cartridge (Diablo Systems, a company Xerox later bought) similar to those used by the IBM 2310. The base machine and one disk were housed in a cabinet about the size of a small refrigerator; one additional disk could be added in daisy-chain fashion.
Alto both blurred and ignored the lines between functional elements. Rather than a distinct central processing unit with a well-defined electrical interface (e.g., system bus) to storage and peripherals, the Alto ALU interacted directly with hardware interfaces to memory and peripherals, driven by microinstructions output from the control store. The microcode machine supported up to 16 cooperative tasks, each with fixed priority. The emulator task executed the normal instruction set to which most applications were written (which was rather like that of a Data General Nova). Others tasks served the display, memory refresh, disk, network, and other I/O functions. As an example, the bitmap display controller was little more than a 16-bit shift register; microcode moved display refresh data from main memory to the shift register, which serialized it into a display of pixels corresponding to the ones and zeros of the memory data. Ethernet was likewise supported by minimal hardware, with a shift register that acted bidirectionally to serialize output words and deserialize input words. Its speed was limited to 3 Mbit/s because the microcode engine could not go faster and continue to support the video display, disk activity and memory refresh.
Unlike most minicomputers of the era, Alto did not support a serial terminal for user interface. Apart from an Ethernet connection, the Alto's only common output device was a bi-level (black and white) cathode ray tube (CRT) display with a tilt-and-swivel base, mounted in "portrait" orientation rather than the more common "landscape" orientation. Its input devices were a custom detachable keyboard, a three-button mouse, and an optional 5-key chord keyset. The last two items had been introduced by SRI's On-Line System; while the mouse was an instant success among Alto users, the chord keyset never became popular.
In the early mice, the buttons were three narrow bars, arranged top to bottom rather than side to side; they were named after their colors in the documentation. The motion was sensed by two wheels perpendicular to each other. These were soon replaced with ball-type mice, which were developed by Bill English. These were photo-mechanical mice — first using white light and then using IR to count the rotations of wheels inside the mouse.
The keyboard was interesting in that each key was represented as a separate bit in a set of memory locations. As a result, it was possible to read multiple key presses simultaneously. This characteristic was used to alter from where on the disk the Alto would boot. The keyboard value was used as the sector address on the disk to boot from, and by holding specific keys down while pressing the boot button, different microcode and operating systems could be loaded. This gave rise to the expression "nose boot" where the keys needed to boot for a test OS release required more fingers than you could come up with. Nose boots were made obsolete by the "move2keys" program that shifted files on the disk so that a specified key sequence could be used.
Several other I/O devices were developed for the Alto, including a TV camera, the Hy-Type daisywheel printer and a parallel port, although these were quite rare. The Alto could also control external disk drives to act as a file server. This was a common application for the machine.
Early software for the Alto was written in the programming language BCPL, and later in Mesa, which was not widely used outside PARC but influenced several later languages, such as Modula. The Alto keyboard lacked the underscore key, which had been appropriated for the left-arrow character used in Mesa for the assignment operator. This feature of the Alto keyboard may have been the source for the CamelCase style for compound identifiers. Another feature of the Alto was that it was microcode-programmable by users.
The Alto helped popularize the use of raster graphics model for all output, including text and graphics. It also introduced the concept of the bit block transfer operation, or BitBLT, as the fundamental programming interface to the display. Despite its small memory size, many innovative programs were written for the Alto, including:
- the first WYSIWYG document preparation systems, Bravo and Gypsy;
- the Laurel e-mail tool, and its successor Hardy;
- the Sil vector graphics editor, used mainly for logic circuits, printed circuit board, and other technical diagrams;
- the Markup bitmap editor (an early paint program);
- the first WYSIWYG integrated circuit editor based on the Conway and Mead paradigm;
- the first versions of the Smalltalk environment
- one of the first network-based multi-person video games (Alto Trek by Gene Ball).
There was no spreadsheet or database software. (The first electronic spreadsheet program, VisiCalc, did not appear until 1979.)
Diffusion and evolution
Technically, the Alto was a small minicomputer, but it could be considered a personal computer in the sense that it was used by a single person sitting at a desk, in contrast with the mainframes and other minicomputers of the era. It was arguably "the first personal computer," although this title is disputed by others.
In 1978 Xerox donated 50 Altos to the Massachusetts Institute of Technology, Stanford University, Carnegie Mellon University, and the University of Rochester. The National Bureau of Standards' Institute for Computer Sciences in Gaithersburg Maryland also received one Alto in late 1978. They received IFS file servers and Dover laser printers. These machines were the inspiration for the ETH Zürich Lilith and Three Rivers Company PERQ workstations, and the Stanford University Network (SUN) workstation, which was eventually marketed by a spin-off company, Sun Microsystems. The Apollo/Domain workstation was heavily influenced by the Alto.
The White House information systems department acquired an Alto, and sought to lead Federal computer suppliers in its direction. The Executive Office of the President of the United States (EOP) issued a request for proposal for a computer system to replace the aging Office of Management and Budget (OMB) budget system, using Alto-like workstations, connected to an IBM-compatible mainframe. The request was eventually withdrawn because no mainframe producer could supply such a configuration.
In December 1979, Apple Computer's co-founder Steve Jobs visited Xerox PARC, where he was shown the Smalltalk-80 object-oriented programming environment, networking, and most importantly the WYSIWYG, mouse-driven graphical user interface provided by the Alto. At the time, he didn't recognize the significance of the first two, but was excited by the last one, promptly integrating it into Apple's products; first into the Lisa and then in the Macintosh, attracting several key researchers to work in his company.
In 1980–1981, Xerox Altos were used by engineers at PARC and at the Xerox System Development Department to design the Xerox Star workstations.
Xerox and the Alto
Xerox itself was slow to realize the value of the technology that had been developed at PARC. The Xerox corporate acquisition of Scientific Data Systems (SDS, later XDS) in the late 1960s had no interest with PARC. PARC built their own copies of the Digital Equipment PDP-10 named the MAX (never intended as a project[clarification needed]). The MAX was PARC's gateway machine to the ARPAnet. The firm was reluctant to get into the computer business again with commercially untested designs.
It is unlikely that a person outside of the computer-science research community will ever be able to buy an Alto. They are not intended for commercial sale, but rather as development tools for Xerox, and so will not be mass-produced. What makes them worthy of mention is the fact that a large number of the personal computers of tomorrow will be designed with knowledge gained from the development of the Alto.
After the Alto, PARC developed more powerful workstations (none intended as projects[clarification needed]) informally termed "the D-machines": Dandelion (least powerful, but the only to be made a product in one form), Dolphin; Dorado (most powerful; an ECL machine); and hybrids like the Dandel-Iris.
Before the advent of personal computers such as the Apple II in 1977 and the IBM Personal Computer (IBM PC) in 1981, the computer market was dominated by costly mainframes and minicomputers equipped with dumb terminals that time-shared processing time of the central computer. Through the 1970s Xerox showed no interest in the work done at PARC. When Xerox finally entered the PC market with the Xerox 820, they pointedly rejected the Alto design and opted instead for a very conventional model, a CP/M-based machine with the then-standard 80 by 24 character-only monitor and no mouse.
With the help of PARC researchers, Xerox eventually developed the Xerox Star (and later the cost reduced Star; the 6085) office system, which included the Dandelion and Daybreak workstations. These machines, based on the 'Wildflower' architecture described in a paper by Butler Lampson, incorporated most of the Alto innovations, including the graphical user interface with icons, windows, folders, Ethernet-based local networking, and network-based laser printer services.
Xerox only realized their mistake in the early 1980s, after Apple's Macintosh revolutionized the PC market via its bitmap display and the mouse-centered interface—both copied from the Alto. While the Xerox Star series was a relative commercial success, it came too late. The expensive Xerox workstations could not compete against the cheaper GUI-based workstations that appeared in the wake of the first Macintosh, and Xerox eventually quit the workstation market for good.
Source code release
- Koved, Larry; Selker, Ted (1999). "Room with a view (RWAV): A metaphor for interactive computing.". IBM TJ Watson Research Center. CiteSeerX: 10
.1 .1 .22 .1340.
- Thacker, Charles P., et al. Alto: A personal computer. Xerox, Palo Alto Research Center, 1979.
The main goals in the design of the Alto's user input/output were generality of the facilities and simplicity of the hardware. We also attached a high value to modeling the capabilities of existing manual media; after all, these have evolved over many hundreds of years. There are good reasons for most of their characteristics, and much has been learned about how to use them effectively. The manual media we chose as models were paper and ink (the display), pointing devices (the mouse and cursor), and keyboard devices ranging from typewriters to pianos and organs.
- Wayne Mackey, Ronald Lasser (2006). Value Innovation Portfolio Management: Achieving Double-digit Growth Through Customer Value. J. Ross Publishing. p. 273. ISBN 9781932159578. 1932159576.
- Metz, Cade (2008-12-11). "The Mother of All Demos — 150 years ahead of its time". The Register (London). Archived from the original on 2013-12-06. Retrieved 2011-01-24.
- David K. Every (1999). "Innovation: Desktop Metaphor". mackido.com. Retrieved 7 December 2013.
- “The History of the Xerox Alto”. Carl J. Clement. March, 2002.
- Virginia Gold. "ACM Turing Award Goes to Creator of First Modern Personal Computer". Association for Computing Machinery. Retrieved 11 January 2011.
- "2004 Recipients of the Charles Stark Draper Prize"
- Wadlow, Thomas A (September 1981). "The Xerox Alto Computer". BYTE. p. 58. Retrieved 19 October 2013.
- More significantly (and perhaps less controversially), it may be considered to be one of the first workstation systems in the style of single-user machines such as the Apollo, based on the Unix operating system, and systems by Symbolics, designed to natively run Lisp as a development environment. "Personal Computer Milestones". Blinkenlights Archaeological Institute. Retrieved 2006-12-31.
- Denber, Michel (February 1982). "Altos Gamesmen". BYTE (letter). p. 28. Retrieved October 19, 2013.
- "PBS Triumph of the Nerds Television Program Transcripts: Part III". PBS (Public Broadcasting System). Retrieved 2007-02-08.
- Douglas K. Smith; Robert C. Alexander (2014). Fumbling the Future: How Xerox Invented, Then Ignored, the First Personal Computer. New York: William Morrow.
- McJones, Paul (2014-10-21). "Xerox Alto Source Code - The roots of the modern personal computer". Software Gems: The Computer History Museum Historical Source Code Series. Computer History Museum. Retrieved 2015-01-08.
With the permission of the Palo Alto Research Center, the Computer History Museum is pleased to make available, for non-commercial use only, snapshots of Alto source code, executables, documentation, font files, and other files from 1975 to 1987.
- Alto User's Handbook, Xerox PARC, September 2013
- Hiltzik, Michael A. (1999). Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age. New York: HarperCollins. ISBN 0-88730-891-0.