Thursday, January 14, 2010

Hidden Voices

If you try OutRun's Sound Test, you'll notice there are four voices you can apparently play. These are the speech samples Get Ready, Congratulations and Check Point. The forth sample, "Voice 4", doesn't work. If, like me, you've lost sleep over such a monumental issue - read on!

The elusive fourth voice is, in fact, still in the ROM files, namely those containing the PCM sample data. You can import these ROMs straight into a sound editor like Audacity and play them. I imported the raw files as PCM 8-bit unsigned, with a sample rate of 8000Hz. Note that the sample rate of the individual samples does differ though.

The 192K of sample data is stored across the following files:

opr10191.68 - This file contains Voice 4

These PCM files contain all samples from the drums used in the music, through to the sound effects and speech.

You can hear an mp3 I exported of the voice here. The voice is "You're Doing Great", and seems to be stored at around 4000Hz, which is a lower sample rate than the other voices, which are at 8000Hz. I imagine the sample was removed because the designers couldn't figure out a good way of invoking it.  There is already a voice at the checkpoint stage, which is the main way of determining your progress. Using the voice mid-level, based on your current position and time, could have created bugs or just not proved that compelling.

I should admit that I haven't debugged the sound code much, so a lot of this is based on pretty rough experimentation. I haven't delved into the code to see if it's easy to hook this sound up somewhere with brief debugging. There are certainly no high-level calls from the 68000 code, as I've listed every sound that can be played (and there are more than just those in the sound test). Looking at the Z80 code might yield more information. But I don't envisage having to port this directly, as I am planning with the 68000 code.

Update: Thanks to the JAMMA+ forum I've been informed this hidden voice is apparently used in Space Harrier. So maybe the OutRun developers started by using some of the Space Harrier code as a framework. Certainly some of the error messages are the same as shown in previous blog posts.


DarrenF said...

It was this missing #4 voice that I was googling about when I stumbled on your blog. Very interesting! I just played around with the audio ROMs. I'm now trying to think of something clever I can digitize into the proper format w/Audacity, graft into the file, and burn myself a custom audio ROM for my OutRun :)

yt said...

If you figure out anything additional with regard to the format let me know. There may well be additional formatting info in the ROMS.

Having not decompiled the Z80 sound code for OutRun, it's an area I'm not an expert on.

The 68k sends relatively high level commands, (i.e. play sound index 5, and some volume info) so doesn't yield many details.

Darnos said...

Maybe this isn't the best place, maybe you know... But... do you see that at first stage there is a unique and special house?

Placing at right side. A bright blue house whit a FLAMINCO signal. It's funny because it's only one i can found at game. Could hide a secret?

Also there is another place where houses have a pink roof and there is write FLAMINCO too. But there are full of them. But that blue one is unique i think.

Anyway... why about flamincos? What's the deal...? What a mistery! :-)