The 8080's support chips (the 8224 and the 8228): The 8080 CPU, one of the first CPUs to be commonly used in microcomputers (it was the heart of the famous Altair 8800, considered the "first personal computer"), requires two support chips in order to work as designed. These chips are the 8224 clock generator/driver, and the 8228 bus controller. The primary function of the 8224 is to generate the two clock signals needed by the 8080. The 8080 requires a two-phase, non-overlapping clock input, which basically means that first one clock pin goes high, then the other one does, and one is supposed to go low when the other goes high, in a see-saw kind of motion. Besides this somewhat bizarre waveform, the voltage levels of these clock inputs are non-standard: They are about 10 volts. Why does the 8080 require such a clock input? Simply because it was designed that way. Whereas the other two classic CPUs of the early micro age (the 6502 and the Z80) require only a single input signal, the 8080 requires two. So there. It's an early example of market share showing its effect: A big company (in this case, Intel) can get away with weird designs. The pinout for the 8224 is as follows: 1: RES (Reset) (Output to pin 12 of the 8080) 2: /RES or /RESIN (Reset in) (Input from reset button) 3: RDYI (Ready In) (Input) 4: RDYO or READY (Ready Out) (Output to pin 23 of the 8080) 5: SYNC (Indicates beginning of new machine cycle) (Input from pin 19 of the 8080) 6: PH2T (Phi2 TTL clock) (Output; Can be used for external timing purposes, but is not essential to the chip's functionality) 7: /ST or /STSTB (Status Strobe) (Output to pin 1 of 8228) 8: GND (Ground) 9: Vdd (+12V) 10: PH2 or PHI2 (Clock 2; Goes directly to 8080) (Output) 11: PH1 or PHI1 (Clock 1; Goes directly to 8080) (Output) 12: OSC (Oscillator; Separate oscillator that can be used for other timing purposes; Like PH2T, is not essential for the chip to work) (Output) 13: TNK (Tank circuit; Used only for overtone crystals) 14: XT2 or XTAL2 (One end of crystal oscillator) 15: XT1 or XTAL1 (Other end of crystal oscillator) 16: Vcc (+5V) In essence, a normal two-pin crystal is connected between pins 14 and 15 of the 8224. The 8080 normally runs at 2 MHz, and the frequency of the crystal is divided by nine before it is fed to the CPU, so to achieve 2 MHz, a crystal of 18 MHz is normally hooked up to the 8224, which gives a clock output of 2 MHz to the 8080 CPU. Pins 10 and 11 provide the actual two-phase, non-overlapping clock signal that the 8080 needs, and so those pins are joined directly to the CPU's clock inputs. Pin 1 is the reset output signal; it resets the CPU. (No, the reset button does not go directly to the 8080, as it does in most other CPUs; The reset signal to the CPU is actually provided by the 8224.) Pin 2 is the active-low reset input. It is normally kept high through a pull-up resistor, and brought low by connecting it to ground through a momentary push-button switch, which becomes the reset button. Pins 6 and 12 are external, auxiliary outputs which are not essential to the function of the 8224 or the 8080, but which can be used for some other creative stuff if you happen to have a need for such signals. Pin 6 is basically the same as pin 10, and the two will go high at the same time; The only real difference is that pin 6 is TTL compatible (in other words, 5 volts), instead of the non-standard voltage used by the main clock pins. Pin 12, on the other hand, will run at the speed of the actual oscillating crystal. Thus, if you are using the normal 18 MHz crystal, pin 12 (OSC) will pulse at 18 MHz, and pin 6 will pulse at 2 MHz. Pin 13 is only used for overtone crystals. Normally a fundamental mode crystal is used with the 8224, but overtone crystals can be used as well as long as you rig pin 13. To simplify things for yourself, just use a fundamental-resonance crystal and ignore pin 13. The 8228 is the 8080's bus controller, handling the data bus. The pinout for the 8228 is as follows: 1: /STSTB (Status strobe) (Input from pin 7 of 8224) 2: HLDA (Hold acknowledge) (Input from pin 21 of 8080) 3: /WR (Write) (Input from pin 18 of 8080) 4: DBIN (Data bus in) (Input from pin 17 of 8080) 5: DB4 6: D4 7: DB7 8: D7 9: DB3 10: D3 11: DB2 12: D2 13: DB0 14: GND (Ground) 15: D0 16: DB1 17: D1 18: DB5 19: D5 20: DB6 21: D6 22: /BUSEN (Bus enable) (Input) 23: /INTA (Interrupt acknowledge) (Output to pin 16 of 8080) 24: /MEMR (Memory read) (Output to memory chips) 25: /IOR (I/O read) (Output to peripherals or I/O chip) 26: /MEMW (Memory write) (Output to memory chips) 27: /IOW (I/O write) (Output to peripherals or I/O chip) 28: Vcc (+5V) The D pins are the CPU data bus. They connect the 8228 to the 8080 CPU. The DB pins are the system data bus. They go from the 8228 to the memory (RAM and ROM) and the I/O bus (peripherals).