1. 2

    I got one of these when they first came out. The software was unreliable, even giving wrong results for certain computations. I don’t remember which but you can find reports about it from back then. The hardware had a hilariously catastrophic flaw: the yellow key labels become nigh invisible in anything but perfect lighting.

    I still hope to get something useful out of it, once I find time to either improve the firmware (open source but restricted) or write my own. For now, it sits unused in a corner.

    1. 4

      Nice read. The core is that focusing is not an action you take, but the result of knowing your goal, so first figure out what the goal is and the focus will happen. Trying to start by focusing on the task will not work.

      1. 1

        Is it just me or is the quality really bad? Or is that to be expected?

        The speed parameter behaves very unpredictably

        $ time -p ./sam -speed 100 'hello world'
        real 1.40
        $ time -p ./sam -speed 200 'hello world'
        real 2.40
        $ time -p ./sam -speed 280 'hello world'
        real 0.42
        
        1. 7

          Yes, that’s the quality I remember, which was amazing at the time. :-D Just in case we might be getting different results, here is what it’s supposed to sound like: https://matracas.org/tmp/sam-hello-world.wav

          If you put a full-stop at the end, the intonation sounds a bit more natural but also unenthusiastic.

          As for the speed parameter, that’s 8-bit overflow: the slowest is at 256, and if you roll it over to 257 it’ll speak so fast it’ll just be a blip.

          https://matracas.org/tmp/sam-lobsters-reply.mp3

          1. 1

            Thanks! That explains it. It not bother by the intonation, much more by the audio artifacts when it “screeches”.

            At least that problem doesn’t get worse at higher speeds (around 20) and is still understandable. I know this is old (but never had a C64 to experience it with) but couldn’t tell if its a porting bug or not. Maybe I could have worded my last comment better.

          2. 3

            It ran on a system with 1MHz CPU and 64KB of RAM during the year they were cranking out state-of-the-art experiences like this one. Relative to the time, great sound quality to hardware ratio. Today, not so much but that comparison is cheating. ;)

            1. 3

              Looks like before Moore’s law really kicked in, you just had to do with what you have. And they did an amazing job with that hardware from the looks of it!

              Though I was comparing it to eSpeak, which is still pretty small but I don’t know its CPU and memory footprint. (That page says it was originally for Acorn/RISC_OS computers but then relaxed those constraints.)

              1. 1

                That looks cool. Didn’t know about it. Thanks for the link!

              2. 3

                Interestingly a 1930s analog system sounds a lot smoother. Partly I think because it doesn’t have to drive digital audio output; you effectively get a very high “clock rate” with a specialized analog circuit. E.g. Wikipedia says this 1939 device is running 10 bandpass filters, which a C64 probably can’t do in realtime. Kind of interesting that you could do it with 1930s tech though, just not the same kind of tech. (The Voder also cheats compared to a TTS system by having a trained human key in the phonemes.)

                1. 1

                  Super cool! Too bad it needs month of training to operate

                  After months of practice, a trained operator could produce recognizable speech.

                  1. 1

                    That was really neat! It was human controlled, though. I think that disqualifies it for automated synthesis. The fact that it was analog certainly gives it an advantage since analog doesn’t pause (clockless realtime), uses a fraction of the power, and operates on mediums closer to vocals. I’ll do a submission close to tuesday afternoon you’ll like on them.

                    1. 1

                      That submission is here.

                  2. 2

                    Totally expected. Go read the Wikipedia Article - this code was released in 1982.

                    Making no assumptions about the reader, were you born yet? :) In any case, hopefully that will give you some context.

                  1. 9

                    Ah, another C=64 kid here: I plugged a carbon microphone from a discarded telephone to the potentiometer input in the game port (used for paddles) so that whenever anyone went to the computer and said anything, the C=64 would reply with “That’s very interesting!” (in Spanish, mind you, using trial and error to find letter combinations that, when spoken by SAM as English, would produce Spanish-like phonemes), which kept people entertained for a few interactions until they figured out that it was a fixed answer.

                    Another program I made was “The Polite Questioner” (“El preguntón educado”) which posed questions to you and checked your typed responses, and either congratulated you if correct or berated you (and gave you a second chance!) if not, but always insulted you regardless. The insult collection included one from the Ghostbusters movie.

                    That was a great way to learn about computers.

                    1. 5

                      Engelbart’s achievements are often listed as “inventor of the mouse”, but in the last month I’ve been learning about his work and it was much broader: deep knowledge management, with all that UI and collaboration shown in that famous demo which were just tools he had to build on his path to his vision of improving humanity.

                      Essentially, documents in NLS were always structured, and then visualized in different ways. The document format itself was somewhat limited for today’s needs but could have been expanded instead of giving that up for WYSIWYG when his team left him for Xerox PARC.

                      That structured format was similar to LISP, with a tree structure like modern outliner[1] documents. The tree structure could be displayed as plain text with indentation, or as a graphical tree. Both views are shown in the demo, in addition to the map view (limited to lines between the different stations in his grocery shopping example).

                      [1] http://outliners.scripting.com/

                      To keep things brief, I just want to say that, if this sounds at least a bit interesting, spend some time learning about Engelbart from him: there are several videos with demos, presentations and interviews with him in YouTube. Here is one, “The Augmented Knowledge Workshop”, 1986: https://youtu.be/sG3PWet8fDk?t=316

                      Apparently, there is a documentary coming up this year: “The Augmentation of Douglas Engelbart” https://www.youtube.com/watch?v=8wnS1Pls6Fc And here some overview at an event in his honour after he died: https://youtu.be/FNCCkhADpiw?t=3374 (there is a part before that point where his long time friend Ted Nelson’s speech is greeted with the usual scorn and laughs which displeased me, but that’s another complicated story: I’d recommend here too to learn about Nelson’s work by yourself, there is more in there than meets the eye).