Re: [stella] hardware speech synth for the 2600

Subject: Re: [stella] hardware speech synth for the 2600
From: O_Scholz@xxxxxxxxxxx (O. Scholz)
Date: Sun, 15 Sep 2002 19:57:11 +0200
Hi Glenn, list,

> The cool thing about this is that it should be possible for the Atari 2600,
> 7800, and 8-bits to use this device also.
> Details here.

I think adding voice to the 2600/7800 is an excellent idea, but I have
three problems with this design:

1) The chip is very hard to come by these days. One source in the
US has a few (10) chips left, and one source in the UK a few more.
Not really a good thing to base a design on. Unless somebody finds
a supply of a few hundred somewhere

2) This particular design communicates at 9600 baud, and with
the limited resources on the 2600, I wouldn't want to implement
a UART in software.

3) There are a variety of SP0256 chips out there, but only the one
with the -AL2 suffix seems to be available at all these days, the
other ones are incompatible with custom sounds.

But, having said that, I've worked with the SP0256 before, and
it is very easy to program and sounds okay. The SC-01 sounds
better, because of the pitch control, but it is virtually impossible
to get one these days. 

As for the interfacing, I would use a simple shift register to load
the data into the SP0256, and a second shift register to restore an
8 bit input port. This means that the second joystick port can be
retained, although you have to do a little more effort to read it.
But this way, the 4 bits on the 6532 can be used for the 8 bit I/O
shift register to send data to the SP0256, read the status of the
chip as well as read the (right player) joystick port.
But most importantly, the software would not be time critical.
You can shift out a bit per VSYNC or all 8 bits in the same VSYNC,
or one bit per kernel, or whatever. And for each bit you transmit,
you receive one bit as well, so you could write a routine to write
8 bits to the device, which returns the data on the input port.
To just read the input port, send a dummy byte to the output port.
Port usage would be: serial out, serial in, clock and load.
Load triggers loading of the output data byte to the chip.

I would volunteer to build and test a design and make a limited
number of boards (at cost), provided there is some interest. Just an

Let me know what you think

Archives (includes files) at
Unsub & more at

Current Thread