Although there will be no new official drivers for the MultiSounds, the
existing ones are good enough. Turtle Beach has released drivers for
Windows 3.x (I doubt that anyone still needs them today),
Windows 9x (95, 98 and 98SE; ME doesn't seem to support non-PnP ISA
hardware) and Windows NT 4.0 (for the 2nd generation of MultiSounds
only). Fortunately, Sonic Foundry programmers have written a driver which allows
the 1st generation of MultiSounds to be used under Windows NT 3.51/4.0
on both i386 and Alpha architectures. Another good thing is that this driver may
be used for Windows NT 4.0, 2000 and XP because all non-PnP ISA sound
hardware that I'm aware of runs with no trouble under these operating systems
using drivers written even for Windows NT 3.51. Of course, there will
be no DirectSound support under 2000 and XP, but is it really necessary?
However, it seems that Sonic Foundry programmers haven't spent enough time on
this driver to make the hardware running properly in full duplex mode. Anyway,
this driver is getting a bit hard to find these days, so here it is for
Windows NT 3.51/4.0 (i386) (278Kb)
and
Windows NT 3.51/4.0 (alpha)
(424Kb). Other Windows drivers may be downloaded directly from Turtle Beach.
Thanks to Turtle Beach for their documentation on how to write software for
the MultiSounds, though it isn't bug-free. The initial open-source driver was
released for Linux and System V by Markus Mummert somewhere in 1992. It was
a real big hack because there were no documentation available at that moment,
so most information had to be gathered by torturing official DOS executables.
Another Linux driver was written by Andrew Veliath several years after
(1996-98). The first driver for FreeBSD (i386) 3.x and 4.x called
msm
was released by Bob Kot in 2000. Finally, I have completed another driver for
FreeBSD (i386, alpha) 4.x and 5.x called
msnd in 2004, and here are the
release notes.
The driver supports the 1st generation of MultiSounds on both FreeBSD 4.x
and 5.x, both i386 and Alpha. It's not yet complete, but when it comes to
digital audio it's functional fully and even supports memory-mapped playback
for games like Quake 3. It's independent completely from standard
pcm
(newpcm) sound subsystem, thus much more flexible. Further information is
available from manpages supplied.
The driver has never been a part of any FreeBSD release (a good question
with no answer; maybe because the driver has nothing to share with newpcm by
pursuing a way on its own). So, it is maintained separately. I have written the
1st edition of the driver accordingly to my personal needs, reasons, sense of
beauty, and have given it freedom in hope that some hacking minds will find it
interesting and useful. With the 2nd edition, developed in cooperation with
Paul V. Bolotoff in 2005, the driver has been unified. So, there is a single
version serving both architectures, i386 and Alpha. Among numerous improvements,
turbo mode has been implemented as it should be (with working buffer pointers as
well as memory-mapped playback; now works for Alpha too!). Support for the Alpha
architecture has been extended to a new dimension with help of direct data
transfers by managing PCI spaces and using BWX commands instead of those obscure
bus_space_* macros. Applications which rely upon select() call like XMMS now
work properly. Also includes a handy utility,
msndctl, to change
MultiSound's internal parameters like volume levels and channel settings.
Support for the 2nd generation of MultiSounds may be added at some moment in
the future (ehm, this phrase lives here since 2004). A version for NetBSD 2.x
has been under construction for a while, but got cancelled finally because of
very little interest in it.
Tarballs contain all instructions on how to configure, build and install
the driver.
1st edition:
msnd-v1-freebsd-4.x-232005.tar.gz (30Kb, FreeBSD 4.x)
msnd-v1-freebsd-5.x-232005.tar.gz (30Kb, FreeBSD 5.x)
2nd edition:
msnd-v2-freebsd-4.x-232005.tar.gz (38Kb, FreeBSD 4.x)
msnd-v2-freebsd-5.x-232005.tar.gz (37Kb, FreeBSD 5.x)
If you intend to build the driver for the first time, you need
the Turtle Beach MultiSound SDK v2.0 (269Kb)
because of the DSP microcode images. Still available from Turtle Beach though.