Open Hiradur opened 3 months ago
Interestingly these, fc2, ac and BGE are all first party ubisoft games.. Ok nvm max payne 2 and hitman 2 should also have it.
Could it be a query for EAX1 properties?
It might be provided by an EAX implementation from one of Creative's competitors. IIRC, Realtek and Aureal provided their own EAX implementations and possibly others as well.
That's very meaningless because every single vendor had to have its own implementation, yes.. but rolling out your own GUID with blackjack and hookers then that's doing something else entirely and would break compatibility with the standard itself.
Anyhow FWIW eax.dll version 2.6 (2.06?) from 1999 doesn't have it, while version 3.0.6 (3.06?) from 2001 has it. V4 doesn't though. The file is probably why all these random games have it even with no supposed "special attentions given to audio". After some outside of the box thinking in ghidra, I found eax.dll uses it in some strange super long repeated conditional, which I really could make no sense of.. BUT that sits within two other similar ifs checks that *do have* known CLSIDs. Simply put:
DSPROPSETID_EAX20_ListenerProperties
????????????????????????????????????
DSPROPSETID_EAX30_ListenerProperties
Now, that shouldn't be automatically interpreted as some sort of ordered relation (even though it may).. But, considering we *do* know what DSPROPSETID_EAX10_ListenerProperties
is (and it's not that) I'm kinda afraid that however improbable what remains could be the worst.
Could it be a reference to whatever the hell "EAX2.5" is or was supposed to be? @kxproject do you know if EMU10K1 had some sort of "can't physically do more than EAX2, but I'm still better than peasants" mode? Or maybe that's just some old ass beta they had internally.
Holy shit, I nailed it.
https://archive.org/details/sb-audigy-driver
The first(?) Audigy drivers had debug symbols left in!
And yes, I can confidently confirm that in e10kx2k.sys the mysterious string is _DSPROPSETID_EAX25_Listener
.
(of very much interesting note that this is also included inside of the 0.9.4.1 openal32.dll that ships together)
Again, it is unclear what exactly this was used for but as a matter of fact I could also find it inside 2000's sblfx.dll, aka "SB Live! DS3D & Effects" (presumably they it's in a dll and not a normal kernel driver, because they didn't want to replicate the code between VxD, WDM and old NT).
Both Splinter Cell and Splinter Cell: Chaos Theory query for a propset that DSOAL reports as unsupported:
Quote from @kcat after mentioning this on IRC: