I finally got to the full nvidia setup for graphics and accelleration.
Speed is now 1300fps by glxgears at full screen. But I still get errors in Cobalt. I cannot seem to copy them, and emailing them is therefore not reasonable. I attempted to use the email error tool, but it doesn't work either it appears, maybe due to the crash of the graphics interface. The error(s) seem to be related to a primitive not being recognized. It seems to be pointing to one called TransposeMatrixf. I just updated the livna nvidia drivers on Fedora 8, and verified that glxgears ran successfully with the speed reported (which is quite good actually). I suspect that I need to update Cobalt due to the changes in libraries. What is the current version. I am running Croquet.1.0.18.image which I installed April 9, along with the rest of the Cobalt directory. And the Cobalt stuff is: -rw-r--r-- 1 lesh lesh 10646719 2008-04-16 17:19 cobalt.1.changes -rw-r--r-- 1 lesh lesh 28343572 2008-03-17 06:53 cobalt.1.image Here is the SqueakDebug.log Error: a primitive has failed 29 June 2008 11:45:30 am VM: unix - a SmalltalkImage Image: Croquet1.0beta [latest update: #2] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /home/lesh/Software/Cobalt/cobalt-base-current-build Trusted Dir /home/lesh/Software/Cobalt/cobalt-base-current-build/secure Untrusted Dir /home/lesh/Software/Cobalt/cobalt-base-current-build/My Squeak ExternalAddress(Object)>>error: Receiver: @ 16r00000000 Arguments and temporary variables: aString: 'a primitive has failed' Receiver's instance variables: @ 16r00000000 ExternalAddress(Object)>>primitiveFailed Receiver: @ 16r00000000 Arguments and temporary variables: Receiver's instance variables: @ 16r00000000 ExternalAddress(ByteArray)>>integerAt:size:signed: Receiver: @ 16r00000000 Arguments and temporary variables: byteOffset: 1 nBytes: 1 aBoolean: false Receiver's instance variables: @ 16r00000000 ExternalAddress(ByteArray)>>unsignedByteAt: Receiver: @ 16r00000000 Arguments and temporary variables: byteOffset: 1 Receiver's instance variables: @ 16r00000000 --- The full stack --- ExternalAddress(Object)>>error: ExternalAddress(Object)>>primitiveFailed ExternalAddress(ByteArray)>>integerAt:size:signed: ExternalAddress(ByteArray)>>unsignedByteAt: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ExternalAddress(ByteArray)>>unsignedCharAt: ExternalData>>fromCString OGLUnixX11LE(OpenGL)>>extensions *OGLExtManager(OGLExtManager)>>loadExtension: *OGLExtManager(OGLExtManager)>>doesNotUnderstand: OGLUnixX11LE(OpenGL)>>glLoadTransposeMatrixf: TSpace>>renderSpace:port:depth:ghostFrame: TSpace>>renderSpace: TCamera>>renderView:space:overlay: TSpace(TFrame)>>renderView:overlay: [] in TFarRef>>syncSend:withArguments: {[result := myValue perform: selector withArguments: args]} BlockContext>>ensure: TFarRef>>syncSend:withArguments: TFarRef>>syncSend: TMessageMaker>>doesNotUnderstand: [] in TFarRef>>renderView:overlay: {[:vp | vp renderView: ogl overlay: ov]} TFarRef>>send: TFarRef>>renderView:overlay: TPortal>>renderView:with: [] in TFarRef>>syncSend:withArguments: {[result := myValue perform: selector withArguments: args]} BlockContext>>ensure: TFarRef>>syncSend:withArguments: TFarRef>>syncSend: TMessageMaker>>doesNotUnderstand: [] in CroquetHarnessWithMenu(CroquetHarness)>>renderWorld {[:vp | vp renderView: ogl with: {systemOverlayPortal}]} TFarRef>>send: [] in CroquetHarnessWithMenu(CroquetHarness)>>renderWorld {[readyToRender wait. randomList := (controllers select: [:cc | cc islan...]} TMutexSet>>pvtCritical:startingAt: [] in TMutexSet>>pvtCritical:startingAt: {[self pvtCritical: aBlock startingAt: index + 1]} BlockContext>>ensure: [] in TMutex>>critical: {[owner := activeProcess. aBlock ensure: [owner := nil]]} [] in Semaphore>>critical: {[blockValue := mutuallyExcludedBlock value]} BlockContext>>ensure: Semaphore>>critical: TMutex>>critical: TMutexSet>>pvtCritical:startingAt: [] in TMutexSet>>pvtCritical:startingAt: {[self pvtCritical: aBlock startingAt: index + 1]} BlockContext>>ensure: [] in TMutex>>critical: {[owner := activeProcess. aBlock ensure: [owner := nil]]} [] in Semaphore>>critical: {[blockValue := mutuallyExcludedBlock value]} BlockContext>>ensure: Semaphore>>critical: TMutex>>critical: TMutexSet>>pvtCritical:startingAt: TMutexSet>>critical: CroquetHarnessWithMenu(CroquetHarness)>>renderWorld [] in CroquetHarnessWithMenu(CroquetHarness)>>renderProcess {[self renderWorld]} BlockContext>>ensure: CroquetHarnessWithMenu(CroquetHarness)>>renderProcess [] in CroquetHarnessWithMenu(Object)>>fork:at: {[self perform: aSelector]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]} This is from my last run attempt. This has been going on for sometime, and I waited until I reloaded the livna Nvidia driver before opening it up again (after being told that openGL was the problem and that the nvidia drivers would fix it. I do have to say that the only changes between Fedora 7 and Fedora 8 are the nvidia drivers, but both sets are from the Nvidia corporation, and not from Open source (but the mesa driver exhibits the same issue). Perhaps the TransposeMatrixf call has been removed from the latest libraries of OpenGL? Is there a suitable substitute? Regards, Les H |
Free forum by Nabble | Edit this page |