Altair 8800 Minicomputer - Part 1
January 1975 Popular Electronics

January 1975 Popular Electronics

January 1975 Popular Electronics Cover - RF CafeTable of Contents

Wax nostalgic about and learn from the history of early electronics. See articles from Popular Electronics, published October 1954 - April 1985. All copyrights are hereby acknowledged.

For some reason, the January 1975 issue of Popular Electronics magazine, featuring the Altair 8800 Minicomputer construction article, seems to be the most highly prized of all editions ever published. They regularly sell on eBay for anywhere from $200 to $500, depending on the condition. If you happen to have one or find one at a yard sale, hold on to it as an investment (or mail it to me and I will hold on to it). Computers were still a sci-fi mystery type contraption to most people in the mid-1970's, and were even considered a thing to fear. Movies about evil-minded nerds hacking into critical databases and commandeering control of all aspects of life were popular, and even computers like Hal (2001: A Space Odyssey) that usurped control from its human inventors were giving the weak-hearted nightmares. Even without a CRT terminal for an interface, the Altair 8800 was a welcome and somewhat affordable ($400, equivalent to about $2,244 in 2022 money) introduction to computer hardware and programming. For that much money today, you can get a pretty high-power gaming computer setup. Notice one of the recommended applications for the Altair 8800 is as a control center for a Ham station. 

Two years after this article, in August of 1977, Tandy (Radio Shack) introduced its TRS−80 PC. The IBM PC hit the market in August of 1981, and the Commodore 64 a year later in 1982. My first computer was a Timex/Sinclair that was given to me by Mr. Wilson Roe, while I was working at Westinghouse Electric Oceanic Division in Annapolis, Maryland. It came out at the end of 1982.

Altair 8800 Minicomputer - Part 1

ALTAIR 8800 - The most powerful minicomputer project ever presented - RF Cafe

ALTAIR 8800 - The most powerful minicomputer project ever presented can be built for under $400.

By H. Edward Roberts & William Yates

THE era of the computer in every home - a favorite topic among science-fiction writers-has arrived! It's made possible by the Popular Electronics/MITS Altair 8800, a full-blown computer that can hold its own against sophisticated minicomputers now on the market. And it doesn't cost several thousand dollars. In fact, it's in a color TV receiver's price class - under $400 for a complete kit.

The Altair 8800 is not a "demonstrator" or souped-up calculator. It is the most powerful computer ever presented as a construction project in any electronics magazine. In many ways, it represents a revolutionary development in electronic design and thinking.

The Altair 8800 is a parallel 8-bit word/16-bit address computer with an instruction cycle time of 2 μs. Its central processing unit is a new LSI chip that is many times more powerful than previous IC processors. It can accommodate 256 inputs and 256 outputs, all directly addressable, and has 78 basic machine instructions (as compared with 40 in the usual minicomputer). This means that you can write an extensive and detailed program.

The basic computer has 256 words of memory, but it can be economically expanded for 65,000 words. Thus, with full expansion, up to 65,000 subroutines can all be going at the same time. The basic computer is a complete system. The program can be entered via switches located on the front panel, providing a LED readout in binary format. The very-low-cost terminal presented in Popular Electronics last month can also be used.

Processor Description

Processor: 8 bit parallel

Max. memory: 65,000 words (all directly addressable)

Instruction cycle time: 2 μs (min.)

Inputs and outputs: 256 (all directly addressable)

Number of basic machine instructions: 78 (181 with variants)

Add/subtract time: 2 μs

Number of subroutine levels: 65,000

Interrupt structure: 8 hardwire vectored levels plus software levels

Number of auxiliary registers: 8 plus stack pointer, program counter and accumulator

Memory type: semiconductor (dynamic or static RAM, ROM, PROM)

Memory access time: 850 ns static RAM; 420 or 150 ns dynamic Ram

In an upcoming issue, we will describe how to build a low-cost CRT-type terminal that can be used with the computer and can also be mated with any time-sharing computer by telephone.

Basic block diagram of Altair 8800 - RF Cafe

Fig. 1 - Basic block diagram of computer parts and operation.

Some Applications for the
Altair 8800 Computer

Listed below is only a small sampling of the thousands of possible applications for the computer. The Altair 8800 Is so powerful, in fact, that many of these applications can be performed simultaneously. It can be used as a:

  • Programmable scientific calculator
  • Multichannel data acquisition system
  • Automatic control for ham station
  • Sophisticated intrusion alarm system with multiple combination locks
  • Automatic IC tester
  • Machine controller
  • Digital clock with all time-zone conversion
  • High-speed I/O device for large computer
  • Digital signal generator
  • Automated automobile test analyzer
  • On-board mobile controller
  • Autopilot for planes, boats, etc.
  • Navigation computer
  • Time-share computer system
  •  "Smart" computer terminal
  • Brain for a robot
  • Pattern-recognition device
  • Printed matter-to-Braille converter for the blind
  • Automatic drafting machine
  • Automatic controller for heat, air conditioning, dehumidifying
  • Controller for sound systems
  • Digital filter
  • Signal analyzer

About the Computer. A computer is basically a piece of variable hardware. By changing the bit pattern stored in the memory, the hardware (electronic circuitry) can be altered from one type of device to another. When the bit pattern, and thus the hardware, is changed, we have what is referred to as "software." Any type of variable instruction (programming) - such as Basic, Fortran, Cobol, Algol - is generally classified as software.

To cause it to vary the hardware, you must communicate with the computer. In the case of the 8800, this is done by setting the bit pattern on the front-panel switches in accordance with a set of instructions (provided with the Intel 8080 LSI chip). For example, the 8800 computer will automatically add when a specific bit pattern (10000010) is received. By setting address and data switches, a complete program of up to 78 steps in the basic computer can be inserted into the processor. If extensive programming is to be performed, an assembler or higher language is used. With an assembler, the person doing the program simply types the word "add" on the device. (In Basic and Fortran, a + is used instead.)

Fundamental programming concepts are simple enough to master in a relatively short time. However, to become an efficient programmer requires a lot of experience and a large amount of creativity.

The block diagram of the basic 8800 computer (or any computer, for that matter) is shown in Fig. 1. It consists of the following subsystems:

Parts List

Altair 8800 Parts List - RF Cafe

 Misc. - Metal case; power supply (see text); line cord; multiconductor ribbon cable; mounting hardware; solder; etc.

Note: The following items are available from MITS, Inc., 6328 Linn N.E., Albuquerque,- NM 87108 (Tel.: 505- 265-7553): partial kit No. 8800PK (includes pc boards and all electronic components (but not case, switches, or power supply), $298; complete kit No. 8800K (contains all parts, including ready-to-use case, switches, and power supply), $397; Completely assembled and tested Model 8800A computer (includes 90-day warranty), $498. Prices do not include postage or delivery charge. Both kits include detailed assembly and operating manual. A FREE set of etching and drilling guides, component-placement diagrams and miscellaneous information is available from the kit supplier (send self-addressed 8½" x 11" envelope with 40c postage). Check supplier or manufacturer for latest ICI price, available separately.

CPU. The heart of the computer is the CPU, or central processor unit. See fig. 2. The CPU performs all the calculations, generates system timing, and makes all decisions. Of particular importance are the decisions the CPU makes concerning what device should have access to the data buss. It makes these decisions by sending status information at the beginning of each computer cycle, telling the memory and the input/output what to expect for the rest of the cycle.

The CPU contains the program timer, sometimes called the P counter. This device keeps track of the current location in the memory that the processor is using. Also located in the CPU is the arithmetic unit.

The CPU used in the 8800 computer, the Intel 8080 LSI chip, is relatively expensive in quantities of one. It was selected, however, because it serves to create a minicomputer whose performance competes with current commercial minicomputers. In practice, a lower-performance processor would have been adequate for the majority of the tasks the user might wish to initially define. But the problem with the lesser-power approach is that relatively little money would be saved, and it would be doomed to near-future obsolescence for practical purposes. Our intent here was to produce a processor with more than enough power to handle any job.

Still another consideration was programming. The larger the instruction set, the easier the computer is to program. The 8080 chip has 78 instructions, which is almost twice that of the next power level CPU available (Intel's 8008), which is really designed for use as a buffer.

The CPU contains eight general purpose registers, P counter, arithmetic unit, accumulator, stack pointer, instruction decoder, and miscellaneous timing and control circuits. The arithmetic unit is of special interest because it contains the circuitry required to perform arithmetic in both decimal and binary formats.

The stack pointer is the register that keeps track of the subroutine addresses. The 8800 computer is capable of performing an almost unlimited number of subroutines, a feature not available with other microprocessors and absent in many minicomputers.

The instruction decoder is the core of the variable-hardware concept. It decodes the instructions and sets up the various registers, gates, etc., in the CPU for proper functioning. All system timing comes from the CPU. (The logic associated with the CPU is shown in Fig. 3, while the system clock is shown in Fig. 4.)

Memory. A computer memory stores the various binary 0's and 1's that make up its language. These 0's and 1's are known as bits. Some memories are organized to store 4, 16, 24, or 32 bits to a word, while others - specifically those in the 8800 computer-are organized to store eight bits to a word. Each time the CPU requests data from the memory, a complete word is transmitted. The term byte is interchangeable with the term word in an 8-bit processor. (The basic 8800 memory is shown in Fig 5.)

The time required from when the address first appears until the data is stable is called "access time." In most modern semiconductor-memory minicomputers, it ranges from 15 ns to 30 μs. With proper adjustments, any memory speed can be used in the 8800 computer, although standard memory time is 850 ns for a static random access memory (RAM) and 420 ns for a dynamic RAM. Higher-speed memories will not appreciably affect the performance of the computer, while slower-speed memories will result in an overall reduction in system speed.

Fig. 2 - These are the logic functions on the 8080 processor chip (IC1). This n-channel CPU permits 78 basic instructions and has 8-bit parallel processing.

Multi-conductor ribbon cable interconnects Altair 8800 boards - RF Cafe

Printed circuit boards are designed so that the various mating pads are aligned. Multi-conductor ribbon cable interconnects the boards.

Fig. 4 - Computer operation is controlled by signals from this 2-MHz clock circuit.

Fig. 5 - The basic memory contains up to eight 256x4 RAM's.

In addition to semiconductor RAM's, the processor will also service ROM's (read-only-memories) and PROM's (programmable read-only memories). Access time should be reinforced for the particular memory used.

Any conventional memory can be used in the computer if the input loading on the buss does not exceed 50 TTL loads and if the buss is driven by standard TTL loads. Normal expansion loads to the buss would be one standard low-power load per expansion card.

Front Panel. The front-panel logic permits the following functions:

1. STOP: Stops the processor immediately after it completes the current instruction. An automatic stop occurs when power is turned on (interrupts are disabled).

2. RUN: Starts the processor at the current address.

3. EXAMINE: Causes the data stored at the location (set by the switches) to be displayed in binary by LED's.

4. EXAMINE NEXT: Steps the P counter once and displays the word stored at the next location.

5. DEPOSIT: Causes the information preset by the switches to be stored in the memory.

6. DEPOSIT NEXT: Stops .the P counter and loads the memory.

7. SINGLE STEP: Steps the program one instruction.

8. RESET: Clears the CPU and sets up a starting address of 0.

9. CLEAR EXT: Clears all input/output devices; occurs automatically when power is turned on.

10. PROTECT/UNPROTECT: Allows selective protection/unprotection of blocks of memory. When a block of memory is protected, it is impossible to write over that block, but its contents can be read out.

There are 36 LED status indicators on the front panel, 16 of which are used for the address buss, 8 for the system status latches, and 8 for the data buss. The four remaining LED's are used for indicating memory-protect, interrupt, system-wait, and hold status.

Power Supply. Four power sources are required to operate the computer: +5 volts at 2 amperes, -5 volts at 500 mA, -12 volts at 500 mA, and +8 volts at 6 amperes. The first three are regulated, while the last is unregulated. The three regulated lines power the processor. The unregulated line powers the peripheral cards that can be used to expand the system, each of which has its own 5-volt regulator on board. This reduces electrical noise and obviates the possibility of total system failure due to the failure of only one regulator.

Expansion. The basic computer is designed for almost unlimited peripheral and memory expansion, using a buss system where all input/output connections merge into a common line. Hence, an external card can be plugged into any slot and it will function properly. The only qualification is that each card have an address decoder to allow the specific card to take what data it needs from the common buss and put data on the buss as required. The processor buffers are designed to drive 300 external cards, which should be adequate for most applications. Bear in mind that only 17 cards will yield 65,000 words of memory.

[Editor's Note: At this writing, a number of different peripheral devices are in various stages of design or undergoing tests]

Assembly Details. The basic computer employs four printed circuit board assemblies, each of which contains one functional element of the basic system. Because the boards are large and very complex, we are not publishing etching and drilling guides or component-placement diagrams. Instead, you can obtain a set of guides, diagrams, an instruction set, buss points, and miscellaneous information by sending a stamped self-addressed 8½" x11" manila envelope with 40c postage to MITS, Inc. (See note Parts List for address.) Request the PE8800 package.

The front panel display board accommodates the 36 LED indicators and their associated drivers. Address line inputs A0 through A16, data lines D0 through D7, and the various status lines originate on the CPU board. The boards have been designed so that the various mating pads on both are aligned. Multi-conductor flexible ribbon cable interconnects the boards.

Fig. 3 - The logic associated with the CPU (IC1) is shown at left. All of the buffers and latches are on a single pc board. Connecting wiring is through a 100-line buss.

The front panel control board contains the circuitry for the interfacing between the control switches located on the front panel and the CPU. In addition to the interconnections to the actual processor, this board accepts memory address switches AO through A15 (also on the front panel). The first eight of these switches (DO to D7) are used to put data into the CPU. The EXAMINE/EXAMINE NEXT, DEPOSIT/DEPOSIT NEXT, SINGLE STEP, and RUN/ STOP switches are also wired directly to the front panel control board.

The third board contains the Intel 8080 central processing unit LSI chip, two-phase clock and buffers, and the various lines going to the buss. (The buffers are tri-state, high-input- impedance, high-output-level devices.) This board also has four dual-D flip-flops wired as latches for the eight bits of status information. All input and output wiring to and from the CPU board is via a 100-line buss.

The basic memory board contains 256 eight-bit words of random access memory (RAM). It is directly expandable to 1000 words. This board also contains the input/output data-gating, address-decoding, memory-wait, and memory-protect circuits. The memory-wait circuit allows the memory time to stabilize the output data to the processor, while the memory-protect circuit prevents accidental overwriting of the memory. All connections between the CPU and the memory board are via the 100-line buss. The four boards, along with the power supply, mount in an 18-in. deep by 17-in. wide by 7-in. high (45.7 x 43.2 x 17.7-cm) metal cabinet. The various operating switches and LED indicators go on the front panel. When all this is done, the computer cabinet's interior will appear to be almost empty. However, the internal cabling system is arranged with connectors to accommodate 17 more boards within the case, all connected to the main buss lines. The added boards can be used for memory, input/output devices, control devices, etc. All you have to do is plug the boards into the connectors and the computer does the rest.

Part 2 of this article, next month, will describe the operation of the computer and present some sample programs.

 

 

Posted June 21, 2022