mirror of https://github.com/xemu-project/xemu.git
ps2: Fix lost scancodes by recent changes
With "ps2: use QEMU qcodes instead of scancodes", key handling was changed to qcode base. But all scancodes are not converted to new one. This adds some missing qcodes/scancodes what I found in using. [set1 and set3 are from <hpoussin@reactos.org>] Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Reviewed-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
f27ff81070
commit
e934644126
|
@ -252,6 +252,9 @@ static const uint16_t qcode_to_keycode_set1[Q_KEY_CODE__MAX] = {
|
|||
[Q_KEY_CODE_ASTERISK] = 0x37,
|
||||
[Q_KEY_CODE_LESS] = 0x56,
|
||||
[Q_KEY_CODE_RO] = 0x73,
|
||||
[Q_KEY_CODE_HIRAGANA] = 0x70,
|
||||
[Q_KEY_CODE_HENKAN] = 0x79,
|
||||
[Q_KEY_CODE_YEN] = 0x7d,
|
||||
[Q_KEY_CODE_KP_COMMA] = 0x7e,
|
||||
};
|
||||
|
||||
|
@ -394,6 +397,9 @@ static const uint16_t qcode_to_keycode_set2[Q_KEY_CODE__MAX] = {
|
|||
[Q_KEY_CODE_LESS] = 0x61,
|
||||
[Q_KEY_CODE_SYSRQ] = 0x7f,
|
||||
[Q_KEY_CODE_RO] = 0x51,
|
||||
[Q_KEY_CODE_HIRAGANA] = 0x13,
|
||||
[Q_KEY_CODE_HENKAN] = 0x64,
|
||||
[Q_KEY_CODE_YEN] = 0x6a,
|
||||
[Q_KEY_CODE_KP_COMMA] = 0x6d,
|
||||
};
|
||||
|
||||
|
@ -504,6 +510,10 @@ static const uint16_t qcode_to_keycode_set3[Q_KEY_CODE__MAX] = {
|
|||
[Q_KEY_CODE_COMMA] = 0x41,
|
||||
[Q_KEY_CODE_DOT] = 0x49,
|
||||
[Q_KEY_CODE_SLASH] = 0x4a,
|
||||
|
||||
[Q_KEY_CODE_HIRAGANA] = 0x87,
|
||||
[Q_KEY_CODE_HENKAN] = 0x86,
|
||||
[Q_KEY_CODE_YEN] = 0x5d,
|
||||
};
|
||||
|
||||
static uint8_t translate_table[256] = {
|
||||
|
|
|
@ -3618,6 +3618,9 @@
|
|||
# @kp_comma: since 2.4
|
||||
# @kp_equals: since 2.6
|
||||
# @power: since 2.6
|
||||
# @hiragana: since 2.9
|
||||
# @henkan: since 2.9
|
||||
# @yen: since 2.9
|
||||
#
|
||||
# An enumeration of key name.
|
||||
#
|
||||
|
@ -3642,7 +3645,8 @@
|
|||
'kp_9', 'less', 'f11', 'f12', 'print', 'home', 'pgup', 'pgdn', 'end',
|
||||
'left', 'up', 'down', 'right', 'insert', 'delete', 'stop', 'again',
|
||||
'props', 'undo', 'front', 'copy', 'open', 'paste', 'find', 'cut',
|
||||
'lf', 'help', 'meta_l', 'meta_r', 'compose', 'pause', 'ro',
|
||||
'lf', 'help', 'meta_l', 'meta_r', 'compose', 'pause',
|
||||
'ro', 'hiragana', 'henkan', 'yen',
|
||||
'kp_comma', 'kp_equals', 'power' ] }
|
||||
|
||||
##
|
||||
|
|
|
@ -131,6 +131,9 @@ static const int qcode_to_number[] = {
|
|||
[Q_KEY_CODE_DELETE] = 0xd3,
|
||||
|
||||
[Q_KEY_CODE_RO] = 0x73,
|
||||
[Q_KEY_CODE_HIRAGANA] = 0x70,
|
||||
[Q_KEY_CODE_HENKAN] = 0x79,
|
||||
[Q_KEY_CODE_YEN] = 0x7d,
|
||||
[Q_KEY_CODE_KP_COMMA] = 0x7e,
|
||||
|
||||
[Q_KEY_CODE__MAX] = 0,
|
||||
|
|
Loading…
Reference in New Issue