Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Speech Synthesizer module under development - help needed!

440 views
Skip to first unread message

Philip Pemberton

unread,
Feb 29, 2000, 3:00:00 AM2/29/00
to
Hi,
I don't know if you all remember, but here goes.
I am designing a replacement for the now-obsolete SP0256 speech synth
chip in the form of a module. Basically, the module is intended as a
drop-in replacement for the chip. My attempts to snaffle the
allophones/phonemes/whatevers from other programs have so far been
unsuccessful. I have set up a website at www.philpem.f9.co.uk. Select
'SP0256 replacement project' from the navbar on the lefthand side of the
window. If anyone has a fully working 0256 card then would you please
digitize the allophones for me or, even better, let me borrow it? Contact me
for further info. This would enable me to finish off the project and then I
will release the sourcecode. For the benefit of those who missed my original
posting, I will be releasing the PIC code as freeware. Source will be
included
for free too. Please contact me before beforehand if you want to send me an
e-mail attatchment over 500K, though!

Thanks in advance,
Phil.

Gordon McComb

unread,
Feb 29, 2000, 3:00:00 AM2/29/00
to
This is something I keep asking about, but so far nada. I keep trying to
raise a revolution against MicroChip, which owns the mask to the SPO256
(they got it when they bought out General Instrument) but I guess
everyone is too happy programming their PICs to bite the hand that
serves their dinner.

Anyway, as you probably discovered you can't just digitize the sounds
and play them back because the SP0256 has features to blend phonemes, as
well as extend the ending sound as appropriate (e.g., if you have it say
"th" it says "thhhhhhhhhh..." until you tell it to shut up). Any
reproduction of its phonemes would have to repeat the sound, but not
from the beginning. Maybe you have all that worked out, and I'm sure it
hasn't been a simple project.

I don't have a fully working SPO256 board, but I do have one or two of
the bate chips, and I think even one of the oddball 3.12 MHz crystals
they want (personally, I think they chose this value when they found it
talked too fast when using a "normal" 3.58 MHz crystal; easier to change
the crystal than redo the PROM mask! <g>).

BTW, I couldn't find the link you're talking about. Your Java applet for
the funky outline may not have been working right.

-- Gordon

Tim Jacobs

unread,
Mar 1, 2000, 3:00:00 AM3/1/00
to
Philip Pemberton <pap...@FreeNet.co.uk> wrote in article
<38bc1...@news2.cluster1.telinco.net>...
> Hi,

> I don't know if you all remember, but here goes.
> I am designing a replacement for the now-obsolete SP0256 speech synth
> chip in the form of a module. Basically, the module is intended as a
> drop-in replacement for the chip. My attempts to snaffle the
> allophones/phonemes/whatevers from other programs have so far been
> unsuccessful. I have set up a website at www.philpem.f9.co.uk. Select
> 'SP0256 replacement project' from the navbar on the lefthand side of the
> window. If anyone has a fully working 0256 card then would you please
> digitize the allophones for me or, even better, let me borrow it? Contact
me
> for further info. This would enable me to finish off the project and then
I
> will release the sourcecode. For the benefit of those who missed my
original
> posting, I will be releasing the PIC code as freeware. Source will be
> included
> for free too. Please contact me before beforehand if you want to send me
an
> e-mail attatchment over 500K, though!

I have an old Currah speech synthesiser for my equally old C64, but I don't
know if either of them still work. The synthesiser uses an SPO256, and
plugs into the cartridge slot.

I'll try them out and let you know.

Tim
--
Tim Jacobs timothy...@gecm.com
These are my views, not those of my employer.

JimT9999

unread,
Mar 1, 2000, 3:00:00 AM3/1/00
to
Wouldn't it be easier to design a completely new speech chip?

And maybe add some new features, like the ability to record your own phonemes
and make your own voice (or use a celebrity's) or make it speak with an
european/asian accent, and/or a male/female option...?

Gordon McComb

unread,
Mar 1, 2000, 3:00:00 AM3/1/00
to
Easier? You're joking, right? It's a little early for April Fools,
though...

Let's all note that a speech chip does not just play back discrete
phoneme sounds in X order. That's not how they work. If you recorded
your own phonemes you'd still have to tell the chip how to string it
with other sounds, and there could easily be dozens or hundreds of
permutations per phoneme. And *then* you have to account for variances
in inflection, speed, pitch, etc.

Check out:

http://www.bell-labs.com/project/tts/

for an ongoing project in speech synthesis; the site lets you type in
text and get a synthesized sound file (WAV, AU, AIFF) in return. This is
a multi-lingual product, with an aim at providing speech to Web sites
(among other uses). There are some links through the search engine to
earlier Bell Labs research -- namely the Voder and the Vocoder -- which
is useful reading. (And of course, you can use their system to record
sound bites for your robot if you use speech storage chips like the ISD
line.)

Comedy is easy. Speech synthesis is hard.

-- Gordon

JimT9999

unread,
Mar 2, 2000, 3:00:00 AM3/2/00
to

>Easier? You're joking, right? It's a little early for April Fools,
>though...

I meant- if he had the ability to create a speech chip/module, it would seem
easier to me to create a totally different chip from scratch, without the
self-imposed limitations of trying to make an exact clone of the original one.


Gordon McComb

unread,
Mar 2, 2000, 3:00:00 AM3/2/00
to
My impression of the project is that he's trying to record the 64 (or whatever)
phonemes from the SPO256 and then just play them back to assemble speech. I'm not
sure what, if any, phoneme blending algorithms he's working on, how he intends to
vary pitch, etc. I didn't get the idea it's an *exact* clone, but that's not bad
anyway, as the SPO256 was pretty easy to work with.

-- Gordon

Philip Pemberton

unread,
Mar 2, 2000, 3:00:00 AM3/2/00
to
Sorry, my website isn't up properly yet :-( My uploader seems to be sending
it into the wrong folder... I'll try again with WS_FTP on Saturday.

Later,
Phil.

PS: If I can connect to F9 then I'll upload it by 10PM GMT. If not then
it'll be up on Saturday.

Doug_V

unread,
Mar 2, 2000, 3:00:00 AM3/2/00
to

snip:
|interest in the chip. I'm still trying to get mine to work... Anyone fancy
|sending me a 3.12MHz xtal? I can't get these little devils anywhere in the
>snip<
|Later,
|Phil.
|
Phil, you can use a color burst crystal (3.5mhz), higher pitch, but still works.


Jim Hewitt

unread,
Mar 2, 2000, 3:00:00 AM3/2/00
to

Or even a 3.07 MHz - lower pitch but still works.

--
Jim Hewitt, Software Design Engineer
Hewlett-Packard Co., Department LaserJet Division
(208)-396-4417 Jim_H...@hp.com

Gordon McComb

unread,
Mar 2, 2000, 3:00:00 AM3/2/00
to
Phil, I bought a bunch of the 3.12 MHz crystals in the mid 80s when I
experimented with this stuff, and I might have one I could send. But as
Doug mentions, a slightly higher or slightly lower crystal will work;
the playback speed will be affected.

I like the idea of unlimited text speech processing, but with the lack
of a good -- and cheap** chip, more and more I'm leaning toward using
ISD voice storage ICs and recorded sound piped through a vocoder. I
can't understand a word the robot says right, but it sounds cool!
(Really, I just have to either A) get a better vocoder, or B) learn to
use the one I've got. Anyone have any ideas for a *good* vocoder program
for Windows 9x? The Orange Vocoder...whatever it's called...from
Prosoniq sounds *SUPER* cool, but it's only for a Mac. Don't got a Mac.
Well, I do, but the vocoder software won't run on a 1988 vintage SE!!
I'm not set against a hardware vocoder, but the good ones seem to be
VERY expensive.)

-- Gordon

Philip Pemberton wrote:
>
> > This is something I keep asking about, but so far nada. I keep trying to
> > raise a revolution against MicroChip, which owns the mask to the SPO256
> > (they got it when they bought out General Instrument) but I guess
> > everyone is too happy programming their PICs to bite the hand that
> > serves their dinner.

> Why not send out an e-mail petition? Show Microchip there's still some


> interest in the chip. I'm still trying to get mine to work... Anyone fancy
> sending me a 3.12MHz xtal? I can't get these little devils anywhere in the

> UK... Damn... Discontinuing the PIC16C84 was a bad move... I've found
> designs in which an F84 simply will not work. ÂŁ8.99 for a C84? You must be
> joking...

DRJ53

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Do you need the mask? Can one get the source code or can the object code be
extracted from an SPO256?

Jeff


Gordon McComb wrote:
>This is something I keep asking about, but so far nada. I keep trying to
>raise a revolution against MicroChip, which owns the mask to the SPO256
>(they got it when they bought out General Instrument) but I guess
>everyone is too happy programming their PICs to bite the hand that
>serves their dinner.
>

Gordon McComb

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
I've gotten mixed responses of what's inside the SPO256.. But yes, if source
code (assuming it's externally programmable) were available, that would be
great.

-- Gordon

Doug_V

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Good is definitely relative. For the m$win9x+ you could try the research
division at Microsoft: The "Whistler" (Windows Highly Intelligent Stochastic
Talker).
http://www.research.microsoft.com/srg/ssproject.asp
S'posed to be included with w2000? Haven't spent the time to find out, so if
you have the W2K you might want to check the CD-ROM.
Not vocorder, but intelligible. The vocorder idea reminds of the
commodore/trash-80 days using the tape player and an indexer then finally moving
up to a hacked 8in. floppy (1.2MB). Sucked a lot of space for the limited
number of words, but add better compression, and the large roms available
cheaply now, and I bet one could easily fit 200 words on a rom.
The MS_Agent project(s) also have several apparently phoneme based software
synth, like the Learnout and Hauspie (don't know if that's the right spelling),
which sounds remarkably like the ol' sp0256al2. You can modify the library to
speek words in a specific manner. MS Agent is also kind of cute. Download the
characters and modify the actions/reactions as needed in response to whatever
stimuli you program. MSAgent also has HTML examples provided.
Some ideas and toys to play with.

Gordon McComb wrote in message <38BEE9...@gmccomb.com>...
>snip<

Tim Jacobs

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Philip Pemberton <pap...@FreeNet.co.uk> wrote in article
<38bed...@news2.cluster1.telinco.net>...

> > I have an old Currah speech synthesiser for my equally old C64, but I
> don't
> > know if either of them still work. The synthesiser uses an SPO256, and
> > plugs into the cartridge slot.
> I thought the Currah units were only for the ZXSpectrum... Does it have
an
> audio output? Would you record the allophones as singles and then as
> doubles - just to see how the length doubling stuff works... It'll make
it a
> lot easier... If you find an SPO256 in a box somewhere, let me know. I'll
> buy it off you (mine's as extinct as the dodo).

> > I'll try them out and let you know.

I'll see what I can do this weekend. It may be difficult to get it to give
me the allophones individually.

What do you mean by "doubles"?

E-mail your Snail-mail address to me. If I can't get it to work, I'll send
you the whole unit. If you copy it to tim.j...@cableinet.co.uk it'll
make sure I get it.

BTW, someone suggested using a "colour burst" crystal. The UK ones are
4.433 MHz, not the same as the 3.9ish MHz NTSC ones. RS sells 3 MHz
crystals. Besides, if you use a 4 MHz oscillator, that's what most people
have for their PICs, and are easy to get. Plus you get slightly faster
instruction times which, in turn, gives you more instruction cycles for the
processing.

Steve

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
--------------
I already have all these allophones from the SPO256-AL2 recorded as .wav
files if you need them!!
-Steve
--
-Steve Walz rst...@armory.com ftp://ftp.armory.com:/pub/user/rstevew
-Electronics Site!! 1000 Files/50 Dirs!! http://www.armory.com/~rstevew
Europe Naples Italy: http://ftp.unina.it/pub/electronics/ftp.armory.com

Stephan M. Sprenger

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to

Gordon McComb wrote:
>
> The Orange Vocoder...whatever it's called...from
> Prosoniq sounds *SUPER* cool, but it's only for a Mac

Not true. The PC Version of OrangeVocoder is shipping as of last week.

Stephan M.Sprenger
The DSP Dimension http://www.dspdimension.com

Gordon McComb

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Ohhhh! Great news. But why can't I find it at their site? What's the
secret? (Probably me just not recognizing the product on their pages). I
would order it today if I could.

-- Gordon

Philip Pemberton

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
I've just found my SPO256 in my junk box embedded in a piece of polystyrene
(the stuff with alu foil wrapped around it) along with two other chips
(supposedly from the Currah uSpeech unit). I got the set of three in a
closing down sale at Greenweld Electronics in Southampton. If anyone wants
the two chips, I'll trade for an SP0256 or two. Is there any way to test an
SPO256? The RadioShack/GI datasheet reveals the existence of a pin labelled
TEST. The description is merely "Connect to ground for normal operation".
Anyone care to shed some light on this? Here are the numbers on the two
chips:

R09854CS-2030
778R01
Ĺ CURRAH 1984
GI 8438 CFA

<note: 8438 sounds like a date code. The GI is printed on the chip in large
Times new roman-style>

And the other one:

LA05-148
GI 8435 SGA
<8435=1984, week 35, GI in large TNR>

I also have an SL486 if anyone wants it. I think the GI chips are speech
ROMs. The one that says (C) Currah is almost certainly a ROM, IMHO.

Later,
Phil.

Philip Pemberton

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
> >Easier? You're joking, right? It's a little early for April Fools,
> >though...
> I meant- if he had the ability to create a speech chip/module, it would
seem
> easier to me to create a totally different chip from scratch, without the
> self-imposed limitations of trying to make an exact clone of the original
one.
Last time I checked, my bank balance was not ÂŁ99,000,000. And I don't own a
semicondctor factory ('chip foundry'). :-( I wonder if we (as in everyone on
this ng) could pressure Microchip into starting production again, i.e. by
making about 100 thousand of them and trying to sell them. Pity they're only
interested in making PICs, KeyLok chips and EEPROMs. Last time I tried to
download a dsheet off their site, I got a "404 not found" message -
charming! I later downloaded it using PartMiner. Much quicker :-)

Later,
Phil.

Philip Pemberton

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
> Phil, you can use a color burst crystal (3.5mhz), higher pitch, but still
works.
That's what I tried, it just shreiks instead of speaking :-( I'm beginning
to suspect a dodgy chip :-(

Later and thanks,
Phil.

Philip Pemberton

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
> I've gotten mixed responses of what's inside the SPO256.. But yes, if
source
> code (assuming it's externally programmable) were available, that would be
> great.
They're MASK ROM devices - factory progged, and AFAIK, you can't read the uC
code in anyway.

Later,
Phil.

Jim Hewitt

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Gordon McComb wrote:
>
> I've gotten mixed responses of what's inside the SPO256.. But yes, if source
> code (assuming it's externally programmable) were available, that would be
> great.

Please forgive me if I err, but I was strongly under the impression that the
actual speech processing portions of the SPO256 are NOT digital, but the chip does
have digital input & control for i/o. [Let's remember when this chip was originally
designed - late 70's early 80's]. If that is the case, then there is no source or
object code and even the mask may be of dubious value if the manufacturing processes
are likewise antiquated.

Sorry to be a wet sponge or rain on your parade in any way. I, too, wished there
were some inpexpensive speech generation chips, but the current trend seems to be to
let a (somewhat) powerful processor generate the speech digitally. Maybe someone
wants to port these speech systems to a 6811?

Jim

>
> -- Gordon
>
> DRJ53 wrote:
>
> > Do you need the mask? Can one get the source code or can the object code be
> > extracted from an SPO256?

--

Gordon McComb

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Jim Hewitt wrote:
> Please forgive me if I err, but I was strongly under the impression that the
> actual speech processing portions of the SPO256 are NOT digital, but the chip does
> have digital input & control for i/o. [Let's remember when this chip was originally
> designed - late 70's early 80's]. If that is the case, then there is no source or
> object code and even the mask may be of dubious value if the manufacturing processes
> are likewise antiquated.
>
> Sorry to be a wet sponge or rain on your parade in any way. I, too, wished there
> were some inpexpensive speech generation chips, but the current trend seems to be to
> let a (somewhat) powerful processor generate the speech digitally. Maybe someone
> wants to port these speech systems to a 6811?

True, but on the other hand, the SPO256 came from the same folks who
created the original PIC (and about the same time, though possibly a
little earier). I don't recall the SPO256 being out in the late 70s.
That would be the timeframe for the Votrax SC-01, which was in many ways
a superior chip, as well as the LPC systems TI had developed. Frankly,
I don't know when the SPO256 was introduced. The fact that Radio Shack
was selling in in 1985 suggests to me, however, that it might have
already been overstock at that time.

I agree that things like the SoundBlaster, which -- with the appropriate
drivers -- can create text-to-speech output, and helped kill the
stand-alone chip market. OTOH, I think we're seeing the re-emergence of
smart products, and not all can have an ISA bus in them. Plus, there's a
limit to what you can cram into a microcontroller. Personally, I'd like
my drill press to remind me not to hold the work with my hands (almost
cut off a finger last weekend doing this...sheesh!....and it's not like
I don't know better).

-- Gordon

Stephan M. Sprenger

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to

Sorry, wrong key shortcut :-)

Gordon McComb wrote:
>
> Ohhhh! Great news. But why can't I find it at their site? What's the
> secret? (Probably me just not recognizing the product on their pages). I
> would order it today if I could.
>
> -- Gordon

They don't sell it online yet (in case you're wondering, I'm working at
Prosoniq) but the info at Steinberg (who distribute it) is here:

http://www.steinberg.net/products/ae/plugins/orangevocoder/index.phtml?id=0303030104&sid=03470848

Regards

Dale Grover

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
According to the 1987 book "Chip Talk: Projects in Speech
Synthesis" by Dave Prochnow, the SP0256-AL2 (General
Instruments) is an allophonic formant synthesizer. A 16K
byte ROM contains the allophones, and at 64 allophones,
that's 256 bytes each. The output is a digital stream that
must be low-pass filtered to get the audio.

Also mix into this the fact that GI brought out the SP1000
in the early 80's (as I recall), a chip that did both LPC
synthesis AND analysis--so we're talking about a company
with some good realtime digital signal processing. It seems
very probable that this chip is indeed a digital formant
synthesizer, not analog as was suggested in another post.

The nature of speech is such that it is very difficult to
create nice sounding transitions by just concatenating
speech segments. (Actually, one method that was popular was
to concatenate the transitions. Nice output, but lots of
memory required, since transitions could be between many
different phonemes!) To do something that sounded as nice
as the SP0256, a plug-in replacement would need to implement
that formant synthesizer (or something close by).

As someone who has coded a formant synthesizer, I'll say
that it is possible, a bit complicated (but within a good
programmer's ability), but very time consuming. On a
general-purpose DSP architecture it is very easy to do in
realtime, but I'd say it would be problematic using a
generic microcontroller--there are 5+ digital filters to
evaluate at the sample rate, plus other operations going
on. (I used about 8 MIPS on a 16-bit DSP for the core of
the synthesizer, but I bet you could do it in half that or
less.)

I have some general speech-related resources at
http://www.redcedar.com/sc01.htm
which includes a paper by Klatt describing (and listing) the
FORTRAN to do a formant synthesizer. (C source is readily
available nowadays as well--see the comp.speech.xxxxx FAQs.)

The Phillips PCF8200 had no ROM, but was also a digital
formant synthesizer. Their tech application note on that
chip is very interesting, as it gives insight into how the
formant parameters are encoded, and what is the bare minimum
needed.

All of that to say that the 16K mask ROM isn't opcodes, it's
the parameters for the formants/digital filters. Even if
you had this information, you'd be quite a ways away from
being able to do anything with it, since you need the
formant synthesis engine.

--Dale

DRJ53 wrote:
>
> Do you need the mask? Can one get the source code or can the object code be
> extracted from an SPO256?
>

Jim Hewitt

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Philip Pemberton wrote:
>
> > Phil, you can use a color burst crystal (3.5mhz), higher pitch, but still
> works.
> That's what I tried, it just shreiks instead of speaking :-( I'm beginning
> to suspect a dodgy chip :-(

I have three of the SP0256 chips. Two of them are quite happy with 3.07 MHz and
the colorburst. The other one will start speaking and then starts shrieking [I
like your term!] - you have to pull to power to reset it. I have _heard_ that
the chip crashes sometimes if the clock signal is not stable. You could try an
oscillator instead of a simple crystal but good luck finding that frequency.
Also, you could try some variable caps to tune or stabilize the frequency a bit -
I wounld't necessarily assume the SPO256 is dead.

Jim

>
> Later and thanks,
> Phil.

Gordon McComb

unread,
Mar 3, 2000, 3:00:00 AM3/3/00
to
Ah, that explains it.

If the demo clips are any indication, it's the best-sound digital
vocoder I've ever heard. Your company should be very proud of it. I see
by trhe specs on the Steinberg page my machine is a little anemic to run
it (the processor is too slow), but maybe this would be a good reason to
get a new machine!

-- Gordon

Doug_V

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
As a point of interest, going through the "old projects shed" I came across the
first version of the SP0256 that was used on a trash-80(model II). Curiously
the chip; SPO256-017 (not the AL2) and the srom labeled SPR016-117 (presumably
the 2k*8 rom?) were seperate units at one time in production. According to my
notes, which are fairly erratic, the SP0256-017 would not operate without the
external serial rom. Further, that the SP0256-017 had an actual PWM, a 12 pole
digital filter, and a small cache, and was programmed in TMS/PIC 7001. Also,
that TI had a very similar chip set being used in the TI Voice Module for the
TI99/4a. I know there are some of those laying around somewhere, try to find
them tomorrow.
Don't know if any of this helps.

Philip Pemberton wrote in message <38c02...@news2.cluster1.telinco.net>...


|> I've gotten mixed responses of what's inside the SPO256.. But yes, if
|source
|> code (assuming it's externally programmable) were available, that would be
|> great.

Philip Pemberton

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
> My impression of the project is that he's trying to record the 64 (or
whatever)
> phonemes from the SPO256 and then just play them back to assemble speech.
Bang on! That's my plan. A very kind fellow called Luis Yanes kindly
digitized the allophones that his module produced. I'm just waiting for him
to send me the OY allophone, digitized at 44100Hz, mono, 16-bit, just like
the other allophones. No offence to theOne, but it sounds a hell of a lot
better. And it doesn't overload my speakers! (talker2.wav caused CoolEdit 96
to display the clipping indicator). I'll upload the site very soon.

> I'm not sure what, if any, phoneme blending algorithms he's working on,
how he intends to
> vary pitch, etc. I didn't get the idea it's an *exact* clone, but that's
not bad anyway, as the
> SPO256 was pretty easy to work with

Actually, AFAICT (as far as I can tell) the SPO256 doesn't do any phoneme
blending at all - it merely repeats the same allophone again. And I can now
understand what it is trying to say :-) I might even produce a Win32
software-based synthesizer soon! Oh, it'll be freeware, just like the PIC
code.
The module is designed to be a drop-in replacement for an obsolete SPO256
and AFAIK the low-pass filter won't cause any problems. It has an onboard
DAC anyway - no PWM bother - just hook it straight up to the audio amp!

Later,
Phil.

Doug_V

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to

Doug_V wrote in message ...
>snip<

|external serial rom. Further, that the SP0256-017 had an actual PWM, a 12 pole
|digital filter, and a small cache, and was programmed in TMS/PIC 7001. Also,
>snip<

Scratch the part about being programmed in TMS/PIC, I was referring to the
suggested PIC 1650A host processor in my notes.
Found the app manuals for the SP0256. More to come later.
Sorry.
BTW Just found another link to an old toy:
http://www.ti.com/corp/docs/company/history/pmos.shtml TI -first single chip
speech synth.

Steve

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to Philip Pemberton
Philip Pemberton wrote:
>
> I've just found my SPO256 in my junk box embedded in a piece of polystyrene
> (the stuff with alu foil wrapped around it) along with two other chips
> (supposedly from the Currah uSpeech unit). I got the set of three in a
> closing down sale at Greenweld Electronics in Southampton. If anyone wants
> the two chips, I'll trade for an SP0256 or two. Is there any way to test an
> SPO256? The RadioShack/GI datasheet reveals the existence of a pin labelled
> TEST. The description is merely "Connect to ground for normal operation".
----------------------
The best way to test it is to hook it to a parallel port and run it.
All of the datasheets and schematics for the SPO256-AL2 and CTS256-AL2
are in GIF-per-page format on my ftp site:
ftp://ftp.armory.com/pub/user/rstevew/CTSPO256/

Philip Pemberton

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
> I have three of the SP0256 chips. Two of them are quite happy with 3.07
MHz and
> the colorburst. The other one will start speaking and then starts
shrieking [I
> like your term!] - you have to pull to power to reset it. I have _heard_
that
> the chip crashes sometimes if the clock signal is not stable. You could
try an
> oscillator instead of a simple crystal but good luck finding that
frequency.
The local Maplin superstore (Leeds Mondo) can special-order 3.2768MHz
crystal oscillator modules. Will the SPO256 work with one? I know my
PIC16C84s will run perfectly with them (many happy reports in EPE, seen a
few ckts) but what of the 1984-edition SPO256A-AL2 I have?

> Also, you could try some variable caps to tune or stabilize the frequency
a bit -
> I wounld't necessarily assume the SPO256 is dead.

Later,
Phil.

DRJ53

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
I don't want to discourage Phillip Pemberton in any way, but several recent
posts suggest strongly that stringing SPO256 allophones together is not going
to work too well. Nor does it seem likely that code for the SPO256 will be
available soon. I am toying with another idea and would appreciate everyone's
thoughts. The early Macintosh (8 MHz 68000) had a software text-to-speech
system called MacinTalk. I have included some background info on the program
below. The entire program, including the text-to-allophone and synthesis
functions, occupied about 16K and produced pretty good speech quality (better
than the SPO256 in my opinion). I've poked around in the disassembled 68000
code, and I now understand the basic functionality and some of the details of
the software. It looks like it would be feasible to convert this to code for
a modern microcontroller. About 16K ROM and 2K RAM is needed, as well as a D/A
for output.

One of my questions concerns the legal/ethical implications of converting the
object code for MacinTalk to code for another processor. Is permission or
compensation needed to do this? The other is the practicality of doing such a
conversion. The code uses multiple 16 bit address registers to index tables of
parameters, so it would be very difficult to port to the micro I'm familiar
with, the 68HC11. Are other processors such as the PIC or AVR series better
suited to such code?

Jeff

excerpted from the MacinTalk documentation:

"The Macintosh speech synthesizer (MACINTALK) is a software driver which runs
under the MACINTOSH operating system. Running in real time, MACINTALK converts
an ASCII string of phonetic codes to high quality synthetic speech utilizing a
male, non-regional, standard American dialect. The MACINTALK driver also
provides for user control of the speaking rate and pitch. Another program,
READER, converts unrestricted English text into phonetic codes directly usable
as input to MACINTALK."

excerpted from Tech note #268: MacinTalk—The Final Chapter (February
1990)

" For the introduction of the Macintosh computer, it was decided (by the powers
formerly in charge) that such a computer would need something very special to
make it a unique event. To aid in this concept, a third-party company was
contracted to write a speech synthesizer which would allow the Macintosh
computer to introduce itself. The contract was signed, and the work begun.

The outcome of this work was MacinTalk. MacinTalk is a file that can be placed
into the System Folder of an ordinary Macintosh computer and allow text to be
transformed into speech for the introduction in 1984. It was felt to be an
interesting piece of software, so Apple made it available to developers.
Interfaces to MacinTalk were published and Apple Software Licensing allowed it
to be included with developers’ products.

The original project was to get a speech driver for the Macintosh, but it did
not include obtaining the source code to this driver. Apple only has exactly
what it gives to developers: a file to be copied into the System Folder, and
this file cannot be changed since Apple does not have the source code."

<snip>

"The Surgeon General Warning

The development of MacinTalk ended with the introduction of the Macintosh in
1984. Nothing more will be done to this product. It is a compatibility risk
to use MacinTalk. It causes the Sound Manager to fail. It will not work with
the new Sound Manager planned for System 7.0. This system revision will also
introduce the new feature of virtual memory; it is not expected that MacinTalk
will work while the user has Virtual Memory running. It may not work at all
with future versions of the Macintosh hardware. Continued use of MacinTalk is
a major compatibility risk. Do not operate heavy machinery while under the
influence of this product."

Gordon McComb

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
See if you can dig up anything on the Votrax, too. All this material would be great
for a Web site. There's actually very little (at least technical) about the earlier
speech synthesizers.

Thanks for the other material you've posted. It was a keeper!

(Even if there is no way to burn a now chip from a mask, Microchip *still* has
these, as they would have gotten everything from GI when they bought them out. This
would also include the engineers' notes -- which, if they were like any hardware
shop, they were required to keep. Seems to me Microchip wouldn't be losing anything
if it turned this stuff over to the public, a la open source.)

-- Gordon

DRJ53

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
Dale,

Thanks for the very useful website on speech synthesis. I was very interested
in what you mentioned in your recent post:

The Phillips PCF8200 had no ROM, but was also a digital
formant synthesizer. Their tech application note on that
chip is very interesting, as it gives insight into how the
formant parameters are encoded, and what is the bare minimum
needed.


I would be very interested in the tech note describing how formants are
encoded,but I didn't see any info on the Phillips site about the PCF8200. Do
you have an electronic version of the technote you'd be willing to share?

Thanks,

Jeff

Gordon McComb

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
Well, the AVR has 32 16-bit registers, but unless you get into the more expensive
Mega chips, the maximum Flash they currently offer is 8K. Would it be possible to
put some of the code in an off-board EEPROM? Speed is an issue with the EEPROM
because 1) you'd want to use EEPROM connected to the SPI pins and 2) EEPROM is just
slower all the way around.

I distinctly recall MacinTalk (I was big on Mac's when they first came out), and
the quality of the speech wasn't bad at all (though sometimes hard to understand
through the Mac's small speaker).

The ethics question is best answered by those familiar with Apple's intellectual
property practices. I would think if you simply cribbed the ideas there's no
problem.

-- Gordon

Gordon McComb

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
Ooops. My earlier comments regarding the AVRs having 32 16-bit registers is, of
course, incorrect. It has 32 8-bit registers, three of which can be used as 16-bit
registers using an indirect addressing scheme.

Sorry for looking stupid...

-- Gordon

Gordon McComb wrote:

> Well, the AVR has 32 16-bit registers, ....


Gordon McComb

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
No...*six* of which.... It's just not my day.

Dale Grover

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to DRJ53

Actually, I did contact Phillips (one "l" or two, I never
can remember) about making this app note available
electronically, sometime last year. Didn't hear back from
them. If someone can get permission to post it, I'd be
happy to scan & post. It is called "Application Report for
the PCF8200 Formant Speech Synthesizer" by H.W. Zelle and M.
ten Have, Report No. EDP8807, and is a "Philips Components
Laboratory Report." (Philips, one "l") 31 pages long. No
copyright (but let's stay on the right side here).

Yes, the PCF8200 is no longer available--add it to the long
list of single-chip speech synthesizers no longer with us.
But we're getting close to having enough on-chip memory,
speed, and DSP capabilities in small packages to get an
under $10 formant synthesizer using off-the-shelf parts. I
just don't think there's much market*, so it'd be one of
those "labor of love" kind of things :)

(* Why? You have to add a lot of rules about transitions
before you get natural sounding speech using formant
synthesis from rules--allowing unlimited text-to-speech--and
for applications with a limited vocabulary, you have all
kinds of speech compression and also storage methods like
ISD chips to just record actual speech. Also, software
speech synthesis removes one big market that existed back
when all you had was a 6502 at a few MHz. Just my humble
opinion, but the window may have closed permanently on
hardware formant synthesizers, analog or digital.)

--Dale

Dale Grover

unread,
Mar 4, 2000, 3:00:00 AM3/4/00
to
I have some Votrax SC-01A information, along with general
speech synthesizer references, on my website at
http://www.redcedar.com/sc01.htm

Includes scanned SC01A data sheet (by permission), patents
by Gagnon, etc.

--Dale

Philip Pemberton wrote:
>
> > See if you can dig up anything on the Votrax, too. All this material would
> be great
> > for a Web site. There's actually very little (at least technical) about
> the earlier
> > speech synthesizers.

> The Votrax?
> I'll try an AltaVista search
>

Doug_V

unread,
Mar 5, 2000, 3:00:00 AM3/5/00
to
I'm glad you have one... didn't use this chip myself. Just for a joke I posted
some old advert. for the SP0256 and the SC-01.
http://msnhomepages.talkcity.com/CerfSt/doug_v/index.html

BTW it isn't necessary to post the SP0 series, someone already has:
http://www.2bits.simplenet.com/techinfo.html -SPO256 data sheets and the rom
data sheets.

As for the Texas Instruments end of things check out:

spss011c.pdf - Texas Instruments' TSP50C0x/1x family of speech synthesizers. Has
description of LPC encoding.
http://www-s.ti.com/sc/psheets/spss011c/spss011c.pdf#xml=http://www-search.ti.co
m/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%2Fwww%2Ds%2Eti%2Ecom%2Fs
c%2Fpsheets%2Fspss011c%2Fspss011c%2Epdf&doctype=xml&Collection=TechDocs&QueryZip
=filter&

spsu006b.pdf - Texas Instruments' MSP50x3x Mixed signal processors user guide.
Has source code and examples and another LPC explanation.
(1.2MB)
http://www-s.ti.com/sc/psheets/spsu006b/spsu006b.pdf#xml=http://www-search.ti.co
m/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%2Fwww%2Ds%2Eti%2Ecom%2Fs
c%2Fpsheets%2Fspsu006b%2Fspsu006b%2Epdf&doctype=xml&Collection=TechDocs&QueryZip
=filter&

I'm thinking that with all this, if one wanted to they could make their own.
I'm still going to breakdown the SPR-016 for it's code/data.

Have fun.

Dale Grover wrote in message <38C18F80...@redcedar.com>...

Doug_V

unread,
Mar 5, 2000, 3:00:00 AM3/5/00
to
Just noticed that the links to the TI site were sent askewed.
So better yet:
http://www.ti.com
and search the word "filter". Lots of other good stuff there anyway.

|As for the Texas Instruments end of things check out:
|
|spss011c.pdf - Texas Instruments' TSP50C0x/1x family of speech synthesizers.
Has
|description of LPC encoding.
|http://www-s.ti.com/sc/psheets/spss011c/spss011c.pdf#xml=http://www-search.ti.c
om/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%2Fwww%2Ds%2Eti%2Ecom%2F
sc%2Fpsheets%2Fspss011c%2Fspss011c%2Epdf&doctype=xml&Collection=TechDocs&QueryZi
p=filter&
|
|spsu006b.pdf - Texas Instruments' MSP50x3x Mixed signal processors user guide.
|Has source code and examples and another LPC explanation.
|(1.2MB)
|http://www-s.ti.com/sc/psheets/spsu006b/spsu006b.pdf#xml=http://www-search.ti.c

om/search97cgi/s97r_cgi?action=View&VdkVgwKey=http%3A%2F%Fwww%2Ds%2Eti%2Ecom%2Fs
|c%2Fpsheets%2Fspsu006b%2Fspsu006b%2Epdf&doctype=xml&Collection=TechDocs&QueryZi
p=filter&


Steve

unread,
Mar 5, 2000, 3:00:00 AM3/5/00
to
DRJ53 wrote:
>
> I don't want to discourage Phillip Pemberton in any way, but several recent
> posts suggest strongly that stringing SPO256 allophones together is not going
> to work too well. Nor does it seem likely that code for the SPO256 will be
> available soon. I am toying with another idea and would appreciate everyone's
> thoughts.
----------------------
As for the word to allophone conversion routine, anybody who knows
Hooked-on-phonics can write it, or anyone who wants a copy of the NRL,
(Naval Research Lab on speech synthesis, Honey Sue Elovitz et al.)
research can find one (I've got one), and as for the allophones they are
described on the third to last page of the SPO256-AL2 booklet, available
on my site in GIF-per-page form, both by the sample word syllables and
their duration.

ftp://ftp.armory.com/pub/user/rstevew/CTSPO256/spo256_17.gif

where spo256_01.gif to spo256_19.gif is the whole document.

I have also recorded them into 64 WAV files of the right durations for
all 64 of them in a file called:

ftp://ftp.armory.com/pub/user/rstevew/CTSPO256/allophones.zip (246K)

So you could burn them into EPROMs and play with that, or record your
own! I've done that in my voice and I think it's amusing.
-Steve


> The early Macintosh (8 MHz 68000) had a software text-to-speech
> system called MacinTalk. I have included some background info on the program
> below. The entire program, including the text-to-allophone and synthesis
> functions, occupied about 16K and produced pretty good speech quality (better
> than the SPO256 in my opinion). I've poked around in the disassembled 68000
> code, and I now understand the basic functionality and some of the details of
> the software. It looks like it would be feasible to convert this to code for
> a modern microcontroller. About 16K ROM and 2K RAM is needed, as well as a D/A
> for output.
>

> One of my questions concerns the legal/ethical implications of converting the
> object code for MacinTalk to code for another processor. Is permission or
> compensation needed to do this? The other is the practicality of doing such a
> conversion. The code uses multiple 16 bit address registers to index tables of
> parameters, so it would be very difficult to port to the micro I'm familiar
> with, the 68HC11. Are other processors such as the PIC or AVR series better
> suited to such code?
>

> Jeff
---------------
The research THEY used was probably the NRL paper as well, since
EVERYBODY including Votrax used that. So use the code and the speech
data or anybody else's at will. This stuff was FIRST paid for by YOUR
TAX DOLLARS folks!!

Christopher X. Candreva

unread,
Mar 5, 2000, 3:00:00 AM3/5/00
to
Philip Pemberton <pap...@FreeNet.co.uk> wrote:

: The Votrax?


: I'll try an AltaVista search

Votrax SC-01 phonem synth. There was a sort-of second version, the SSI-263.

Heathkit made a speach synth card for IBM PC's based on the SSI-263. I'm
trying to write a Linux driver for it for a bot project.

-Chris

--
==========================================================
Chris Candreva -- ch...@westnet.com -- (914) 967-7816
WestNet Internet Services of Westchester
http://www.westnet.com/

DKDeckmann

unread,
Mar 5, 2000, 3:00:00 AM3/5/00
to
You see a lot of speech modules on eBay for the TI computers. Wonder what is
inside one of them???


DKDeckmann

unread,
Mar 5, 2000, 3:00:00 AM3/5/00
to
IMHO, not for non-commercial use...

In article <38C17F5E...@gmccomb.com>, Gordon McComb <gmc...@gmccomb.com>
writes:

>
>The ethics question is best answered by those familiar with Apple's
>intellectual
>property practices. I would think if you simply cribbed the ideas there's no
>problem.
>
>-- Gordon
>
>DRJ53 wrote:
>

Tim Jacobs

unread,
Mar 6, 2000, 3:00:00 AM3/6/00
to
Pass, I don't have it in front of me.

BTW, has Steve Walz contacted you about the allophone wavs he has?

Tim
--
Tim Jacobs timothy...@gecm.com
These are my views, not those of my employer.

Philip Pemberton <pap...@FreeNet.co.uk> wrote in article
<38c01...@news2.cluster1.telinco.net>...
> > I have an old Currah speech synthesiser for my equally old C64, but I
> don't
> > know if either of them still work. The synthesiser uses an SPO256, and
> > plugs into the cartridge slot.
> One last thing - does it use an LA05 or an R09864CS-2030? I've got one of
> each in front of me. They are supposed to have come out of a Currah
> Microspeech unit.
>
> Later,
> Phil.
>
>
>

Stephan M. Sprenger

unread,
Mar 6, 2000, 3:00:00 AM3/6/00
to

Gordon McComb wrote:
>
> Ah, that explains it.
>
> If the demo clips are any indication, it's the best-sound digital
> vocoder I've ever heard. Your company should be very proud of it.

Thanks for the kind words, I really appreciate it.

> I see
> by trhe specs on the Steinberg page my machine is a little anemic to run
> it (the processor is too slow), but maybe this would be a good reason to
> get a new machine!

Well, the actual Vocoder core is quite fast, it's the built-in carrier
synth that eats up the power easily. For optimum performance in a
multitrack environment we recommend at least a 400 MHz PII or later
(although it will run on slower machines as well, but you probably won't
be able to use [many] other plug ins at the same time).

Jim Hewitt

unread,
Mar 6, 2000, 3:00:00 AM3/6/00
to
Philip Pemberton wrote:
>
> > I have three of the SP0256 chips. Two of them are quite happy with 3.07
> MHz and
> > the colorburst. The other one will start speaking and then starts
> shrieking [I
> > like your term!] - you have to pull to power to reset it. I have _heard_
> that
> > the chip crashes sometimes if the clock signal is not stable. You could
> try an
> > oscillator instead of a simple crystal but good luck finding that
> frequency.
> The local Maplin superstore (Leeds Mondo) can special-order 3.2768MHz
> crystal oscillator modules. Will the SPO256 work with one? I know my
> PIC16C84s will run perfectly with them (many happy reports in EPE, seen a
> few ckts) but what of the 1984-edition SPO256A-AL2 I have?

Can't say without trying it. I would venture to guess that two of mine [vintage
unknown] would work since they are happy with 3.07 to 3.5+ MHz. Give it a try!

Jim

>
> > Also, you could try some variable caps to tune or stabilize the frequency
> a bit -
> > I wounld't necessarily assume the SPO256 is dead.
> Later,
> Phil.

--

Jim Hewitt

unread,
Mar 6, 2000, 3:00:00 AM3/6/00
to

Philip Pemberton

unread,
Mar 6, 2000, 3:00:00 AM3/6/00
to
> I have also recorded them into 64 WAV files of the right durations for
> all 64 of them in a file called:
> ftp://ftp.armory.com/pub/user/rstevew/CTSPO256/allophones.zip (246K)
> So you could burn them into EPROMs and play with that, or record your
> own! I've done that in my voice and I think it's amusing.
I've actually created some software called SoundCrusher that shrinks audio
files by a factor of about two by dropping the sample rate down to 4KHz. It
also makes it a damn sight easier to create the PIC software!

Later,
Phil (Age 13).

Gary Croll

unread,
Mar 6, 2000, 3:00:00 AM3/6/00
to Philip Pemberton
Philip, the SPO256 is still available if you know where to look. Check out:

http://members.tripod.com/RoBoJRR/techcorner.htm

V-Tech used this chip in the speech module for their toy computers and it makes
a great stand-alone synthesizer for robots.

Philip Pemberton wrote:

> Hi,
> I don't know if you all remember, but here goes.
> I am designing a replacement for the now-obsolete SP0256 speech synth
> chip in the form of a module. Basically, the module is intended as a
> drop-in replacement for the chip. My attempts to snaffle the
> allophones/phonemes/whatevers from other programs have so far been
> unsuccessful. I have set up a website at www.philpem.f9.co.uk. Select
> 'SP0256 replacement project' from the navbar on the lefthand side of the
> window. If anyone has a fully working 0256 card then would you please
> digitize the allophones for me or, even better, let me borrow it? Contact me
> for further info. This would enable me to finish off the project and then I
> will release the sourcecode. For the benefit of those who missed my original
> posting, I will be releasing the PIC code as freeware. Source will be
> included
> for free too. Please contact me before beforehand if you want to send me an
> e-mail attatchment over 500K, though!
>
> Thanks in advance,
> Phil.


0 new messages