Although the original General Instrument chip is long out of production, the KC89C72 clone can sometimes still be found through specialized electronic component distributors. Typical sources include:
Contains two independent 8-bit general-purpose input/output ports (IOA and IOB), often used for joystick input or controlling external hardware.
The chip continuously produces analog sound based on these register values until changed. Application Areas
Equipped with a multi-channel, . This allows the microcontroller to interface directly with analog sensors (e.g., thermistors, potentiometers, and light sensors). The datasheet specifies an integrated sample-and-hold circuit to stabilize inputs during conversions. Serial Communication Modules kc89c72 datasheet
No Connection (or internal connection depending on die variant) Analog Channel B Audio Output for Channel B 4 Analog Channel A Audio Output for Channel A 5 No Connection 6 I/O Port B, Bit 7 7 I/O Port B, Bit 6 8 I/O Port B, Bit 5 9 I/O Port B, Bit 4 10 I/O Port B, Bit 3 11 I/O Port B, Bit 2 12 I/O Port B, Bit 1 13 I/O Port B, Bit 0 14 I/O Port A, Bit 7 15 I/O Port A, Bit 6 16 I/O Port A, Bit 5 17 I/O Port A, Bit 4 18 I/O Port A, Bit 3 19 I/O Port A, Bit 2 20 I/O Port A, Bit 1 21 I/O Port A, Bit 0 22 Master timing input (1 - 2 MHz square wave) 23 Internal testing pin (leave disconnected) 24 Chip Select (active low) 25 Bus Control 2 26 Main 5V Power Supply Input 27 Bus Direction Control Line 28 Bus Control 1 29 Control configuration pin 30 Bidirectional Data Bus, Bit 7 31 Bidirectional Data Bus, Bit 6 32 Bidirectional Data Bus, Bit 5 33 Bidirectional Data Bus, Bit 4 34 Bidirectional Data Bus, Bit 3 35 Bidirectional Data Bus, Bit 2 36 Bidirectional Data Bus, Bit 1 37 Bidirectional Data Bus, Bit 0 38 Analog Channel C Audio Output for Channel C 39 Internal testing pin (leave disconnected) 40 Master System Reset (Active Low) 3. Internal Architecture & Register Map
Run the outputs through a simple passive resistor-capacitor (RC) low-pass filter to remove ultrasonic high-frequency clock noise.
The following pseudo-code writes a 440 Hz tone (A4) to channel A using a 1 MHz clock: Although the original General Instrument chip is long
In the timeline of personal computing history, certain components serve as pivotal bridges between eras. The KC89C72, a graphics controller chip, stands as a significant example of this transitional technology. Emerging during the late 1980s and early 1990s—a period defined by the rapid shift from text-based interfaces to graphical user interfaces (GUIs)—the KC89C72 represented a push toward higher integration and improved visual fidelity. While often overshadowed by market dominators like the VGA standard and the rise of dedicated GPU giants, the KC89C72 carved out a niche in specific PC architectures, offering a blend of performance and cost-effectiveness that facilitated the mass adoption of graphical computing.
The is a robust and reliable alternative to the AY-3-8910 PSG. With its 3-tone channels, noise generator, envelope generator, and 16-bit I/O, it remains a popular choice for retro computing enthusiasts and industrial repair technicians alike, as documented by UTSOURCE.net and Wikipedia .
On the KC89C72, pins 25 and 26 (/IOA, /IOB) are not functional as general-purpose I/O (unlike the AY-3-8910). Pull them to Vdd through 10k resistors. Application Areas Equipped with a multi-channel,
The internal logic structure consists of registers mapping directly to standard 8-bit sound synthesis architectures:
: Ensure stable voltage levels as specified in the full technical manual to prevent signal distortion. Thermal Management
(bus control):
| Register (A8 = 0-15) | Name | Function | | :--- | :--- | :--- | | 0 | Channel A Fine Tune | Lower 8 bits of tone period | | 1 | Channel A Coarse Tune | Upper 4 bits of tone period | | 2 | Channel B Fine Tune | Lower 8 bits | | 3 | Channel B Coarse Tune | Upper 4 bits | | 4 | Channel C Fine Tune | Lower 8 bits | | 5 | Channel C Coarse Tune | Upper 4 bits | | 6 | Noise Period | 5-bit noise frequency control | | 7 | Mixer / I/O Enable | Enable/disable tone/noise per channel, I/O control | | 8 | Channel A Volume | 4-bit volume (or envelope enable) | | 9 | Channel B Volume | Same as above | | 10 | Channel C Volume | Same as above | | 11 | Envelope Fine | Lower 8 bits of envelope period | | 12 | Envelope Coarse | Upper 8 bits (total 16-bit envelope period) | | 13 | Envelope Shape | Cycle, hold, alternate, attack patterns | | 14 | I/O Port A | Not used on KC89C72 (read returns 0xFF) | | 15 | I/O Port B | Not used |
When incorporating a KC89C72 into current prototype schematics, remember these structural dependencies: