mupen64plus-ui-python icon indicating copy to clipboard operation
mupen64plus-ui-python copied to clipboard

m64py 0.2.5 (latest) expects configs not in Mupen64Plus Core 2.5.9 (latest)

Open marco-lilek opened this issue 5 years ago • 4 comments

Any read of the configs then crashes the ui with stacktrace:

20:30:03 mllilek mllilek-debian ~ $ ~/.local/bin/m64py 
 __  __                         __   _  _   ____  _            
|  \/  |_   _ _ __   ___ _ __  / /_ | || | |  _ \| |_   _ ___  
| |\/| | | | | '_ \ / _ \ '_ \| '_ \| || |_| |_) | | | | / __| 
| |  | | |_| | |_) |  __/ | | | (_) |__   _|  __/| | |_| \__ \ 
|_|  |_|\__,_| .__/ \___|_| |_|\___/   |_| |_|   |_|\__,_|___/ 
             |_|                                               

M64Py - A frontend for Mupen64Plus version 0.2.5

Frontend: INFO: attached to library 'Mupen64Plus Core' version 2.5.9
Frontend: INFO: includes support for Dynamic Recompiler.
Core: Couldn't open configuration file '/home/mllilek/.config/mupen64plus/mupen64plus.cfg'.  Using defaults.
Core: No version number in 'Core' config section. Setting defaults.
Core: No version number in 'CoreEvents' config section. Setting defaults.
Core: Using full mem base
Frontend: DEBUG: override_vidext()
Frontend: WARNING: INPUT_INVALID: An input function parameter is logically invalid
Traceback (most recent call last):
  File "/home/mllilek/.local/lib/python2.7/site-packages/m64py-0.2.5-py2.7.egg/m64py/frontend/settings.py", line 51, in showEvent
    self.set_config()
  File "/home/mllilek/.local/lib/python2.7/site-packages/m64py-0.2.5-py2.7.egg/m64py/frontend/settings.py", line 99, in set_config
    self.set_video()
  File "/home/mllilek/.local/lib/python2.7/site-packages/m64py-0.2.5-py2.7.egg/m64py/frontend/settings.py", line 247, in set_video
    self.core.config.get_parameter_help("VerticalSync").decode())
AttributeError: 'NoneType' object has no attribute 'decode'
Aborted

In this case, VerticalSync is missing from the core lib:

21:26:28 mllilek mllilek-debian unix $ grep 'Fullscreen' /usr/local/lib/libmupen64plus.so.2
Binary file /usr/local/lib/libmupen64plus.so.2 matches
21:26:53 mllilek mllilek-debian unix $ grep 'VerticalSync' /usr/local/lib/libmupen64plus.so.2

marco-lilek avatar Feb 21 '20 05:02 marco-lilek

Is a way to dynamically discover configs? So that on upgrade of the core something like this wouldn't happen?

marco-lilek avatar Feb 21 '20 05:02 marco-lilek

if you just comment out these references to "VerticalSync" the ui runs perfectly fine

marco-lilek avatar Feb 21 '20 05:02 marco-lilek

VerticalSync is still written in the config file, together with a comment for that option, i.e. # If true, activate the SDL_GL_SWAP_CONTROL attribute, who does that? I am testing with no m64py/mupen64plus config by default.

gen2brain avatar Apr 10 '20 14:04 gen2brain

$ strings mupen64plus-video-rice.so | grep Vertical
VerticalSync

It is from Rice plugin, and config is written in Video-General section.

gen2brain avatar Apr 11 '20 12:04 gen2brain