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.
Date invented | October 2, 1987 |
---|---|
Invented by | Covox, Inc. |
Connects to | Parallel printer port |
Use | audio digital-to-analog converter attached to computer parallel port with pass-through |
Common manufacturers | Covox, Inc. (original Covox Speech Thing) Disney (Disney Sound Source variant) Faster Than Light (FTL Sound Adapter variant) SiliconSoft (SoundJr variant) Do it yourself variants |
Introduced | December 18, 1987 |
The Speech Thing was introduced on December 18, 1987[1] by Covox, Inc. of Eugene, Oregon, for about US$70[2] (equivalent to $188 in 2023) and priced US$79.95 as of 1989.[3] 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)[4] 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. The plug was used long into the 1990s[clarify], 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 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.[5]
Features
editThe 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 kΩ 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.[6]
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
edit- 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.[7]
- 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.[8] Its price was set to only $14[9] 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%.[10]
- The printed circuit board DSS007C shows "Ⓟ (1983) U.S. 4,384,170 and others"[11] which is an earlier patent by Forrest S. Mozer.[12] The board a has one integrated circuit only (labeled "ICS1453") and the schematic[13] 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.[14] It is also emulated by the popular DOSBox emulator.
Compatibility
editGames
editThe 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:
- 688 Attack Sub – title music, sound effects
- Zorro – sound samples
- Battle Bugs – speech, requires expanded memory
- Star Control II – sounds
- Covox Lemmings – special promotional edition of Lemmings released with Covox sound cards including special levels (only works with Covox sound cards for ISA Bus)
- Pinball Fantasies
- most older Sierra Entertainment games, such as King's Quest and Space Quest series
- Build Engine games including Duke Nukem 3D, Redneck Rampage and Shadow Warrior
Music trackers
editPopular 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
editEmulators 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
editThe DOSBox and Fake86 emulators can emulate a virtual Covox (as Disney Sound Source) on machines without a physical Covox.[15]
Operating systems
editSeveral 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.[16]
- 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).[17][18][19]
- MenuetOS
- CSI-DOS
Later variants
edit- André LaMothe's 1995 book "Black Art of 3D Game Programming" section "Building Your Own Digital Sound Device-DIGIBLASTER"[20] – 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[21] – also compatible with SoundJR and FTL sound adapters in addition to Covox Speech Thing, allowing more games to be played.
- CVX-4[22] – features DIP switches to select capacitor for the low-pass filter, to provide extra attenuation, and to bypass coupling capacitor.
- Disney Soundsource 2015 Remake[23] – reverse-engineered from an original adapter.
- Allows software requiring the original Disney hardware to work without the need of any additional software emulators.[14]
- Benedikt's remakes:
- Generic 8 bit audio DAC[24] – includes parallel-port pass-through for printer, with intention of being more similar to original Covox.
- Parallel Port Headphone DAC[25] – replica of 1990s SiliconSoft SoundJr device[26] that can drive headphones with power from the parallel port.
- Parallel port audio and joystick adapter[27] – compatible with FTL Sound Adapter.
- ISA LPT DAC r0 – Dual-channel board that plugs into the ISA bus.[28]
- Each channel uses an Analog Devices AD7524[29] 8-bit latched DAC CMOS chip containing a precise integrated thin-film resistor network.
Other Covox products
edit- 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.[30]
- 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.[31][32]
Also as described in a 1991 COVOX Company Profile:[33]
References
edit- ^ "Speech Thing trademark". United States Patent and Trademark Office (USPTO).
- ^ Stefan, Göhler. "Phonomenal! Covox Speech Thing / Disney Sound Source (1986 / 199x)". Crossfire Designs. Retrieved January 23, 2023.
- ^ Social Science Microcomputer Review. 7. Duke University Press: 97. 1989. ISSN 0885-0011.
{{cite journal}}
: Missing or empty|title=
(help) - ^ US4812847A, Stewart, John L. & Stewart, Bradley C., "Parallel port pass-through digital to analog converter", issued 1989-03-14
- ^ Brychkov, Eugeny (October 19, 2012). Adding a multimedia capability: a Covox device (PDF). GR8BIT. Archived from the original (PDF) on February 1, 2014.
- ^ Scali (November 28, 2017). "The Covox years". Scali's OpenBlog. Archived from the original on February 20, 2023. Retrieved June 25, 2023.
- ^ Pilgrim, Aubrey (1996). Build Your Own Multimedia PC. McGraw-Hill. p. 282. ISBN 978-0-07-912226-1.
- ^ Phillips, Mark. "Some notes on programming for the Disney Sound Source". Archived from the original on January 1, 2007.
- ^ "The Oldskool PC Carnival Sideshow". 1999. Retrieved August 6, 2017.
- ^ "The Sound Source Programmer's Guide" (PDF). Video Game Music Preservation Foundation. Archived (PDF) from the original on June 25, 2023. Retrieved June 25, 2023.
- ^ "Disney Sound Source Pinout \ VOGONS". www.vogons.org. Archived from the original on May 2, 2023. Retrieved June 26, 2023.
- ^ US4384170A, Mozer, Forrest S. & Stauduhar, Richard P., "Method and apparatus for speech synthesizing", issued 1983-05-17
- ^ Programmer's Guide to the Disney Sound Source.
- ^ a b "Reversing the Disney Sound Source". VOGONS. February 1, 2015. Retrieved August 6, 2017.
- ^ "Sound – Disney Sound Source". DOSBox Wiki. 2015. Retrieved August 6, 2017.
- ^ Beck, Michael (January 23, 2005). "Alternate Sound Driver for Linux 2.x Version 1.3 (pcsndrv-1.3.readme)". Archived from the original on January 23, 2005.
- ^ MENG, YEO (January 2, 2017). "A Science Project: Bringing the Covox Speech Thing to 2017". YKM'S CORNER ON THE WEB.
- ^ Meng, Yeo (August 10, 2021). "Covox-music-player". GitHub.
- ^ "outb(2) - Linux manual page". man7.org. Retrieved November 23, 2023.
- ^ André LaMothe (September 1, 1995). Black Art of 3D Game Programming.
- ^ "Simple LPTSND – Covox Speech Thing". Retroianer.
- ^ "CVX4 Vogons Tuning Edition". Serdashop.
- ^ "Reversing the Disney Sound Source". VOGONS.
- ^ Freisen, Benedikt (June 8, 2023), Generic 8 bit audio DAC, retrieved June 26, 2023
- ^ Freisen, Benedikt (June 8, 2023), Parallel Port Headphone DAC, retrieved June 26, 2023
- ^ "SoundJr Digital Audio Modules by SiliconSoft.Com". www.siliconsoft.com. Archived from the original on March 5, 2023. Retrieved June 26, 2023.
- ^ Freisen, Benedikt. "Parallel port audio and joystick adapter". GitHub.
- ^ "Dual ISA DAC r0 – Covox Speech Thing on ISA Bus". Retroianer.
- ^ https://www.analog.com/media/en/technical-documentation/data-sheets/AD7524.pdf [bare URL PDF]
- ^ Bergheim, Kim (September 13, 1984). "Micros prick up their ears". InfoWorld: The Newsweekly for Microcomputer Users, volume 6, issue 33. p. 41.
- ^ "COVOX Voice Master Junior User Manual". December 1988.
- ^ "8-Bit Product Reviews: Covox Voice Master Jr., SSI's Shilob, Panasonic KX-PL09LI Printer". atarimagazines.com. Antic (magazine) vol 77, no 2. June 1, 1988. Archived from the original on August 10, 2022. Retrieved June 25, 2023.
- ^ "COVOX: Company Profile (from Covox BBS)". groups.google.com. September 1, 1991. Retrieved June 25, 2023.
External links
edit- Powering devices from PC parallel port, an article on LPT-port devices, including Covox.
- List of games that support Disney Sound Source at MobyGames.com.
- List of games that support Covox Speech Thing at MobyGames.com.
- A collection of software for Covox, including Windows driver.
- (in Russian) Covox Voice Master schematics and software.
- (in Russian) Covox Digital-Analog Converter, a comprehensive Covox history overview.
- DSS Reverse Engineering on Vogons DSS Reverse Engineering Thread