39
Set noise register to %101 (white noise, medium shift rate)
Set noise register to %101 (white noise, medium shift rate) THEN update it to %100
(white noise, high shift rate) The data byte is NOT ignored.
Numbers 1, 2 and 4 above are the same as is described in the various existing docs.
Number 3 IS USED - when pausing between text boxes in SMS Alex Kidd in Miracle
World, it is used to silence the sound. Emulators not supporting this output a constant
tone instead.
Number 5 IS USED by some SMS Codemasters games (Micro Machines, Excellent Dizzy,
possibly others). They were written without official documentation so they always latch
the noise channel with the data bits set to 0, which gives high shift rate "periodic noise",
and write the wanted settings as a data byte. Emulators which then ignore the data byte
will produce the "periodic noise" which sounds like a high-pitched "eek" instead of a drum
beat.
Many games also produce the above two unusual behaviours but not repeatedly (often
when a SFX is first played, for example).
Also of note is that the tone registers update immediately when a byte is written; they do
not wait until all 10 bits are written.
- signifies an unknown bit (whatever was previously in the register)
How the SN76489 makes sound
The SN76489 is connected to a clock signal, which is 3579545Hz for NTSC systems and
3546893Hz for PAL systems (these are based on the associated TV colour subcarrier
frequencies, and are common master clock speeds for many systems). It divides this
clock by 16 to get its internal clock. The datasheets specify a maximum of 4MHz.
%1 11 0 0101 Latch, channel 3, noise, data %0101
%0 0 000100 Data %000100
Data written Tone0 contents
1 00 0 0000 ------0000
0 0 000000 0000000000
1 00 0 1111 0000001111
0 0 111111 1111111111
Summary of Contents for Franky
Page 1: ...Instruction Manual ...