puae 2.3.0

parent 10d242f7
...@@ -1214,8 +1214,8 @@ int graphics_init (void) ...@@ -1214,8 +1214,8 @@ int graphics_init (void)
DEBUG_LOG ("Function: graphics_init\n"); DEBUG_LOG ("Function: graphics_init\n");
if (currprefs.color_mode > 5) { if (currprefs.color_mode > 5) {
write_log ("Bad color mode selected. Using default.\n"); write_log ("Bad color mode selected. Using default.\n");
currprefs.color_mode = 0; currprefs.color_mode = 0;
} }
#ifdef PICASSO96 #ifdef PICASSO96
...@@ -1351,9 +1351,8 @@ void handle_events (void) ...@@ -1351,9 +1351,8 @@ void handle_events (void)
break; break;
} }
*/ */
if (currprefs.map_raw_keys) { /* if (currprefs.map_raw_keys) {
keycode = rEvent.key.keysym.scancode; keycode = rEvent.key.keysym.scancode;
write_log("sdlgfx_raw: %d\n", keycode);
// Hack - OS4 keyup events have bit 7 set. // Hack - OS4 keyup events have bit 7 set.
#ifdef TARGET_AMIGAOS #ifdef TARGET_AMIGAOS
keycode &= 0x7F; keycode &= 0x7F;
...@@ -1361,25 +1360,23 @@ write_log("sdlgfx_raw: %d\n", keycode); ...@@ -1361,25 +1360,23 @@ write_log("sdlgfx_raw: %d\n", keycode);
modifier_hack (&keycode, &state); modifier_hack (&keycode, &state);
} else } else
keycode = rEvent.key.keysym.sym; keycode = rEvent.key.keysym.sym;
write_log("sdlgfx_Nraw: %d\n", keycode); */
keycode = rEvent.key.keysym.sym;
DEBUG_LOG ("Event: key %d %s\n", keycode, state ? "down" : "up"); // write_log ("Event: key: %d to: %d %s\n", keycode, sdlk2dik (keycode), state ? "down" : "up");
my_kbd_handler (0, sdlk2dik (keycode), state);
if ((ievent = match_hotkey_sequence (keycode, state))) { /*
write_log("sdlgfx_hot: %d\n", ievent); if ((ievent = match_hotkey_sequence (keycode, state))) {
DEBUG_LOG ("Hotkey event: %d\n", ievent); DEBUG_LOG ("Hotkey event: %d\n", ievent);
handle_hotkey_event (ievent, state); handle_hotkey_event (ievent, state);
} else {
if (currprefs.map_raw_keys) {
write_log("sdlgfx_Nhot_raw: %d\n", keycode);
inputdevice_translatekeycode (0, keycode, state);
} else { } else {
write_log("sdlgfx_Nhot_Nraw: %d\n", keycode); if (currprefs.map_raw_keys) {
inputdevice_do_keyboard (keysym2amiga (keycode), state); inputdevice_translatekeycode (0, keycode, state);
} } else {
} inputdevice_do_keyboard (keysym2amiga (keycode), state);
break; }
} }*/
break;
}
case SDL_MOUSEMOTION: case SDL_MOUSEMOTION:
DEBUG_LOG ("Event: mouse motion\n"); DEBUG_LOG ("Event: mouse motion\n");
......
...@@ -359,6 +359,120 @@ static int decode_tr (int keysym) ...@@ -359,6 +359,120 @@ static int decode_tr (int keysym)
} }
} }
int sdlk2dik (int keysym) {
switch (keysym) {
case SDLK_ESCAPE: return 0x01;
case SDLK_1: return 0x02;
case SDLK_2: return 0x03;
case SDLK_3: return 0x04;
case SDLK_4: return 0x05;
case SDLK_5: return 0x06;
case SDLK_6: return 0x07;
case SDLK_7: return 0x08;
case SDLK_8: return 0x09;
case SDLK_9: return 0x0a;
case SDLK_0: return 0x0b;
case SDLK_BACKSPACE:return 0x0e;
//
case SDLK_TAB: return 0x0f;
case SDLK_q: return 0x10;
case SDLK_w: return 0x11;
case SDLK_e: return 0x12;
case SDLK_r: return 0x13;
case SDLK_t: return 0x14;
case SDLK_y: return 0x15;
case SDLK_u: return 0x16;
case SDLK_i: return 0x17;
case SDLK_o: return 0x18;
case SDLK_p: return 0x19;
case SDLK_RETURN: return 0x1c;
case SDLK_LCTRL: return 0x1d;
//
case SDLK_a: return 0x1e;
case SDLK_s: return 0x1f;
case SDLK_d: return 0x20;
case SDLK_f: return 0x21;
case SDLK_g: return 0x22;
case SDLK_h: return 0x23;
case SDLK_j: return 0x24;
case SDLK_k: return 0x25;
case SDLK_l: return 0x26;
case SDLK_LSHIFT: return 0x2a;
//
case SDLK_z: return 0x2c;
case SDLK_x: return 0x2d;
case SDLK_c: return 0x2e;
case SDLK_v: return 0x2f;
case SDLK_b: return 0x30;
case SDLK_n: return 0x31;
case SDLK_m: return 0x32;
case SDLK_RSHIFT: return 0x36;
case SDLK_SPACE: return 0x39;
case SDLK_F1: return 0x3b;
case SDLK_F2: return 0x3c;
case SDLK_F3: return 0x3d;
case SDLK_F4: return 0x3e;
case SDLK_F5: return 0x3f;
case SDLK_F6: return 0x40;
case SDLK_F7: return 0x41;
case SDLK_F8: return 0x42;
case SDLK_F9: return 0x43;
case SDLK_F10: return 0x44;
//
case SDLK_KP7: return 0x47;
case SDLK_KP8: return 0x48;
case SDLK_KP9: return 0x49;
case SDLK_KP_MINUS: return 0x4a;
case SDLK_KP4: return 0x4b;
case SDLK_KP5: return 0x4c;
case SDLK_KP6: return 0x4d;
case SDLK_KP_PLUS: return 0x4e;
case SDLK_KP1: return 0x4f;
case SDLK_KP2: return 0x50;
case SDLK_KP3: return 0x51;
case SDLK_KP0: return 0x52;
case SDLK_KP_PERIOD:return 0x53;
case SDLK_KP_ENTER: return 0x9c;
case SDLK_KP_DIVIDE: return 0xB5;
case SDLK_KP_MULTIPLY: return 0x37;
case SDLK_DELETE: return 0xd3;
case SDLK_RCTRL: return 0x9d;
case SDLK_LALT: return 0x38;
case SDLK_RALT: return 0xB8;
/* case SDLK_RMETA: return AK_RAMI;
case SDLK_LMETA: return AK_LAMI;*/
case SDLK_INSERT: return 0xd2;
case SDLK_HOME: return 0xc7;
case SDLK_END: return 0xcf;
case SDLK_CAPSLOCK: return 0x3a;
case SDLK_UP: return 0xc8;
case SDLK_PAGEUP: return 0xc9;
case SDLK_LEFT: return 0xcb;
case SDLK_RIGHT: return 0xcd;
case SDLK_DOWN: return 0xd0;
case SDLK_PAGEDOWN: return 0xd1;
/* case SDLK_RSUPER: return AK_RAMI;
case SDLK_LSUPER: return AK_LAMI;*/
case SDLK_PAUSE: return 0xc5;
case SDLK_SCROLLOCK: return 0x46;
// case SDLK_PRINT: return AKS_SCREENSHOT_FILE;
default: return -1;
}
}
int keysym2amiga (int keysym) int keysym2amiga (int keysym)
{ {
int amiga_keycode = kc_decode (keysym); int amiga_keycode = kc_decode (keysym);
......
...@@ -395,7 +395,7 @@ static int scancode2amiga (int scancode) ...@@ -395,7 +395,7 @@ static int scancode2amiga (int scancode)
return -1; return -1;
} }
static void my_kbd_handler (int scancode, int newstate) static void my_kbd_handlerx (int scancode, int newstate)
{ {
int akey = scancode2amiga (scancode); int akey = scancode2amiga (scancode);
...@@ -444,7 +444,7 @@ static int post_enter_graphics (void) ...@@ -444,7 +444,7 @@ static int post_enter_graphics (void)
write_log ("Are you sure you have a keyboard??\n"); write_log ("Are you sure you have a keyboard??\n");
return 0; return 0;
} }
keyboard_seteventhandler (my_kbd_handler); keyboard_seteventhandler (my_kbd_handlerx);
keyboard_translatekeys (DONT_CATCH_CTRLC); keyboard_translatekeys (DONT_CATCH_CTRLC);
mouse_setxrange (-1000, 1000); mouse_setxrange (-1000, 1000);
......
...@@ -42,9 +42,11 @@ int match_hotkey_sequence (int key, int state) ...@@ -42,9 +42,11 @@ int match_hotkey_sequence (int key, int state)
{ {
struct uae_hotkeyseq *seq = hotkey_table; struct uae_hotkeyseq *seq = hotkey_table;
int event = 0; int event = 0;
write_log("K:%d, S:%d\n", key, state);
if (!seq) if (!seq)
return 0; return 0;
write_log("------------\n");
if (state) { if (state) {
/* Key down */ /* Key down */
......
/* /*
* UAE - The Un*x Amiga Emulator * UAE - The Un*x Amiga Emulator
* *
* Amiga keycodes * Amiga keycodes
* *
* (c) 1995 Bernd Schmidt * (c) 1995 Bernd Schmidt
*/ */
/* First, two dummies */ /* First, two dummies */
#define AK_mousestuff 0x100 #define AK_mousestuff 0x100
......
...@@ -950,7 +950,7 @@ static bool readslot (TCHAR *parm, int num, int joystick, int button, struct uae ...@@ -950,7 +950,7 @@ static bool readslot (TCHAR *parm, int num, int joystick, int button, struct uae
return true; return true;
} }
static struct inputevent *readevent (TCHAR *name, TCHAR **customp) static struct inputevent *readevent (const TCHAR *name, TCHAR **customp)
{ {
int i = 1; int i = 1;
while (events[i].name) { while (events[i].name) {
......
...@@ -152,134 +152,134 @@ static const int default_keymap[] = { ...@@ -152,134 +152,134 @@ static const int default_keymap[] = {
static struct uae_input_device_kbr_default keytrans[] = { static struct uae_input_device_kbr_default keytrans[] = {
{ INPUTEVENT_KEY_ESC, INPUTEVENT_KEY_ESC }, { DIK_ESCAPE, INPUTEVENT_KEY_ESC },
{ INPUTEVENT_KEY_F1, INPUTEVENT_KEY_F1 }, { DIK_F1, INPUTEVENT_KEY_F1 },
{ INPUTEVENT_KEY_F2, INPUTEVENT_KEY_F2 }, { DIK_F2, INPUTEVENT_KEY_F2 },
{ INPUTEVENT_KEY_F3, INPUTEVENT_KEY_F3 }, { DIK_F3, INPUTEVENT_KEY_F3 },
{ INPUTEVENT_KEY_F4, INPUTEVENT_KEY_F4 }, { DIK_F4, INPUTEVENT_KEY_F4 },
{ INPUTEVENT_KEY_F5, INPUTEVENT_KEY_F5 }, { DIK_F5, INPUTEVENT_KEY_F5 },
{ INPUTEVENT_KEY_F6, INPUTEVENT_KEY_F6 }, { DIK_F6, INPUTEVENT_KEY_F6 },
{ INPUTEVENT_KEY_F7, INPUTEVENT_KEY_F7 }, { DIK_F7, INPUTEVENT_KEY_F7 },
{ INPUTEVENT_KEY_F8, INPUTEVENT_KEY_F8 }, { DIK_F8, INPUTEVENT_KEY_F8 },
{ INPUTEVENT_KEY_F9, INPUTEVENT_KEY_F9 }, { DIK_F9, INPUTEVENT_KEY_F9 },
{ INPUTEVENT_KEY_F10, INPUTEVENT_KEY_F10 }, { DIK_F10, INPUTEVENT_KEY_F10 },
{ INPUTEVENT_KEY_1, INPUTEVENT_KEY_1 }, { DIK_1, INPUTEVENT_KEY_1 },
{ INPUTEVENT_KEY_2, INPUTEVENT_KEY_2 }, { DIK_2, INPUTEVENT_KEY_2 },
{ INPUTEVENT_KEY_3, INPUTEVENT_KEY_3 }, { DIK_3, INPUTEVENT_KEY_3 },
{ INPUTEVENT_KEY_4, INPUTEVENT_KEY_4 }, { DIK_4, INPUTEVENT_KEY_4 },
{ INPUTEVENT_KEY_5, INPUTEVENT_KEY_5 }, { DIK_5, INPUTEVENT_KEY_5 },
{ INPUTEVENT_KEY_6, INPUTEVENT_KEY_6 }, { DIK_6, INPUTEVENT_KEY_6 },
{ INPUTEVENT_KEY_7, INPUTEVENT_KEY_7 }, { DIK_7, INPUTEVENT_KEY_7 },
{ INPUTEVENT_KEY_8, INPUTEVENT_KEY_8 }, { DIK_8, INPUTEVENT_KEY_8 },
{ INPUTEVENT_KEY_9, INPUTEVENT_KEY_9 }, { DIK_9, INPUTEVENT_KEY_9 },
{ INPUTEVENT_KEY_0, INPUTEVENT_KEY_0 }, { DIK_0, INPUTEVENT_KEY_0 },
{ INPUTEVENT_KEY_TAB, INPUTEVENT_KEY_TAB }, { DIK_TAB, INPUTEVENT_KEY_TAB },
{ INPUTEVENT_KEY_A, INPUTEVENT_KEY_A }, { DIK_A, INPUTEVENT_KEY_A },
{ INPUTEVENT_KEY_B, INPUTEVENT_KEY_B }, { DIK_B, INPUTEVENT_KEY_B },
{ INPUTEVENT_KEY_C, INPUTEVENT_KEY_C }, { DIK_C, INPUTEVENT_KEY_C },
{ INPUTEVENT_KEY_D, INPUTEVENT_KEY_D }, { DIK_D, INPUTEVENT_KEY_D },
{ INPUTEVENT_KEY_E, INPUTEVENT_KEY_E }, { DIK_E, INPUTEVENT_KEY_E },
{ INPUTEVENT_KEY_F, INPUTEVENT_KEY_F }, { DIK_F, INPUTEVENT_KEY_F },
{ INPUTEVENT_KEY_G, INPUTEVENT_KEY_G }, { DIK_G, INPUTEVENT_KEY_G },
{ INPUTEVENT_KEY_H, INPUTEVENT_KEY_H }, { DIK_H, INPUTEVENT_KEY_H },
{ INPUTEVENT_KEY_I, INPUTEVENT_KEY_I }, { DIK_I, INPUTEVENT_KEY_I },
{ INPUTEVENT_KEY_J, INPUTEVENT_KEY_J }, { DIK_J, INPUTEVENT_KEY_J },
{ INPUTEVENT_KEY_K, INPUTEVENT_KEY_K }, { DIK_K, INPUTEVENT_KEY_K },
{ INPUTEVENT_KEY_L, INPUTEVENT_KEY_L }, { DIK_L, INPUTEVENT_KEY_L },
{ INPUTEVENT_KEY_M, INPUTEVENT_KEY_M }, { DIK_M, INPUTEVENT_KEY_M },
{ INPUTEVENT_KEY_N, INPUTEVENT_KEY_N }, { DIK_N, INPUTEVENT_KEY_N },
{ INPUTEVENT_KEY_O, INPUTEVENT_KEY_O }, { DIK_O, INPUTEVENT_KEY_O },
{ INPUTEVENT_KEY_P, INPUTEVENT_KEY_P }, { DIK_P, INPUTEVENT_KEY_P },
{ INPUTEVENT_KEY_Q, INPUTEVENT_KEY_Q }, { DIK_Q, INPUTEVENT_KEY_Q },
{ INPUTEVENT_KEY_R, INPUTEVENT_KEY_R }, { DIK_R, INPUTEVENT_KEY_R },
{ INPUTEVENT_KEY_S, INPUTEVENT_KEY_S }, { DIK_S, INPUTEVENT_KEY_S },
{ INPUTEVENT_KEY_T, INPUTEVENT_KEY_T }, { DIK_T, INPUTEVENT_KEY_T },
{ INPUTEVENT_KEY_U, INPUTEVENT_KEY_U }, { DIK_U, INPUTEVENT_KEY_U },
{ INPUTEVENT_KEY_W, INPUTEVENT_KEY_W }, { DIK_W, INPUTEVENT_KEY_W },
{ INPUTEVENT_KEY_V, INPUTEVENT_KEY_V }, { DIK_V, INPUTEVENT_KEY_V },
{ INPUTEVENT_KEY_X, INPUTEVENT_KEY_X }, { DIK_X, INPUTEVENT_KEY_X },
{ INPUTEVENT_KEY_Y, INPUTEVENT_KEY_Y }, { DIK_Y, INPUTEVENT_KEY_Y },
{ INPUTEVENT_KEY_Z, INPUTEVENT_KEY_Z }, { DIK_Z, INPUTEVENT_KEY_Z },
{ INPUTEVENT_KEY_CAPS_LOCK, INPUTEVENT_KEY_CAPS_LOCK }, { DIK_CAPITAL, INPUTEVENT_KEY_CAPS_LOCK, ID_FLAG_TOGGLE },
{ INPUTEVENT_KEY_NP_1, INPUTEVENT_KEY_NP_1 }, { DIK_NUMPAD1, INPUTEVENT_KEY_NP_1 },
{ INPUTEVENT_KEY_NP_2, INPUTEVENT_KEY_NP_2 }, { DIK_NUMPAD2, INPUTEVENT_KEY_NP_2 },
{ INPUTEVENT_KEY_NP_3, INPUTEVENT_KEY_NP_3 }, { DIK_NUMPAD3, INPUTEVENT_KEY_NP_3 },
{ INPUTEVENT_KEY_NP_4, INPUTEVENT_KEY_NP_4 }, { DIK_NUMPAD4, INPUTEVENT_KEY_NP_4 },
{ INPUTEVENT_KEY_NP_5, INPUTEVENT_KEY_NP_5 }, { DIK_NUMPAD5, INPUTEVENT_KEY_NP_5 },
{ INPUTEVENT_KEY_NP_6, INPUTEVENT_KEY_NP_6 }, { DIK_NUMPAD6, INPUTEVENT_KEY_NP_6 },
{ INPUTEVENT_KEY_NP_7, INPUTEVENT_KEY_NP_7 }, { DIK_NUMPAD7, INPUTEVENT_KEY_NP_7 },
{ INPUTEVENT_KEY_NP_8, INPUTEVENT_KEY_NP_8 }, { DIK_NUMPAD8, INPUTEVENT_KEY_NP_8 },
{ INPUTEVENT_KEY_NP_9, INPUTEVENT_KEY_NP_9 }, { DIK_NUMPAD9, INPUTEVENT_KEY_NP_9 },
{ INPUTEVENT_KEY_NP_0, INPUTEVENT_KEY_NP_0 }, { DIK_NUMPAD0, INPUTEVENT_KEY_NP_0 },
{ INPUTEVENT_KEY_NP_PERIOD, INPUTEVENT_KEY_NP_PERIOD }, { DIK_DECIMAL, INPUTEVENT_KEY_NP_PERIOD },
{ INPUTEVENT_KEY_NP_ADD, INPUTEVENT_KEY_NP_ADD }, { DIK_ADD, INPUTEVENT_KEY_NP_ADD },
{ INPUTEVENT_KEY_NP_SUB, INPUTEVENT_KEY_NP_SUB }, { DIK_SUBTRACT, INPUTEVENT_KEY_NP_SUB },
{ INPUTEVENT_KEY_NP_MUL, INPUTEVENT_KEY_NP_MUL }, { DIK_MULTIPLY, INPUTEVENT_KEY_NP_MUL },
{ INPUTEVENT_KEY_NP_DIV, INPUTEVENT_KEY_NP_DIV }, { DIK_DIVIDE, INPUTEVENT_KEY_NP_DIV },
{ INPUTEVENT_KEY_ENTER, INPUTEVENT_KEY_ENTER }, { DIK_NUMPADENTER, INPUTEVENT_KEY_ENTER },
{ INPUTEVENT_KEY_SUB, INPUTEVENT_KEY_SUB }, { DIK_MINUS, INPUTEVENT_KEY_SUB },
{ INPUTEVENT_KEY_EQUALS, INPUTEVENT_KEY_EQUALS }, { DIK_EQUALS, INPUTEVENT_KEY_EQUALS },
{ INPUTEVENT_KEY_BACKSPACE, INPUTEVENT_KEY_BACKSPACE }, { DIK_BACK, INPUTEVENT_KEY_BACKSPACE },
{ INPUTEVENT_KEY_RETURN, INPUTEVENT_KEY_RETURN }, { DIK_RETURN, INPUTEVENT_KEY_RETURN },
{ INPUTEVENT_KEY_SPACE, INPUTEVENT_KEY_SPACE }, { DIK_SPACE, INPUTEVENT_KEY_SPACE },
{ INPUTEVENT_KEY_SHIFT_LEFT, INPUTEVENT_KEY_SHIFT_LEFT }, { DIK_LSHIFT, INPUTEVENT_KEY_SHIFT_LEFT },
{ INPUTEVENT_KEY_CTRL, INPUTEVENT_KEY_CTRL }, { DIK_LCONTROL, INPUTEVENT_KEY_CTRL },
{ INPUTEVENT_KEY_AMIGA_LEFT, INPUTEVENT_KEY_AMIGA_LEFT }, { DIK_LWIN, INPUTEVENT_KEY_AMIGA_LEFT },
{ INPUTEVENT_KEY_ALT_RIGHT, INPUTEVENT_KEY_ALT_LEFT }, { DIK_LMENU, INPUTEVENT_KEY_ALT_LEFT },
{ INPUTEVENT_KEY_ALT_RIGHT, INPUTEVENT_KEY_ALT_RIGHT }, { DIK_RMENU, INPUTEVENT_KEY_ALT_RIGHT },
{ INPUTEVENT_KEY_AMIGA_RIGHT, INPUTEVENT_KEY_AMIGA_RIGHT }, { DIK_RWIN, INPUTEVENT_KEY_AMIGA_RIGHT },
{ INPUTEVENT_KEY_AMIGA_RIGHT, INPUTEVENT_KEY_AMIGA_RIGHT }, { DIK_APPS, INPUTEVENT_KEY_AMIGA_RIGHT },
{ INPUTEVENT_KEY_CTRL_RIGHT, INPUTEVENT_KEY_CTRL_RIGHT }, { DIK_RCONTROL, INPUTEVENT_KEY_CTRL_RIGHT },
{ INPUTEVENT_KEY_SHIFT_RIGHT, INPUTEVENT_KEY_SHIFT_RIGHT }, { DIK_RSHIFT, INPUTEVENT_KEY_SHIFT_RIGHT },
{ INPUTEVENT_KEY_CURSOR_UP, INPUTEVENT_KEY_CURSOR_UP }, { DIK_UP, INPUTEVENT_KEY_CURSOR_UP },
{ INPUTEVENT_KEY_CURSOR_DOWN, INPUTEVENT_KEY_CURSOR_DOWN }, { DIK_DOWN, INPUTEVENT_KEY_CURSOR_DOWN },
{ INPUTEVENT_KEY_CURSOR_LEFT, INPUTEVENT_KEY_CURSOR_LEFT }, { DIK_LEFT, INPUTEVENT_KEY_CURSOR_LEFT },
{ INPUTEVENT_KEY_CURSOR_RIGHT, INPUTEVENT_KEY_CURSOR_RIGHT }, { DIK_RIGHT, INPUTEVENT_KEY_CURSOR_RIGHT },
{ INPUTEVENT_KEY_AMIGA_LEFT, INPUTEVENT_KEY_AMIGA_LEFT }, { DIK_INSERT, INPUTEVENT_KEY_AMIGA_LEFT },
{ INPUTEVENT_KEY_DEL, INPUTEVENT_KEY_DEL }, { DIK_DELETE, INPUTEVENT_KEY_DEL },
{ INPUTEVENT_KEY_AMIGA_RIGHT, INPUTEVENT_KEY_AMIGA_RIGHT }, { DIK_HOME, INPUTEVENT_KEY_AMIGA_RIGHT },
{ INPUTEVENT_KEY_HELP, INPUTEVENT_KEY_HELP }, { DIK_NEXT, INPUTEVENT_KEY_HELP },
{ INPUTEVENT_KEY_LEFTBRACKET, INPUTEVENT_KEY_LEFTBRACKET }, { DIK_LBRACKET, INPUTEVENT_KEY_LEFTBRACKET },
{ INPUTEVENT_KEY_RIGHTBRACKET, INPUTEVENT_KEY_RIGHTBRACKET }, { DIK_RBRACKET, INPUTEVENT_KEY_RIGHTBRACKET },
{ INPUTEVENT_KEY_SEMICOLON, INPUTEVENT_KEY_SEMICOLON }, { DIK_SEMICOLON, INPUTEVENT_KEY_SEMICOLON },
{ INPUTEVENT_KEY_SINGLEQUOTE, INPUTEVENT_KEY_SINGLEQUOTE }, { DIK_APOSTROPHE, INPUTEVENT_KEY_SINGLEQUOTE },
{ INPUTEVENT_KEY_BACKQUOTE, INPUTEVENT_KEY_BACKQUOTE }, { DIK_GRAVE, INPUTEVENT_KEY_BACKQUOTE },
{ INPUTEVENT_KEY_BACKSLASH, INPUTEVENT_KEY_BACKSLASH }, { DIK_BACKSLASH, INPUTEVENT_KEY_BACKSLASH },
{ INPUTEVENT_KEY_COMMA, INPUTEVENT_KEY_COMMA }, { DIK_COMMA, INPUTEVENT_KEY_COMMA },
{ INPUTEVENT_KEY_PERIOD, INPUTEVENT_KEY_PERIOD }, { DIK_PERIOD, INPUTEVENT_KEY_PERIOD },
{ INPUTEVENT_KEY_DIV, INPUTEVENT_KEY_DIV }, { DIK_SLASH, INPUTEVENT_KEY_DIV },
{ INPUTEVENT_KEY_30, INPUTEVENT_KEY_30 }, { DIK_OEM_102, INPUTEVENT_KEY_30 },
{ INPUTEVENT_SPC_MASTER_VOLUME_DOWN, INPUTEVENT_SPC_MASTER_VOLUME_DOWN }, { DIK_VOLUMEDOWN, INPUTEVENT_SPC_MASTER_VOLUME_DOWN },
{ INPUTEVENT_SPC_MASTER_VOLUME_UP, INPUTEVENT_SPC_MASTER_VOLUME_UP }, { DIK_VOLUMEUP, INPUTEVENT_SPC_MASTER_VOLUME_UP },
{ INPUTEVENT_SPC_MASTER_VOLUME_MUTE, INPUTEVENT_SPC_MASTER_VOLUME_MUTE }, { DIK_MUTE, INPUTEVENT_SPC_MASTER_VOLUME_MUTE },
{ INPUTEVENT_KEY_70, INPUTEVENT_KEY_70 }, { DIK_HOME, INPUTEVENT_KEY_70 },
{ INPUTEVENT_KEY_71, INPUTEVENT_KEY_71 }, { DIK_END, INPUTEVENT_KEY_71 },
// { INPUTEVENT_KEY_SYSRQ, INPUTEVENT_KEY_6E }, // { DIK_SYSRQ, INPUTEVENT_KEY_6E },
// { INPUTEVENT_KEY_F12, INPUTEVENT_KEY_6F }, // { DIK_F12, INPUTEVENT_KEY_6F },
{ INPUTEVENT_KEY_47, INPUTEVENT_KEY_47 }, { DIK_INSERT, INPUTEVENT_KEY_47 },
// { INPUTEVENT_KEY_PRIOR, INPUTEVENT_KEY_48 }, // { DIK_PRIOR, INPUTEVENT_KEY_48 },
{ INPUTEVENT_SPC_FREEZEBUTTON, INPUTEVENT_SPC_FREEZEBUTTON }, { DIK_PRIOR, INPUTEVENT_SPC_FREEZEBUTTON },
{ INPUTEVENT_KEY_49, INPUTEVENT_KEY_49 }, { DIK_NEXT, INPUTEVENT_KEY_49 },
{ INPUTEVENT_KEY_4B, INPUTEVENT_KEY_4B }, { DIK_F11, INPUTEVENT_KEY_4B },
{ INPUTEVENT_KEY_CDTV_STOP, INPUTEVENT_KEY_CDTV_STOP }, { DIK_MEDIASTOP, INPUTEVENT_KEY_CDTV_STOP },
{ INPUTEVENT_KEY_CDTV_PLAYPAUSE, INPUTEVENT_KEY_CDTV_PLAYPAUSE }, { DIK_PLAYPAUSE, INPUTEVENT_KEY_CDTV_PLAYPAUSE },
{ INPUTEVENT_KEY_CDTV_PREV, INPUTEVENT_KEY_CDTV_PREV }, { DIK_PREVTRACK, INPUTEVENT_KEY_CDTV_PREV },
{ INPUTEVENT_KEY_CDTV_NEXT, INPUTEVENT_KEY_CDTV_NEXT }, { DIK_NEXTTRACK, INPUTEVENT_KEY_CDTV_NEXT },
{ -1, 0 } { -1, 0 }
}; };
......
...@@ -162,6 +162,170 @@ struct uaekey_hostmap ...@@ -162,6 +162,170 @@ struct uaekey_hostmap
short uaekey; short uaekey;
}; };
#define DIK_ESCAPE 0x01
#define DIK_1 0x02
#define DIK_2 0x03
#define DIK_3 0x04
#define DIK_4 0x05
#define DIK_5 0x06
#define DIK_6 0x07
#define DIK_7 0x08
#define DIK_8 0x09
#define DIK_9 0x0A
#define DIK_0 0x0B
#define DIK_MINUS 0x0C /* - on main keyboard */
#define DIK_EQUALS 0x0D
#define DIK_BACK 0x0E /* backspace */
#define DIK_TAB 0x0F
#define DIK_Q 0x10
#define DIK_W 0x11
#define DIK_E 0x12
#define DIK_R 0x13
#define DIK_T 0x14
#define DIK_Y 0x15
#define DIK_U 0x16
#define DIK_I 0x17
#define DIK_O 0x18
#define DIK_P 0x19
#define DIK_LBRACKET 0x1A
#define DIK_RBRACKET 0x1B
#define DIK_RETURN 0x1C /* Enter on main keyboard */
#define DIK_LCONTROL 0x1D
#define DIK_A 0x1E
#define DIK_S 0x1F
#define DIK_D 0x20
#define DIK_F 0x21
#define DIK_G 0x22
#define DIK_H 0x23
#define DIK_J 0x24
#define DIK_K 0x25
#define DIK_L 0x26
#define DIK_SEMICOLON 0x27
#define DIK_APOSTROPHE 0x28
#define DIK_GRAVE 0x29 /* accent grave */
#define DIK_LSHIFT 0x2A
#define DIK_BACKSLASH 0x2B
#define DIK_Z 0x2C
#define DIK_X 0x2D
#define DIK_C 0x2E
#define DIK_V 0x2F
#define DIK_B 0x30
#define DIK_N 0x31
#define DIK_M 0x32
#define DIK_COMMA 0x33
#define DIK_PERIOD 0x34 /* . on main keyboard */
#define DIK_SLASH 0x35 /* / on main keyboard */
#define DIK_RSHIFT 0x36
#define DIK_MULTIPLY 0x37 /* * on numeric keypad */
#define DIK_LMENU 0x38 /* left Alt */
#define DIK_SPACE 0x39
#define DIK_CAPITAL 0x3A
#define DIK_F1 0x3B
#define DIK_F2 0x3C
#define DIK_F3 0x3D
#define DIK_F4 0x3E
#define DIK_F5 0x3F
#define DIK_F6 0x40
#define DIK_F7 0x41
#define DIK_F8 0x42
#define DIK_F9 0x43
#define DIK_F10 0x44
#define DIK_NUMLOCK 0x45
#define DIK_SCROLL 0x46 /* Scroll Lock */
#define DIK_NUMPAD7 0x47
#define DIK_NUMPAD8 0x48
#define DIK_NUMPAD9 0x49
#define DIK_SUBTRACT 0x4A /* - on numeric keypad */
#define DIK_NUMPAD4 0x4B
#define DIK_NUMPAD5 0x4C
#define DIK_NUMPAD6 0x4D
#define DIK_ADD 0x4E /* + on numeric keypad */
#define DIK_NUMPAD1 0x4F
#define DIK_NUMPAD2 0x50
#define DIK_NUMPAD3 0x51
#define DIK_NUMPAD0 0x52
#define DIK_DECIMAL 0x53 /* . on numeric keypad */
#define DIK_OEM_102 0x56 /* < > | on UK/Germany keyboards */
#define DIK_F11 0x57
#define DIK_F12 0x58
#define DIK_F13 0x64 /* (NEC PC98) */
#define DIK_F14 0x65 /* (NEC PC98) */
#define DIK_F15 0x66 /* (NEC PC98) */
#define DIK_KANA 0x70 /* (Japanese keyboard) */
#define DIK_ABNT_C1 0x73 /* / ? on Portugese (Brazilian) keyboards */
#define DIK_CONVERT 0x79 /* (Japanese keyboard) */
#define DIK_NOCONVERT 0x7B /* (Japanese keyboard) */
#define DIK_YEN 0x7D /* (Japanese keyboard) */
#define DIK_ABNT_C2 0x7E /* Numpad . on Portugese (Brazilian) keyboards */
#define DIK_NUMPADEQUALS 0x8D /* = on numeric keypad (NEC PC98) */
#define DIK_PREVTRACK 0x90 /* Previous Track (#define DIK_CIRCUMFLEX on Japanese keyboard) */
#define DIK_AT 0x91 /* (NEC PC98) */
#define DIK_COLON 0x92 /* (NEC PC98) */
#define DIK_UNDERLINE 0x93 /* (NEC PC98) */
#define DIK_KANJI 0x94 /* (Japanese keyboard) */
#define DIK_STOP 0x95 /* (NEC PC98) */
#define DIK_AX 0x96 /* (Japan AX) */
#define DIK_UNLABELED 0x97 /* (J3100) */
#define DIK_NEXTTRACK 0x99 /* Next Track */
#define DIK_NUMPADENTER 0x9C /* Enter on numeric keypad */
#define DIK_RCONTROL 0x9D
#define DIK_MUTE 0xA0 /* Mute */
#define DIK_CALCULATOR 0xA1 /* Calculator */
#define DIK_PLAYPAUSE 0xA2 /* Play / Pause */
#define DIK_MEDIASTOP 0xA4 /* Media Stop */
#define DIK_VOLUMEDOWN 0xAE /* Volume - */
#define DIK_VOLUMEUP 0xB0 /* Volume + */
#define DIK_WEBHOME 0xB2 /* Web home */
#define DIK_NUMPADCOMMA 0xB3 /* , on numeric keypad (NEC PC98) */
#define DIK_DIVIDE 0xB5 /* / on numeric keypad */
#define DIK_SYSRQ 0xB7
#define DIK_RMENU 0xB8 /* right Alt */
#define DIK_PAUSE 0xC5 /* Pause */
#define DIK_HOME 0xC7 /* Home on arrow keypad */
#define DIK_UP 0xC8 /* UpArrow on arrow keypad */
#define DIK_PRIOR 0xC9 /* PgUp on arrow keypad */
#define DIK_LEFT 0xCB /* LeftArrow on arrow keypad */
#define DIK_RIGHT 0xCD /* RightArrow on arrow keypad */
#define DIK_END 0xCF /* End on arrow keypad */
#define DIK_DOWN 0xD0 /* DownArrow on arrow keypad */
#define DIK_NEXT 0xD1 /* PgDn on arrow keypad */
#define DIK_INSERT 0xD2 /* Insert on arrow keypad */
#define DIK_DELETE 0xD3 /* Delete on arrow keypad */
#define DIK_LWIN 0xDB /* Left Windows key */
#define DIK_RWIN 0xDC /* Right Windows key */
#define DIK_APPS 0xDD /* AppMenu key */
#define DIK_POWER 0xDE /* System Power */
#define DIK_SLEEP 0xDF /* System Sleep */
#define DIK_WAKE 0xE3 /* System Wake */
#define DIK_WEBSEARCH 0xE5 /* Web Search */
#define DIK_WEBFAVORITES 0xE6 /* Web Favorites */
#define DIK_WEBREFRESH 0xE7 /* Web Refresh */
#define DIK_WEBSTOP 0xE8 /* Web Stop */
#define DIK_WEBFORWARD 0xE9 /* Web Forward */
#define DIK_WEBBACK 0xEA /* Web Back */
#define DIK_MYCOMPUTER 0xEB /* My Computer */
#define DIK_MAIL 0xEC /* Mail */
#define DIK_MEDIASELECT 0xED /* Media Select */
/* Alternate names for keys, to facilitate transition from DOS. */
#define DIK_BACKSPACE DIK_BACK /* backspace */
#define DIK_NUMPADSTAR DIK_MULTIPLY /* * on numeric keypad */
#define DIK_LALT DIK_LMENU /* left Alt */
#define DIK_CAPSLOCK DIK_CAPITAL /* CapsLock */
#define DIK_NUMPADMINUS DIK_SUBTRACT /* - on numeric keypad */
#define DIK_NUMPADPLUS DIK_ADD /* + on numeric keypad */
#define DIK_NUMPADPERIOD DIK_DECIMAL /* . on numeric keypad */
#define DIK_NUMPADSLASH DIK_DIVIDE /* / on numeric keypad */
#define DIK_RALT DIK_RMENU /* right Alt */
#define DIK_UPARROW DIK_UP /* UpArrow on arrow keypad */
#define DIK_PGUP DIK_PRIOR /* PgUp on arrow keypad */
#define DIK_LEFTARROW DIK_LEFT /* LeftArrow on arrow keypad */
#define DIK_RIGHTARROW DIK_RIGHT /* RightArrow on arrow keypad */
#define DIK_DOWNARROW DIK_DOWN /* DownArrow on arrow keypad */
#define DIK_PGDN DIK_NEXT /* PgDn on arrow keypad */
/* Alternate names for keys originally not used on US keyboards. */
#define DIK_CIRCUMFLEX DIK_PREVTRACK /* Japanese keyboard */
struct uae_input_device_kbr_default *uaekey_make_default_kbr (const struct uaekey_hostmap *hostkeys); struct uae_input_device_kbr_default *uaekey_make_default_kbr (const struct uaekey_hostmap *hostkeys);
This diff is collapsed.
...@@ -445,7 +445,7 @@ configure:4344: $? = 0 ...@@ -445,7 +445,7 @@ configure:4344: $? = 0
configure:4344: result: yes configure:4344: result: yes
configure:4350: checking for _doprnt configure:4350: checking for _doprnt
configure:4350: gcc -o conftest -g -O2 -Wall -W -Wno-unused conftest.c >&5 configure:4350: gcc -o conftest -g -O2 -Wall -W -Wno-unused conftest.c >&5
/tmp/ccVvVY5L.o: In function `main': /tmp/ccAAwvoL.o: In function `main':
/home/gnostic/puaex/src/tools/conftest.c:67: undefined reference to `_doprnt' /home/gnostic/puaex/src/tools/conftest.c:67: undefined reference to `_doprnt'
collect2: ld returned 1 exit status collect2: ld returned 1 exit status
configure:4350: $? = 1 configure:4350: $? = 1
...@@ -533,7 +533,7 @@ configure:4364: $? = 0 ...@@ -533,7 +533,7 @@ configure:4364: $? = 0
configure:4364: result: yes configure:4364: result: yes
configure:4364: checking for strcmpi configure:4364: checking for strcmpi
configure:4364: gcc -o conftest -g -O2 -Wall -W -Wno-unused conftest.c >&5 configure:4364: gcc -o conftest -g -O2 -Wall -W -Wno-unused conftest.c >&5
/tmp/ccRMTkaP.o: In function `main': /tmp/ccIwYmH0.o: In function `main':
/home/gnostic/puaex/src/tools/conftest.c:69: undefined reference to `strcmpi' /home/gnostic/puaex/src/tools/conftest.c:69: undefined reference to `strcmpi'
collect2: ld returned 1 exit status collect2: ld returned 1 exit status
configure:4364: $? = 1 configure:4364: $? = 1
...@@ -613,7 +613,7 @@ configure: failed program was: ...@@ -613,7 +613,7 @@ configure: failed program was:
configure:4364: result: no configure:4364: result: no
configure:4364: checking for stricmp configure:4364: checking for stricmp
configure:4364: gcc -o conftest -g -O2 -Wall -W -Wno-unused conftest.c >&5 configure:4364: gcc -o conftest -g -O2 -Wall -W -Wno-unused conftest.c >&5
/tmp/ccdxf26T.o: In function `main': /tmp/ccXSlxnT.o: In function `main':
/home/gnostic/puaex/src/tools/conftest.c:69: undefined reference to `stricmp' /home/gnostic/puaex/src/tools/conftest.c:69: undefined reference to `stricmp'
collect2: ld returned 1 exit status collect2: ld returned 1 exit status
configure:4364: $? = 1 configure:4364: $? = 1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment