VOGONS


Garbled sound in Windows 98

Topic actions

First post, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie

Hi,

When trying to find why I can't get SVGA DOS apps to work with my graphics card, I somehow managed to screw up sound on my DOS/Windows 98 machine. I think it happened after I changed something in BIOS (there are many parameters related to hardware initialisation, including several options for IRQ routing).

At first the sound simply stopped working at all. In DOS games, I would get FM music, but no digital audio. The ESSCFG utility was reporting that the sound card was configured according to the command line parameters, but there was no initialisation "click" when it was loading. The games were either complaining that there was no digital audio device or just simply fail to play any digital audio. The only game that was working OK was Quake, all the others I tried (Doom, Nectaris, The Grandest Fleet, Machiavelli The Prince, Dune 2) did not play digital audio at all. In Theme Hospital, digital audio was playing but it was extremely choppy, and the game slowed to a crawl while the audio was playing. In Windows 98, any attempt to play audio would either freeze the machine or throw an exception.

After unsuccessfully trying to solve this problem for a while, I loaded BIOS defaults. Now ESSCFG says that the sound card is already configured by PNP BIOS, but there is an initialisation "click" and DOS games work fine in pure DOS - I have perfect digital audio in every DOS game/application I tried and no slowdowns in Theme Hospital. In Windows, however, the audio is extremely choppy. Even the startup sound is stuttering.

I tried playing with hardware acceleration levels in DXDIAG (this was useless because ES1869 doesn't support hardware buffers anyway), replaced Windows 98 built-in WDM drivers with OEM VXD drivers for Windows 95, but the problem still remains. There are no resource conflicts with other devices.

I tried another ES1869 card but the problem remains exactly the same.

I wonder if there's anything else I can do to solve this problem...

My PC configuration:

- AMD K6-III+ 400/ATZ overclocked to 550 MHz
- Shuttle HOT-597 motherboard (VIA MVP3)
- Nvidia GeForce 2MX PCI
- 384 MB RAM
- 32 GB IDE SSD

I would be very grateful for any help, because I think I completely exhausted my options at this point.

Last edited by ShovelKnight on 2019-12-04, 10:45. Edited 1 time in total.

Reply 3 of 22, by tpowell.ca

User metadata
Rank Member
Rank
Member

Very odd problem.
If you want a manual configuration, I would suggest reserving IRQs 5 and 7 for ISA (non PnP) and DMA 1. Try and use the ESSCFG utility again with manually configured parameters.
The other BIOS options should have very little if any effect, but you should still keep the PnP OS option enabled if you use Windows 95 and above.

I must admit, the ESS audio lineup have caused me very few issues other than terrible DOS drivers on earlier cards, but solid hardware.

  • Merlin: MS-4144, AMD5x86-160, 32MB, 16GB CF, ZIP100, ESS688, GUS, S3 VirgeGX 2MB, HardMPU
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, GUS 16MB, Voodoo3-3k
    Einstein: P8P400, P4-3GHz HT, 1.5GB, Quadro4 980XGL, Live!

Reply 4 of 22, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie

Okay, here's what I did in BIOS:

PnP OS Installed: Yes
PCI/ISA PnP Configuration: Manual
IRQ 5: Legacy ISA
IRQ 7: Legacy ISA
DMA 1: Legacy ISA
DMA 3: Legacy ISA

After this, I was able to successfully initialize the sound card with ESSCFG v5.2. I can manually set it to IRQ 5 or IRQ 7 and DMA1/DMA3 and it works in DOS games.

If I call ESSCFG before loading into Windows GUI, i get the same results as before (choppy audio).

If I don't call ESSCFG before loading Windows, Windows assigns wrong resources to the card (DMA1 and DMA0 instead of DMA1 and DMA3) and I get no audio at all. If I try to manually change DMA0 to DMA3, I immediately get "Fatal exception 0E at address..."

Last edited by ShovelKnight on 2019-11-13, 17:52. Edited 1 time in total.

Reply 5 of 22, by derSammler

User metadata
Rank l33t
Rank
l33t

Those BIOS settings are wrong. If you set an IRQ/DMA to "Legacy ISA", it can not be used for PnP cards. But the ES1869 is PnP and that's why Windows can not use these for the card (esscfg is only for non-PnP environments like DOS, that's why it works there).

Reply 6 of 22, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie
derSammler wrote:

Those BIOS settings are wrong. If you set an IRQ/DMA to "Legacy ISA", it can not be used for PnP cards. But the ES1869 is PnP and that's why Windows can not use these for the card (esscfg is only for non-PnP environments like DOS, that's why it works there).

The problem is that if I set "PnP OS" to "Yes" and "PCI/ISA PnP Configuration" to "Auto", I lose sound both in DOS and in Windows 😵

Reply 7 of 22, by derSammler

User metadata
Rank l33t
Rank
l33t

Try "PnP OS Installed: No". That option is actually confusing by its name. It controlls whether or not the BIOS configures PnP cards. "No" means it does, "Yes" means the OS should do instead.

Reply 9 of 22, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

Bad stuttering sounds like resource contention. Map out your IRQ and DMA assignments.

All hail the Great Capacitor Brand Finder

Reply 10 of 22, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie

Straight from Device Manager...

GeForce 2MX/MX400 - IRQ 7
Standard Floppy Disk Controller - IRQ 6, DMA 2
VIA Bus Master PCI IDE Controller - IRQ 14,15
Standard Keyboard - IRQ 1
PS/2 Compatible Mouse Port - IRQ 12
ES1869 Plug and Play AudioDrive (WDM) - IRQ 5, DMA 1, DMA 3
VIA Tech 3038 PCI to USB Universal Host Controller - IRQ 11
Direct Memory Access Controller - DMA 4
Numeric Data Processor - IRQ 13
Programmable Interrupt Controller - IRQ 2
SCI IRQ used by ACPI bus - IRQ 9
System CMOS/RTC - IRQ 8
System Timer - IRQ 0

I see no resource conflicts whatsoever.

Reply 11 of 22, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie

Hmm... very strange...

I noticed that in Caesar 3, the audio in game was extremely choppy. However, if the game is in the background and not updating the screen, the sound plays fine!

So, could it be related to the video card? I decided to check. GeForce 2MX out, ATI Radeon VE in.

Well, the sound is no longer choppy, but it's now extremely distorted and plays with variations in speed - something like a stretched tape or an extremely decentered vinyl record.

However, if there's nothing actively drawing to the screen, the sound is perfect.

WTF is going on? 🤣

P. S. Back in the day I played Caesar 3 on an AMD K5-PR133 with an S3 graphics card and the same ESS ES1869 audio card. I know for sure that this PC should be more than fast enough to refresh the screen and play audio at the same time 🤣

Reply 17 of 22, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie

To summarise:

I tried messing with the BIOS setup.
Reinstalled Windows 98 from scratch three times.
Tried 2 different GPUs and 2 versions of VIA 4-in-1 drivers.
Moved all cards between different slots.
Tried installing DirectX 7 and DirectX 8.

And nothing works, I’m still getting garbled sound in Windows 98 with 3 different sound cards (2x ES1869 and one Terratec Aureon 5.1 Fun PCI).

Reply 18 of 22, by Joseph_Joestar

User metadata
Rank Oldbie
Rank
Oldbie

In Windows 98 go to: Start > Programs > Accessories > System Tools > System Information. Once there, click on Hardware Resources and then check the IRQ and DMA sections.

This should show you if any of the IRQ or DMA values used by your sound card are shared with other devices. If they are, try turning off those devices and see if it helps. For example, the on-board USB controller on my KT7A motherboard takes up three separate IRQ values. My Yamaha YMF724 refused to work under IRQ 7 in DOS until I turned the USB controller off completely in BIOS.

Using Audigy drivers with a Sound Blaster Live
Installing DOS drivers on an Audigy2 ZS
OPL3 vs. ESFM vs. CQM vs. SBLive
OPTi 82C930 review

Reply 19 of 22, by ShovelKnight

User metadata
Rank Oldbie
Rank
Oldbie

Thank you for the suggestion. I checked shared resources/conflicts and I can see that the GPU shares IRQ with the onboard USB controller. I reassigned the USB controller to IRQ11, which was free, but it didn't change anything.

The sound card has its own IRQ/DMA which is not shared with any other device.