jeudi 13 janvier 2011

lack of updates

Sorry for the lack of updates but i'm moving from a flat to another.. didn't get time to work on this .. and my "lab" is in a box actually ..

Will continue working in this project  and the end of the month normally. .

mercredi 5 janvier 2011

no real progress yet ..

Still getting difficulties to get good and reliable results. .
I'm getting really weird things .. the difficulties are to get it speak each time the same sound ..
When my code to talk to the S&S will be stable and reliable i will add the midi functions to it.

After few investigation and some Bus sniffing with my Open logic sniffer, it seems that it need to send a load address command at each address nibble. Will test that if it finally work.

vendredi 31 décembre 2010

EDIT 30/08/2011: This is not working .. cannot put negative voltage on the output 

Thinnking of  get ride of theses Transitors.
Will replace them with 2 TTL 74126 QUAD 3 STATE BUFFER
See the connections diagram below :

I didn't test it yet .. (don't have theses quad buffer at home)

It will be easier and much more "clean" because when Arduino pin is set on High there will be a High on the S&S bus, and when the Arduino pin will be Low, the outut on S&S bus will be High-Z. Has the S&S speech synth is PMOS, the PMOS pulldown resistors bring the line to logic 0.
With this method we don't need the -12V of the S&S.

jeudi 30 décembre 2010

Still working on this project..

My work is (almost) based on the "Talk can be cheap by Larry Dighera, published in Computers & Electronics, Februari 1983" where can be found at : http://sites.google.com/site/analogvocoderinfo/speak-spell

I'm trying to do the same as the ASM code for the Z-80 with my arduino.
See below a more readable version of the asm code.
------------------------------------------------
Z-80 PIO init  (not neeed)

Get bus state
wait until data is present (especially CNTL8 because by pressing ON, ON, GO. This leaves only the cursor on, which causes CNTL 8 to periodically go high)

Get bus state
wait until bus is clear ( CNTL8 goes Low )

Get chip select Up (CS) and reset word (0)
Clock (PDC)


Load address command (2)
Clock (PDC)


Nibble 1
Clock (PDC)


Nibble 2
Clock (PDC)


Nibble 3
Clock (PDC)


Nibble 4
Clock (PDC)


Nibble 5
Clock (PDC)


Read Rom Command (8)
Clock (PDC)


Speak Command (10)
Clock (PDC)


Busy Command (14)
Clock (PDC)


Reset Command
Clock (PDC)


Get Bus Status
Check Bit 0
if bit 0 not equal 0 then wait (bit 0 should be CNTL1 )


Reset command
Clock (PDC)

Turn Off  PIO(set Bus to 0 or High-Z)

the Rest of ASM code is not needed.

vendredi 17 décembre 2010

How to connect Arduino to Speak and Spell

See picture below on how to connect Arduino to Speak and Spell

Updated (31-12-2010) i forgot the Input on D4 for CNTL8) :
Crappy Schematics :

Not sure if the -12V is needed has the PMOS should have Pulldown Resistor inside.
The Switch is here to launch the Speech command, because the Midi is not implemented yet.
Explanation on the command bus (with the Transistors) :
When Arduino Pin is on 0, the Transistors will conduct and there will be a 1 on the Bus Pin,when Arduino Pin is on 1, Transistor will stop conducting and there will be a -12 on S&S bus
On CNTL1, there is a Diode connected to input pin 4, i've put this here because when the S&S is on Speech the CNTL1 is high and you need to wait until speech is done.
By pressing ON, ON, GO. This leaves only the cursor on, which causes CNTL 8 to periodically go high

see below the connections inside S&S :

Resources

Some ressources used for YASSP

Talk can be cheap  : http://sites.google.com/site/analogvocoderinfo/speak-spell
Wordmaker : http://sites.google.com/site/analogvocoderinfo/ic-speech/i

Picture of my mess.

Just few picture of my desk .. or my mess. . :)
This Project will be called YASSP  : Yet Another Speak Spell Project :)