Menu

#2038 pet graph keyboard map - double shift + char

v3.x
open
nobody
None
SDL2x
Keyboard mapping
2024-05-24
2024-05-24
No

I have an own keyboard scan routine, that also checks if the user uses both Shift keys at the same time to emulate a Ctrl key. What I found is that I can enter all (alpha) character with Ctrl, but:
-e
-h
-m
-n
-p
-t
-w
-z

When I try to press both shift plus one of those keys, the keyboard looks as if nothing has been pressed.

This can be re-created / tested with the plain xpet -model 4032: just press both shift and then one char. For the ones listed above nothing happens, for the others the shifted character appears.

Discussion

  • Andre Fachat

    Andre Fachat - 2024-05-24

    Add. notes:
    - Host Keyboard mapping is "German (de)"
    - Machine keyboard setting is "Graphics (US)"

     
  • Andre Fachat

    Andre Fachat - 2024-05-24

    Add. notes:
    The same happens with "xpet -model 8032":
    - Host keyboard mapping again German (de)
    - Machine keyboard mapping is "Business (UK)"

    Similarly, just checked in "x64" - seems to be the same thing

     

    Last edit: Andre Fachat 2024-05-24
  • Olaf Seibert

    Olaf Seibert - 2024-05-24

    I see similar things, yes. I say "similar" because I tried it first on my $WORK-Mac (which is restricted in what I am allowed to install, but Homebrew packages are allowed) . All of the letters that I tried worked with two shifts, and after letting go of the shift keys, the shift key "stuck" until I pressed and released them again (it seemed unclear if I needed to do that left, or right, or both in some order). That was with gtk3.

    On my NetBSD machine, it worked more like you describe (with US key layout, but not exactly the same list of letters, my fails were for c, m, t, x, y, z), and that's when I tested with gtk3 too, not even SDL2.

    So there is definitely something going on, and it doesn't at first seem to be n-key rollover due to the emulated keyboard matrix. Maybe n-key-rollover in the host keyboard matrix?

    Hm actually, trying the same in an xterm also results in the same failures... that probably explains why we have different sets of keys failing for different tests.

     
  • gpz

    gpz - 2024-05-24

    To debug this properly, it would be really useful to have a test program similar to the C64 ones (eg ciaports.prg) - ie show the raw result of what the chip "sees" of the keyboard matrix

     
  • Olaf Seibert

    Olaf Seibert - 2024-05-24

    I tried in X with xev, and also in a text console (no X), I also don't get key presses from double-shift + ZXCV and some more letters), so for my case at least it must be the keyboard, and not some driver or keymap in X which suppresses these.

     

Log in to post a comment.