23 comments

[ 0.23 ms ] story [ 38.0 ms ] thread
I have a memory of a Spectrum game playing some sort of synthesised speech through the speaker that seemed incredibly ahead of its time. I believe the game was called iBall. And the sample said something like “Fight iBall!” Have I misremembered that? Was this a fever dream?
Another Speccy game with digitized speech is Chase HQ:

https://youtu.be/yjrbcLm78I8?si=GMIqDdL31hq4ik72&t=87

Although tbf apparently that's done via the AY sound chip of the 128k, which is a lot easier than through the on/off beeper of the 48k since the AY can do digitized audio via CPU-driven volume modulation.

The 128k version of Nodes of Yesod had some speech, albeit I think it was just the name of the game. My older brother told me a kid in his class got paid big bucks - like, I dunno, £50 or something? - for coding it. Almost certainly bollocks.

For high quality speech, you could get the Currah μSpeech! https://en.wikipedia.org/wiki/Currah#Currah_%CE%BCSpeech_for...

I swear there was one symbol it pronounced "flea bleep".

Jonah Barrington's Squash used synthesised speech for scores
ZX's audio and video systems are two things that I never missed.
Doing stuff like this in the 8-bit era was never particularly hard. The difficulty was doing this and then anything else, because you basically need the entire CPU just for audio synthesis. For games, there was a very real trade-off between calculating video, game state, and sound, and sound often took the back seat.

It's also why everything looked and sounded better on 8-bit computers that had hardware support for graphic sprites or sound generation, even if they had a less powerful CPU. And it's the untold story behind why 16-bit graphics looked so much better: it wasn't about the CPU as much as it was about having a dedicated video card / chipset with gobs of memory, a sound card that handled polyphonic sound, etc.

In fact, the PC Engine provided a very 16-bit type of experience with an 8-bit 6502-based CPU
There was a music editor I remember getting on a late Your Sinclair edition cover tape which displayed proper music staves and gave you 4-note chord output. Blew my mind a bit at the time.
Got an op amp?

As a hobby I have been designing a retro-style digital telephone exchange because laying out PDIP chips is like Sudoku for me.

That led me down the rabbit hole of simple digital audio techniques. Which led me to continuous variable slope delta modulation. [0]

CVSD is much simpler than PCM. Every clock you give the decoder 1 bit. This bit determines whether a non-linear circuit ramps up or ramps down the voltage during that clock cycle.

And that's it. It's like a half-analog way to do digital. You can get fancier, by adding a small memory for the previous bit state, so it changes its slew rate, from step to step.

A couple flip-flops and a couple RC networks and an op-amp. [1]

CVSD has all sorts of fun properties. It's an effective speech compander and is understandable even at like 12 kHz (which is 12 kbps at 1 bit per sample). It is inherently bit-error and framing error resistant as a raw bit stream. Noise averages to a low rumbling and silence is just half the clock rate (110011001100...).

It was the standard in military digital voice systems from the 1970s until quite recently. And a variant was also used in early Bluetooth.

[0] https://en.wikipedia.org/wiki/Continuously_variable_slope_de...

[1] https://i.imgur.com/PzGDNFs.png

Does the Speccy have enough outputs on the edge connector to make a simple DAC like the parallel port ones we used to make with a bunch of resistors for the PC?

e.g. the homemade versions of this:

https://en.wikipedia.org/wiki/Covox_Speech_Thing

Nice idea, it has 8 data lines, so 8 bits audio should be possible.
I did have a digital sampler that connected to the back of my Spectrum. I even laboured through writing a digital-delay program in assembler for it.