Tuesday, 11 October 2011

THE GAME BOY SOUND - Republished







This article was originally published in one of my older blogs which does not exist anymore

THE GAME BOY SOUND

OK, I got to admit that I have let myself into a bigger project as I thought. I wanted to write review like articles about my favored Game Boy sound programs, but faced the problem that it does not make sense to write that without writing how the Game Boy actually makes his sound. So I stopped writing the review and will give you an overview about the basics here. The plan is to release a game boy article every month, to leave room for the iPhone, pocket PC and DS stuff. So stay tuned and here we go back in time!


Chapter 01: The Game Boy Soundchip or what makes Chiptune Chiptune.


Unlike modern computers, that create sounds mostly via software, old times computers created sounds with dedicated chips. These chips can be seen as more or less sophisticated synthesizers inside in an integrated circuit (IC). The best known one chip synthesizer is for sure the SID chip that came with the Commodore 64 and is very wide spread in pop music today by the likes as Timbaland, Zombie Nation, Welle:Erdball and many others. Just as the C64, the original Game Boy features a sound chip as well. But hey, the Game Boy would never have been that affordable if Nintendo had not integrated all parts as much as possible. Therefore the sound chip is part of the   main processor chip and you will never find the chip alone if you open up a Game Boy. The sound part of the Game Boy CPU is some times called PAPU (Pseudo Audio Processing Unit) and is very limited in it's possibilities compared to the SID. But that doesn't make it less interesting today, because limitation forces the creativity of musicians as well as programmers.

Take it appart:

Even though everybody refers to the game boy sound as 8 bit sound it actually is 4 bit sound. The misunderstanding comes from the fact that the main architecture is running with 8 bit, but the sound parts digital analogue converter (DAC) who turns the digital sound into electric signals is running with 4 bits. This is partially responsible for the raw character of the sound. So if you want to reproduce this you know that you have to adjust your bithifter to 4bit ;)
The Game Boy sound chip can be seen as a synthesizer without filters. It has four channels, that can be seen as oscillators.

  1. Pulse (Square) wave with volume envelope and “sweep”
  2. Pulse (Square) wave with volume envelope
  3. Waveform can play a sequence of 32 4 bit samples ( Yes, this is a 4 bit sampler!)
  4. Noise with volume envelope



These channels can be controlled by programs so that game programmers where able to create sound effects and music in the game boy games. As you can see all sound modules are missing filters, one of the challenges this chip offers for music creators. But what can the channels actually do? The pulse channels and the wave channel can create frequencies from 64hz (good bass) to 131072hz (Vampirebat/dolphin dance, humans can't hear that). The noise channel produces frequency mayhem between 2hz  and 1048576hz. But this is hard to control since it is nothing but white noise and therefor atonal. The sweep function of the first channel creates a piuuu that overwrites all other current values The pulse channels can also shift their pulse width, so if you use both channels together it is possible to create fat pulse bass sounds etc. But more about that later.
The waveform channel is very flexible as you can imagine. It can be used to create all kinds of low resolution waveforms from simple synth shapes like sawtooth to full sample playback.

The Control

That's about everything that can be said about the PAPU in general without going too deep into details of programming. If you are interested in this you will find a reference link at the end of the article. For us mortals it is more interesting what programs are already out there to harness the sound power of the game boy. There we will find two different paradigms. One is complete numeric control of every aspect of the sound chip, the other brings a nice graphical interface. And that will be the actual reviews you will read in the following months.

Links:

Programming reference:
http://www.devrs.com/gb/files/hosted/GBSOUND.txt

LSDJ wiki:
http://wiki.littlesounddj.com/GameboyResources?v=gf9

Wikipedia:
http://en.wikipedia.org/wiki/Game_Boy_Sound_System

http://en.wikipedia.org/wiki/Game_Boy

1 comment:

  1. hi..Im student from Informatics engineering, this article is very informative, thanks for sharing :)

    ReplyDelete