• Play audio from a serial port

    From AKAcastor@21:1/162 to Bob Worm on Fri May 24 13:18:52 2024
    That looks pretty cool. I guessed they would have gone
    with a DAC chip rather than just a resistor ladder like
    I'm going to try... but I don't see one? Possibly
    that's why they brag about their "0.1% High Precision
    Resistors" :)

    I think a big part of the concept of these parallel port sound interfaces like Covox (or the similar Disney Sound Source) was that they were SO CHEAP to make because they didn't even need an IC.

    I wonder if there are other versions of parallel port sound devices that did use DAC or other more sophisticated hardware (more than a handful of resistors) - I'm not aware of any, but that doesn't mean there are none of course.

    20 Euros is a bit outside my budget... hehahaha

    Hey it's better than $30 CAD!! haha :)

    Time to get DOS running on the craptop, I guess. I only
    just got a working BSD on there!

    I haven't dabbled in BSD much, but given its ability to run pretty much anywhere it is for sure somewhere on my list of future projects I'll get lost inside while doing a deep dive.


    Chris/akacastor

    --- Maximus 3.01
    * Origin: Another Millennium - Canada - another.tel (21:1/162)
  • From AKAcastor@21:1/162 to Bob Worm on Sat May 25 11:07:46 2024
    Yes, the link you sent had a video from (I think) 8 bit
    guy showing the Covox clone alongside Disney Sound
    Source - I had forgotten all about that thing! My
    friend had one and I remember it was better than what I
    had (nothing) but it barely worked with any software.

    Well said, this describes my memories well, too - I remember it was better than what I had (nothing) but it barely worked with any software.

    Then again, I seem to remember my first SoundBlaster
    clone was about GBP20 so there is that... Orchid Sound
    Producer, possibly? Got to love the naming of off-brand
    stuff.

    So much time spent trying to figure out the right combination of settings for all sorts of clones and variations back then. I think my first CD-ROM was Orchid, I think I dealt with some driver nightmares before getting that working. Later on when all the CD-ROMs were IDE/ATAPI it was so much easier to plug a new drive in and get it working.

    I was going to say I think I remember parallel adaptors
    with a DAC for the Amiga (not that I had one), but I
    that's probably all in my head because the Amiga had
    that capability on-board anyway so why make an external
    one? Probably I'm just getting confused with the
    multitude of parallel ADC units for the Amiga used for
    sampling.

    I'm not very familiar with Amiga, but now I have one more thing to be curious about regarding Amigas! :) I never really got to use Amigas, in the 90s I didn't know anybody who had one except for one guy (another teenager) that called my BBS and always complained I didn't have enough Amiga files, and I should ditch my PC and get an Amiga because it was way better. We used to chat pretty regularly, it was fun.

    The link Spec posted has ASCII art diagrams* for
    putting together your own parallel adaptor with a DAC
    chip (a couple of different DACs, actually) -
    funtionally the same but probably better quality. I
    imagine someone must have cranked out a manufactured
    version of that at some point.

    It does seem like it must have been a thing, I can't recall hearing of it specifically though. Makes me curious!

    * Said ASCII art was in a file with a .DOC extension -
    I was suddenly reminded that .DOC used to mean plain
    text before Word hijacked it. It's funny that I'm still
    finding things like that which give a sudden,
    unexpected burst of nostalgia.

    Files from the late 90s can be so confusing, how to open that .DOC file - it could be either type. Another extension (a bit less common) that I 're-discovered' recently is .PRN for a printable document (ASCII with form feeds for page breaks). I remember printing hundreds of pages of BBS documentation on the dot matrix printer (24-pin, so it was mostly readable too).


    Chris/akacastor

    --- Maximus 3.01
    * Origin: Another Millennium - Canada - another.tel (21:1/162)
  • From AKAcastor@21:1/162 to Spectre on Sat May 25 23:05:10 2024
    I have a sneaking suspicion and I haven't checked, that Wolf3d might have supported Parallel DAC. I also think there was a pretty small window where they became useful. Where there was enough spare horsepower too drive it while still doing something "useful" and before SB
    clones arrived in force. I
    seem to remember having a resistor ladder version for a bit... and the DAC version I stuck in the Apple II. Would've been late 386 DX40 era I guess.

    Wolf3D did indeed support Disney Sound Source. It looks like there's a driver to allow a Covox Speech Thing to work with Wolf3D also (though it's not supported by Wolf3D otherwise).

    I found the below at:
    http://dosdays.co.uk/topics/Manufacturers/covox.php

    Interestingly, despite the fact that the Disney Sound Source is similar to the Covox Speech Thing, Wolfenstein 3D only works with the Disney Sound Source - it does not work with the Covox Speech Thing, Voice Master, or Sound Master. This is explained thanks to one of my contributors, Stefan Goehler. He writes:

    "It's not really compatible to Covox, it's just the same principle - meaning to send samples to the parallel port. But it works
    differently!

    1. It only switches on when the software tells it to (there's no physical switch)
    2. It can ONLY do 7 kHz
    3. It doesn't need such extreme timing as a classic Covox, as it has its own 16-sample FIFO buffer.

    So that explains why Wolfenstein won't work with a DSS - it can't detect nor enable the DSS. That's also why no Covox-designed game will play audio on it (no SW-enabling of the thing), also DSS-designed games that just ignore the state of the DSS may not work as well, as they may have been designed to work with the FIFO in mind and don't generate an interrupt every sample, but push a few samples at a given time - to fill the playback buffer again. As the timing would be off in such a case, such games, if they were designed for the DSS, will sound poorly on the Covox." Stefan Goehler, May 2023


    Chris/akacastor


    --- Maximus 3.01
    * Origin: Another Millennium - Canada - another.tel (21:1/162)
  • From AKAcastor@21:1/162 to Bob Worm on Sun May 26 11:50:22 2024
    So that explains why Wolfenstein won't work with a
    DSS - it can't detect nor
    enable the DSS.

    Some really mixed messages here... might require a bit
    of experimentation :)

    I noticed when pasting that some of it seemed a bit mixed (I suspect the last part about why Wolfenstein won't work with a DSS is meant to be "why Wolfenstein won't work with a Covox"). Adding to the confusion I threw in the driver that is supposed to actually allow the Covox to work.

    In Wolf3D the sound menu lists Disney Sound Source specifically. (though I can't say I have ever tested it)

    Of course, I don't have a Disney Sound Source, but I'm
    in that dangerous "how hard can it be?" mindset - if
    the protocol is documented somewhere then it would
    probably be possible to implement it using crap out of
    my cupboard - which is my favourite kind of
    implementation.

    I like the way you think, Bob.

    1. It only switches on when the software tells it to
    (there's no physical switch)

    I wonder if it handshakes back for detection?
    Probably... which would make life harder.

    I'm speaking out of ignorance here and haven't done any research but I suspect detection will be based on one or more bits being latched (or reset?) when writing to the parallel port - it shouldn't be TOO complicated, I expect (simple is cheap), though it does add one more layer to the onion this project is becoming. ;)

    2. It can ONLY do 7 kHz

    Probably a win for my purposes :)

    At our age, how much is there to hear above 7 kHz anyway? :D

    3. It doesn't need such extreme timing as a classic
    Covox, as it has its own
    16-sample FIFO buffer.

    16 samples? As in 2ms? I suppose in true Disney Sound
    Source style, "barely anything" is better than
    "absolutely nothing"! Will have a mooch around and see
    if there's an off the shelf FIFO to fit that bill.

    I assume the driver to allow Covox to work with Wolf3D is emulating the 16-sample FIFO in software, on a "fast" machine that seems workable.

    And hey, being able to supply 2ms of samples at a time is 16x more efficient than the alternative, right? Practically luxurious! :)

    Hmm. My interest is piqued but I really want to finish writing my Acorn terminal emulator before I move onto something else.

    I support your choice of priorities! Terminal emulator sounds like an important project and deserves attention too.

    I've never used any Acorn machines (unless you count everything ARM haha), I just know them by reputation. (since they weren't really marketed in North America - though I looked it up now and apparently some attempts were made to enter the North American market)

    The A3020 looks like a nice machine, what kind of speed do you expect your terminal emulator to be able to operate at? 115.2k seems doable? I am assuming this is serial port based, or are you writing a network client?


    Chris/akacastor


    --- Maximus 3.01
    * Origin: Another Millennium - Canada - another.tel (21:1/162)
  • From AKAcastor@21:1/162 to Bob Worm on Sun May 26 15:44:28 2024
    At our age, how much is there to hear above 7 kHz anyway? :D

    Heha, well, ironically... despite it now being hard to
    follow conversations in loud rooms I can still hear
    those damned mosquito speakers they put in shopping
    centres to stop teens loitering really clearly. But
    then, when we went in for the ultrasound for my son 18
    years ago I could hear that really clearly - including
    the pitch changes when they adjusted the depth setting.
    The little foetus went kind of nuts as well, must be
    genetic :)

    Funny ultrasound story. :) I don't have ultrasound experience myself, but I can relate somewhat to still having the high frequencies, while noticing it getting harder to follow voices sometimes. I think I've lost a bit of the high frequencies, but I might still be able to pick up CRT whine if I ever turned one of those back on.

    Part of it may be my hearing become more selective as I've found how helpful (and necessary) it is to tune more things out as I've aged.

    I support your choice of priorities! Terminal emulator sounds like an important project and deserves attention too.

    Out of interest I tried just adding the serial handler
    without assembler-ising the code and optimising it. It
    needs the optimisations :) Or I need to find BBSes that
    don't send more than one line of text at a time as it
    can't keep up at volume and just hits the wall. I will
    probably add a FIFO / circle buffer to soak up bursts
    as some of the routines are just... slow.

    FIFO always ends up being the solution, doesn't it. It might be worth trying to connect to a CBBS system, I have called into CBBS/TN before and it's a very low bandwidth interface (I also found the late 70s-style BBS surprisingly pleasant to navigate).

    CBBS/TN is at cbbs.mitsaltair.com port 8800 or dialup +1 702 216 6148.

    Oh, this is serial. It didn't have a network card when
    I rescued it from a skip 20 years ago and I've tried to
    keep it original (other than the essential CF card to
    IDE adaptor).

    I am always conflicted between keeping systems as original as possible, and bolting on every retro-hack I can find. :)

    In theory its serial port can do 19200bps
    but I believe it's not assured to be stable at that
    rate so 9600 is the recommended maximum. Once I get all
    the BASIC out of this it should cope at 9600.

    Ohhhh if its running interpreted BASIC I completely understand the serial speed problems. Based on the serial port speeds I assume there's no UART buffer - sounds like a good test of your optimization abilities!

    FWIW I absolutely love the A3020, and I never even
    experienced one back in the day so this is objective
    love rather than nostalgic love :)

    If you're thinking about showing it off in videos, I'll be watching. :)


    Chris/akacastor

    --- Maximus 3.01
    * Origin: Another Millennium - Canada - another.tel (21:1/162)
  • From AKAcastor@21:1/162 to Spectre on Sun May 26 20:11:56 2024
    For a short time some DOS titles had "Generic Parallel Port" or something similar, thats what I was thinking Wolf3d had... mebbe is was an early Doom with one of the Launchers... memory fails me now.

    The DOS Days page mentions there being approximately 60 DOS game titles directly supporting the Covox Speech Thing, and almost 150 DOS game titles that directly supported the Disney Sound Source.
    http://dosdays.co.uk/topics/Manufacturers/covox.php

    No numbers for other variations besides Covox/Disney, but already that's more games than I remember. :)


    Chris/akacastor


    --- Maximus 3.01
    * Origin: Another Millennium - Canada - another.tel (21:1/162)