Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Supermodel crashes on startup when using wayland #133

Open
SirFritz opened this issue Feb 3, 2024 · 6 comments
Open

Supermodel crashes on startup when using wayland #133

SirFritz opened this issue Feb 3, 2024 · 6 comments

Comments

@SirFritz
Copy link

SirFritz commented Feb 3, 2024

Trying to launch supermodel from the command line when using wayland crashes with an error Error: OpenGL initialization failed: Unknown error as well as [1] 97643 segmentation fault (core dumped).

It runs fine using identical settings under x11.

Specs:
i5-8600k
rx 6700xt
32gb ram
Fedora Linux 39 KDE

Version: Current master branch
Launch Options -res=1280,960 swtrilgy.zip

Output from ./supermodel -print-gl-info under x11 (crashes on wayland too)

Supermodel: A Sega Model 3 Arcade Emulator (Version 0.3a-WIP)
Copyright 2003-2023 by The Supermodel Team
GPU info: 4.6 (Compatibility Profile) Mesa 23.3.4 (compatability profile)

OpenGL information:

  Vendor                   : AMD
  Renderer                 : AMD Radeon RX 6700 XT (radeonsi, navi22, LLVM 17.0.6, DRM 3.54, 6.6.14-200.fc39.x86_64)
  Version                  : 4.6 (Compatibility Profile) Mesa 23.3.4
  Shading Language Version : 4.60
  Maximum Vertex Array Size: 3000 vertices
  Maximum Texture Size     : 16384 texels
  Maximum Vertex Attributes: 16
  Maximum Vertex Uniforms  : 16384
  Maximum Texture Img Units: 32
@jaoxford
Copy link
Contributor

Can you check your logs?

@SirFritz
Copy link
Author

Log is attached.

Supermodel.log

@jaoxford
Copy link
Contributor

[Info]  Supermodel Version 0.3a-WIP
[Info]  Started as:
[Info]    argv[0] = ./supermodel
[Info]    argv[1] = -res=1280,960
[Info]    argv[2] = scudplus.zip
[Info]  Opened scudplus.zip.
[Info]  scudplus:
[Info]    banked_crom: stride=8, chunk size=2, byte layout=10325476
[Info]      mpr-19661.04, crc32=0x8e3fd241, offset=0x00000000
[Info]      mpr-19660.03, crc32=0xd999c935, offset=0x00000002
[Info]      mpr-19659.02, crc32=0xc47e7002, offset=0x00000004
[Info]      mpr-19658.01, crc32=0xd523235c, offset=0x00000006
[Info]      mpr-19665.08, crc32=0xf97c78f9, offset=0x01000000
[Info]      mpr-19664.07, crc32=0xb9d11294, offset=0x01000002
[Info]      mpr-19663.06, crc32=0xf6af1ca4, offset=0x01000004
[Info]      mpr-19662.05, crc32=0x3c700eff, offset=0x01000006
[Info]      mpr-19669.12, crc32=0xcdc43c61, offset=0x02000000
[Info]      mpr-19668.11, crc32=0x0b4dd8d5, offset=0x02000002
[Info]      mpr-19667.10, crc32=0xa8676799, offset=0x02000004
[Info]      mpr-19666.09, crc32=0xb53dc97f, offset=0x02000006
[Info]      mpr-20100.16, crc32=0xc99e2c01, offset=0x03000000
[Info]      mpr-20099.15, crc32=0xfc9bd7d9, offset=0x03000002
[Info]      mpr-20098.14, crc32=0x8355fa41, offset=0x03000004
[Info]      mpr-20097.13, crc32=0x269a9dbe, offset=0x03000006
[Info]    crom: stride=8, chunk size=2, byte layout=10325476
[Info]      epr-20095a.20, crc32=0x58c7e393, offset=0x00000000
[Info]      epr-20094a.19, crc32=0xdbf17a43, offset=0x00000002
[Info]      epr-20093a.18, crc32=0x4ed2e35d, offset=0x00000004
[Info]      epr-20092a.17, crc32=0xa94ec57e, offset=0x00000006
[Info]    driveboard_program: stride=1, chunk size=1, byte layout=
[Info]      epr-19338.bin, crc32=0xdbf88de6, offset=0x00000000
[Info]    mpeg_music: stride=1, chunk size=1, byte layout=
[Info]      mpr-19603.57, crc32=0xb1b1765f, offset=0x00000000
[Info]      mpr-19604.58, crc32=0x6ac85b49, offset=0x00200000
[Info]      mpr-19605.59, crc32=0xbec891eb, offset=0x00400000
[Info]      mpr-19606.60, crc32=0xadad46b2, offset=0x00600000
[Info]    mpeg_program: stride=1, chunk size=1, byte layout=
[Info]      epr-19612.2, crc32=0x13978fd4, offset=0x00000000
[Info]    sound_program: stride=2, chunk size=2, byte layout=10
[Info]      epr-20096a.21, crc32=0x0fef288b, offset=0x00000000
[Info]    sound_samples: stride=2, chunk size=2, byte layout=10
[Info]      mpr-19670.22, crc32=0xbd31cc06, offset=0x00000000
[Info]      mpr-20101.24, crc32=0x66d1e31f, offset=0x00400000
[Info]    vrom: stride=32, chunk size=2, byte layout=
[Info]      mpr-19672.26, crc32=0x588c29fd, offset=0x00000000
[Info]      mpr-19673.27, crc32=0x156abaa9, offset=0x00000002
[Info]      mpr-19674.28, crc32=0xc7b0f98c, offset=0x00000004
[Info]      mpr-19675.29, crc32=0xff113396, offset=0x00000006
[Info]      mpr-19676.30, crc32=0xfd852ead, offset=0x00000008
[Info]      mpr-19677.31, crc32=0xc6ac0347, offset=0x0000000a
[Info]      mpr-19678.32, crc32=0xb8819cfe, offset=0x0000000c
[Info]      mpr-19679.33, crc32=0xe126c3e3, offset=0x0000000e
[Info]      mpr-19680.34, crc32=0x00ea5cef, offset=0x00000010
[Info]      mpr-19681.35, crc32=0xc949325f, offset=0x00000012
[Info]      mpr-19682.36, crc32=0xce5ca065, offset=0x00000014
[Info]      mpr-19683.37, crc32=0xe5856419, offset=0x00000016
[Info]      mpr-19684.38, crc32=0x56f6ec97, offset=0x00000018
[Info]      mpr-19685.39, crc32=0x42b49304, offset=0x0000001a
[Info]      mpr-19686.40, crc32=0x84eed592, offset=0x0000001c
[Info]      mpr-19687.41, crc32=0x776ce694, offset=0x0000001e
[Info]  Runtime configuration:
[Info]    GameXMLFile=/home/alexander/.config/supermodel/Config/Games.xml
[Info]    InitStateFile=
[Info]    MultiThreaded=1
[Info]    GPUMultiThreaded=1
[Info]    MultiTexture=0
[Info]    VertexShader=
[Info]    FragmentShader=
[Info]    VertexShaderFog=
[Info]    FragmentShaderFog=
[Info]    VertexShader2D=
[Info]    FragmentShader2D=
[Info]    EmulateSound=1
[Info]    Balance=0.0
[Info]    BalanceLeftRight=0.0
[Info]    BalanceFrontRear=0.0
[Info]    NbSoundChannels=4
[Info]    SoundFreq=57.6
[Info]    EmulateDSB=1
[Info]    SoundVolume=100
[Info]    MusicVolume=100
[Info]    LegacySoundDSP=false
[Info]    ForceFeedback=0
[Info]    New3DEngine=true
[Info]    QuadRendering=false
[Info]    XResolution=1280
[Info]    YResolution=960
[Info]    WindowXPosition=<empty>
[Info]    WindowYPosition=<empty>
[Info]    FullScreen=0
[Info]    BorderlessWindow=0
[Info]    Supersampling=1
[Info]    WideScreen=false
[Info]    Stretch=false
[Info]    WideBackground=false
[Info]    VSync=1
[Info]    Throttle=1
[Info]    RefreshRate=60.000
[Info]    ShowFrameRate=0
[Info]    Crosshairs=0
[Info]    CrosshairStyle=vector
[Info]    FlipStereo=0
[Info]    InputSystem=sdl
[Info]    SDLConstForceMax=100
[Info]    SDLSelfCenterMax=100
[Info]    SDLFrictionMax=100
[Info]    SDLVibrateMax=100
[Info]    SDLConstForceThreshold=30
[Info]    Outputs=none
[Info]    DumpTextures=0
[Info]    Network=false
[Info]    SimulateNet=true
[Info]    PortIn=1970
[Info]    PortOut=1971
[Info]    AddressOut=127.0.0.1
[Info]    InputStart1=KEY_1,JOY1_BUTTON9
[Info]    InputStart2=KEY_2,JOY2_BUTTON9
[Info]    InputCoin1=KEY_3,JOY1_BUTTON10
[Info]    InputCoin2=KEY_4,JOY2_BUTTON10
[Info]    InputServiceA=KEY_5
[Info]    InputServiceB=KEY_7
[Info]    InputTestA=KEY_6
[Info]    InputTestB=KEY_8
[Info]    InputJoyUp=KEY_UP,JOY1_UP
[Info]    InputJoyDown=KEY_DOWN,JOY1_DOWN
[Info]    InputJoyLeft=KEY_LEFT,JOY1_LEFT
[Info]    InputJoyRight=KEY_RIGHT,JOY1_RIGHT
[Info]    InputJoyUp2=JOY2_UP
[Info]    InputJoyDown2=JOY2_DOWN
[Info]    InputJoyLeft2=JOY2_LEFT
[Info]    InputJoyRight2=JOY2_RIGHT
[Info]    InputPunch=KEY_A,JOY1_BUTTON1
[Info]    InputKick=KEY_S,JOY1_BUTTON2
[Info]    InputGuard=KEY_D,JOY1_BUTTON3
[Info]    InputEscape=KEY_F,JOY1_BUTTON4
[Info]    InputPunch2=JOY2_BUTTON1
[Info]    InputKick2=JOY2_BUTTON2
[Info]    InputGuard2=JOY2_BUTTON3
[Info]    InputEscape2=JOY2_BUTTON4
[Info]    InputShift=KEY_A,JOY1_BUTTON1
[Info]    InputBeat=KEY_S,JOY1_BUTTON2
[Info]    InputCharge=KEY_D,JOY1_BUTTON3
[Info]    InputJump=KEY_F,JOY1_BUTTON4
[Info]    InputShortPass=KEY_A,JOY1_BUTTON1
[Info]    InputLongPass=KEY_S,JOY1_BUTTON2
[Info]    InputShoot=KEY_D,JOY1_BUTTON3
[Info]    InputShortPass2=JOY2_BUTTON1
[Info]    InputLongPass2=JOY2_BUTTON2
[Info]    InputShoot2=JOY2_BUTTON3
[Info]    InputSteeringLeft=KEY_LEFT
[Info]    InputSteeringRight=KEY_RIGHT
[Info]    InputSteering=JOY1_XAXIS
[Info]    InputAccelerator=KEY_UP,JOY1_UP
[Info]    InputBrake=KEY_DOWN,JOY1_DOWN
[Info]    InputGearShiftUp=KEY_Y
[Info]    InputGearShiftDown=KEY_H
[Info]    InputGearShift1=KEY_Q,JOY1_BUTTON5
[Info]    InputGearShift2=KEY_W,JOY1_BUTTON6
[Info]    InputGearShift3=KEY_E,JOY1_BUTTON7
[Info]    InputGearShift4=KEY_R,JOY1_BUTTON8
[Info]    InputGearShiftN=KEY_T
[Info]    InputVR1=KEY_A,JOY1_BUTTON1
[Info]    InputVR2=KEY_S,JOY1_BUTTON2
[Info]    InputVR3=KEY_D,JOY1_BUTTON3
[Info]    InputVR4=KEY_F,JOY1_BUTTON4
[Info]    InputViewChange=KEY_A,JOY1_BUTTON1
[Info]    InputHandBrake=KEY_S,JOY1_BUTTON2
[Info]    InputRearBrake=KEY_S,JOY1_BUTTON2
[Info]    InputMusicSelect=KEY_D,JOY1_BUTTON3
[Info]    InputTwinJoyTurnLeft=KEY_Q,JOY1_RXAXIS_NEG
[Info]    InputTwinJoyTurnRight=KEY_W,JOY1_RXAXIS_POS
[Info]    InputTwinJoyForward=KEY_UP,JOY1_YAXIS_NEG
[Info]    InputTwinJoyReverse=KEY_DOWN,JOY1_YAXIS_POS
[Info]    InputTwinJoyStrafeLeft=KEY_LEFT,JOY1_XAXIS_NEG
[Info]    InputTwinJoyStrafeRight=KEY_RIGHT,JOY1_XAXIS_POS
[Info]    InputTwinJoyJump=KEY_E,JOY1_BUTTON1
[Info]    InputTwinJoyCrouch=KEY_R,JOY1_BUTTON2
[Info]    InputTwinJoyLeft1=NONE
[Info]    InputTwinJoyLeft2=NONE
[Info]    InputTwinJoyRight1=NONE
[Info]    InputTwinJoyRight2=NONE
[Info]    InputTwinJoyUp1=NONE
[Info]    InputTwinJoyUp2=NONE
[Info]    InputTwinJoyDown1=NONE
[Info]    InputTwinJoyDown2=NONE
[Info]    InputTwinJoyShot1=KEY_A,JOY1_BUTTON5
[Info]    InputTwinJoyShot2=KEY_S,JOY1_BUTTON6
[Info]    InputTwinJoyTurbo1=KEY_Z,JOY1_BUTTON7
[Info]    InputTwinJoyTurbo2=KEY_X,JOY1_BUTTON8
[Info]    InputAnalogJoyLeft=KEY_LEFT
[Info]    InputAnalogJoyRight=KEY_RIGHT
[Info]    InputAnalogJoyUp=KEY_UP
[Info]    InputAnalogJoyDown=KEY_DOWN
[Info]    InputAnalogJoyX=JOY_XAXIS,MOUSE_XAXIS
[Info]    InputAnalogJoyY=JOY_YAXIS,MOUSE_YAXIS
[Info]    InputAnalogJoyTrigger=KEY_A,JOY_BUTTON1,MOUSE_LEFT_BUTTON
[Info]    InputAnalogJoyEvent=KEY_S,JOY_BUTTON2,MOUSE_RIGHT_BUTTON
[Info]    InputAnalogJoyTrigger2=KEY_D,JOY_BUTTON2
[Info]    InputAnalogJoyEvent2=NONE
[Info]    InputGunLeft=KEY_LEFT
[Info]    InputGunRight=KEY_RIGHT
[Info]    InputGunUp=KEY_UP
[Info]    InputGunDown=KEY_DOWN
[Info]    InputGunX=MOUSE_XAXIS,JOY1_XAXIS
[Info]    InputGunY=MOUSE_YAXIS,JOY1_YAXIS
[Info]    InputTrigger=KEY_A,JOY1_BUTTON1,MOUSE_LEFT_BUTTON
[Info]    InputOffscreen=KEY_S,JOY1_BUTTON2,MOUSE_RIGHT_BUTTON
[Info]    InputAutoTrigger=0
[Info]    InputGunLeft2=NONE
[Info]    InputGunRight2=NONE
[Info]    InputGunUp2=NONE
[Info]    InputGunDown2=NONE
[Info]    InputGunX2=JOY2_XAXIS
[Info]    InputGunY2=JOY2_YAXIS
[Info]    InputTrigger2=JOY2_BUTTON1
[Info]    InputOffscreen2=JOY2_BUTTON2
[Info]    InputAutoTrigger2=0
[Info]    InputAnalogGunLeft=KEY_LEFT
[Info]    InputAnalogGunRight=KEY_RIGHT
[Info]    InputAnalogGunUp=KEY_UP
[Info]    InputAnalogGunDown=KEY_DOWN
[Info]    InputAnalogGunX=MOUSE_XAXIS,JOY1_XAXIS
[Info]    InputAnalogGunY=MOUSE_YAXIS,JOY1_YAXIS
[Info]    InputAnalogTriggerLeft=KEY_A,JOY1_BUTTON1,MOUSE_LEFT_BUTTON
[Info]    InputAnalogTriggerRight=KEY_S,JOY1_BUTTON2,MOUSE_RIGHT_BUTTON
[Info]    InputAnalogGunLeft2=NONE
[Info]    InputAnalogGunRight2=NONE
[Info]    InputAnalogGunUp2=NONE
[Info]    InputAnalogGunDown2=NONE
[Info]    InputAnalogGunX2=NONE
[Info]    InputAnalogGunY2=NONE
[Info]    InputAnalogTriggerLeft2=NONE
[Info]    InputAnalogTriggerRight2=NONE
[Info]    InputSkiLeft=KEY_LEFT
[Info]    InputSkiRight=KEY_RIGHT
[Info]    InputSkiUp=KEY_UP
[Info]    InputSkiDown=KEY_DOWN
[Info]    InputSkiX=JOY1_XAXIS
[Info]    InputSkiY=JOY1_YAXIS
[Info]    InputSkiPollLeft=KEY_A,JOY1_BUTTON1
[Info]    InputSkiPollRight=KEY_S,JOY1_BUTTON2
[Info]    InputSkiSelect1=KEY_Q,JOY1_BUTTON3
[Info]    InputSkiSelect2=KEY_W,JOY1_BUTTON4
[Info]    InputSkiSelect3=KEY_E,JOY1_BUTTON5
[Info]    InputMagicalLeverUp1=KEY_UP
[Info]    InputMagicalLeverDown1=KEY_DOWN
[Info]    InputMagicalLeverUp2=NONE
[Info]    InputMagicalLeverDown2=NONE
[Info]    InputMagicalLever1=JOY1_YAXIS
[Info]    InputMagicalLever2=JOY2_YAXIS
[Info]    InputMagicalPedal1=KEY_A,JOY1_BUTTON1
[Info]    InputMagicalPedal2=KEY_S,JOY2_BUTTON1
[Info]    InputFishingRodLeft=KEY_LEFT
[Info]    InputFishingRodRight=KEY_RIGHT
[Info]    InputFishingRodUp=KEY_UP
[Info]    InputFishingRodDown=KEY_DOWN
[Info]    InputFishingStickLeft=KEY_A
[Info]    InputFishingStickRight=KEY_D
[Info]    InputFishingStickUp=KEY_W
[Info]    InputFishingStickDown=KEY_S
[Info]    InputFishingRodX=JOY1_XAXIS
[Info]    InputFishingRodY=JOY1_YAXIS
[Info]    InputFishingStickX=JOY1_RXAXIS
[Info]    InputFishingStickY=JOY1_RYAXIS
[Info]    InputFishingReel=KEY_SPACE,JOY1_ZAXIS_POS
[Info]    InputFishingCast=KEY_Z,JOY1_BUTTON1
[Info]    InputFishingSelect=KEY_X,JOY1_BUTTON2
[Info]    InputFishingTension=KEY_T,JOY1_ZAXIS_NEG
[Info]    LogOutput=/home/alexander/.local/share/supermodel/Log/Supermodel.log
[Info]    LogLevel=info
[Info]  

I don't see any errors in there. Hmmmm, maybe it's not a supermodel issue at this point? I'm not too sure.

@RodoMa92
Copy link

Can't reproduce any crashes on wayland but yeah, it fails to detect any OpenGL device in the same way. Using the latest flatpaks.

@eskay993
Copy link

eskay993 commented Apr 15, 2024

I'm having the same issue with wayland and similar logs and results as above, using Fedora 40 with KDE. Workaround for me is to either...

force xwayland:

WAYLAND_DISPLAY="" supermodel  /path/to/rom.zip

or use gamescope:

gamescope -f -- supermodel /path/to/rom.zip

Works with the flatpak too. Just replace supermodel with flatpak run com.supermodel3.Supermodel

Gamescope method works better for me for playing in fullscreen. Just need to make sure I ran the game in window mode when using gamescope.

@SirFritz
Copy link
Author

SirFritz commented Apr 17, 2024

Thanks for that, workaround works fine for me at moment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants