Re: RFC: OpenAL Winmm driver and OpenAL32.dll thunk was Re: OpenALand DirectSound
Am Mittwoch 22 November 2006 11:44 schrieb Nick Burns: Good luck And may the Sound be with you... Ok, after cleaning up the d3d mess in my tree a bit I gave your patch a try: It applied fine, found AL/al.h after creating configure with autoconf, but compilation failed in dlls/openal: openal.o: In function `wine_alutLoadWAVMemory': /usr/src/wine/dlls/openal32/openal.c:327: undefined reference to `alutLoadWAVMemory' openal.o: In function `wine_alutLoadWAVFile': /usr/src/wine/dlls/openal32/openal.c:327: undefined reference to `alutLoadWAVFile' openal.o: In function `wine_alutUnloadWAV': /usr/src/wine/dlls/openal32/openal.c:326: undefined reference to `alutUnloadWAV' openal.o: In function `wine_alutExit': /usr/src/wine/dlls/openal32/openal.c:326: undefined reference to `alutExit' openal.o: In function `wine_alutInit': /usr/src/wine/dlls/openal32/openal.c:326: undefined reference to `alutInit' collect2: ld returned 1 exit status winegcc: gcc failed. turned out that I needed the freealut package(gentoo). Stangely wine didn't link against that lib automatically, I had to specify -lalut manually. Once the thing was compiled it worked perfectly with Jedi Academy :-) . Wine loaded openal32.dll builtin, and I had sound although I had no sound driver selected in winecfg, which shows that the whole api rollercoaster is bypassed. I had to configure the game to use openal first. The sound appeared strange at first, but after using headphones instead of my broken notebook speakers it turned out that those were just stereo effects I never heard before :-) . I also used to wonder what that promiently marked EAX Sound option was that used to crash wine: Apparently exactly that openal option I enabled first in the config files :-) /me joins the dark side of the sound Great job! Stefan pgpO7rewznBQw.pgp Description: PGP signature
Re: RFC: OpenAL Winmm driver and OpenAL32.dll thunk was Re: OpenALand DirectSound
Good luck And may the Sound be with you... - Nick From: Stefan Dösinger [EMAIL PROTECTED] To: wine-devel@winehq.org Subject: Re: RFC: OpenAL Winmm driver and OpenAL32.dll thunk was Re: OpenALand DirectSound Date: Wed, 22 Nov 2006 10:08:51 +0100 Am Dienstag 21 November 2006 12:03 schrieb Nick Burns: Attached is my diff/patch for both an openal winmm driver and an openal32.dll thunk I would like to get these into wine -- please comment and stuff... Hey great, I will test it with Jedi Knight: Jedi Academy, which uses openal afaik :-) attach4
Re: RFC: OpenAL Winmm driver and OpenAL32.dll thunk was Re: OpenALand DirectSound
They are backwards compat -- and my thunk is backwards compat too.. (it should compile for openal1.0, 1.1, 1.X -- I have only tested Mac OSX 10.4.8 OpenAL 1.1) It is NOT efficent to be backwards compatible -- note my impl of AL_1_1, ALC_1_1, AL_EXTS, ALC_EXTS -- they all check for the existence of their functions ALL the time -- this is braindead and can be fixed with something similar to what we use for ogl -- the big func table -- and only update on context change -- maybe even cache per context function tables... That being said -- the impls for AL_1_0, ALC_1_0, ALUT (not freealut) -- are as good as they can be. They are straight shots thru to the api (bouncing from CDECL(win32) - ???(host???)) As it is (on this list) it should be correct -- barring oddities between deprecated ALUT functions... - Nick From: Stefan Dösinger [EMAIL PROTECTED] To: wine-devel@winehq.org Subject: Re: RFC: OpenAL Winmm driver and OpenAL32.dll thunk was Re: OpenALand DirectSound Date: Wed, 22 Nov 2006 10:25:10 +0100 Am Dienstag 21 November 2006 12:03 schrieb Nick Burns: Attached is my diff/patch for both an openal winmm driver and an openal32.dll thunk Just a question: Are the different openal versions backward compatible, or do we have to ship a openal thunk for each openal version used by the games? attach4
Re: RFC: OpenAL Winmm driver and OpenAL32.dll thunk was Re: OpenALand DirectSound
Hi, That being said -- the impls for AL_1_0, ALC_1_0, ALUT (not freealut) -- are as good as they can be. They are straight shots thru to the api (bouncing from CDECL(win32) - ???(host???)) Afaik Linux libs are CDECL, if the win32 openal is CDECL too(not WINAPI / STDCALL), can we pass the Linux function pointers directly to the apps? Wasn't there some .so loading in the wine library loader some time ago? pgpcHIbFkXPzF.pgp Description: PGP signature