# Texas Instruments SN76489

The Texas Instruments SN76489 is a programmable sound generator chip from the 1980s, used to create music and sound effects on computers and video game systems. Initially developed by Texas Instruments for its TI-99/4A home computer, it was later updated and widely adopted in systems like the BBC Micro, ColecoVision, IBM PCjr, Sega's Master System and Game Gear, and the Tandy 1000. Competing with the General Instrument AY-3-8910, the SN76489 offered three tone generators for musical notes and a noise generator for sound effects like static and explosions, all with adjustable frequencies and volume levels.

## Overview

The SN76489 was originally designed to be used in the TI-99/4 computer, where it was first called the TMS9919 and later SN94624, and had a 500 kHz max clock input rate. Later, when it was sold outside of TI, it was renamed the SN76489, and a divide-by-8 was added to its clock input, increasing the max clock input rate to 4 MHz, to facilitate sharing a crystal for both NTSC colorburst and clocking the sound chip. A version of the chip without the divide-by-8 input was also sold outside of TI as the SN76494, which has a 500 kHz max clock input rate.
It contains:
* 3 square wave tone generators
** A wide range of frequencies
** 16 different volume levels
* 1 noise generator
** 2 types (white noise and periodic)
** 3 different frequencies
** 16 different volume levels

### Tone Generators

The frequency of the square waves produced by the tone generators on each channel is derived from two factors:
* The speed of the external clock
* A 10-bit value provided in a control register for that channel (called N)
Each channel's frequency is arrived at by dividing the external clock by 4 (or 32 depending on the chip variant), and then dividing the result by N. Thus the overall divider range is from 4 to 4096 (or 32 to 32768). At maximum clock input rate, this gives a frequency range of 122 Hz to 125 kHz. Or typically 108 Hz to 111.6 kHz, with an NTSC colorburst (~3.58 MHz) clock input – a range from roughly A2 (two octaves below middle A) to 5–6 times the generally accepted limits of human audio perception.

### Noise Generator

The pseudorandom noise feedback is generated from an XNOR of bits 12 and 13 for feedback, with bit 13 being the noise output. The pseudorandom generator is cleared to 0s (with the feedback bit set to 1) on writes to chip register 6, the noise mode register.

## Product family

There are two versions of the SN76489: the SN76489 (Narrow DIP version labeled SN76489N) and the SN76489A (Narrow DIP version labeled SN76489AN). The former was made around 1980–1982 and the latter from 1983 onward. They differ in that the output of the SN76489 is the inverse of the expected waveform (the waveform "grows" towards 0 V from 2.5 V), while the SN76489A waveform is not inverted.
The SN76496 seems to be totally identical to the SN76489A in terms of the outputs produced, but features an "AUDIO IN" pin (on pin 9) for integrated audio mixing.
SN76489 product family :
| Chip variant | Freq (max) | Audio in |
| TMS9919 / SN94624 | 500 kHz | No |
| SN76489 / SN76489A | 4 MHz | No |
| SN76494 / SN76494A | 500 kHz | Yes |
| SN76496 / SN76496A | 4 MHz | Yes |

## Clones and successors

Sega used real SN76489AN chips in their SG-1000 game console and SC-3000 computer, but used SN76489A clones in their Master System, Game Gear, and Sega Genesis game consoles. These modified sound chips were incorporated into the systems' video display processor (VDP). Although basic functionality is almost identical to that of the original SN76489A, a few small differences exist:
* The randomness for the noise channel is generated differently.
* The Game Gear's version includes an additional flag register that designates which speaker(s) each audio channel are output (left, right, or both).
* The periodic noise is 16 stages long rather than 15; this makes a significant difference for music/programs which use periodic noise, as sounds will play at 6.25% lower pitch than on the TI-made chips.
Another clone is the NCR 8496, used in some models of the Tandy 1000 computer. Later Tandy 1000 machines (notably the SL, TL and RL series) integrated the SN76496's functionality into the PSSJ ASIC.

## Usage
### Arcade video games

* These games share a common board design by Tehkan with three of the functionally identical SN76496:
** Baluba-Louk No Densetsu
** Senjyo
** Star Force
* These games share a common board design by Universal Entertainment Corporation:
** Lady Bug (uses 2)
** Mr. Do! (uses 2 of a functionally-identical part labeled U8106)
** Mr. Do's Castle (uses 4)
** Mr. Do's Wild Ride (uses 4)
** Do! Run Run (uses 4)
* From Konami:
** Mikie
** Road Fighter
** Rush'n Attack
** Time Pilot '84 (uses a functionally-identical part labeled Y2404)
* From Sega:
** Bank Panic
** Super Locomotive
** Sega System 1
** Sega System 2
** Sega System E – used a clone, SEGA PSG, integrated into its VDP
** Sega Mega-Tech – used a clone, SEGA PSG, integrated into its VDP as a secondary sound chip
** Sega System C – used a clone, SEGA PSG, integrated into its VDP as a secondary sound chip
** Sega Zaxxon

### Home hardware

* ALF's Music Card MC1 – Apple II add-on card, used three chips for a total of nine voices plus noise
* Bandai RX-78
* BBC Master
* BBC Micro
* Coleco Adam
* ColecoVision – used the SN76489AN
* EPSON QX-11/QC-11 - used the SN76489AN
* Geneve 9640
* IBM PCjr – used the SN76489AN
* Memotech MTX
* Neo Geo Pocket
* Neo Geo Pocket Color - used a T6W28 SN76489-like clone that supports stereo output
* Sega Game Gear – used a clone integrated into its VDP that has an additional speaker-output register for simple stereo support
* Sega Genesis – used a clone, SEGA PSG, integrated into its VDP as a secondary sound chip
* Sega Master System – used a clone, SEGA PSG, integrated into its VDP
* Sega Pico – used a clone, SEGA PSG, integrated into its VDP
* Sega SG-1000 – used the SN76489AN
* Sharp MZ-800 – used the SN76489AN
* Sord M5
* Tandy 1000 – early systems used SN76496 or NCR 8496, later systems integrated into PSSJ ASIC
* SN76489 ISA Soundboard – Hobbyist Soundcard for IBM XT/PC
* Lo-Tech Tandy Soundboard – Prototype Soundcard for IBM XT/PC
* Texas Instruments TI-99/4A – used the original TMS9919
* Tomy Tutor
* Toshiba Pasopia 7
* VTech CreatiVision