Project proposal: Type 'N Talk rebooted

Modding and Technical Issues

Moderator: Moderators

User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Project proposal: Type 'N Talk rebooted

Post by srowe »

All my experimentation with the SP0256A-AL2 has had a motive behind it. What if I could re-create the Votrax Type 'N Talk using more modern components? Back in the day I only dreamed of being able to hear the Scott Adams adventures, this would allow me do finally do that!

The basic concept is to hook a SP0256A-AL2 to something like an Atmega8 and program it to behave exactly like a Type 'N Talk. I don't own a Type 'N Talk unit but fortunately Kevin Horton has done a sterling job extracting a basic circuit diagram and the ROM image

http://kevtris.org/Projects/votraxtnt/index.html

I've started to disassemble the ROM, I'm making slow progress as I'm unfamiliar with the Motorola 6802 instruction set. I'm collecting useful stuff on a web page:

https://eden.mose.org.uk/Votrax/

Is anyone else interested in joining in with my crazy project?
norm8332
Vic 20 Nerd
Posts: 626
Joined: Sun Nov 13, 2016 11:04 am
Location: USA

Re: Project proposal: Type 'N Talk rebooted

Post by norm8332 »

That's a cool idea. Another possibility could be a Atmega328 by itself. Check this google search first couple results : http://www.google.com/search?ei=pSIKW92 ... ino+speech

I have the SP0256-AL2 chip already so either way I like it.
“In religion and politics people’s beliefs and convictions are in almost every case gotten at second-hand, and without examination... whose opinions about them were not worth a brass farthing.”

-Autobiography of Mark Twain
User avatar
cbmeeks
Vic 20 Enthusiast
Posts: 190
Joined: Tue May 18, 2004 12:36 pm
Website: http://meeks.co
Location: 8-bit Land
Occupation: Code Monkey

Re: Project proposal: Type 'N Talk rebooted

Post by cbmeeks »

I think this is an excellent idea!

I would love to help out in any way I could. I believe I own all of the hardware so maybe I could lend a hand. Looking for something to do anyway.
Cat; the other white meat.
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

There's a number of areas that could do with some work on. The ROM disassembly needs completing so that the text to speech algorithm can be documented. A mapping of SC-01 to SP0256 allophones needs to be made.

Hooking the SP0256 to a Atmel processor should be simple but I have no experience of writing code for them. Once a working prototype on breadboard exists a schematic needs making.

This should keep me out of mischief for a while.
Vic20-Ian
Vic 20 Scientist
Posts: 1214
Joined: Sun Aug 24, 2008 1:58 pm

Re: Project proposal: Type 'N Talk rebooted

Post by Vic20-Ian »

See this thread for Vic Voder (Raspberry Pi Speech Synth) running Scott Adams.

http://sleepingelephant.com/ipw-web/bul ... ser#p99227
Vic20-Ian

The best things in life are Vic-20

Upgrade all new gadgets and mobiles to 3583 Bytes Free today! Ready
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

I've let this thread go dormant, I have been working on it.

A status update: it took quite a long time to reverse-engineer the Type 'N Talk ROM. I had to learn 6800 assembler (and write a simulator) but I've finally worked out the rather clever rule tables used to convert letter sequences to phonemes.
I've also got to grips with the basics of programming AVR microcontollers, here's my prototype board hooked up to the SP0256A and an amplifier:
2018-10-26_20-04-13.jpg
It says "Hello World" when powered up (what else?)
Next steps:
  1. Complete the Python re-implementation to process the input using the rule tables and then send phonemes to the speech synthesizer. This is going to be time-consuming, the phoneme sets in the rules need translating from the SC-02 and it doesn't seem there's a one-to-one correspondence.
  2. Extend the AVR code to process serial data in the same way as 1. I've got all the UART and SP0256A interrupt code working.
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

Another long interval since the last update.

I now have a near-complete C implementation of the Votrax code. It has all the text to allophone conversion and it runs on an Atmega8 in under 5KB (including the rule sets).

There's still quite a bit of work to translate the rules to work with the SP0256A. This is a tedious process of listening to a series of words, fixing up the rule matches and/or allophones then re-running the whole word list.

As a distraction I'm going to design a dedicated circuit board to connect to the VIC user port (current testing uses a USB to TTL serial adaptor on my desktop PC).
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

Here's the circuit diagram showing the Atmega8, SP0256A and audio parts
vicvoice.png
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

I've refined the circuit diagram now
vicvoice-schematic.png
and I've built a prototype on a circuit board
vicvoice-proto.jpg
I've recorded the moment of truth when I plugged it into my VIC-20

https://youtu.be/x2zmQcv4Rm0

The text to speech code is still incomplete, there is still many rules to be converted to SP0256A allophones, but this demonstrates the principle is sound.
User avatar
orion70
VICtalian
Posts: 4341
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Re: Project proposal: Type 'N Talk rebooted

Post by orion70 »

Great! So nice to see modern implementations of old hardware... I'd very much like to have one of these once finished, together with other pieces of necro-bumped stuff like 40 column cards, 1020-like expansion modules, and so on.
Vic20-Ian
Vic 20 Scientist
Posts: 1214
Joined: Sun Aug 24, 2008 1:58 pm

Re: Project proposal: Type 'N Talk rebooted

Post by Vic20-Ian »

Well done. I always wanted one of these and fondly remember Currah Speech and Big Ears adverts in the UK press.

I am fairly sure Big Ears was voice recognition intended to create an early Alexa type device ;-)

I would be interested in a couple of kits minus the SP0256 as I have a few of those lying around or a parts list.
Vic20-Ian

The best things in life are Vic-20

Upgrade all new gadgets and mobiles to 3583 Bytes Free today! Ready
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

Producing this as a finished product will be easy enough except it needs an SP0256A-AL2, finding genuine chips isn't too easy these days. I have a hunch that it is possible to reproduce the speech synthesis in a microcontroller like an AVR, but that project would be beyond my skills.

Once complete I'm happy to release the source code and the Eagle files if someone wants to build their own vicVOICE. It should also work with the C64 and wouldn't be too difficult to add level shifting to make it a generic peripheral.
bdk6
Vic 20 Amateur
Posts: 47
Joined: Fri Sep 29, 2017 7:40 pm
Website: http://www.smalltimeelectronics.com
Location: TN, USA
Occupation: Embedded engineer

Re: Project proposal: Type 'N Talk rebooted

Post by bdk6 »

Congratulations!
This is a great project and I commend all the work you've done. Old speech synthesizers have been an interest of mine for a long time. I have done a LOT of research and even some coding to do exactly what you mention, create one in an ATMega328. Apparently it has been done before, but my understanding is the ones out there aren't very good. I can try to dig up links if you want them.
However, a few things I've found may be of interest. First, almost all the early (pre 1990 or so) text to speech algorithms were based on one done for the US Navy in 1976. I'm almost certain the Type n Talk was one of those. Reading the paper may be of help in translation. You can find it here:
https://apps.dtic.mil/docs/citations/ADA021929
For the actual speech synthesis, perhaps the best place to start is with a Klatt synthesizer. A lot of the details on it is in this paper:
http://www.fon.hum.uva.nl/david/ma_ssp/ ... 000971.pdf
I wish I could offer to help on your project, but it's just not possible right now. I may be able to offer some pointers or links to find information, though.
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Project proposal: Type 'N Talk rebooted

Post by srowe »

Thanks for the links, yes I'd already worked out that the Type 'N Talk uses a text to speech algorithm based on the US Navy paper. If you ever do get the urge to help out you might find this implementation in FPGA interesting

https://github.com/trcwm/Speech256

If you could provide any docs, code etc for a software implementation then perhaps someone else might step forward to give it a try.
bdk6
Vic 20 Amateur
Posts: 47
Joined: Fri Sep 29, 2017 7:40 pm
Website: http://www.smalltimeelectronics.com
Location: TN, USA
Occupation: Embedded engineer

Re: Project proposal: Type 'N Talk rebooted

Post by bdk6 »

I do have the urge, I just don't have the time :-(
The little bit of code I have wouldn't be of any use, but I do have a boatload of documents that would be useful. As soon as I get a free hour or two I will try to sort through and find the most useful stuff. I want to look at that fpga, too. Thanks for that link.
Post Reply