Openmsx internal OSD MENU hotkey not working even forcing using TCL console

Page 1/2
| 2

By DrWh0

Paladin (749)

DrWh0's picture

21-04-2019, 22:56

I think I have found a potential bug, I explain it below:

In openMSX "MENU" Key is used to access internal OSD but it doesn´t work anymore

I checked documentation about changes but there is no mention about it.

I used the tcl command "bind" and "bind_default" to check if default key has been changed but gives me the usual value:

keyB MENU: main_menu_toggle

I reassigned the hotkey to another key and seems to work, but when I reassign bind to menu key it doesn´t work) and I did not receive anykind of error in console.

Maybe this could be related to android code port and "menu" hotkey is confused with "menu/home" icon on Android? or "MENU" is not valid anymore and the name of that key is changed?

This behaviour is present in last Windows builds with x64 and x86 versions, build openmsx-0.15.0-281-g4f1af5a09-windows

I already have checked 6 versions (x86+x64) and all of them have the same bug.

Thanks in advance

Login or register to post comments

By Manuel

Ascended (15289)

Manuel's picture

21-04-2019, 23:33

Does it still work in openMSX 0.15.0?
If yes, can you see which development version it broke in?

By DrWh0

Paladin (749)

DrWh0's picture

27-04-2019, 22:38

Hi Manuel

Sorry about the delay.

I have been checking all versions up to svn253 in order (from the first svn from final 0.15 release up to 253) and all of those versions worked ok, so the bug was introduced somewhere between svn versions 254-280 (both included).

As soon as I have spare time to test I will try to find the exact version that introduced the bug.

P.D.: SN291 still bugged, so i will continue testing tomorrow if I have spare time

By Manuel

Ascended (15289)

Manuel's picture

27-04-2019, 23:37

Thanks a lot, it is very helpful.

By DrWh0

Paladin (749)

DrWh0's picture

28-04-2019, 16:04

Hi again

I have found the exact build that has introduced the bug

Instead of compiling each version, I downloaded the precompiled ones from fixato site (and the numbering I used is different), but the exact according to his site is:

"openmsx-0.15.0-180-g5508bc9fe-windows-vc-x64-bin"

I looked for x86 version of that build, but I couldn´t find it so there is also a gap between:

openmsx-0.15.0-7-g8f7a14971
.
[gap corresponding to 0.15.0-180-g5508bc9fe] <- Defective version not available in x86
.
openmsx-0.15.0-181-g36ee8a05c

Also in debug window I receive an error referring to file "/share/scripts/keybindings.tcl" maybe an invalid internal bind refering to "ctrl+up", in spite of not seeing the error in the debug window in later versions the bug is still there.

Hope it helps

By Manuel

Ascended (15289)

Manuel's picture

28-04-2019, 20:47

That is the introduction of SDL2 ...

What is the exact error you get?

By DrWh0

Paladin (749)

DrWh0's picture

28-04-2019, 22:09

In later versions I don´t get any kind of error, simply it does not work, but in the first version with this bug I have this debug error (executing openmsx.exe directly without catapult, with catapult in status info I receive the same output):

***************************** CODE STARTS HERE *****************************

Error while executing C:/compiled projects/openmsx official/svn/181-g36ee8a05c/share/scripts/keybindings.tcl
Invalid keycode: CTRL+PAGEUP
while executing
"bind_default CTRL+PAGEUP cycle_machine"
(file "C:/compiled projects/openmsx official/svn/181-g36ee8a05c/share/script
s/keybindings.tcl" line 8)
invoked from within
"source {C:/compiled projects/openmsx official/svn/181-g36ee8a05c/share/scripts/
keybindings.tcl}"
(in namespace eval "::" script line 1)
invoked from within
"namespace eval :: [ source $script]"

***************************** CODE ENDS HERE *****************************[/]

By imulilla

Supporter (4)

imulilla's picture

30-04-2019, 23:13

The problem is on line 523 of keys.cc. SDLK_MENU no longer refers to the "Menu" key, the correct thing would be to use SDLK_APPLICATION

case SDLK_APPLICATION: result = K_MENU; break;

By Manuel

Ascended (15289)

Manuel's picture

01-05-2019, 01:18

Strange ... Wouter says it works fine on Linux....

By DrWh0

Paladin (749)

DrWh0's picture

06-05-2019, 10:48

So the bug will keep unsolved or do you have find why it does not work on Windows?

I cannot test it on my Linux because I use LTS releases with stable packages and I hate messing with dependencies

By imulilla

Supporter (4)

imulilla's picture

07-05-2019, 22:16

Page 1/2
| 2
My MSX profile