Covox Speech Thing

{{Short description|External digital-to-analog audio converter}}

{{Use mdy dates|date=February 2016}}

{{Infobox Computer Hardware Generic

|name = Covox Speech Thing

|image = Covox Speech Thing.jpg

|caption = Covox Speech Thing

|invent-name = Covox, Inc.

|conn1 = Parallel printer port

|class-name = Use

|class1 = audio digital-to-analog converter attached to computer parallel port with pass-through

|manuf1 = Covox, Inc. (original Covox Speech Thing)

|manuf2 = Disney (Disney Sound Source variant)

|manuf3 = Faster Than Light (FTL Sound Adapter variant)

|manuf4 = SiliconSoft (SoundJr variant)

|manuf5 = Do it yourself variants

|invent-date = {{Start date and age|1987|10|02}}

|introduced = {{Start date and age|1987|12|18}}

}}

The Covox Speech Thing is an external digital-to-analog converter (DAC) that plugs into the parallel printer port of a PC. It converts 8-bit digital sound using a simple R-2R resistor ladder into an analog signal output.

The Speech Thing was introduced on December 18, 1987{{cite web |title=Speech Thing trademark |url=https://tsdr.uspto.gov/#caseNumber=73714260&caseType=SERIAL_NO&searchType=statusSearch |url-status= |archive-url= |archive-date= |access-date= |website=United States Patent and Trademark Office (USPTO)}} by Covox, Inc. of Eugene, Oregon, for about US$70{{Cite web |last=Stefan |first=Göhler |title=Phonomenal! Covox Speech Thing / Disney Sound Source (1986 / 199x) |url=https://www.crossfire-designs.de/index.php?lang=en&what=articles&name=showarticle.htm&article=soundcards/&page=5 |access-date=2023-01-23 |website=Crossfire Designs}} ({{Inflation|index=US|value=70|start_year=1987|fmt=eq}}) and priced US$79.95 as of 1989.{{cite journal |year=1989 |journal=Social Science Microcomputer Review |publisher=Duke University Press |volume=7 |page=97 |issn=0885-0011}} People soon started to build their own (DIY) variants, since its communication protocol and DAC is simple and only requires soldering a few cheap parts. The novelty of its patent "Parallel port pass-through digital to analog converter" (filed in 1987, granted in 1989){{Cite patent|number=US4812847A|title=Parallel port pass-through digital to analog converter|gdate=1989-03-14|invent1=Stewart|invent2=Stewart|inventor1-first=John L.|inventor2-first=Bradley C.|url=https://patents.google.com/patent/US4812847/en}} wasn't specifically the use of a resistor ladder as a DAC, but rather the patent's discussion is around its ease of plugging into the parallel port and how its resistor ladder design didn't block other devices from using the parallel port. {{clarify span|date=February 2024|The plug was used long into the 1990s}}, as sound cards were still very expensive at that time. The plug was also quite popular in the demoscene.

An inherent problem of the design is that its quality relies on how precisely matched the resistors are (see {{Slink|Resistor ladder|Accuracy of R–2R resistor ladders}}). If unmatched resistors are used, the resulting voltage levels get shuffled, especially for quiet sounds, resulting in distortion. Nevertheless, the sound quality of the Covox plug is far superior compared to the PC speaker; for some time, a self-built variant was an inexpensive way to give old computers sound capabilities.{{Cite book |last=Brychkov |first=Eugeny |url=http://kb.gr8bit.ru/GR8BIT-KB0010-Adding-multimedia-capability-covox-device-23102013.pdf |title=Adding a multimedia capability: a Covox device |publisher=GR8BIT |date=October 19, 2012|archive-url=https://web.archive.org/web/20140201185718/http://kb.gr8bit.ru/GR8BIT-KB0010-Adding-multimedia-capability-covox-device-23102013.pdf |archive-date=February 1, 2014 }}

Features

Image:Covox-Stecker.svg

The Covox plug received an 8-bit digital byte for each digital audio sample from the parallel port and produced a high impedance mono analog output voltage signal though a mini phone connector. That signal could then be amplified and played back on loudspeakers.

The resistances of the R-2R ladder (100  and 200 kΩ according to the patent) are deliberately high-enough to prevent excessive loading of the signals, so a printer attached to the output connector will operate normally.

The original Covox plug itself doesn't use sequential logic or a clock signal, so theoretically it can operate with any sampling rate. In practice, however, parallel port speed limits make it rather hard to achieve even standard 44100 Hz (the average 1980s 80286 system could handle sampling rates of 12 kHz, while later the faster 33 MHz 486SX introduced in 1991 could handle 44 kHz).

Its 15 kΩ load resistor in parallel with a 5 nF capacitor after the R2R resistor ladder results in a passive RC low-pass filter starting around 3 kHz, thus limiting the analog bandwidth. Many DIY variants do not use the same ladder topology and component values, resulting in different timbre.{{Cite web |last=Scali |date=2017-11-28 |title=The Covox years |url=https://scalibq.wordpress.com/2017/11/28/the-covox-years/ |url-status=live |archive-url=https://web.archive.org/web/20230220063533/https://scalibq.wordpress.com/2017/11/28/the-covox-years/ |archive-date=2023-02-20 |access-date=2023-06-25 |website=Scali's OpenBlog |language=en}}

Another limiting factor was that the CPU had to be interrupted at the sampling rate to play background audio (thus incurring the cost of a context switch for every sample, many thousands of times a second), since there was no data buffering or direct memory access available.

The sound quality can be increased by software through dithering, which reduces perceptible aliasing noise and increases dynamic range (used in Inertia Player and FastTracker 2 as an interpolating option).

Commercial products

  • Covox Speech Thing – a R-2R resistor DAC with parallel port pass through, bundled with speech synthesis software, marketed originally as part of voice synthesis and recognition system.{{cite book |title = Build Your Own Multimedia PC |first = Aubrey |last = Pilgrim |publisher = McGraw-Hill |year = 1996 |isbn = 978-0-07-912226-1 |page = [https://archive.org/details/buildyourownmult0000pilg/page/282 282] |url-access = registration |url = https://archive.org/details/buildyourownmult0000pilg/page/282}}
  • Disney Sound Source – a different design to the Covox Speech Thing, though in a superficially similar case also with parallel pass through, marketed by Disney Software in early 1990s.
  • Consists of a FIFO buffer with a DAC on the board that plugs into the parallel printer port, which transmits analog audio over a registered jack to a separate amplifier / speaker box.{{cite web |title = Some notes on programming for the Disney Sound Source |url = http://thorkildsen.no/faqsys/docs/progss.txt |first1 = Mark |last1 = Phillips |archiveurl = https://web.archive.org/web/20070101124905/http://thorkildsen.no/faqsys/docs/progss.txt |archivedate = 2007-01-01}} Its price was set to only $14{{cite web |url=http://www.oldskool.org/shrines/carny |title=The Oldskool PC Carnival Sideshow |date=1999 |access-date=2017-08-06}} and it was supported by many games (see below). It used external power (9 volt battery) and could be turned on/off by software. Contrary to the Covox Speech Thing which had no FIFO buffer, the Disney Sound Source features a 16-byte FIFO allowing for autodetection and flow control, which clocks digital output to the resistive DAC at a fixed sample rate of 7 kHz ±5%.{{Cite web |title=The Sound Source Programmer's Guide |url=http://www.vgmpf.com/Wiki/images/8/8f/The_Sound_Source_-_Programmer%27s_Guide.pdf |url-status=live |archive-url=https://web.archive.org/web/20230625193328/http://www.vgmpf.com/Wiki/images/8/8f/The_Sound_Source_-_Programmer%27s_Guide.pdf |archive-date=2023-06-25 |access-date=2023-06-25 |website=Video Game Music Preservation Foundation}}
  • The printed circuit board DSS007C shows "Ⓟ (1983) U.S. 4,384,170 and others"{{Cite web |title=Disney Sound Source Pinout \ VOGONS |url=https://www.vogons.org/viewtopic.php?t=48604 |url-status=live |archive-url=https://web.archive.org/web/20230502181836/http://www.vogons.org/viewtopic.php?t=48604 |archive-date=2023-05-02 |access-date=2023-06-26 |website=www.vogons.org}} which is an earlier patent by Forrest S. Mozer.{{Cite patent|number=US4384170A|title=Method and apparatus for speech synthesizing|gdate=1983-05-17|invent1=Mozer|invent2=Stauduhar|inventor1-first=Forrest S.|inventor2-first=Richard P.|url=https://patents.google.com/patent/US4384170/en}} The board a has one integrated circuit only (labeled "ICS1453") and the schematic{{Cite book |url=http://archive.org/details/dss-programmers-guide |title=Programmer's Guide to the Disney Sound Source |language=English}} shows 8 lines from the parallel port going into one chip with input pins D0-D8 that also has a "DAC output" pin going to an output "sound". So it can be inferred that that single chip implements both the FIFO and DAC internally, which differs dramatically from the passive R-2R design of the original Covox.
  • In 2015 the hardware was reverse engineered so compatible circuits can be built from easily available off the shelf components.{{cite web |url=http://www.vogons.org/viewtopic.php?f=46&t=42250 |title=Reversing the Disney Sound Source |date=2015-02-01 |website=VOGONS |access-date=2017-08-06}} It is also emulated by the popular DOSBox emulator.

Compatibility

=Games=

The Covox plug couldn't directly substitute any of the popular cards of that age (AdLib, Sound Blaster, Gravis UltraSound, etc.), but several games / platforms supported it directly. It is also usually used in tandem with an AdLib sound card as said card officially was a music card and while it could be put into a mode to handle sampled audio, it could not play sampled audio and music at the same time. Notable entries include:

=Music trackers=

Popular DOS-based trackers used in the demoscene included Covox support, for example:

  • Modplay (also ModEdit, DMP, VP and other Mod players from early 1990s) (Up to 4 channel COVOX output or custom assembler routine for user device)
  • Inertia Player (mono, stereo-on-1 covox, with dithering option).
  • Multiplayer by DGS Italian Software Company
  • Galaxy Music Player (can play MODs even on an Intel 8088)
  • Scream Tracker version 2.3 direct support. Version 3.21 through virtual-soundblaster driver.
  • FastTracker (mono, stereo, stereo-on-1 mode, with dithering).
  • Impulse Tracker

=Emulating other soundcards=

Emulators exist that allow a physical Covox to appear as if it is another soundcard:

  • Virtual SoundBlaster – can emulate Sound Blaster on Covox
  • Covoxer – can emulate Tandy 1000/2000 music synthesizer
  • TEMU – can emulate Tandy 1000/2000 music synthesizer and Disney Sound Source

= Emulating Covox =

The DOSBox and Fake86 emulators can emulate a virtual Covox (as Disney Sound Source) on machines without a physical Covox.{{cite web |date=2015 |title=Sound – Disney Sound Source |url=http://www.dosbox.com/wiki/Sound#Disney_Sound_Source |access-date=2017-08-06 |website=DOSBox Wiki}}

=Operating systems=

Several operating systems have an installable driver for Covox:

  • Windows 3.1x, Windows 95, Windows 98
  • Linux
  • "Alternate Sound Driver for Linux 2.x" (pcsndrv) – supports a "Mono DAC" using one lp-port (parallel printer port) and a "Stereo DAC" using two lp-ports.{{Cite web |last=Beck |first=Michael |date=2005-01-23 |title=Alternate Sound Driver for Linux 2.x Version 1.3 (pcsndrv-1.3.readme) |url=http://fresh.t-systems-sfr.com/linux/src/pcsndrv-1.3.readme |url-status=dead |archive-url=https://web.archive.org/web/20050123212438/http://fresh.t-systems-sfr.com/linux/src/pcsndrv-1.3.readme |archive-date=2005-01-23 |access-date= |website=}}
  • covox-music-player – not a kernel driver, but rather a userspace program that outputs sound on modern Linux distros to the Covox via port-mapped I/O with the outb (output byte) instruction wrapper function (which can be called from user space).{{Cite web |last=MENG |first=YEO |date=January 2, 2017 |title=A Science Project: Bringing the Covox Speech Thing to 2017 |url=https://yeokhengmeng.com/2017/01/a-science-project-bringing-the-covox-speech-thing-to-2017/ |website=YKM'S CORNER ON THE WEB}}{{Cite web |last=Meng |first=Yeo |date=August 10, 2021 |title=Covox-music-player |url=https://github.com/yeokm1/covox-music-player |website=GitHub}}{{Cite web |title=outb(2) - Linux manual page |url=https://man7.org/linux/man-pages/man2/outb.2.html |access-date=2023-11-23 |website=man7.org}}
  • MenuetOS
  • CSI-DOS

=Later variants=

  • André LaMothe's 1995 book "Black Art of 3D Game Programming" section "Building Your Own Digital Sound Device-DIGIBLASTER"{{Cite book |last=André LaMothe |url=http://archive.org/details/BlackArt3DEBook |title=Black Art of 3D Game Programming |date=1995-09-01}} – while not saying the word "Covox", it does describe how to build a resistor ladder hardware device with a schematic that is essentially a clone of a Covox in stereo that plugs into two parallel printer ports, and describes DOS C code for driving it.
  • Simple LPTsnd{{Cite web |title=Simple LPTSND – Covox Speech Thing |url=https://www.retrokits.de/index.php/simple-lptsnd/ |website=Retroianer}} – also compatible with SoundJR and FTL sound adapters in addition to Covox Speech Thing, allowing more games to be played.
  • CVX-4{{Cite web|url=https://www.serdashop.com/CVX4|title=CVX4 Vogons Tuning Edition|website=Serdashop}} – features DIP switches to select capacitor for the low-pass filter, to provide extra attenuation, and to bypass coupling capacitor.
  • Disney Soundsource 2015 Remake{{Cite web |title=Reversing the Disney Sound Source |url=https://www.vogons.org/viewtopic.php?f=62&t=42250 |website=VOGONS}}reverse-engineered from an original adapter.
  • Allows software requiring the original Disney hardware to work without the need of any additional software emulators.
  • Benedikt's remakes:
  • Generic 8 bit audio DAC{{Citation |last=Freisen |first=Benedikt |title=Generic 8 bit audio DAC |date=2023-06-08 |url=https://github.com/roybaer/generic_8_bit_audio_dac |access-date=2023-06-26}} – includes parallel-port pass-through for printer, with intention of being more similar to original Covox.
  • Parallel Port Headphone DAC{{Citation |last=Freisen |first=Benedikt |title=Parallel Port Headphone DAC |date=2023-06-08 |url=https://github.com/roybaer/parallel_port_headphone_dac |access-date=2023-06-26}} – replica of 1990s SiliconSoft SoundJr device{{Cite web |title=SoundJr Digital Audio Modules by SiliconSoft.Com |url=http://www.siliconsoft.com/sndjr1.htm |archive-url=https://web.archive.org/web/20230305200927/http://www.siliconsoft.com/sndjr1.htm |archive-date=2023-03-05 |access-date=2023-06-26 |website=www.siliconsoft.com}} that can drive headphones with power from the parallel port.
  • Parallel port audio and joystick adapter{{Cite web |last=Freisen |first=Benedikt |title=Parallel port audio and joystick adapter |url=https://github.com/roybaer/parallel_port_audio_and_joystick_adapter |website=GitHub}} – compatible with FTL Sound Adapter.
  • ISA LPT DAC r0 – Dual-channel board that plugs into the ISA bus.{{Cite web |title=Dual ISA DAC r0 – Covox Speech Thing on ISA Bus |url=https://www.retrokits.de/index.php/dual-isa-dac-r0-covox-speech-thing-on-isa-bus/ |website=Retroianer}}
  • Each channel uses an Analog Devices AD7524https://www.analog.com/media/en/technical-documentation/data-sheets/AD7524.pdf {{Bare URL PDF|date=August 2024}} 8-bit latched DAC CMOS chip containing a precise integrated thin-film resistor network.

Other Covox products

{{Main|Covox}}

  • Covox Voice Master – Earlier 1984 speech-synthesis board for the Commodore 64 which could playback 64 words stored in memory with BASIC instructions. Word capacity could be extended with disk or tape.{{Cite web |last=Bergheim |first=Kim |date=1984-09-13 |title=Micros prick up their ears |url=https://books.google.com/books?id=GS8EAAAAMBAJ&pg=PA41 |website=InfoWorld: The Newsweekly for Microcomputer Users, volume 6, issue 33 |page=41}}
  • Covox Voice Master Junior – Later cheaper ($39.95) variant that plugs into Atari joystick port and contains an electret microphone for recording sounds for playback or recognition and a speaker.{{cite web | url=https://archive.org/details/VoiceMasterJuniorUserManual/page/n5/mode/2up | title=COVOX Voice Master Junior User Manual | date=December 1988 }}{{Cite web |date=1988-06-01 |title=8-Bit Product Reviews: Covox Voice Master Jr., SSI's Shilob, Panasonic KX-PL09LI Printer |url=https://www.atarimagazines.com/v7n2/8BitProductReviews.html |url-status=live |archive-url=https://web.archive.org/web/20220810042022/https://www.atarimagazines.com/v7n2/8BitProductReviews.html |archive-date=2022-08-10 |access-date=2023-06-25 |website=atarimagazines.com |series=Antic (magazine) vol 77, no 2}}

Also as described in a 1991 COVOX Company Profile:{{Cite web |date=1991-09-01 |title=COVOX: Company Profile (from Covox BBS) |url=https://groups.google.com/g/comp.sys.ibm.pc.soundcard/c/M2T95v7EgsI/m/ibrbO4-KcGQJ |access-date=2023-06-25 |website=groups.google.com}}

  • Covox Sound Master – 1984 for Apple II, 1989 for MS-DOS
  • Covox Voice Master System II – 1990
  • Covox MIDI Maestro – 1990
  • Covox Sound Master II – 1990

References

{{reflist}}