JOAL status

Same crash in all lessons.

[quote]run:
ALFactory.init - Native: Enter
ALFactory.init - Native: Exit
[java] Go TEAM!
[java] Entering alutInit()
ALFactory.init - Native: Enter
ALFactory.init - Native: Exit
[java] In alutInit(): Device Name = null
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x0
Current Java thread:
at net.java.games.joal.ALCImpl.openDeviceNative(Native Method)
at net.java.games.joal.ALCImpl.alcOpenDevice(ALCImpl.java:53)
[/quote]
LWJGL works fine

WinXP, JDK 1.5, Beta OAL drivers

[quote]Won’t work on my nForce2 built in sound device and my other Hercules Fortissimo II

An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x77F580C9
Function=RtlAllocateHeap+0x51B
Library=C:\WINDOWS\System32\ntdll.dll
[/quote]
I got exactly the same exceptions before I reinstalled my OpenAL from the creative's site.

I too have nForce (Epox 8RDA).

Check the next post to this thread, I have some more information. Currently my JOAL works fine for me, but I suspect that the package at Creative's website (OpenAL runtime) just wont work with nForce + JOAL combination.

I suggest you install the following file:
OpenALwEAX.exe (file version 2.1.5.0), size is 782 782 bytes.
ftp://opensource.creative.com/pub/sdk/OpenAlwEAX.exe
NOTE: be sure to delete existing C:\WINDOWS\system32\OpenAL32.dll file, installer wont replace it.

Cretive's links on the website seem to point file version 1.2.2.0 (older?).

Whole message made short:
Use Creative’s FTP site, NOT Website when downloading OpenAL install packages.

Download packages from here:
ftp://opensource.creative.com/pub/sdk


I have a feeling that Creative has their files mixed up on the website (or FTP site).
This is because www has older OpenALwEAX.exe (also SDK is older) files, at least when it comes to version numbering.

Below is an explanation:


Does not work:

If I install OpenAL SDK or plain Runtime using Creative’s www-page links, such as link:
http://developer.creative.com/landing.asp?cat=1&sbcat=31&top=38
Nothing JOAL related works any more for me.

Let’s take for example plain runtime file:
http://developer.creative.com/articles/article.asp?cat=1&sbcat=31&top=38&aid=46&file=OpenALwEAX.exe
This file’s version is: 1.2.2.0 and size is: 331 776 bytes.
(NOTE the lower version number).
These files install this file C:\WINDOWS\System32\OpenAL32.dll
File version: 6.14.357.6
Description: Standard OpenAL™ Implementation
Copyright: Copyright© 2000-2003 NVIDIA Corporation
DLL Size: 81 920 bytes (lower size)

Running JOAL lesson1 does not work:

user@orion ~/workspace/joal-demos/www/devmaster/lesson1
$ ant run
Buildfile: build.xml

init:

compile:

run:
[java] Go TEAM!
[java] Entering alutInit()
[java] In alutInit(): Device Name = null
[java] In alutInit(): Device = net.java.games.joal.ALC$Device@3303e80
[java] Pointer = 53493464
[java] ALC = net.java.games.joal.ALCImpl@9e5c73
[java] Exiting alutInit()
(just “hangs” in here, have to kill Java process…)


This one works fine:

I get the files from Creatives FTP site:
ftp://opensource.creative.com/pub/sdk/OpenALwEAX.exe
This file’s version is: 2.1.5.0 and size is: 782 782 bytes
(NOTE the higher version number).
Then I got this file:
C:\WINDOWS\System32\OpenAL32.dll
File version: 2.1.5.0
Description: PackageForTheWeb Stub
Copyright: Copyright © 1996 InstallShield Software Corporation
DLL Size: 159 744 bytes (higher size)

Running JOAL lesson1 works:
user@orion ~/workspace/joal-demos/www/devmaster/lesson1
$ ant run
Buildfile: build.xml

init:

compile:

run:
[java] Go TEAM!
[java] Entering alutInit()
[java] In alutInit(): Device Name = null
[java] In alutInit(): Device = net.java.games.joal.ALC$Device@33d0650
[java] Pointer = 54331416
[java] ALC = net.java.games.joal.ALCImpl@9e5c73
[java] Exiting alutInit()
[java] Press a key and hit ENTER:
[java] ‘p’ to play, ‘s’ to stop, ‘h’ to pause and ‘q’ to quit

All commands execute fine.


One more thing, I suggest you delete old OpenAL files, especially C:\WINDOWS\system32\OpenAL32.dll because ftp://opensource.creative.com/pub/sdk/OpenALwEAX.exe wont replace existing OpenAL32.dll if there is one found already from your system32 directory.

At least this was the case on my desktop system and on my laptop, my desktop system has Epox 8RDA (NForce Nvidia sound chipset). Where as my laptop (HP Omnibook 510) has some other sound chipset. I got JOAL working fine on both systems when using FTP files.

Athomas, hope this helps!

This message is for JOAL developers only.

I get JOAL working fine on my laptop if I use OpenAL from Creative’s FTP site (not www-site). But here’s an exception that I get with the “wrong” www-site creative files:

I suggest everyone loads files from the FTP site and try again JOAL.


Buildfile: build.xml

init:

compile:

run:
[java] Go TEAM!
[java] Entering alutInit()
[java] In alutInit(): Device Name = null

An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at PC=0x0
Function=[Unknown.]
Library=(N/A)

NOTE: We are unable to locate the function name symbol for the error
just occurred. Please refer to release documentation for possible
reason and solutions.

Current Java thread:
at net.java.games.joal.ALCImpl.openDeviceNative(Native Method)
at net.java.games.joal.ALCImpl.alcOpenDevice(ALCImpl.java:53)
at net.java.games.joal.util.ALut.alutInit(ALut.java:75)
at SingleStaticSource.main(SingleStaticSource.java:133)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:196)
at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:133)
at org.apache.tools.ant.taskdefs.Java.run(Java.java:661)
at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:168)
at org.apache.tools.ant.taskdefs.Java.execute(Java.java:77)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:269)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:301)
at org.apache.tools.ant.Target.performTasks(Target.java:328)
at org.apache.tools.ant.Project.executeTarget(Project.java:1215)
at org.apache.tools.ant.Project.executeTargets(Project.java:1063)
at org.apache.tools.ant.Main.runBuild(Main.java:632)
at org.apache.tools.ant.Main.startAnt(Main.java:183)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:197)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:56)

Dynamic libraries:
0x00400000 - 0x00406000 c:\j2sdk1.4.2_03\bin\java.exe
0x77F50000 - 0x77FF7000 C:\WINDOWS\System32\ntdll.dll
0x77E60000 - 0x77F46000 C:\WINDOWS\system32\kernel32.dll
0x77DC0000 - 0x77E5C000 C:\WINDOWS\system32\ADVAPI32.dll
0x78000000 - 0x78086000 C:\WINDOWS\system32\RPCRT4.dll
0x77C00000 - 0x77C53000 C:\WINDOWS\system32\MSVCRT.dll
0x08000000 - 0x08138000 c:\j2sdk1.4.2_03\jre\bin\client\jvm.dll
0x77D30000 - 0x77DBC000 C:\WINDOWS\system32\USER32.dll
0x77C60000 - 0x77CA0000 C:\WINDOWS\system32\GDI32.dll
0x76B30000 - 0x76B5C000 C:\WINDOWS\System32\WINMM.dll
0x5D2A0000 - 0x5D2A7000 C:\WINDOWS\System32\serwvdrv.dll
0x5B5D0000 - 0x5B5D7000 C:\WINDOWS\System32\umdmxfrm.dll
0x10000000 - 0x10007000 c:\j2sdk1.4.2_03\jre\bin\hpi.dll
0x003E0000 - 0x003EE000 c:\j2sdk1.4.2_03\jre\bin\verify.dll
0x008A0000 - 0x008B9000 c:\j2sdk1.4.2_03\jre\bin\java.dll
0x003F0000 - 0x003FD000 c:\j2sdk1.4.2_03\jre\bin\zip.dll
0x032B0000 - 0x032BF000 C:\lesson1\joal.dll
0x032E0000 - 0x032F4000 C:\WINDOWS\System32\OpenAL32.dll
0x72CF0000 - 0x72CF9000 C:\WINDOWS\System32\wdmaud.drv
0x72CE0000 - 0x72CE8000 C:\WINDOWS\System32\msacm32.drv
0x77BD0000 - 0x77BE4000 C:\WINDOWS\System32\MSACM32.dll
0x77BC0000 - 0x77BC7000 C:\WINDOWS\System32\midimap.dll
0x76C80000 - 0x76CA2000 C:\WINDOWS\system32\imagehlp.dll
0x6DAB0000 - 0x6DB2D000 C:\WINDOWS\system32\DBGHELP.dll
0x77BF0000 - 0x77BF7000 C:\WINDOWS\system32\VERSION.dll
0x76BE0000 - 0x76BEB000 C:\WINDOWS\System32\PSAPI.DLL

Heap at VM Abort:
Heap
def new generation total 576K, used 193K [0x10010000, 0x100b0000, 0x104f0000)
eden space 512K, 26% used [0x10010000, 0x100327b8, 0x10090000)
from space 64K, 87% used [0x100a0000, 0x100adf28, 0x100b0000)
to space 64K, 0% used [0x10090000, 0x10090000, 0x100a0000)
tenured generation total 1408K, used 624K [0x104f0000, 0x10650000, 0x14010000)
the space 1408K, 44% used [0x104f0000, 0x1058c108, 0x1058c200, 0x10650000)
compacting perm gen total 5120K, used 4997K [0x14010000, 0x14510000, 0x18010000)
the space 5120K, 97% used [0x14010000, 0x144f1460, 0x144f1600, 0x14510000)

Local Time = Tue Feb 17 12:36:15 2004
Elapsed Time = 2

The exception above was detected in native code outside the VM

Java VM: Java HotSpot™ Client VM (1.4.2_03-b02 mixed mode)

An error report file has been saved as hs_err_pid1540.log.

Please refer to the file for further information.

ALFactory.init - Native: Enter
ALFactory.init - Native: Exit
ALFactory.init - Native: Enter
ALFactory.init - Native: Exit


Whereas on my desktop (nforce) I get no exceptions with the “wrong” OpenAL package, it just hangs. Desktop also works fine with the package that I get from the creative’s ftp site.

PS. www.openal.org points to “wrong” non-working OpenAL packages. At least this is the case with JOAL.

Janni you’re brilliant! I owe you many many many drinks!

But seriously. I finally started experiencing the same crash problems on my fancy new Sony laptop (everything runs fine on my PC) and was ready to do a deep dive into the C code to try and solve this when I read your post, followed the instructions and “whammo” everything started working.

I will still probably take a dive into the C code to try and figure out why the OpenAL demos work with the web downloaded drivers and the JOAL demos don’t, but (hopefully) this will make it easier for people to get up and running in the meantime.

[quote]Jani you’re brilliant! I owe you many many many drinks!
[/quote]
Ahh, but I’m into red wine :slight_smile:

JOAL is an interesting project, I’m glad that my messages helped out a bit.

Perhaps Creative can tell you what’s going on with the OpenAL package in whole. I’d guess that something fundamentel has changed as the dll is half of the size, versioning is different and package descriptions and authors are completely different from each other.

Cheers, Jani

It crashed the jvm for me with the creative dll, but when I installed the nvidia dll they all worked just fine. Leads me to believe somthing is wonky in the creative file and not JOAL.

WinXP Pro SoundMAX onboard.

p.s. That is with the files available currently.

Hi,
AlienFluxx works fine, but every lesson gives me:
[java] Entering alutInit()
[java] net.java.games.joal.OpenALException: Could not load ALC function pointers.
[java] at net.java.games.joal.ALFactory.init(Native Method)
[java] at net.java.games.joal.ALFactory.initialize(ALFactory.java:61)
[java] at net.java.games.joal.util.ALut.alutInit(ALut.java:61)
[java] at MultipleSources.main(Unknown Source)
I got a SBLive! Platinum on WinXP

After installing the latest driver from :http://developer.creative.com/articles/article.asp?cat=1&sbcat=31&top=38&aid=46
I got now:
ALFactory.init - Native: Enter
ALFactory.init - Native: Exit
[java] Go TEAM!
[java] Entering alutInit()
ALFactory.init - Native: Enter
ALFactory.init - Native: Exit
[java] In alutInit(): Device Name = null

An unexpected error has been detected by HotSpot Virtual Machine:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000000, pid=2288, tid=3392

Java VM: Java HotSpot™ Client VM (1.5.0-beta3-b57 mixed mode)

Problematic frame:

C 0x00000000

An error report file with more information is saved as hs_err_pid2288.log

If you would like to submit a bug report, please visit:

http://java.sun.com/webapps/bugreport/crash.jsp

Ah, now - we don’t use ALUT in LWJGL: there’s no need for us. It turns out that it’s a bit buggy too.

Try tweaking the code so that it doesn’t use ALUT and see if the problem is fixed. (ALUT is just convenience functions that call down to basic AL functions)

Cas :slight_smile: