RE: Sega Speech - SP0250/SP0256 (long)

From: Clay Cowgill <clayc_at_diamondmm.com>
Date: Fri Dec 05 1997 - 12:13:15 EST

>It was me. I'm currently working with Ron Carlson, who was the
>project head for the design of the Mattel Intellivoice, to
>reverse engineer and emulate the Intellivoice Module. It is
>based around an SP0256, along with a Parallel in/Serial out FIFO
>chip called the SPB640, which feeds the SP0256 with serial data.
>In this way, it acts like one of the GI Serial ROMS.

Ahh, was he one of those "Blue Sky Ranger" types?

>My hope is to emulate the SP0256 for the Intellivision and the
>SP0250 for "another major emulator project" :)

Sounds good. ;-)

>The SP0256 does have the same digital filter stage as the SP0250,
> from what I can tell. However, the serial data going to it is not
>simply the coefficent data. It is a mix of instructions and immediate
>data for the 4-bit micro in the SP0256.

Right. Judging from the datasheets the SP0250 is loaded with 15 bytes per
frame-- 12 filter coefficients and three voicing/parameter bytes. The
SP0256 OTOH looks like it might have 5 bytes of voicing/parameter bytes.

>I have not yet acquired the instruction set and data format info from
>Ron yet, nor the details of the serial clocking. However, he has
>promised me both. He has a 100 page programming manual for the
>SP0256!!

Ooooh. That'd be cool!

>It does support all of the synthesis modes mentioned. The instruction
>set has 16 instructions including register loading, register deltas,
>jumps, and a single level stack.
>
>The Sega speech data should be able to be converted into this (SP0256
>compressed) data, once the format is learned. I've currently extracted
>the SP0256 samples from the INTV "Space Spartans" cartridge, and plan
>to extract the "SP0250 Space Fury" data next.

Right, your "Space Spartans" data will likely be just "address" sequences
that index into the allophone table in the SP0256. Does the INTV use the
"address" lines on the SP0256, or does it do everything over the serial
link? (If it's over the serial link I'll be taking my Intellivoice apart
tonight. ;-) I always thought they were using it for the allophone synth
and not as an LPC engine. (Much lower bitrates/memory usage on the
allophone set than streaming LPC to it...)

>Clay, if you want to share info on this stuff I'll give you everything
>you have if you'll do the same.. :)

Sounds great. Send me a mailing address in private e-mail and I'll make
copies of all the stuff I have. (Ironically the Radio Shack "cross
reference" book has the best info on programming the SP0256-- all the
allophone tables, etc.)

>One more note regaring Mr. Nyquist. The Intellivoice takes the SP0256
>output and runs in through one impressive analog filter. It is a 5-pole
>elliptical low-pass implemented with generalized impedance converters.
[...specs snipped...]

Geez. Yeah, I think that'll clip pretty much everything past the rolloff
point. ;-)

>If you want to see a schematic of this or just follow along with the
>reverse-engineering of the Intellivoice, my web site is coming
>together at http://www.2bits.simplenet.com/

Thanks Frank, I'll check it out!

-Clay

Clayton N. Cowgill Engineering Manager
_______________________________________________________________________
/\ Diamond Multimedia Systems, Inc. clay@supra.com
\/ Communications Division http://www.supra.com/
Received on Fri Dec 5 09:14:26 1997

This archive was generated by hypermail 2.1.8 : Thu Jul 31 2003 - 23:01:04 EDT