VOGONS


First post, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I'm trying to figure out the optimal audio configuration for my HP thin client given the limitation of it having only one PCI slot. I can already get good quality sound and the onboard AC97 sound chip, which includes Sound Blaster digital audio and Microsoft's Roland General MIDI. The problem is that there is no Adlib sound provided by Microsoft's WDM interface.

Lots of cards can be used to obtain something that is Adlib compatible, but their compatibility device driver either require VXD drivers that override the WDM General MIDI (causing it to become unavailable) or do not provide a genuine Adlib OPL. Unfortunately, none of the Yamaha PCI cards that I've tried work with this thin client. My YMF724 causes the keyboard to fail (both USB and PS/2) and a loud screeching sound to be emitted from the onboard audio jack, and my YMF744 is detected but not assigned an IRQ by the BIOS, so it also doesn't work.

I had great success with my ESS Solo-1 which sounds identical when compared to a genuine Yamaha, with excellent DOS and Windows compatibility. It also provides Adlib support from within Windows on port 388, as expected. The problem is that the legacy device driver overrides the WDM MPU-401 device for General MIDI, but only provides an external interface via the joystick port for DOS games, even when mapped to a port other than of 330. When mapped to 340, a DOS game will report that no MPU-401 was detected on port 330, instead of defaulting to the WDM MIDI device.

As a result, I can get digital audio with General MIDI using the AC97 driver and no Adlib, or digital audio with Adlib and no General MIDI using the ESS Solo-1, but I can't have both. What I wanted to do was use the ESS Solo-1 exclusively as an Adlib device and the WDM device for digital audio and General MIDI. This might have been possible if I could disable the other features of this driver but this doesn't seem to be possible.

I have tried all different kinds of settings and combinations of disabling various sound settings, but couldn't find a way to work around this. My compromise is to use Windows for General MIDI and reboot into DOS to take advantage of the ESS Solo-1's Adlib support.

I was able to work around the issue using VDMSound to get General MIDI to work using the ESS Solo-1 from within Windows, but the software is unstable and causes the system to crash or audio to stop working entirely after closing the game. DOSBox for Windows 98 is another option, but the CPU is too slow and anything I try to play ends up a slideshow.

Has anyone tried doing something similar with any better success?

Last edited by Kahenraz on 2022-05-28, 06:45. Edited 3 times in total.

Reply 1 of 2, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
Kahenraz wrote on 2022-05-28, 06:37:

When mapped to 340, a DOS game will report that no MPU-401 was detected on port 330, instead of defaulting to the WDM MIDI device.

Try using port 300 instead.

While some games may support other ports, 300 and 330 seem to be safe bets and usually work without any fuss, provided that the "P" parameter of the BLASTER variable matches them.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 2 of 2, by Kahenraz

User metadata
Rank l33t
Rank
l33t

When the ESS SOLO-1 DOS Emulation device driver is enabled, the feature of mapping General MIDI in DOS boxes to the WDM MIDI mapper no longer works. There is no option to specify a particular port for this and it defaults to 330 (it does not appear on port 300).

The reason I'm moving the ESS MPU-401 port to 340 was the hope that it would allow 330 to work via the WDM driver, but this was not the case.