dingusdev / dingusppc

An experimental emulator
GNU General Public License v3.0
255 stars 30 forks source link

(KEYBOARD-LAYOUT) DingusPPC can't write semicolon, colon, etc. when the host machine is in Spanish locale. #109

Open julenuri opened 3 months ago

julenuri commented 3 months ago

Describe the bug DingusPPC can't write semicolon, colon, etc. when the host machine is in Spanish locale. I guess that is happening with multiple layouts, not only Spanish, but the only one I tested is that one.

To Reproduce Steps to reproduce the behavior:

  1. Set your host locale to Spanish.
  2. Click on : or ;.
  3. It will fail to show up the characters.
  4. Neither works if I click the US "buttons" for semicolon and colon. (Spanish ñ and ´)

Expected behavior Should write the correct layout.

Screenshots If applicable, add screenshots to help explain your problem. Device Information (please complete the following information):

Additional context I am doing tests for the WIN NT for PowerPC macs. Anyway, I can test other machines if you want to, but ask me what to test or to do, since I am not "Mac user".

dingusdev commented 3 months ago

Someone independently reported a similar issue with the Italian keyboard. I'll have to see what's causing the characters to not be input. Also, if you have a log file, search for "Unknown key" for any discrepancies. Right now, international keyboard support is very much unpolished.

julenuri commented 3 months ago

ñ and Ñ keys are shown as ( 39.703s) hostevents_sdl.cpp:101 WARN| Unknown key f1 pressed

Colon and Semicolon are wrongly written as "<" and ">".

This "<" and that ">" are written as "," and "<"

The accent "´" key is: ( 204.451s) hostevents_sdl.cpp:101 WARN| Unknown key 40000034 pressed

The "·" is written as "ú".

¡ and ¿ Buttons are written as: ( 342.508s) hostevents_sdl.cpp:101 WARN| Unknown key a1 pressed

` and ^ keys are written as: ( 336.934s) hostevents_sdl.cpp:101 WARN| Unknown key 4000002f pressed

This ç and Ç are written as: ( 444.231s) hostevents_sdl.cpp:101 WARN| Unknown key e7 pressed

The \ button is written as: ( 619.890s) hostevents_sdl.cpp:101 WARN| Unknown key ba pressed

I would say, a long etc.

So seems to be some missing keys in the map or barely understood by the SDL side.

As you can see, this make the thing to be barely impossible to develop or to input simple directories.

julenuri commented 2 months ago

Thanks for your fast commit. :D At least, the half of the keys now are doing what they are supposed to. Surely there might be a more precise and not so hardcoded solution for this. But it's ok for now.