Michael Lang - 2009-03-18

trying to get Frets On Fire (1.3.110) running on x86_64 CentOS 5 system.
Starting the game as suggested in the readme, brings up the Window and starts the main sound
but before finishing the initialization it exits as seen in the trace (./FretsOnFire -v)
...
(N) Loaded Data.bigFont in 0.000 seconds
(N) Loaded Data.screwUpSounds in 0.107 seconds
(N) Loaded Data.acceptSound in 0.055 seconds
(N) Loaded Data.cancelSound in 0.008 seconds
(N) Loaded Data.selectSound1 in 0.007 seconds
(N) Loaded Data.selectSound2 in 0.007 seconds
(N) Loaded Data.selectSound3 in 0.008 seconds
(N) Loaded Data.startSound in 0.013 seconds
(D) View: Push: MainMenu
(D) View: Push: Menu
(E) ctypes.ArgumentError: ('argument 4: exceptions.TypeError: wrong type', (GL_TEXTURE_2D, 0, GL_RGBA, 8192, 8192, 0, GL_RGBA, GL_UNSIGNED_BYTE, c_void_p(46912719814708)))
Traceback (most recent call last):
  File "/tmp/Frets on Fire-1.3.110/src/GameEngine.py", line 355, in run
    return self.mainloop()
  File "/tmp/Frets on Fire-1.3.110/src/GameEngine.py", line 347, in main
    self.view.render()
  File "/tmp/Frets on Fire-1.3.110/src/View.py", line 183, in render
    layer.render(self.visibility[layer], layer == self.layers[-1])
  File "/tmp/Frets on Fire-1.3.110/src/Menu.py", line 207, in render
    font.render(text, (x - v / 4, y))
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 179, in render
    self._renderString(text, (pos[0] + 0.003, pos[1] + 0.003), direction, scale)
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 112, in _renderString
    g, coordinates     = self.getGlyph(ch)
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 227, in getGlyph
    texture = self._allocateGlyphTexture()
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 189, in _allocateGlyphTexture
    t = TextureAtlas(size = glGetInteger(GL_MAX_TEXTURE_SIZE))
  File "/tmp/Frets on Fire-1.3.110/src/Texture.py", line 359, in __init__
    self.texture.loadEmpty((size, size), GL_RGBA)
  File "/tmp/Frets on Fire-1.3.110/src/Texture.py", line 313, in loadEmpty
    format, GL_UNSIGNED_BYTE, "\x00" * (size[0] * size[1] * 4))
  File "/usr/lib/python2.4/site-packages/OpenGL/wrapper.py", line 1273, in __call__
    return self.finalise()( *args, **named )
  File "/usr/lib/python2.4/site-packages/OpenGL/wrapper.py", line 669, in wrapperCall
    raise err
ArgumentError: ('argument 4: exceptions.TypeError: wrong type', (GL_TEXTURE_2D, 0, GL_RGBA, 8192, 8192, 0, GL_RGBA, GL_UNSIGNED_BYTE, c_void_p(46912719814708)))
(N) ('argument 4: exceptions.TypeError: wrong type', (GL_TEXTURE_2D, 0, GL_RGBA, 8192, 8192, 0, GL_RGBA, GL_UNSIGNED_BYTE, c_void_p(46912719814708)))
(D) View: Push: MessageScreen

when trying to load a Song directly it show following output
...
(D) Loading cached bitmap '../data/4x.png' instead of '../data/4x.svg'.
loading image: ../data/4x.png
(N) Loaded GuitarSceneClient.fx4x in 0.005 seconds
(N) Loaded Guitar.noteMesh in 0.188 seconds
(N) Loaded Guitar.keyMesh in 0.100 seconds
(D) View: Push: LoadingScreen
(E) ctypes.ArgumentError: ('argument 4: exceptions.TypeError: wrong type', (GL_TEXTURE_2D, 0, GL_RGBA, 8192, 8192, 0, GL_RGBA, GL_UNSIGNED_BYTE, c_void_p(46912753901620)))
Traceback (most recent call last):
  File "/tmp/Frets on Fire-1.3.110/src/GameEngine.py", line 355, in run
    return self.mainloop()
  File "/tmp/Frets on Fire-1.3.110/src/GameEngine.py", line 347, in main
    self.view.render()
  File "/tmp/Frets on Fire-1.3.110/src/View.py", line 183, in render
    layer.render(self.visibility[layer], layer == self.layers[-1])
  File "/tmp/Frets on Fire-1.3.110/src/Dialogs.py", line 264, in render
    font.render(self.text, (x, y))
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 179, in render
    self._renderString(text, (pos[0] + 0.003, pos[1] + 0.003), direction, scale)
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 112, in _renderString
    g, coordinates     = self.getGlyph(ch)
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 227, in getGlyph
    texture = self._allocateGlyphTexture()
  File "/tmp/Frets on Fire-1.3.110/src/Font.py", line 189, in _allocateGlyphTexture
    t = TextureAtlas(size = glGetInteger(GL_MAX_TEXTURE_SIZE))
  File "/tmp/Frets on Fire-1.3.110/src/Texture.py", line 359, in __init__
    self.texture.loadEmpty((size, size), GL_RGBA)
  File "/tmp/Frets on Fire-1.3.110/src/Texture.py", line 313, in loadEmpty
    format, GL_UNSIGNED_BYTE, "\x00" * (size[0] * size[1] * 4))
  File "/usr/lib/python2.4/site-packages/OpenGL/wrapper.py", line 1273, in __call__
    return self.finalise()( *args, **named )
  File "/usr/lib/python2.4/site-packages/OpenGL/wrapper.py", line 669, in wrapperCall
    raise err
ArgumentError: ('argument 4: exceptions.TypeError: wrong type', (GL_TEXTURE_2D, 0, GL_RGBA, 8192, 8192, 0, GL_RGBA, GL_UNSIGNED_BYTE, c_void_p(46912753901620)))
(N) ('argument 4: exceptions.TypeError: wrong type', (GL_TEXTURE_2D, 0, GL_RGBA, 8192, 8192, 0, GL_RGBA, GL_UNSIGNED_BYTE, c_void_p(46912753901620)))
(D) View: Push: MessageScreen
Traceback (most recent call last):
  File "/tmp/Frets on Fire-1.3.110/src/Session.py", line 66, in signalMessage
    handler.handleMessage(sender, message)
  File "/tmp/Frets on Fire-1.3.110/src/Session.py", line 87, in handleMessage
    return f(sender, **message.__dict__)
  File "/tmp/Frets on Fire-1.3.110/src/World.py", line 245, in handleSceneCreated
    scene = SceneFactory.create(engine = self.engine, name = name, owner = owner, session = self.session, **args)
  File "src/SceneFactory.py", line 42, in create
    return getattr(m, name + "Client")(engine = engine, owner = owner, session = session, **args)
  File "/tmp/Frets on Fire-1.3.110/src/Scene.py", line 96, in __init__
    self.createClient(**args)
  File "/tmp/Frets on Fire-1.3.110/src/GuitarScene.py", line 81, in createClient
    Dialogs.showLoadingScreen(self.engine, lambda: self.song, text = _("Tuning Guitar..."))
  File "/tmp/Frets on Fire-1.3.110/src/Dialogs.py", line 1143, in showLoadingScreen
    _runDialog(engine, d)
  File "/tmp/Frets on Fire-1.3.110/src/Dialogs.py", line 1045, in _runDialog
    engine.run()
  File "/tmp/Frets on Fire-1.3.110/src/GameEngine.py", line 381, in run
    Dialogs.showMessage(self, unicode(e))
  File "/tmp/Frets on Fire-1.3.110/src/Dialogs.py", line 1155, in showMessage
    _runDialog(engine, d)
  File "/tmp/Frets on Fire-1.3.110/src/Dialogs.py", line 1045, in _runDialog
    engine.run()
  File "/tmp/Frets on Fire-1.3.110/src/GameEngine.py", line 371, in run
    sys.exit(1)
SystemExit: 1

is wasn't able to find any hint regarding the wrong ctype in the openGL/wrapper.py so i expect it to be a bug, or can someone provide a hint, how to fix that ?
regards
Michael Lang