Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
08552 Interface Trivial Always Jan 19, 2023, 19:21 Jan 29, 2023, 07:47
Tester Gryzor1363 View Status Public Platform MAME (Official Binary)
Assigned To cuavas Resolution Fixed OS Windows Vista/7/8 (64-bit)
Status [?] Resolved Driver
Version 0.251 Fixed in Version 0.252 Build 64-bit
Fixed in Git Commit 68472d3 Github Pull Request #
Summary 08552: UI: Control names ending in certain characters cause display issues
Description input_manager::code_name incorrectly strips bytes from certain characters.

Issue manifests by save slot numbers being designated not by numerical values but rather their lowercase character on my French keyboard, provided I do not change the default "auto" value on the "keyboardprovider" parameter in the configuration files.
There is also an anomalous "Kbd" entry that appears without even a timestamp for slot "0".
Steps To Reproduce Launch any game and start saving states including on slot 0.
Additional Information I'm using a French keyboard and layout + OS regional settings.
Switching keyboardprovider to "dinput" fixes issue for associated systems.
Github Commit
Regression Version
Affected Sets / Systems UI
Attached Files
jpg file icon Fig. 1.jpg (114,858 bytes) Jan 19, 2023, 19:23 Uploaded by Gryzor1363
There are no relationship linked to this issue.
User avatar
Jan 22, 2023, 18:03
edited on: Jan 22, 2023, 22:45
Could you please kindly close this erroneous ticket, as I ended up resolving the issue by switching "keyboardprovider" value from "auto" to "dinput" on my INI files, within the "OSD Input Options" section.
User avatar
Jan 22, 2023, 18:19
I don't know if it should be closed, it still shows there's a unicode? string problem in the savestate menu.
What is the lowercase character of 0?
User avatar
Jan 22, 2023, 18:49
edited on: Jan 23, 2023, 11:34
Well you see me glad there might still be a point in that report.
I initially provided that information but erased most of it after realizing I had a fix, maybe I was too quick : Lowercase value for key "0" here is "à", and alt value is "@".
I was indeed wondering why this particular key prevented Mame from adding the timestamp on top of the possibly existing unicode mishap on the other slots, maybe the returned code is not recognized and leads to it not being printed, triggers a blank and/or an undisplayable string that wipes or prevents addition of the timestamp ?
User avatar
Jan 28, 2023, 08:32
It's working as expected. Save states are identified by a keyboard key or joystick button. MAME shows the keycap label for keyboard keys according to your selected keyboard layout on Windows. If you switch keyboard layouts, the names will switch to match.
User avatar
Jan 28, 2023, 08:36
If this is about the issue specifically with "à", reword the issue and reopen it. As described, using keycap labels for save states is intentional.
User avatar
Jan 28, 2023, 15:30
I see what’s going on - it’s using strtrimspace on a string that isn't ASCII, so it decides the second byte of "à" (C3A0 in UTF-8) is a space, because there’s a non-breaking space there in Windows-1252.