Hi,
I use Fedora 10 (x86_64), up-to-date, with only packages of official repos (+rpmfusion).
I use the latest TiEmu and all its dependencies, downloaded from repo.calcforge.org.
The bug : Keystrokes on PC arrows don't emulate such keystrokes on the emulator. I get this behavior at any moment, even just after having started TiEmu.
Nevertheless, all other keys seem to work fine, exept this old bug (FC5 !!) : https://sourceforge.net/tracker/?func=detail&aid=1649068&group_id=23169&atid=377680 ;-)
Another keyboard problem, still under Linux ^^
++
Folco
Confirmed, I can reproduce this. Happens on Fedora 10, not on Fedora 9. The new evdev driver which handles keyboards in Fedora >= 10 generates different keycodes, this breaks TiEmu's hardcoded list of keycodes.
Some other non-alphanumeric keys also don't work on F10 (they work fine on F9):
Ins (should be EE on the 89/89Ti and sin( on the 92+/V200, does nothing)
Home (should be cos( on the 92+/V200, does nothing)
PgUp (should be ^ on the 89/89Ti and tan( on the 92+/V200, inserts / instead)
Del (should be CLEAR, does nothing)
End (should be ENTER on the 92+/V200, does nothing)
PgDn (should be ^ on the 92+/V200, does nothing)
(though my F10 machine is a laptop, so its keyboard is a bit nonstandard, so if somebody can confirm with evdev on a standard desktop keyboard, that'd be great).
I've checked all you says, I confirm all on a standard keyboard.
http://code.technoplaza.net/tiemu/pckeys_evdev.patch
Here is a rough patch that works for me on Gentoo Linux with evdev keyboard driver on a standard US 104 key keyboard. Probably needs editing. It is for the src/gui/calc/pckeys.h file.
r2840 requires libticables 1.3.0 and I only have 1.2.0, so my patch is against 2814. But svn diff lists no changes between 2840 and 2814 for pckeys.h, so this shouldn't matter.
Maybe I'm doing something wrong, but if I change pckeys.h and recompile, the new keycodes are not used. Not sure what's going on there. I used make clean first to be sure.
I'm a little confused by the constant names. I know there are many kinds of keyboards, but I am only familiar with US PC keyboards. Are PRINT and SCREENSHOT the same key? What are the SELECT, STARTKEY, CONTEXTKEY, and OEM102 keys? I left these alone as I don't know what they are. Is SEPARATOR the numeric keypad's ENTER? I assumed it was and made the appropriate change.
Not sure what any of the 0xff keys are, but I think they are irrelevant here. This patch will probably break x servers that aren't using evdev, so this is not really a fix for this problem. It's just a temporary workaround, but it does work for me.
Here's some code which can be used to detect evdev, to decide which mapping to use: https://bugzilla.redhat.com/attachment.cgi?id=328839
Alternatively, we could also just assume evdev is being used, as the last Fedora release which defaulted to the old kbd driver (Fedora 9) already went EOL. :-p
This is probably fine in most cases. Gentoo has also recently changed the default xorg server to one that uses hal and evdev.
Is there some reason the keycode names from X11's keysym.h aren't used instead of raw values? It would seem that that would avoid this mess in the future, the next time they decide to break compatibility again...
Is this still not patched despite all these options for doing so? 2015 and I still have this problem in debian.