First post, by Kahenraz
- Rank
- l33t
ESS has several PCI audio cards that fall under a few different names and come with with different features; for example, the Solo-1 cards have ESFM, a 100% compatible Adlib OPL3 clone with added extensions, while the Canyon, Meastro, and Allegro variants have an inferior FM synthesizer that can sound quite awful.
Configuring these sound cards requires loading a .SYS file from CONFIG.SYS and then running an accompanying .COM file which reads an .INI file that contains resource information. The reason I'm being a bit vague here is that different drivers used different names, for example, ESSAUDIO.SYS, AECU.SYS, ESSAUDIO.COM, ESSOLO.COM, MAESTRO.COM, ESSAUDIO.INI, ESSOLO.INI, ES1938.INI, and MSTRINF.INI. All of the .SYS, .COM, and .INI files are synonymous, although not all versions look for all possible .INI variants. All of the .COM programs will look for any of ESSOLO.INI, ES1938.INI, or MSTRINF.INI, but only the newer versions (not 2.11 .COM variants) will look for ESSAUDIO.INI.
I have included all of the different versions I could find from various driver sets. All of them are compatible with the different PCI audio cards, with some caveats. The most compatible way to initialize any of these cards is to the use the most recent ESSAUDIO.SYS and ESSAUDIO.COM. I have found, however, that my Maestro-2, Maestro-2E and Allegro-1, do not respond to Sound Blaster Pro-compatible mixers with regards to setting the FM volume (I have not tested the Canyon3D, Maestro-1, or Maestro-3), and the default setting is almost inaudible. However, running any of the older 2.11 .COM programs will set the volume a bit louder, which is the only way to get it to an reasonable level for use with low-powered speakers, such as those in a laptop. The Solo-1 *does* work correctly with Sound Blaster Pro mixers to set the FM volume.
The major caveat I mentioned, is that these cards must utilize various methods for obtaining legacy compatibility. This can be in the form of DDMA, PCPCI, SWDMA, and TDMA. The card must also be configured to appear at a mapped location for Sound Blaster Pro address, DMA, and IRQ. The *only* way to do this is from the Windows Device Manager, under the driver's resource tab when using the Windows 9x VxD drivers. When the card is configured this way, it will create or update one of the aforementioned .INI files in the C directory of the hard drive. These settings are compatible specifically with your system and may not work if this file is copied to a different computer. Therefore the most reliable way to configure this card for DOS is through Windows. Once this INI file is created and configured, specifically for your hardware, the card will function in pure DOS without Windows.
I've attached all of the various driver versions here. I have renamed all of the .SYS and .COM files to ESSAUDIO.SYS and ESSAUDIO.COM for consistency. The versions I have attached here include:
ESSAUDIO.SYS:
2.10E
2.10H
2.10J
2.10N
2.30B
2.30D
2.30F
ESSAUDIO.COM
2.11C
2.11I
2.11M
2.11O
2.11R
2.31A
2.31D
2.31G
2.31L
2.31S
There is also a test.exe by Adlib which will allow you to quickly test the FM audio volume. There is no audio mixer included by ESS, but these PCI cards are compatible with any Sound Blaster Pro audio mixer (excluding FM). A good one can be found here, and I have attached a copy as well:
https://www.bttr-software.de/products/sbmix/
This is not a drop-in solution for getting any of these PCI audio cards working. You will still need to find the appropriate VxD driver for Windows 9x, configure its resources to generate a INI file, and only then will these files be useful.
It's possible to initialize and configure one of these cards without these files, or Windows, but this requires using a tool like PCISET to manipulate the registers directly. This is not a universal solution, as some of the different chips may have different registers. I experimented with this a little, but found it to be unreliable. The drivers themselves already know how to configure the INI file correctly, according to your system, and I found this to be the easiest way to do it.
You can read a bit up on PCISET here:
http://groups.google.de/group/de.comp.os.msdo … a0e07ae1d32c531
Re: ESS Solo-1 - pure PCI vs. SB-link
It can also be obtained here, as I have attached it to this post as well: