The only things I know of hardware mixed audio is using the GUS on ScreamTracker 3, FT2 and Impulse Tracker, and using the AWE32 on ImpulseTracker. Though Jeffery Lim said that resonance filtering on the AWE32 is done differently than his software mixed MMX code, and samples had to strictly be 16-bit and a whole slew of other dumb issues... It was still hardware mixed anyways.
I'd imagine a hardware mixed module player on modern windows would use OpenAL with each of the voices on the card dedicated to the channels in the module file. The in_bass plugin has DirectSound3D support for hardware mixing of modules but I've never gotten it to work properly obviously because the geniuses at Redmond Washington thought it was a good idea to remove a critical part of the OS that everyone was using at the time.
I guess I might as well try writing it myself even though I'm a idiot when it comes to C++
“I am the dragon without a name…”
― Κυνικός Δράκων