Xerox Alto
The Alto, built by Xerox' Xerox PARC laboratory, was a ground-breaking and extremely influential personal computer - in fact, all contemporary personal computers are effectively descendants of the Alto.
The Alto was novel, for its time, in that each machine had a bit-mapped display, allowing the creation of a graphical user interface, and was also attached to a high-speed LAN, the then-new Ethernet, also invented at PARC. In addition to the keyboard, users could use a mouse to interact with applications.
Xerox attempted to commercialize the lessons of the Alto, in the Xerox Star, but it was not a commercial success. Other companies, including IBM (hardware), Microsoft (software) and Apple (both) did manage to produce successful products along the lines pioneered by the Alto.
Of course, everyone now lives in the world pioneered by the Alto.
Details
The Alto's 16-bit-wide CPU was microcoded (which resulted in it being called the machine's 'microprocessor', although that term did not at the time have the meaning that it does now). As a result, it could emulate several different CPUs. It was built out of TTL, and the microprocessor's clock rate was 170 nsec. The CPU was implemented as 5 PCBs which plugged into a common backplane, along with four PCBs for main memory (in a 64KW address space of 16-bit words), and those for device controllers such as the disk, display, and Ethernet.
There were two different versions, the Alto I and Alto II, which were almost identical; the latter was a re-engineered version of the former. The biggest difference was that the Alto II could have a maximum of 256 KW of memory, using bank switching, compared to the 64KW of the Alto I (although in actuality, limited use was made of the extended memory). Data in the memory of an Alto I was protected with parity; the Alto II used ECC, with 6 bits plus a parity bit per double-word. Also, all Altos had 1KW of ROM microcode (microcode words were 32 bits wide), and eventually also 1KW of writeable RAM microcode memory. (The basic ROM microcode more or less emulated a Data General Nova.) Some Alto IIs supported a second 1KW of PROM microcode; others had three 1KW banks of microcode RAM.
The Alto provided several paths for input/output. For the highest speeds peripherals, the CPU did not support DMA; rather, such devices (disk, display, LAN) connected to the CPU's main bus. The processor then had provision for up to 16 prioritized microcode tasks, some of which were dedicated to particular devices, and did bulk I/O; a timer task handled others, such as the mouse. A PC per priority level allowed zero-overhead switching between execution of microinstructions at different priority levels when the hardware called for another one to be active. (Emulation of the Alto's native instruction set was assigned to the lowest priority level.)
Slower devices (keyboard, etc) could be attached to the machine's memory bus, allowing their registers to appear in the memory address space, for access by programmed I/O; the last two 'pages' (nothing to do with virtual memory, which the Alto did not support) of memory address space, 512 words, were dedicated to this. Finally, a parallel port, connected to the CPU's memory control board, allowed miscellaneous slow devices (e.g. slow printers) to be connected.
Altos all had a 1.25Mbyte cartridge disk drive from Diablo Systems (the same drive as in the RK02 disk drive); the Alto-based Interim File System (IFS) file servers used Trident disk drives.
See also
External links
- Why Alto - the famous Xerox internal memorandum by Butler Lampson that started the Alto ball rolling
- Hardware documentation - also contains some high-level software documentation
- Charles P. Thacker, Edward M. McCreight, Alto - A Personal Computer System December, 1974 - a later version was re-printed in Computer Structures: Principles and Examples, second edition, editors Daniel P. Siewiorek, C. Gordon Bell and Allen Newell, McGraw-Hill, 1981, pp. 549-572
- The Alto User's Primer
- A Field Guide to Alto-Land
- ALTO: A Personal Computer System Hardware Manual August 1976
- Alto: A Personal Computer System Hardware Manual - part 1 May, 1979
- Alto: A Personal Computer System Hardware Manual - part 2 May, 1979
- Alto II Documentation
- IFS and the Trident disk controller
- Xerox PARC Alto filesystem archive
- 50 Years Later, We're Still Living in the Xerox Alto's World - an excellent history from the IEEE
- The Xerox Alto Struts Its Stuff on Its 40th Birthday
- Creation Myth - Steve Jobs meets the Alto
Recent restoration of an Alto
- alto - Ken Shirriff's blog entries about things Alto
- Y Combinator's Xerox Alto: restoring the legendary 1970s GUI computer - contains a good overview of the hardware
- Restoring Y Combinator's Xerox Alto, day 1: Power supplies and disk interface
- Restoring Y Combinator's Xerox Alto, day 2: Repairing the display
- Restoring Y Combinator's Xerox Alto, day 3: Inside the disk drive
- Restoring Y Combinator's Xerox Alto, day 4: What's running on the system
- Restoring YCombinator's Xerox Alto day 5: Microcode tracing with a logic analyzer
- Restoring YCombinator's Xerox Alto day 6: Fixed a chip, data read from disk
- Restoring a Xerox Alto day 7: experiments with disk and Ethernet emulators
- Restoring a vintage Xerox Alto day 8: it boots!
- Restoring YC's Xerox Alto day 9: tracing a crash through software and hardware
- Restoring YC's Xerox Alto day 10: New boards, running programs, mouse problems
- A 1970s disk drive that wouldn't seek: getting our Xerox Alto running again