Programmable sound generator

From TheAlmightyGuru
Jump to: navigation, search
The AY-3-8910 was the most widely used PSG.

A programmable sound generator (PSG) refers to a variety of audio chips first manufactured in the late-1970s which create rudimentary sound waves as opposed to more complex waves generated by wave table synthesis, FM synthesis, or pulse code modulation. The chips accept user input through dedicated registers which control the sound they generate allowing them to be programmed. PSGs were used extensively in the home entertainment industry throughout the late 1970s and 1980s particularly in 8-bit video games, home computers, and electronic music keyboards. Their primitive waveforms give them a very artificial or "chip" sound which was popular throughout this era.

Even though PSGs are now obsolete, they still have a fan base due to being popular in entertainment for over decade, and the sound of PSGs are still being used in popular music. Some of the chips are even still being manufactured to service old hardware, however, most of them have since been emulated in software. Software like Famitracker and Vortex Tracker II not only emulate the sound of older PGSs, but generate machine code that can play music directly on them.

Personal

I started playing video games in the mid-1980s, and the sound generated by the consoles I owned helped cement the PSG music into my psyche. When I started researching audio hardware for the Video Game Music Preservation Foundation, I began to gain a much firmer understanding of the hardware and the waveforms they generate. Although I recognize why people have a hard time appreciating the often harsh sound of PSGs, I find music made by them to be especially beautiful and nostalgic.

My most formative video game console was the NES, so most of my favorite PSG-based songs use the NES APU. Even though I didn't play much Commodore 64, my second favorite PSG is the MOS SID which is technically the most superior PSG and a lot of nice songs were made for it. After that, my familiarity with the PSGs decreases significantly.

History

The first consumer-level PSGs came on the market in the late 1970s and were produce by two different American companies General Instrument and Texas Instuments. Two other American companies, MOS Technology and Atari were also producing PSGs, but they were used exclusively for their own products. From the second generation onward, nearly every 8-bit video game console and home computer used a PSG for sound, as did several electronic keyboards. In the early 1980s, and throughout the decade, some Japanese manufacturers were creating chips that could produce more complex sounds using wave table synthesis, but these were more expensive and only found niche use, so the 1980s remained dominated by PSGs. At the end of the 1980s, Yamaha exercised their patent for producing FM synthesis on a chip and began manufacturing a line of chips with much greater sound quality. Within only a couple years, the markets of video games, home computers, and electronic keyboards all shifted over to it and the 1990s were dominated by FM synthesis. In turn, FM synthesis gave way to the lowered cost of pulse code modulation chips which began to dominate at the end of the 1990s.

Technical

At their base, PSGs generate a pulse wave which is a square wave with asymmetrical duty cycle, or, stated more simply, a rectangle wave. Most of the PSGs that were produced had 3 independent pulse wave channels. Most PSGs could also produce noise, either as a dedicated channel or by temporarily overriding one of the pulse wave channels. Most PSGs also include volume levels and envelopes on their channels. The more expensive PSGs would be paired with extra channels that produce wave table synthesis or pulse code modulation. Only two PSGs (the NES APU and Commodore SID) incorporated a triangle wave which gave them at a major advantage over to the majority of PSGs as the triangle wave, sounding similar to a sine wave, offers much greater low end range for bass resulting in a more natural sound.

Typically, when trying to simulate instruments on a PSG, pulse waves are used for high end instruments, triangle waves are used for low end instruments, and noise is used for percussion. Since companies had to develop their own audio software to drive the PSG, each company tends to have a common timbre in the music they generate across their various games.

Chips

This is a list of the more common PSGs.

Company Year Model Number Chip Name Channels Applications
Atari 1977 TIA Television Interface Adapter (TIA) 1.) Pulse Wave or Noise
2.) Pulse Wave or Noise
Atari 2600, Atari 7800.
Atari 1979 C012294 Pot Keyboard Integrated Circuit (POKEY) 1.) Pulse Wave or Noise
2.) Pulse Wave or Noise
3.) Pulse Wave or Noise
4.) Pulse Wave or Noise
Atari 5200, Atari 8-bit.
General Instrument 1978 AY-3-8910 / AY-3-8912 / AY-3-8913 1.) Pulse Wave and/or Noise
2.) Pulse Wave and/or Noise
3.) Pulse Wave and/or Noise
Hundreds of arcade games, several video game consoles, lots of add-ons. Many variants like Toshiba T7766A.
Konami 1980 Konami Resistor–Capacitor (RC) 1.) ? Konami arcade games.
Konami 1989 053329 Virtual ROM Controller VI (VRC VI) 1.) Pulse Wave
2.) Pulse Wave
3.) Sawtooth Wave
Several Famicom games.
Microchip 1989 AY8930/P 1.) Pulse Wave
2.) Pulse Wave
3.) Pulse Wave
4.) Noise
AY-3-8910 variant with significant differences. Used in the Sound Master.
MOS Technology 1977 6560 / 6561 Video Interface Chip (VIC) 1.) Pulse Wave
2.) Pulse Wave
3.) Pulse Wave
4.) Noise
5.) PCM
Commodore VIC-20.
MOS Technology 1981 6581 / 8580 Sound Interface Device (SID) 1.) Triangle Wave, Sawtooth Wave, Pulse Wave, and/or Noise
2.) Triangle Wave, Sawtooth Wave, Pulse Wave, and/or Noise
3.) Triangle Wave, Sawtooth Wave, Pulse Wave, and/or Noise
Commodore 64, Commodore 128, SSI 2001.
MOS Technology 1983 7360 / 8360 Text Display (TED) 1.) Pulse Wave
2.) Pulse Wave or Noise
3.) PCM
Commodore 16, Commodore Plus/4.
Nintendo 1983 RP2A03 / RP2A07 NES Audio Processing Unit 1.) Pulse Wave
2.) Pulse Wave
3.) Triangle Wave
4.) Noise
5.) PCM
Famicom, Nintendo Entertainment System.
Nintendo 1989 DMG-CPU B Game Boy Audio Processing Unit 1.) Pulse Wave
2.) Pulse Wave
3.) Wave Table
4.) Noise
Incorporates the Sharp LR35902. Used in Game Boy, Game Boy Color, Game Boy Advance (for backward compatibility).
Nintendo 1990 MMC5 Memory Management Controller 5 1.) Pulse Wave
2.) Pulse Wave
3.) PCM
Several NES Games.
Oki Electric Industry 1981 MSM5232 1.) Pulse Wave
2.) Pulse Wave
3.) Pulse Wave
4.) Pulse Wave
5.) Pulse Wave
6.) Pulse Wave
7.) Pulse Wave
8.) Pulse Wave
Several arcade games. Poly-800 keyboard.
Philips 1984 SAA1099 1.) Pulse Wave
2.) Pulse Wave
3.) Pulse Wave
4.) Noise
5.) Pulse Wave
6.) Pulse Wave
7.) Pulse Wave
8.) Noise
SAM Coupé, Creative Music System.
Sega 1981 Sega Melody Generator (SMG) 1.) ? Sega G80 arcade board.
Sharp 1989 LR35902 1.) Pulse Wave
2.) Pulse Wave
3.) Wave Table
4.) Noise
Sharp 1997 SM8521 1.) Pulse Wave
2.) Pulse Wave
3.) Noise
4.) PCM
Texas Instruments 1978 SN76477 Complex Sound Generator (CSG) 1.) Sine Wave or Pulse Wave or Noise Various arcade games.
Texas Instruments 1980 SN76489 / SN76494 / SN76496 Digital Complex Sound Generator (DCSG) 1.) Pulse Wave
2.) Pulse Wave
3.) Pulse Wave
4.) Noise
Over a dozen home consoles and many arcade cabinets. Sega PSG and NCR8496 is a variant.
Yamaha 1983 YM2149 Software-Controlled Sound Generator (SSG) 1.) Pulse Wave and/or Noise
2.) Pulse Wave and/or Noise
3.) Pulse Wave and/or Noise
AY-3-8910 variant with more options. Atari ST, MSX2, Yamaha keyboards. Sunsoft 5B is a variant.

Songs

Some of my favorite songs which use PSGs include:

Title Game Artist PSG
Bard Ultima: Quest for the Avatar Seiji Toda NES APU
Concrete Stage The Bugs Bunny Crazy Castle (Game Boy port) Hiroyuki Masuno Sharp LR35902
Dr. Wily Stage 1 Mega Man II Takashi Tateishi NES APU
Maia Worzen Dragon Slayer IV: Drasle Family Yuzo Koshiro, Mieko Ishikawa AY-3-8910
Ending Mega Man II Takashi Tateishi NES APU
The Eternal Castle Britannia Ultima: Exodus Tsugutoshi Goto NES APU
Heat Wave Bionic Commando Junko Tamiya NES APU
The Last Ninja Theme The Last Ninja Ben Daglish, Anthony Lees MOS SID
Nemesis the Warlock Theme Nemesis the Warlock Rob Hubbard MOS SID
Opening and Title Mega Man II Manami Matsumae, Takashi Tateishi NES APU
A Peaceful Town Ultima: Exodus Tsugutoshi Goto NES APU
Positive Force VVVVVV SoulEye Simulated
Potential for Anything VVVVVV SoulEye Simulated
Pushing Onwards VVVVVV SoulEye Simulated
Riding Stages Bad Dudes (NES port) Various NES APU
Space Quest Theme Space Quest: The Sarien Encounter Mark Crowe DCSG
Stairway to Revelation Tower of Heaven flashygoodness Simulated
Title BGM The Legend of Zelda Koji Konda NES APU
Title BGM Metroid Hirokazu Tanaka NES APU
Town Theme Might and Magic: Book 1 - Secret of the Inner Sanctum Masaharu Iwata NES APU

Links

Link-Wikipedia.png  Link-VGMPF.png