VOGONS


First post, by onethirdxcubed

User metadata
Rank Newbie
Rank
Newbie

My WDM drivers for HD Audio sound in Windows 98se/Me are just about ready for wider testing. These are likely to work in VMware, VirtualBox and on Intel chipsets with a Realtek codec. Also works on a HP T5540 thin client and an Atom netbook, installs but doesn't seem to output anything on Wyse Cx0 and all IDT and Sigmatel codecs.

Current release: Alpha-011 2025-12-13

Changelog:

Details

## WDMHDA Alpha-011 2025-12-13

Fixes stupid IRQ sharing bug. Should fix freezes on some platforms where the audio controller shares an interrupt with USB. Also rewrote interrupt service routine to handle all streams and not to try to service the stream for non-stream interrupts.

## WDMHDA Alpha-010 2025-12-11

Fixes out of bounds read (maybe leading to crash) bug when saving mixer settings to registry that was in the original SB16 driver.

## WDMHDA Alpha-009 2025-12-10

- Set data format before powering up each node in codec, this fixes horrible distortion on Realtek ALC2xx
- Add controller-specific PCI configuration writes that are necessary for many systems
- Fix the mixer controls enough to allow the master volume slider to work on real hardware. On VMWare and Virtualbox it still doesn't do anything but I think that's by design for the VM, you can use the Wave volume slider in the mixer or the host's volume control.

I now consider this driver functional enough to post about on retro hardware forums for further testing.

## WDMHDA Alpha-008 2025-11-23

Fixes:

- Fix double-free if device was disabled in Device Manager
- Add variable sample rates but only the range of 8-48 khz for now. Still locked to 16-bit stereo but Windows can upconvert for anything that opens an 8 bit or mono channel.
- Fix fundamental CORB/RIRB communication error that was leaving the pointers misaligned if the codec did not respond.

Known Bugs:

- Severe USB & Performance issues when sharing an IRQ with a USB controller
- Realtek codecs: Left channel sounds fine but right channel is extremely overamplified and distorted

## WDMHDA Alpha-007 2025-11-19

Added PCI Configuration Register writes for controller-specific quirks.

## WDMHDA Alpha-006 2025-11-05

Still trying to get this working on real hardware. Now including the debug build in the ZIP file, the hda.sys file in that folder may be copied into C:\Windows\System32\Drivers after installation to get full debug log output.

- Check STATESTS register to see if some codecs attach,
- Wait the required amount of time for codec init,
- Don't try to continue into codec init with a STATUS_UNSUCCESSFUL.

## WDMHDA Alpha-005 2025-10-31

- Add codec reset command listed in Realtek datasheet
- Tweak delays, timings, and buffer sizes to align with spec.
- Now packaging the release build instead of the debug build to reduce slowdown from debug-log spam.

## WDMHDA Alpha-004 2025-10-29

Now supports immediate command interface to the codec, and now functions in VMWare as well as VirtualBox. Will test on some real hardware but don't get your hopes up. I still get occasional hard freezes for reasons I don't understand yet.

## WDMHDA Alpha 003 Pre-release 2025-10-27

Fixed more bugs around interrupts and timeouts. Probably doesn't work on real hardware but at least shouldn't freeze instantly anymore

## WDMHDA Alpha 002 Pre-release 2025-10-21

Maybe fixed interrupt issue, some minor polish changes

## WDMHDA Alpha 001 Pre-release 2025-10-20

Alpha release. No guarantees whatsoever. Only tested in VirtualBox! Only works at 16-bit 44100 Hz! Winamp produces horrible screeching noises sometimes! Also the release build doesn't produce sound so this is a debug build. For best results, run with a kernel debugger attached so you can tell why it doesn't work and why everything is frozen. You might get sound, or it might wipe your hard drive and unleash the nasal demons. If it doesn't work for you i would like to see the debug logs to figure out why.

No readme and no instructions are provided for this. If you don;t know how to install windows driver binaries through Device Manager this is not the way to learn.

Install the inf with Device Manager as usual. The unknown device to install it on is probably just called "PCI Card" in Device Manager, if you have multiple of those check with HWINFO for which one has the PCI class code 0403.

https://github.com/andrew-hoffman/WDMHDA/releases

Last edited by onethirdxcubed on 2025-12-14, 04:49. Edited 2 times in total.

Reply 1 of 4, by myne

User metadata
Rank l33t
Rank
l33t

I can confirm it works better on ME in Virtualbox than the other 3.1 HDA driver.

I built:
Convert old ASUS ASC boardviews to KICAD PCB!
Re: A comprehensive guide to install and play MechWarrior 2 on new versions on Windows.
Dos+Windows 3.11+tcp+vbe_svga auto-install iso template
Script to backup Win9x\ME drivers from a working install
Re: The thing no one asked for: KICAD 440bx reference schematic

Reply 2 of 4, by onethirdxcubed

User metadata
Rank Newbie
Rank
Newbie

Released a new version fixing the IRQ sharing bug so this should load properly on a lot more systems. Time to test on a lot more thin clients

Reply 3 of 4, by Lualb

User metadata
Rank Newbie
Rank
Newbie

Hello everyone!... I really wanted to say that this project to port HD audio to Windows 98 seems great to me, since I'm currently using Windows 3.11, but I'd like to be able to install Windows 98SE on a PC with an i3 4160 CPU, 4GB of DDR3 RAM, and a 40GB SATA hard drive... I hope I can get it working on my PC very soon!