By popular demand, here is a list of sound chips which are or will be available for use in coin-op games: 1. Pokey and Quad-Pokey Price: $1.35 for Pokey, $5 for Quad-Pokey, estimated. Performance?: $0.47 for Pokey, $1.59 for Quad-Pokey. Seriously, 2-4 channels per pokey, depending on whether 8-bit (sound effects) or 16-bit (music) frequency resolution is selected. Square waves and various types of poly-counter noise. Availability: Now. Support: A sound editor exists for the 800, and RPM includes a pokey driver. 2. Yamaha sound chip Price: $15.70 for the sound chip along with a custom DAC, $2.50 less without the DAC, in 10k quantities. Performance!: 32 time-slots (sine wave oscillators) which can be patched together in various ways, to give 16 voices of frequency modulation, or 8 voices with 2 modulators and 2 carriers each, etc. Modulators can modulate other modulators, etc., very flexible. Built-in attack-decay sustain-release envelopes for each oscillator. It is basically the same chip which is used in Yamaha's DX-7 synthesizers, except 10 bit output instead of 12. Each voice can be directed to left channel, right channel, or both (center.) Excellent for music and sound effects, even capable of doing speech with the right preprocessing, although not efficiently in terms of memory storage. Creating interesting sounds is easy, creating the interesting sound you wanted is a little more difficult. FM is somewhat non-intuitive (although there are rough guidelines), and it is difficult to computer analyze a sound and derive the FM parameters (though this may be do-able). However, with good support tools (which exist) and instant feedback of changes in sound parameters, it shouldn't be a big problem. Availability: The legal agreements are being worked out now, there don't seem to be any problems on either side. I will notify people when the deal is finalized. Support: Yamaha will apparently supply one of their new Yamaha Personal Computers along with documentation and software to support the sound chip, which will be available in Japan as an add-on. The Personal Computer is apparently aimed at the low end (under $300) market, uses the new MSX (if I have the right acronym) software standard that the Japanese have all agreed on, and runs Microsoft Basic (in English, no less). The sound development software seems on first inspection to be very professional. The development software will probably include some already designed musical instrument voices (and a few sound effects.) I view this chip as filling in a gap between the obsolescence of Pokey and the availability of Amy, after which time we may wish to use Yamaha, Amy, or both, depending on the game. If I were designing a game for production in 6-9 months I would definately include this chip (as soon as the deal is signed.) We will need for someone (volunteers???) to write a Yamaha driver for RPM. 3) Amy Price: around $8. Performance!: Additive synthesis, 64 harmonics, which can be divided up in various ways among 8 channels. Built-in amplitude and frequency envelopes. Choice of sine or noise for the harmonics. 16-bit output, you can choose how many bits you want to use for your DAC. Easy to analyze a sound and derive the additive synthesis parameters to resynthesize it. Can do high quality speech and singing, though not efficiently. A slight memory and processor bandwidth hog, but very powerful and flexible. Availability: Estimated 1st silicon in June, production quantities in December. As soon as we have 1st silicon, I will begin recommending for people to design Amy into their games. Support: The sound group at Corporate R&D is designing a development system for Amy. An Amy simulator is available now and will be moving over here before long. Some sound analysis and editing software has been written. The Amy development system will be much more powerful than that for the Yamaha, although currently it is aimed more at creating music voices than at sound effects (the same is true of the Yamaha support tools.) Amy will also need a driver to be written for RPM. 4.) TMS 320, TI's digital signal processing chip. Price!: $26.50, 2nd half of 84, in 25k quantities. Performance: It's a great little chip, if you only need to do what it is optimized to do - straight digital signal processing, sum-of-products, etc. It has the advantage of allowing you to use different synthesis techniques to create different sounds. In practice, once all the overhead code gets added in, it is very difficult to get a reasonable number of channels (8) at a reasonable sample rate (18 khz.) I have programmed it with a couple of different sound algorithms - 1) 8 voices with an excitation function of either noise, triangle wave, sawtooth wave, and a stored bandlimited function, followed by either one or two 2nd order bandpass filters. This allows filtered noise (with independent control of center frequency and bandwidth), sine waves from ringing a high-Q filter, and formant effects from filtering the periodic excitation functions. Algorithm 2) is a strange technique using a 2 dimensional waveform table, a surface which you can move around on in various patterns (lissajous patterns, etc.), tracing out the height of the surface at each point. I recently received the D-A board for the 320, and should have my programs modified so I can hear the sounds within a week or two. Assuming the Yamaha deal goes through, the 320 will be dropped as it is more expensive, harder to interface, less powerful, and has no sound development tools. Its only use might be in implementing some kind of fancy adaptive predictive coding technique for cramming mass quantities of sampled sound onto rom or videodisk. And it has much potential for doing vector graphics computation. Availability: Now. Support: I have an evaluation board, with on-board assembler, debugger, emulator, and RS-232 port. There are various macro cross-assemblers available for VAX, from TI and 3rd parties. TI is apparently putting a greater than average effort into supporting this chip. I also have an analog interface board with A/D and D/A. 5.) TI 5220 speech chip Price: $5.50. Performance: 1 voice of voice. Some sound effects can be done as well - the elephant trumpeting pass-by on Star Wars. The sound quality is a little unnatural but preserves some of the speaker's identity and expression. Reverb, noise, and background sounds on the source tape can totally confuse the PASS analyzer. Availability: Now. Support: TI PASS system analyzes the speech and allows the user to edit it, frame by frame. The system typically makes a number of pitch errors, amplitude errors, and filter parameter errors, which have to be cleaned up by hand. It's a fairly slow process, and requires some intuitive feel for linguistics and why we perceive certain phonemes the way we do, etc. There is a 5220 driver for RPM. 6.) Other stuff. Brad Fuller has some (partially debugged) code using a 6502 to implement one channel of adaptive delta modulation. This could use 1 channel of a pokey as a DAC (forced output mode) (4 bit - scratchy sound quality), or a real DAC. Not sure if the 6502 would have time to run RPM too, ask Brad. Could be used for storing voice and some sound effects, higher sound quality than the TI speech chip (assuming a reasonable sample rate), but higher storage requirements - ~15,000 bits (not bytes) per second for 6502 adaptive delta, ~1500 bits per second for TI speech chip. We need some way of A) getting a number (8 or more) of alternate voice (&sound&music) tracks off of a section of video disk, so we can use the same video for a number of different purposes, and B) getting a long passage of sound (10 seconds or so) off of a still frame of video. A) might be done by downloading adaptive delta modulation parameters to a ram and feeding them to a 6502. 8 channels * 15000 bits/sec*channel * sec/60 frames * byte/8 bits => 250 bytes/frame. Can we grab this much or more off a video disk? B) might be done with TI speech chip. Anyone have any ideas or interest in helping with this? (Dave Storie is also interested in this problem.) I welcome comments, suggestions, and offers to write the Yamaha driver for RPM!
Regarding my previous memo, Morgan Hoff informs me that the quad- pokey is actually a $12.90 part. Performance is still under $2.00. Also, the 320 signal processor's cost increases due to the need for high-speed rom and ram and interfacing hardware, depending on the specific application. Earl
Regarding my previous memo regarding my previous previous memo, Jed Margolin informs me that the online manufacturing resource planning system says that the cost of quad-pokeys was $6.90 last time we bought them. If anyone has any more numbers, I would be undelighted to hear them. Caring less, Earl
I now have 3 samples of the Yamaha 2151 FM synthesis sound chip (see my Jan. 19 '84 mail message for details.) Also 3 samples of their 3012 D/A converter. Also documentation for each of these chips (46 pages of hand- written Japanese English, but basically pretty understandable.) The documentation is in the process of being typed up, but if anyone wants to check out a copy of the handwritten version, see me. This is available for coin-op evaluation only; they don't want us competing with their home computer. We should have one of the Yamaha PC's within a couple of weeks, hopefully, and a demo will be given. Earl
For all you sys$mail:engineers out there, there will be a short demonstration of the Yamaha sound chip, personal computer, and FM voicing program at 2 P.M. this Friday, March 2, in the Multi-Purpose room. Earl
Apparently the price estimate that Yamaha quoted for their chip set didn't quite cover their costs. I was first told that they were going to stick to the $15.70 they had quoted me, but the new word is that the very embarassed Yamaha manager is in hot water with his bosses, and the new price is $19.30, FOB Japan. I personally think the chip is well worth the extra $3.60, but if this is going to change anyone's mind about using it, please let me know so we can make intelligent guesses about quantities. Sincelely, Earl
Does your game have trouble reproducing the speech patterns of females and (other) alien life forms? If so, you may wish to avail yourself of the 10 kHz sample rate option. The current sample rate is 8 kHz, which is optimal for male voice and requires less memory storage. To use the 10 kHz option, you must: 1) Change the clock for the TI 5220 from 640 kHz to 800 kHz. 2) You may need to adjust any lowpass filter for the speech output, as the new bandwidth will be 5 kHz instead of 4 kHz. The cutoff frequency can have a big effect on how the speech sounds - see me for details. 3) Tell us to analyze your speech at the 10 kHz rate, and to have RPM call the speech routine a little more often. (The new frame period is 20 ms instead of 25 ms.) 4) Allow for 25% more rom storage (I would let this be a deciding factor only if there is little difference between the sound quality at the 8 and 10 kHz rates.) If you're unsure which rate to use, or if you have sound effects or a mix of male and female voices you wish to try, we can try it both ways and see which sounds best. While we're on the subject of clock speeds, Brad mentions that since the Yamaha chip needs a 3.579545451 mHz (colorburst crystal) clock speed, it will be easy to derive the 1.7etcetc mHz clock to run the pokeys at the speed at which they run on the 800, so that the sounds we develop on the 800 development system won't sound different in the games. Earl
Jan 19, 1984