extern bool target_can_autoswitchdevice(void);
+extern int key_swap_hack, key_swap_hack2;
+
#endif /* UAE_INPUTDEVICE_H */
extern void keybuf_inject(const uae_char*);
extern void keybuf_ignore_next_release(void);
extern void keybuf_vsync(void);
-extern int key_swap_hack;
#endif /* UAE_KEYBUF_H */
#include "custom.h"
#include "savestate.h"
-int key_swap_hack = false;
+int key_swap_hack2 = false;
static int kpb_first, kpb_last;
int kpb_next = kpb_first + 1;
int kcd = (kc << 7) | (kc >> 1);
- if (key_swap_hack) {
+ if (key_swap_hack2) {
// $0D <> $0C
if ((kcd & 0x7f) == 0x0c) {
kcd = 0x0d | (kcd & 0x80);
int no_directinput = 0;
int no_windowsmouse = 0;
int winekeyboard = 0;
+int key_swap_hack = 0;
#define _WIN32_WINNT 0x501 /* enable RAWINPUT support */
if (rp_isactive ())
return;
#endif
+ if (key_swap_hack) {
+ if (scancode == DIK_F11) {
+ scancode = DIK_EQUALS;
+ } else if (scancode == DIK_EQUALS) {
+ scancode = DIK_F11;
+ }
+ }
+
// eat E1 extended keys
if (rk->Flags & (RI_KEY_E1))
return;
rp_modem = 1;
return 1;
}
+ if (!_tcscmp(arg, _T("key_swap_hack"))) {
+ key_swap_hack = 1;
+ return 1;
+ }
+ if (!_tcscmp(arg, _T("key_swap_hack2"))) {
+ key_swap_hack2 = 1;
+ return 1;
+ }
if (!np)
return 0;