First post, by OMORES

User metadata
Rank Member

The more you read about PCI sound cards the more you find that there is no point in trying without DMA/DDMA/PC-PCI/SB Link support...

This was my feeling when I was testing several Creative ES137x cards in DOS . Then I loaded Windows 3.11. Didn't knew that the ES137X driver by watlers_world is still installed... The same card (CT5805) a few moments ago was lost in DOS... did initialize and played Windows 3.11 startup sound. I listened to some MP3s, played Sim City 2000 - all good.

From what I can tell the driver is targeting some ES137x registers but also AC'97 codec registers (CT5805 is paired with an AC97 codec from Crystal). This AC'97 thing is a little bit concerning DOS wise. But initializing the card and make it decode a bit stream is still a step forward...

Maybe some of you guys will take a peek into source code. (attached) It's written in Pascal, there is little Win16 API involved, and some parts are in assembler.

Ideally, Watlers would be the guy to do this, but Windows 3.1 is his thing, not DOS. (although he is not so active anymore he did released a improved Windows 3.1 driver this year)


Reply 1 of 3, by mrau

User metadata
Rank Oldbie

the code in the picture does not seem to be doing much really..
when in DOS you really need to make it emulate something else that your target software already knows and likes imho - so the question is - emulate what?

Reply 2 of 3, by Joseph_Joestar

User metadata
Rank l33t

Aren't those just Ensoniq Audio PCI cards? If so, they already have DOS drivers.

I have a CT4810 card which uses a similar chip and it works in pure DOS. The FM synth emulation is atrocious, but otherwise, its SB16 compatibility functions as expected.

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 / Audigy1
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 3 of 3, by OMORES

User metadata
Rank Member

The original DOS drivers from Ensoniq or Creative do not work in newer machines. As far as I know, there is no PCI sound option for AMD systems since AM3 socket release. For Intel systems, things are a little better: Aureal AU8820 works even behind a PCI-E bridge. (I tested an AU8820B2 with 100% success on a Haswell configuration this week.)

So, these ubiquitous ES137x cards would be a nice universal PCI sound card for the newer systems.

If the emulation is done in hardware by ES137x chips, then all we need is actually a wrapper, so all the ports that DOS games are trying to access are well configured and available. I know it's not a trivial thing by far.

Here is an interesting PCI DOS game compatibly guide written by an Intel engineer in 1996.


  • Filename
    File size
    57.41 KiB
    File license
    Public domain