LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   If 2 keys are held down, no input from 3rd key (https://www.linuxquestions.org/questions/linux-hardware-18/if-2-keys-are-held-down-no-input-from-3rd-key-401671/)

frem 01-10-2006 12:15 PM

[WORK-AROUND] If 2 keys are held down, no input from 3rd key
 
Hello. Debian sarge here, running on a Compaq Prosignia laptop. (pp2050)
kernel is 2.6.8-2-686

I have this funny problem with gaming. I like to play Super Mario (Yes, I own the Super Mario AllStars + World cartrage. It's legal.), but there are problems with input.In every single emulator I've tried (ZSNES, snes9x, fceu) if two keys are being held down (for example "right" and "a"), a no input from a third key can get though.In practical terms, this means that if I'm holding down the "dash" key in game, I can't jump unless I either release the dash key or the directional key. This is very akwrd. Similerly, I cannot move left or right if I jump while holding the dash key.
This only happens on THIS laptop, not any of my other machines, even though I have a Gateway Solo 2500 running nearly exactly the same software.
I've tried different emulators, different images, remapped keys, and different window managers. I'm starting to suspect that this is either a problem with my keyboard's buffer or a problem with XFree86.

Does anyone have any ideas?

stress_junkie 01-10-2006 12:31 PM

I suspect that the problem lies in the way the PC keyboard works. Most keys, such as the alphabetic characters, arrow keys, function keys, et. al. are a complete character. When you press two complete character keys together the keyboard i/o system won't read both simultaneously. It is impossible due to the keyboard wiring.

Other keyboard keys will flip a bit in the keyboard i/o buffer but don't tell the operating system that there is a complete character. These keys include the Alt, Shift, and Cntrl. Since these keys simply flip a bit in the buffer you can AND them with a complete character code to get a second complete code.

Long story => short. You could probably emulate the functions that you want by creating a keyboard binding. You still would not be able to press right arrow and "a" simultaneously to acheive a given effect. That is a limitation of how the keyboard is wired. You could create a substitute combination using one "complete" character key and one "bit flip" key.

RedShirt 01-10-2006 12:35 PM

I recall having heard of issues like this before... The issue is called ghosting, and the way many keys are mapped(hardware wise in the keyboard) but you made me do a little searching around to see I think it is something the keyboard is stuck with. I am not sure about software side ghost allowment, but I woudl think short of using a key mapper to map 3 key presses to another key, you may be out of luck. Try searching around for ghosting though, maybe you can find something.

frem 01-10-2006 01:24 PM

Hey, thanks for your answers.
Dang, I was hoping it was a software thing and not a limitation of my keyboard. I'll test this out in Windows too, just to make sure.

I was thinking about how stress_junkie said that ctrl, alt and shift don't send a complete character code, so I remapped my three main control buttons (A, B, and X) using them. Not what quite I'm used to, (Ctrl + right + alt vs. Z + right + X) but they work! Thanks. :-)


All times are GMT -5. The time now is 09:57 PM.