I had a revelation yesterday...
There's an off-the-shelf part that would fit 99% of our requirements for
making a universal sound board for Cinematronics and Sega G80
multigames.
It's already been used on tons of arcade game boards-- the OKI 6295.
Very neat little gizmo. It's an ADPCM playback device that supports up
to 127 "phrases" stored in an external ROM. 4 bit ADPCM with rates up
to 32KHz. Just over 16 seconds of playback at that speed from an
external 27C020. It's about what we're "wishing" for-- four channels,
low parts count (ROM + 6295 + little micro to bridge interfaces),
compression, automatic playback...
So here's the cool part. You write a two 8 bit words to the device.
This tells it what "phrase" to play, on what channel, and how loud (16
steps). You can have up to 127 phrases per ROM, and can bank-select
ROMs for more. (All sounds played simultaneously would have to be in
the same bank.)
The first 0x3ff bytes of the ROM are a phrase table (8 bytes per
phrase). If you tell the chip to play "Phrase 3" it goes to address
0x010 and grabs 8 bytes-- the first three are the start address of the
sound, the next three are the ending address, the other two bytes do
something I don't recall off the top of my head. Then you're done. The
chip does the rest-- fetches samples, decodes, plays the sound.
For multivoice polyphony you just send it more "Phrase" addresses
assigned to different channels.
If you wanted more than 4 voices, just use 2 of 'em.
We'd just put a little uController (like a 2051 or Z8 or Pic or
whatever) in front of the 6295 to receive the sound commands from the
game hardware and have it do the decode to trigger playback of the
samples. Pretty clean solution.
Some trap code with the emulators should be able to give us an un-biased
assessment of how many simultaneous sounds are active at any given time.
Long-term repeating sounds are possible (but not optimal for the
technique), but the rest should be a walk-in-the-park.
Comments?
-Clay
Clayton N. Cowgill Engineering Manager
-------------------------------------------------
/\ Diamond Multimedia System, Inc.
\/ Communications Division
Received on Thu Apr 23 13:43:09 1998
This archive was generated by hypermail 2.1.8 : Thu Jul 31 2003 - 23:00:44 EDT