Jump to content

Speech Without Using Digitized Sound or AtariVox

Random Terrain

Recommended Posts

Back in 2013, roland p told me about Voder:








EricBall said this in 2017:



The patent for the Voder shows it's done by passing a pitched buzz or white noise through a set of ten dynamically weighted band pass filters. Not the same as AUDC / AUDF / AUDV.


However, it would be interesting to see whether AUDC / AUDF / AUDV could be used to generate phonemes.


EricBall also made a blog post about it:


TIA Audio Noise Generator Redux



As I've said in other threads, I bet someone with a big brain could figure out how to produce phonemes by only fiddling with AUDV, AUDC, and AUDF, since certain tone frequency combinations almost sound like a human voice already. For example, you can make a T sound using AUDC 8, starting at AUDF 31 and flipping over to 0 and maybe ending at 1, 2, or 3:




I've been hoping that instead of using digitized speech or an external speech synthesizer, we could track down or bring out the phonemes that already exist inside of the Atari 2600. We could have a collection of phonemes that programmers could play in a sequence to make words or maybe even sing. Programmers would no longer have to waste space on digitized speech or hope that players have an external speech synthesizer. The amount of space needed for Voder-like phoneme data should be much smaller than what is needed for digitized speech.

I've tried to find phonemes by randomly goofing around with Tone Toy 2008, but with no real understanding of phonemes or how sound works on the Atari 2600, it could take a few thousand years. I'm confident that someone who knows about phonemes and Atari 2600 sound could create Voder-like data that programmers can use in their games.

  • Like 1
Link to comment
Share on other sites

From what I understand the speech in Draconian is made by updating the sound every scanline, So I thought about just looping through the sound updates a couple times in bB, it wouldn't be every scanline, but atleast more complex sounds with several updates per frame, not sure if it works but this sounds very motory. If it works you could do phonemes.



 AUDV0 = 10 : AUDC0 = 8

 for temp5 = 0 to 31

  AUDF0= temp5

  AUDC0 = temp5


  • Like 2
Link to comment
Share on other sites

took another stab at this recently. At this point I think it's a lost cause using just TIA waveforms, due to the lack of difference in texture between them. Varying them quicker than 60Hz sounds promising in theory, but you don't know the phase of the waveform as you cut it off, and changing a waveform at different points in it's phase result in different frequency content. Someone might get somewhere with DPC+ style soft-synth, since then it's just a matter of doing your wave simulation on the ARM, but there are trade-offs with that technique because you need to update the sound register throughout vblank and overscan too.


FWIW I know enough about phonemes that I wrote a big chunk of a speakjet clone on a low-powered microcontroller, before getting bored with the project (static vowel sounds, vowel sounds that shifted from start to finish, some fricatives, and probably more I'm forgetting). I've tried the same technique that works great on the microcontroller - modulating sine or glottal shaped waves - only using TIA's squarish waves, but it doesn't really work.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...