LPTDAC.386: LPTDAC Waveout Driver Version 1.0ß
= SoundBlaster Emulator on LPTDAC base fo Windows and its DOS boxes
- LPTDAC ≡ Digital-Analog-Converter on printer port. In the easiest way
one R-2R-network ("16 singing resistors") in a dongle case
- My first great experience in case of 32 bit, protected mode, and
device driver programming. I want to demonstrate, that there is
more than 1kHz available on my 386/25. Without kernel programming it's
impossible (fixed 8kHz from the real time clock excluded)
System Requirements:
- 386 DX 25 (faster --> better results)
- MS-Windows 3.1 Enhanced Mode (I don't know how it works under Windows95)
- SB20SND.DRV as multimedia driver for Windows or SNDBLST2.DRV (only 22kHz;
this is a standard Windows driver named "Creative Labs Sound Blaster 1.5")
(You can write a well-suited driver for this in Turbo Pascal...)
- The LPTDAC Speech Thing
Missing Functions in LPTDAC.386 Version 1.0ß
- proper device contention management
+ one VM could set the sample rate and interference another VM
- device contention management while printing via same port
+ You should avoid playing sound and printing at the same time:-)
- Some API-Funktionen are not implemented
- Setup values for SB port, IRQ level, and DMA channel
Not Emulated Functions
- Single Byte Output
- Compressed Data Stream Output (2bit, 3bit, 4bit...)
- Input
- MIDI Functions
- strange DMA configurations like
+ too small or not matching DMA buffer
+ countdown DMA
- CMS chipset funktions
- AdLib functions
Extended Functions
- The DMA buffer may overlap a 64 KB limit
- An API allows to sound without the need to program SB+IRQ+DMA
In the Future
- Support of 2 DACs
- Emulation of SoundBlaster Pro (8bit stereo)
- Own Windows driver (no sb20snd.drv neccessary)
- Map AdLib Ports of any AdLib card onto SoundBlaster adresses
Warranties
- No warranties for all, neither damage on hard- nor software
This is "banana software", it must be enhanced, but I have no time for this
Installation
- Put into the [386enh] section of the SYSTEM.INI following line:
device=LPTDAC.386 ;do not forget a path if neccessary
- If the port<>378h, then put following lines:
[LPTDAC]
port=xxx ;xxx=hexadecimal port address
- put into the [drivers] section of the SYSTEM.INI the SB20SND.DRV:
wave=sb20snd.drv
- Adjust the SoundBlaster driver to PORT220, IRQ5, DMA1
Author
haftmann#software
Henrik Haftmann, Reichenhainer Str. 51 Zi. 105
email: henrik.haftmann@e-technik.tu-chemnitz.de
Bugfixes since last version
- New name (LPTDAC instead of COVOX) because COVOX is an american company.
- documentation bug fixed (reported by Klaus.Klug@eltek.dtu.dk), you have
to install the .drv driver into the [drivers] section, not the [devices]
section (found in SYSTEM.INI)
Vorgefundene Kodierung: OEM (CP437) | 1
|
|