[Scummvm-tracker] [ScummVM :: Bugs] #15711: TWP: Twp::Shader::init() crash on OSX PPC and old GPUs

ScummVM :: Bugs trac at scummvm.org
Tue Feb 25 11:38:35 UTC 2025


#15711: TWP: Twp::Shader::init() crash on OSX PPC and old GPUs
---------------------+-------------------------------
Reporter:  dwatteau  |       Owner:  scemino
    Type:  defect    |      Status:  new
Priority:  normal    |   Component:  Engine: TWP
 Version:            |  Resolution:
Keywords:            |        Game:  Thimbleweed Park
---------------------+-------------------------------
Comment (by dwatteau):

 Hi,

 Back to my Quad G5 this week (Tiger/Leopard dual boot), with an up-to-date
 2.10.0git build :)

 Replying to [comment:2 larsamannen]:
 > This can also be interesting. The OpenGL version support depends on both
 gfx card and OS X version.
 >
 https://web.archive.org/web/20120102170341/http://developer.apple.com/graphicsimaging/opengl/capabilities/GLInfo_1058.html

 Yes, I can confirm that by using the same card on Tiger and Leopard:

 {{{
 --- twp-2.10.0git-d6-g5-tiger.txt       2025-02-25 12:20:26
 +++ twp-2.10.0git-d6-g5-leopard.txt     2025-02-25 12:20:32
 @@ -1,167 +1,241 @@
  Debuglevel (from command line): 6
  Using SDL Video Driver "Quartz"
  creating OpenGL graphics manager
  creating OpenGL graphics manager
  Using SDL Audio Driver "coreaudio"
  Output sample rate: 44100 Hz
  Output buffer size: 1024 samples
  Output channels: 2
  OpenGL: GL context initialized
 -OpenGL version: 1.5 NVIDIA-1.4.18
 +OpenGL version: 2.0 NVIDIA-1.5.48
  OpenGL vendor: NVIDIA Corporation
  OpenGL renderer: NVIDIA GeForce 6600 OpenGL Engine
 -OpenGL: version 1.5
 -OpenGL: GLSL version string: 1.10
 -OpenGL: GLSL version: 0
 +OpenGL: version 2.0
 +OpenGL: GLSL version string: 1.20
 +OpenGL: GLSL version: 120
  OpenGL: Max texture size: 4096
 -OpenGL: NPOT texture support: 0
 -OpenGL: Shader support: 0
 -OpenGL: Shader support for engines: 0
 +OpenGL: NPOT texture support: 1
 +OpenGL: Shader support: 1
 +OpenGL: Shader support for engines: 1
  OpenGL: Multitexture support: 1
  OpenGL: FBO support: 0
  OpenGL: Multisample FBO support: 0
  OpenGL: Multisample max number: -1
  OpenGL: Packed pixels support: 1
 -OpenGL: Packed depth stencil support: 0
 +OpenGL: Packed depth stencil support: 1
  OpenGL: Unpack subimage support: 1
  OpenGL: OpenGL ES depth 24 support: 0
  OpenGL: Texture edge clamping support: 1
  OpenGL: Texture border clamping support: 1
  OpenGL: Texture mirror repeat support: 1
  OpenGL: Texture max level support: 1
  WARNING: Libretro is not supported!
 }}}

 OK: On Tiger, the "`Thimbleweed Park requires OpenGL with shader`" is now
 displayed, as expected.

 KO: On Leopard, shaders are properly detected, so the engine starts, but
 crashes. Here's the main part of the up-to-date 2.10.0git backtrace from
 there:

 {{{
 Running Thimbleweed Park (GOG/1.0.958)
 ThimbleweedPark.ggpack1: 6180145221d18e9e9caac6459e840579, 502661439
 bytes.
 WARNING: slot for actor franklin not found!

 Program received signal EXC_BAD_ACCESS, Could not access memory.
 Reason: KERN_PROTECTION_FAILURE at address: 0x00000000

 (gdb) bt
 #0  0x00000000 in ?? ()
 Cannot access memory at address 0x0
 #1  0x000bd96c in Twp::RenderTexture::RenderTexture (this=Cannot access
 memory at address 0x0
 0xbfffb888, size=Cannot access memory at address 0x0
 @0xbfffb880) at engines/twp/gfx.cpp:110
 Cannot access memory at address 0x0
 #2  0x00134148 in Twp::TwpEngine::draw (this=Cannot access memory at
 address 0x0
 0x1ae0800, outTexture=0x0) at engines/twp/twp.cpp:731
 Cannot access memory at address 0x0
 #3  0x00137d6c in Twp::TwpEngine::run (this=0x1ae0800) at
 engines/twp/twp.cpp:1324
 #4  0x00077278 in runGame (enginePlugin=0x1683060, system=@0x1646de8,
 game=@0xbfffd260, meDescriptor=0x17092700) at base/main.cpp:311
 [...]
 }}}

 Attaching the fuller `bt full` below. (The Git tree was built at commit
 `c19577d10da5ebcba14cd0bd8899b8ffd77734ef`)
-- 
Ticket URL: <https://bugs.scummvm.org/ticket/15711#comment:5>
ScummVM :: Bugs <https://bugs.scummvm.org>
ScummVM


More information about the Scummvm-tracker mailing list