Fixed bug causing crash on startup

Fixed the keyboard mapping table which caused a crash during startup.
Removed some debugging code and messages.
This commit is contained in:
Dimitris Panokostas 2016-12-04 16:16:34 +01:00
parent 6557728cd2
commit d8f2ac6496
7 changed files with 286 additions and 351 deletions

View file

@ -3188,9 +3188,6 @@ void default_prefs (struct uae_prefs *p, int type)
int roms[] = { 6, 7, 8, 9, 10, 14, 5, 4, 3, 2, 1, -1 };
TCHAR zero = 0;
struct zfile *f;
#ifdef DEBUG
printf("DEBUG: Running reset_inputdevice_config...\n");
#endif
reset_inputdevice_config (p);
memset (p, 0, sizeof (struct uae_prefs));
_tcscpy (p->description, _T("UAE default configuration"));
@ -3265,7 +3262,7 @@ void default_prefs (struct uae_prefs *p, int type)
#else
p->fast_copper = 0;
#endif
p->tod_hack = 1;
p->tod_hack = 1;
p->cs_cd32c2p = p->cs_cd32cd = p->cs_cd32nvram = false;
@ -3274,9 +3271,6 @@ void default_prefs (struct uae_prefs *p, int type)
_tcscpy (p->floppyslots[2].df, _T(""));
_tcscpy (p->floppyslots[3].df, _T(""));
#ifdef DEBUG
printf("DEBUG: Running configure_rom...\n");
#endif
configure_rom (p, roms, 0);
_tcscpy (p->romextfile, _T(""));
@ -3319,21 +3313,9 @@ void default_prefs (struct uae_prefs *p, int type)
p->key_for_menu = SDLK_F12;
#ifdef DEBUG
printf("DEBUG: Running inputdevice_default_prefs...\n");
#endif
inputdevice_default_prefs (p);
#ifdef DEBUG
printf("DEBUG: Running blkdev_default_prefs...\n");
#endif
inputdevice_default_prefs (p);
blkdev_default_prefs (p);
#ifdef DEBUG
printf("DEBUG: Running target_default_options...\n");
#endif
target_default_options (p, type);
#ifdef DEBUG
printf("DEBUG: Running zfile_fclose...\n");
#endif
target_default_options (p, type);
zfile_fclose (default_file);
default_file = NULL;
f = zfile_fopen_empty (NULL, _T("configstore"));

View file

@ -691,7 +691,11 @@ static void set_kbr_default_event (struct uae_input_device *kbr, struct uae_inpu
while (k < MAX_INPUT_SUB_EVENT && trans[i].node[l].evt) {
int evt = trans[i].node[l].evt;
if (evt < 0 || evt >= INPUTEVENT_SPC_LAST)
{
printf("Invalid event in default keyboard table! trans[%d].node[%d].evt = %d\n", i, l, evt);
gui_message(_T("invalid event in default keyboard table!"));
}
kbr->eventid[num][k] = evt;
kbr->flags[num][k] = trans[i].node[l].flags;
l++;
@ -725,10 +729,8 @@ static void set_kbr_default (struct uae_prefs *p, int index, int devnum, struct
uae_u32 scancode;
if (!trans)
#ifdef DEBUG
printf("DEBUG: trans was false, returning...\n");
#endif
return;
return;
for (j = 0; j < MAX_INPUT_DEVICES; j++) {
if (devnum >= 0 && devnum != j)
continue;
@ -742,9 +744,6 @@ static void set_kbr_default (struct uae_prefs *p, int index, int devnum, struct
for (i = 0; i < id->get_widget_num (j); i++) {
id->get_widget_type (j, i, 0, &scancode);
kbr->extra[i] = scancode;
#ifdef DEBUG
printf("DEBUG: Calling set_kbr_default_event...\n");
#endif
set_kbr_default_event (kbr, trans, i);
}
}
@ -757,9 +756,6 @@ static void inputdevice_default_kb (struct uae_prefs *p, int num)
if (p->jports[0].id != JPORT_CUSTOM || p->jports[1].id != JPORT_CUSTOM)
reset_inputdevice_slot (p, num);
}
#ifdef DEBUG
printf("DEBUG: Running set_kbr_default...\n");
#endif
set_kbr_default (p, num, -1, keyboard_default);
}
static void inputdevice_default_kb_all (struct uae_prefs *p)
@ -4587,9 +4583,6 @@ void inputdevice_devicechange (struct uae_prefs *prefs)
// set default prefs to all input configuration settings
void inputdevice_default_prefs (struct uae_prefs *p)
{
#ifdef DEBUG
printf("DEBUG: Running inputdevice_init...\n");
#endif
inputdevice_init ();
p->input_selected_setting = GAMEPORT_INPUT_SETTINGS;
@ -4604,12 +4597,9 @@ void inputdevice_default_prefs (struct uae_prefs *p)
p->input_analog_joystick_mult = 15;
p->input_analog_joystick_offset = -1;
p->input_mouse_speed = 100;
p->input_autofire_linecnt = 8 * 312;
p->input_autofire_linecnt = 8 * 312;
p->input_keyboard_type = 0;
keyboard_default = keyboard_default_table[p->input_keyboard_type];
#ifdef DEBUG
printf("DEBUG: Running inputdevice_default_kb_all...\n");
#endif
inputdevice_default_kb_all (p);
}

View file

@ -635,26 +635,14 @@ static int real_main2 (int argc, TCHAR **argv)
#endif
#endif
#ifdef DEBUG
printf("DEBUG: setting keyboard mapping...\n");
#endif
keyboard_settrans();
if (restart_config[0]) {
#ifdef DEBUG
printf("DEBUG: setting default prefs...\n");
#endif
default_prefs (&currprefs, 0);
fixup_prefs (&currprefs);
}
#ifdef DEBUG
printf("DEBUG: Checking graphics_setup()...\n");
#endif
if (! graphics_setup ()) {
#ifdef DEBUG
printf("DEBUG: graphics_setup() failed...\n");
#endif
abort();
}
@ -663,13 +651,7 @@ static int real_main2 (int argc, TCHAR **argv)
else
currprefs = changed_prefs;
#ifdef DEBUG
printf("DEBUG: Checking machdep_init()...\n");
#endif
if (!machdep_init ()) {
#ifdef DEBUG
printf("DEBUG: machdep_init() failed...\n");
#endif
restart_program = 0;
return -1;
}
@ -690,9 +672,6 @@ static int real_main2 (int argc, TCHAR **argv)
no_gui = 0;
restart_program = 0;
if (! no_gui) {
#ifdef DEBUG
printf("DEBUG: Attempting to initialize GUI...\n");
#endif
int err = gui_init ();
currprefs = changed_prefs;
if (err == -1) {
@ -708,8 +687,6 @@ static int real_main2 (int argc, TCHAR **argv)
update_display(&currprefs);
}
memset (&gui_data, 0, sizeof gui_data);
gui_data.cd = -1;
gui_data.hd = -1;

View file

@ -129,7 +129,9 @@ namespace sdl
//-------------------------------------------------
#if defined (RASPBERRY)
const SDL_VideoInfo* videoInfo = SDL_GetVideoInfo ();
#ifdef DEBUG
printf("Current resolution: %d x %d %d bpp\n",videoInfo->current_w, videoInfo->current_h, videoInfo->vfmt->BitsPerPixel);
#endif
gui_screen = SDL_SetVideoMode(videoInfo->current_w, videoInfo->current_h, videoInfo->vfmt->BitsPerPixel, SDL_SWSURFACE | SDL_FULLSCREEN);
#else
gui_screen = SDL_SetVideoMode(GUI_WIDTH, GUI_HEIGHT, 16, SDL_SWSURFACE);

View file

@ -16,349 +16,317 @@
char keyboard_type = 0;
static struct uae_input_device_kbr_default keytrans_amiga_x11[] =
{
{ 9, INPUTEVENT_KEY_ESC},
{ 67, INPUTEVENT_KEY_F1},
{ 68, INPUTEVENT_KEY_F2},
{ 69, INPUTEVENT_KEY_F3},
{ 70, INPUTEVENT_KEY_F4},
{ 71, INPUTEVENT_KEY_F5},
{ 72, INPUTEVENT_KEY_F6},
{ 73, INPUTEVENT_KEY_F7},
{ 74, INPUTEVENT_KEY_F8},
{ 75, INPUTEVENT_KEY_F9},
{ 76, INPUTEVENT_KEY_F10},
static struct uae_input_device_kbr_default keytrans_amiga_x11[] = {
{ 9, INPUTEVENT_KEY_ESC },
{ 67, INPUTEVENT_KEY_F1 },
{ 68, INPUTEVENT_KEY_F2 },
{ 69, INPUTEVENT_KEY_F3 },
{ 70, INPUTEVENT_KEY_F4 },
{ 71, INPUTEVENT_KEY_F5 },
{ 72, INPUTEVENT_KEY_F6 },
{ 73, INPUTEVENT_KEY_F7 },
{ 74, INPUTEVENT_KEY_F8 },
{ 75, INPUTEVENT_KEY_F9 },
{ 76, INPUTEVENT_KEY_F10 },
//{ 95, INPUTEVENT_KEY_F11},
//{ 96, INPUTEVENT_KEY_F12},
{ 49, INPUTEVENT_KEY_BACKQUOTE},
{ 49, INPUTEVENT_KEY_BACKQUOTE },
{ 10, INPUTEVENT_KEY_1},
{ 11, INPUTEVENT_KEY_2},
{ 12, INPUTEVENT_KEY_3},
{ 13, INPUTEVENT_KEY_4},
{ 14, INPUTEVENT_KEY_5},
{ 15, INPUTEVENT_KEY_6},
{ 16, INPUTEVENT_KEY_7},
{ 17, INPUTEVENT_KEY_8},
{ 18, INPUTEVENT_KEY_9},
{ 19, INPUTEVENT_KEY_0},
{ 20, INPUTEVENT_KEY_SUB},
{ 21, INPUTEVENT_KEY_EQUALS},
{ 22, INPUTEVENT_KEY_BACKSPACE},
{ 10, INPUTEVENT_KEY_1 },
{ 11, INPUTEVENT_KEY_2 },
{ 12, INPUTEVENT_KEY_3 },
{ 13, INPUTEVENT_KEY_4 },
{ 14, INPUTEVENT_KEY_5 },
{ 15, INPUTEVENT_KEY_6 },
{ 16, INPUTEVENT_KEY_7 },
{ 17, INPUTEVENT_KEY_8 },
{ 18, INPUTEVENT_KEY_9 },
{ 19, INPUTEVENT_KEY_0 },
{ 20, INPUTEVENT_KEY_SUB },
{ 21, INPUTEVENT_KEY_EQUALS },
{ 22, INPUTEVENT_KEY_BACKSPACE },
{ 23, INPUTEVENT_KEY_TAB},
{ 24, INPUTEVENT_KEY_Q},
{ 25, INPUTEVENT_KEY_W},
{ 26, INPUTEVENT_KEY_E},
{ 27, INPUTEVENT_KEY_R},
{ 28, INPUTEVENT_KEY_T},
{ 29, INPUTEVENT_KEY_Y},
{ 30, INPUTEVENT_KEY_U},
{ 31, INPUTEVENT_KEY_I},
{ 32, INPUTEVENT_KEY_O},
{ 33, INPUTEVENT_KEY_P},
{ 34, INPUTEVENT_KEY_LEFTBRACKET},
{ 35, INPUTEVENT_KEY_RIGHTBRACKET},
{ 36, INPUTEVENT_KEY_RETURN},
{ 23, INPUTEVENT_KEY_TAB },
{ 24, INPUTEVENT_KEY_Q },
{ 25, INPUTEVENT_KEY_W },
{ 26, INPUTEVENT_KEY_E },
{ 27, INPUTEVENT_KEY_R },
{ 28, INPUTEVENT_KEY_T },
{ 29, INPUTEVENT_KEY_Y },
{ 30, INPUTEVENT_KEY_U },
{ 31, INPUTEVENT_KEY_I },
{ 32, INPUTEVENT_KEY_O },
{ 33, INPUTEVENT_KEY_P },
{ 34, INPUTEVENT_KEY_LEFTBRACKET },
{ 35, INPUTEVENT_KEY_RIGHTBRACKET },
{ 36, INPUTEVENT_KEY_RETURN },
{ 66, INPUTEVENT_KEY_CAPS_LOCK},
{ 38, INPUTEVENT_KEY_A},
{ 39, INPUTEVENT_KEY_S},
{ 40, INPUTEVENT_KEY_D},
{ 41, INPUTEVENT_KEY_F},
{ 42, INPUTEVENT_KEY_G},
{ 43, INPUTEVENT_KEY_H},
{ 44, INPUTEVENT_KEY_J},
{ 45, INPUTEVENT_KEY_K},
{ 46, INPUTEVENT_KEY_L},
{ 47, INPUTEVENT_KEY_SEMICOLON},
{ 48, INPUTEVENT_KEY_SINGLEQUOTE},
{ 51, INPUTEVENT_KEY_BACKSLASH},
{ 66, INPUTEVENT_KEY_CAPS_LOCK },
{ 38, INPUTEVENT_KEY_A },
{ 39, INPUTEVENT_KEY_S },
{ 40, INPUTEVENT_KEY_D },
{ 41, INPUTEVENT_KEY_F },
{ 42, INPUTEVENT_KEY_G },
{ 43, INPUTEVENT_KEY_H },
{ 44, INPUTEVENT_KEY_J },
{ 45, INPUTEVENT_KEY_K },
{ 46, INPUTEVENT_KEY_L },
{ 47, INPUTEVENT_KEY_SEMICOLON },
{ 48, INPUTEVENT_KEY_SINGLEQUOTE },
{ 51, INPUTEVENT_KEY_BACKSLASH },
{ 50, INPUTEVENT_KEY_SHIFT_LEFT},
{ 94, INPUTEVENT_KEY_LTGT},
{ 52, INPUTEVENT_KEY_Z},
{ 53, INPUTEVENT_KEY_X},
{ 54, INPUTEVENT_KEY_C},
{ 55, INPUTEVENT_KEY_V},
{ 56, INPUTEVENT_KEY_B},
{ 57, INPUTEVENT_KEY_N},
{ 58, INPUTEVENT_KEY_M},
{ 59, INPUTEVENT_KEY_COMMA},
{ 60, INPUTEVENT_KEY_PERIOD},
{ 61, INPUTEVENT_KEY_DIV},
{ 62, INPUTEVENT_KEY_SHIFT_RIGHT},
{ 50, INPUTEVENT_KEY_SHIFT_LEFT },
{ 94, INPUTEVENT_KEY_LTGT },
{ 52, INPUTEVENT_KEY_Z },
{ 53, INPUTEVENT_KEY_X },
{ 54, INPUTEVENT_KEY_C },
{ 55, INPUTEVENT_KEY_V },
{ 56, INPUTEVENT_KEY_B },
{ 57, INPUTEVENT_KEY_N },
{ 58, INPUTEVENT_KEY_M },
{ 59, INPUTEVENT_KEY_COMMA },
{ 60, INPUTEVENT_KEY_PERIOD },
{ 61, INPUTEVENT_KEY_DIV },
{ 62, INPUTEVENT_KEY_SHIFT_RIGHT },
{ 37, INPUTEVENT_KEY_CTRL},
{ 64, INPUTEVENT_KEY_ALT_LEFT},
{ 65, INPUTEVENT_KEY_SPACE},
{ 37, INPUTEVENT_KEY_CTRL },
{ 64, INPUTEVENT_KEY_ALT_LEFT },
{ 65, INPUTEVENT_KEY_SPACE },
{ 108, INPUTEVENT_KEY_ALT_RIGHT},
{ 108, INPUTEVENT_KEY_ALT_RIGHT },
//{ 78, INPUTEVENT_KEY_SCROLLOCK},
//{ 77, INPUTEVENT_KEY_NUMLOCK},
{ 106, INPUTEVENT_KEY_NP_DIV},
{ 63, INPUTEVENT_KEY_NP_MUL},
{ 82, INPUTEVENT_KEY_NP_SUB},
{ 106, INPUTEVENT_KEY_NP_DIV },
{ 63, INPUTEVENT_KEY_NP_MUL },
{ 82, INPUTEVENT_KEY_NP_SUB },
{ 79, INPUTEVENT_KEY_NP_7},
{ 80, INPUTEVENT_KEY_NP_8},
{ 81, INPUTEVENT_KEY_NP_9},
{ 86, INPUTEVENT_KEY_NP_ADD},
{ 79, INPUTEVENT_KEY_NP_7 },
{ 80, INPUTEVENT_KEY_NP_8 },
{ 81, INPUTEVENT_KEY_NP_9 },
{ 86, INPUTEVENT_KEY_NP_ADD },
{ 83, INPUTEVENT_KEY_NP_4},
{ 84, INPUTEVENT_KEY_NP_5},
{ 85, INPUTEVENT_KEY_NP_6},
{ 83, INPUTEVENT_KEY_NP_4 },
{ 84, INPUTEVENT_KEY_NP_5 },
{ 85, INPUTEVENT_KEY_NP_6 },
{ 87, INPUTEVENT_KEY_NP_1},
{ 88, INPUTEVENT_KEY_NP_2},
{ 89, INPUTEVENT_KEY_NP_3},
{ 104, INPUTEVENT_KEY_ENTER}, // The ENT from keypad..
{ 87, INPUTEVENT_KEY_NP_1 },
{ 88, INPUTEVENT_KEY_NP_2 },
{ 89, INPUTEVENT_KEY_NP_3 },
{ 104, INPUTEVENT_KEY_ENTER }, // The ENT from keypad..
{ 90, INPUTEVENT_KEY_NP_0},
{ 91, INPUTEVENT_KEY_NP_PERIOD},
{ 90, INPUTEVENT_KEY_NP_0 },
{ 91, INPUTEVENT_KEY_NP_PERIOD },
{ 111, INPUTEVENT_KEY_CURSOR_UP},
{ 113, INPUTEVENT_KEY_CURSOR_LEFT},
{ 116, INPUTEVENT_KEY_CURSOR_DOWN},
{ 114, INPUTEVENT_KEY_CURSOR_RIGHT},
{ 110, INPUTEVENT_KEY_NP_LPAREN}, // Map home to left parent (as fsuae)
{ 112, INPUTEVENT_KEY_NP_RPAREN}, // Map pageup to right parent (as fsuae)
{ 115, INPUTEVENT_KEY_HELP}, // Help mapped to End key (as fsuae)
{ 119, INPUTEVENT_KEY_DEL},
{ 111, INPUTEVENT_KEY_CURSOR_UP },
{ 113, INPUTEVENT_KEY_CURSOR_LEFT },
{ 116, INPUTEVENT_KEY_CURSOR_DOWN },
{ 114, INPUTEVENT_KEY_CURSOR_RIGHT },
{ 133, INPUTEVENT_KEY_AMIGA_LEFT}, // Left amiga mapped to left Windows
{ 134, INPUTEVENT_KEY_AMIGA_RIGHT}, // Right amiga mapped to right windows key.
{ 135, INPUTEVENT_KEY_AMIGA_RIGHT}, // Right amiga mapped to Menu key.
{ -1, 0 }
{ 110, INPUTEVENT_KEY_NP_LPAREN }, // Map home to left parent (as fsuae)
{ 112, INPUTEVENT_KEY_NP_RPAREN }, // Map pageup to right parent (as fsuae)
{ 115, INPUTEVENT_KEY_HELP }, // Help mapped to End key (as fsuae)
{ 119, INPUTEVENT_KEY_DEL },
{ 133, INPUTEVENT_KEY_AMIGA_LEFT }, // Left amiga mapped to left Windows
{ 134, INPUTEVENT_KEY_AMIGA_RIGHT }, // Right amiga mapped to right windows key.
{ 135, INPUTEVENT_KEY_AMIGA_RIGHT }, // Right amiga mapped to Menu key.
{ -1, 0 }
};
static struct uae_input_device_kbr_default keytrans_amiga_fbcon[] =
{
{ 9 -8, INPUTEVENT_KEY_ESC},
{ 67 -8, INPUTEVENT_KEY_F1},
{ 68 -8, INPUTEVENT_KEY_F2},
{ 69 -8, INPUTEVENT_KEY_F3},
{ 70 -8, INPUTEVENT_KEY_F4},
{ 71 -8, INPUTEVENT_KEY_F5},
{ 72 -8, INPUTEVENT_KEY_F6},
{ 73 -8, INPUTEVENT_KEY_F7},
{ 74 -8, INPUTEVENT_KEY_F8},
{ 75 -8, INPUTEVENT_KEY_F9},
{ 76 -8, INPUTEVENT_KEY_F10},
static struct uae_input_device_kbr_default keytrans_amiga_fbcon[] = {
{ 9 - 8, INPUTEVENT_KEY_ESC },
{ 67 - 8, INPUTEVENT_KEY_F1 },
{ 68 - 8, INPUTEVENT_KEY_F2 },
{ 69 - 8, INPUTEVENT_KEY_F3 },
{ 70 - 8, INPUTEVENT_KEY_F4 },
{ 71 - 8, INPUTEVENT_KEY_F5 },
{ 72 - 8, INPUTEVENT_KEY_F6 },
{ 73 - 8, INPUTEVENT_KEY_F7 },
{ 74 - 8, INPUTEVENT_KEY_F8 },
{ 75 - 8, INPUTEVENT_KEY_F9 },
{ 76 - 8, INPUTEVENT_KEY_F10 },
// { 95 -8 , INPUTEVENT_KEY_F11},
// { 96 -8 , INPUTEVENT_KEY_F12},
{ 49 -8, INPUTEVENT_KEY_BACKQUOTE},
{ 49 - 8, INPUTEVENT_KEY_BACKQUOTE },
{ 10 -8, INPUTEVENT_KEY_1},
{ 11 -8, INPUTEVENT_KEY_2},
{ 12 -8, INPUTEVENT_KEY_3},
{ 13 -8, INPUTEVENT_KEY_4},
{ 14 -8, INPUTEVENT_KEY_5},
{ 15 -8, INPUTEVENT_KEY_6},
{ 16 -8, INPUTEVENT_KEY_7},
{ 17 -8, INPUTEVENT_KEY_8},
{ 18 -8, INPUTEVENT_KEY_9},
{ 19 -8, INPUTEVENT_KEY_0},
{ 20 -8, INPUTEVENT_KEY_SUB},
{ 21 -8, INPUTEVENT_KEY_EQUALS},
{ 22 -8, INPUTEVENT_KEY_BACKSPACE},
{ 10 - 8, INPUTEVENT_KEY_1 },
{ 11 - 8, INPUTEVENT_KEY_2 },
{ 12 - 8, INPUTEVENT_KEY_3 },
{ 13 - 8, INPUTEVENT_KEY_4 },
{ 14 - 8, INPUTEVENT_KEY_5 },
{ 15 - 8, INPUTEVENT_KEY_6 },
{ 16 - 8, INPUTEVENT_KEY_7 },
{ 17 - 8, INPUTEVENT_KEY_8 },
{ 18 - 8, INPUTEVENT_KEY_9 },
{ 19 - 8, INPUTEVENT_KEY_0 },
{ 20 - 8, INPUTEVENT_KEY_SUB },
{ 21 - 8, INPUTEVENT_KEY_EQUALS },
{ 22 - 8, INPUTEVENT_KEY_BACKSPACE },
{ 23 -8, INPUTEVENT_KEY_TAB},
{ 24 -8, INPUTEVENT_KEY_Q},
{ 25 -8, INPUTEVENT_KEY_W},
{ 26 -8, INPUTEVENT_KEY_E},
{ 27 -8, INPUTEVENT_KEY_R},
{ 28 -8, INPUTEVENT_KEY_T},
{ 29 -8, INPUTEVENT_KEY_Y},
{ 30 -8, INPUTEVENT_KEY_U},
{ 31 -8, INPUTEVENT_KEY_I},
{ 32 -8, INPUTEVENT_KEY_O},
{ 33 -8, INPUTEVENT_KEY_P},
{ 34 -8, INPUTEVENT_KEY_LEFTBRACKET},
{ 35 -8, INPUTEVENT_KEY_RIGHTBRACKET},
{ 36 -8, INPUTEVENT_KEY_RETURN},
{ 23 - 8, INPUTEVENT_KEY_TAB },
{ 24 - 8, INPUTEVENT_KEY_Q },
{ 25 - 8, INPUTEVENT_KEY_W },
{ 26 - 8, INPUTEVENT_KEY_E },
{ 27 - 8, INPUTEVENT_KEY_R },
{ 28 - 8, INPUTEVENT_KEY_T },
{ 29 - 8, INPUTEVENT_KEY_Y },
{ 30 - 8, INPUTEVENT_KEY_U },
{ 31 - 8, INPUTEVENT_KEY_I },
{ 32 - 8, INPUTEVENT_KEY_O },
{ 33 - 8, INPUTEVENT_KEY_P },
{ 34 - 8, INPUTEVENT_KEY_LEFTBRACKET },
{ 35 - 8, INPUTEVENT_KEY_RIGHTBRACKET },
{ 36 - 8, INPUTEVENT_KEY_RETURN },
{ 66 -8, INPUTEVENT_KEY_CAPS_LOCK},
{ 38 -8, INPUTEVENT_KEY_A},
{ 39 -8, INPUTEVENT_KEY_S},
{ 40 -8, INPUTEVENT_KEY_D},
{ 41 -8, INPUTEVENT_KEY_F},
{ 42 -8, INPUTEVENT_KEY_G},
{ 43 -8, INPUTEVENT_KEY_H},
{ 44 -8, INPUTEVENT_KEY_J},
{ 45 -8, INPUTEVENT_KEY_K},
{ 46 -8, INPUTEVENT_KEY_L},
{ 47 -8, INPUTEVENT_KEY_SEMICOLON},
{ 48 -8, INPUTEVENT_KEY_SINGLEQUOTE},
{ 51 -8, INPUTEVENT_KEY_BACKSLASH},
{ 66 - 8, INPUTEVENT_KEY_CAPS_LOCK },
{ 38 - 8, INPUTEVENT_KEY_A },
{ 39 - 8, INPUTEVENT_KEY_S },
{ 40 - 8, INPUTEVENT_KEY_D },
{ 41 - 8, INPUTEVENT_KEY_F },
{ 42 - 8, INPUTEVENT_KEY_G },
{ 43 - 8, INPUTEVENT_KEY_H },
{ 44 - 8, INPUTEVENT_KEY_J },
{ 45 - 8, INPUTEVENT_KEY_K },
{ 46 - 8, INPUTEVENT_KEY_L },
{ 47 - 8, INPUTEVENT_KEY_SEMICOLON },
{ 48 - 8, INPUTEVENT_KEY_SINGLEQUOTE },
{ 51 - 8, INPUTEVENT_KEY_BACKSLASH },
{ 50 -8, INPUTEVENT_KEY_SHIFT_LEFT},
{ 94 -8, INPUTEVENT_KEY_LTGT},
{ 52 -8, INPUTEVENT_KEY_Z},
{ 53 -8, INPUTEVENT_KEY_X},
{ 54 -8, INPUTEVENT_KEY_C},
{ 55 -8, INPUTEVENT_KEY_V},
{ 56 -8, INPUTEVENT_KEY_B},
{ 57 -8, INPUTEVENT_KEY_N},
{ 58 -8, INPUTEVENT_KEY_M},
{ 59 -8, INPUTEVENT_KEY_COMMA},
{ 60 -8, INPUTEVENT_KEY_PERIOD},
{ 61 -8, INPUTEVENT_KEY_DIV},
{ 62 -8, INPUTEVENT_KEY_SHIFT_RIGHT},
{ 50 - 8, INPUTEVENT_KEY_SHIFT_LEFT },
{ 94 - 8, INPUTEVENT_KEY_LTGT },
{ 52 - 8, INPUTEVENT_KEY_Z },
{ 53 - 8, INPUTEVENT_KEY_X },
{ 54 - 8, INPUTEVENT_KEY_C },
{ 55 - 8, INPUTEVENT_KEY_V },
{ 56 - 8, INPUTEVENT_KEY_B },
{ 57 - 8, INPUTEVENT_KEY_N },
{ 58 - 8, INPUTEVENT_KEY_M },
{ 59 - 8, INPUTEVENT_KEY_COMMA },
{ 60 - 8, INPUTEVENT_KEY_PERIOD },
{ 61 - 8, INPUTEVENT_KEY_DIV },
{ 62 - 8, INPUTEVENT_KEY_SHIFT_RIGHT },
{ 37 -8, INPUTEVENT_KEY_CTRL},
{ 64 -8, INPUTEVENT_KEY_ALT_LEFT},
{ 65 -8, INPUTEVENT_KEY_SPACE},
{ 37 - 8, INPUTEVENT_KEY_CTRL },
{ 64 - 8, INPUTEVENT_KEY_ALT_LEFT },
{ 65 - 8, INPUTEVENT_KEY_SPACE },
{ 108 -8, INPUTEVENT_KEY_ALT_RIGHT},
{ 108 - 8, INPUTEVENT_KEY_ALT_RIGHT },
//{ 78 -8 , INPUTEVENT_KEY_SCROLLOCK},
//{ 77 -8 , INPUTEVENT_KEY_NUMLOCK},
{ 106 -8, INPUTEVENT_KEY_NP_DIV},
{ 63 -8, INPUTEVENT_KEY_NP_MUL},
{ 82 -8, INPUTEVENT_KEY_NP_SUB},
{ 106 - 8, INPUTEVENT_KEY_NP_DIV },
{ 63 - 8, INPUTEVENT_KEY_NP_MUL },
{ 82 - 8, INPUTEVENT_KEY_NP_SUB },
{ 79 -8, INPUTEVENT_KEY_NP_7},
{ 80 -8, INPUTEVENT_KEY_NP_8},
{ 81 -8, INPUTEVENT_KEY_NP_9},
{ 86 -8, INPUTEVENT_KEY_NP_ADD},
{ 79 - 8, INPUTEVENT_KEY_NP_7 },
{ 80 - 8, INPUTEVENT_KEY_NP_8 },
{ 81 - 8, INPUTEVENT_KEY_NP_9 },
{ 86 - 8, INPUTEVENT_KEY_NP_ADD },
{ 83 -8, INPUTEVENT_KEY_NP_4},
{ 84 -8, INPUTEVENT_KEY_NP_5},
{ 85 -8, INPUTEVENT_KEY_NP_6},
{ 83 - 8, INPUTEVENT_KEY_NP_4 },
{ 84 - 8, INPUTEVENT_KEY_NP_5 },
{ 85 - 8, INPUTEVENT_KEY_NP_6 },
{ 87 -8, INPUTEVENT_KEY_NP_1},
{ 88 -8, INPUTEVENT_KEY_NP_2},
{ 89 -8, INPUTEVENT_KEY_NP_3},
{ 104 -8, INPUTEVENT_KEY_ENTER}, // The ENT from keypad..
{ 87 - 8, INPUTEVENT_KEY_NP_1 },
{ 88 - 8, INPUTEVENT_KEY_NP_2 },
{ 89 - 8, INPUTEVENT_KEY_NP_3 },
{ 104 - 8, INPUTEVENT_KEY_ENTER }, // The ENT from keypad..
{ 90 -8, INPUTEVENT_KEY_NP_0},
{ 91 -8, INPUTEVENT_KEY_PERIOD},
{ 90 - 8, INPUTEVENT_KEY_NP_0 },
{ 91 - 8, INPUTEVENT_KEY_PERIOD },
{ 111 -8, INPUTEVENT_KEY_CURSOR_UP},
{ 113 -8, INPUTEVENT_KEY_CURSOR_LEFT},
{ 116 -8, INPUTEVENT_KEY_CURSOR_DOWN},
{ 114 -8, INPUTEVENT_KEY_CURSOR_RIGHT},
{ 111 - 8, INPUTEVENT_KEY_CURSOR_UP },
{ 113 - 8, INPUTEVENT_KEY_CURSOR_LEFT },
{ 116 - 8, INPUTEVENT_KEY_CURSOR_DOWN },
{ 114 - 8, INPUTEVENT_KEY_CURSOR_RIGHT },
{ 110, -8, INPUTEVENT_KEY_NP_LPAREN}, // Map home to left parent (as fsuae)
{ 112, -8, INPUTEVENT_KEY_NP_RPAREN}, // Map pageup to right parent (as fsuae)
{ 115, -8, INPUTEVENT_KEY_HELP}, // Help mapped to End key
{ 119, -8, INPUTEVENT_KEY_DEL},
{ 133 -8, INPUTEVENT_KEY_AMIGA_LEFT}, // Left amiga mapped to left Windows
{ 134 -8, INPUTEVENT_KEY_AMIGA_RIGHT}, // Right amiga mapped to right windows key.
{ 135 -8, INPUTEVENT_KEY_AMIGA_RIGHT}, // Right amiga mapped to Menu key.
{ -1, 0 }
{ 110 - 8, INPUTEVENT_KEY_NP_LPAREN }, // Map home to left parent (as fsuae)
{ 112 - 8, INPUTEVENT_KEY_NP_RPAREN }, // Map pageup to right parent (as fsuae)
{ 115 - 8, INPUTEVENT_KEY_HELP }, // Help mapped to End key (as fsuae)
{ 119 - 8, INPUTEVENT_KEY_DEL },
{ 133 - 8, INPUTEVENT_KEY_AMIGA_LEFT }, // Left amiga mapped to left Windows
{ 134 - 8, INPUTEVENT_KEY_AMIGA_RIGHT }, // Right amiga mapped to right windows key.
{ 135 - 8, INPUTEVENT_KEY_AMIGA_RIGHT }, // Right amiga mapped to Menu key.
{ -1, 0 }
};
static struct uae_input_device_kbr_default keytrans_amiga[] =
{
{ SDLK_a, INPUTEVENT_KEY_A },
{ SDLK_b, INPUTEVENT_KEY_B },
{ SDLK_c, INPUTEVENT_KEY_C },
{ SDLK_d, INPUTEVENT_KEY_D },
{ SDLK_e, INPUTEVENT_KEY_E },
{ SDLK_f, INPUTEVENT_KEY_F },
{ SDLK_g, INPUTEVENT_KEY_G },
{ SDLK_h, INPUTEVENT_KEY_H },
{ SDLK_i, INPUTEVENT_KEY_I },
{ SDLK_j, INPUTEVENT_KEY_J },
{ SDLK_k, INPUTEVENT_KEY_K },
{ SDLK_l, INPUTEVENT_KEY_L },
{ SDLK_m, INPUTEVENT_KEY_M },
{ SDLK_n, INPUTEVENT_KEY_N },
{ SDLK_o, INPUTEVENT_KEY_O },
{ SDLK_p, INPUTEVENT_KEY_P },
{ SDLK_q, INPUTEVENT_KEY_Q },
{ SDLK_r, INPUTEVENT_KEY_R },
{ SDLK_s, INPUTEVENT_KEY_S },
{ SDLK_t, INPUTEVENT_KEY_T },
{ SDLK_u, INPUTEVENT_KEY_U },
{ SDLK_v, INPUTEVENT_KEY_W },
{ SDLK_w, INPUTEVENT_KEY_V },
{ SDLK_x, INPUTEVENT_KEY_X },
{ SDLK_y, INPUTEVENT_KEY_Y },
{ SDLK_z, INPUTEVENT_KEY_Z },
static struct uae_input_device_kbr_default keytrans_amiga[] = {
{ SDLK_0, INPUTEVENT_KEY_0 },
{ SDLK_1, INPUTEVENT_KEY_1 },
{ SDLK_2, INPUTEVENT_KEY_2 },
{ SDLK_3, INPUTEVENT_KEY_3 },
{ SDLK_4, INPUTEVENT_KEY_4 },
{ SDLK_5, INPUTEVENT_KEY_5 },
{ SDLK_6, INPUTEVENT_KEY_6 },
{ SDLK_7, INPUTEVENT_KEY_7 },
{ SDLK_8, INPUTEVENT_KEY_8 },
{ SDLK_9, INPUTEVENT_KEY_9 },
{ SDLK_a, INPUTEVENT_KEY_A },
{ SDLK_b, INPUTEVENT_KEY_B },
{ SDLK_c, INPUTEVENT_KEY_C },
{ SDLK_d, INPUTEVENT_KEY_D },
{ SDLK_e, INPUTEVENT_KEY_E },
{ SDLK_f, INPUTEVENT_KEY_F },
{ SDLK_g, INPUTEVENT_KEY_G },
{ SDLK_h, INPUTEVENT_KEY_H },
{ SDLK_i, INPUTEVENT_KEY_I },
{ SDLK_j, INPUTEVENT_KEY_J },
{ SDLK_k, INPUTEVENT_KEY_K },
{ SDLK_l, INPUTEVENT_KEY_L },
{ SDLK_m, INPUTEVENT_KEY_M },
{ SDLK_n, INPUTEVENT_KEY_N },
{ SDLK_o, INPUTEVENT_KEY_O },
{ SDLK_p, INPUTEVENT_KEY_P },
{ SDLK_q, INPUTEVENT_KEY_Q },
{ SDLK_r, INPUTEVENT_KEY_R },
{ SDLK_s, INPUTEVENT_KEY_S },
{ SDLK_t, INPUTEVENT_KEY_T },
{ SDLK_u, INPUTEVENT_KEY_U },
{ SDLK_v, INPUTEVENT_KEY_V },
{ SDLK_w, INPUTEVENT_KEY_W },
{ SDLK_x, INPUTEVENT_KEY_X },
{ SDLK_y, INPUTEVENT_KEY_Y },
{ SDLK_z, INPUTEVENT_KEY_Z },
{ SDLK_KP0, INPUTEVENT_KEY_NP_0 },
{ SDLK_KP1, INPUTEVENT_KEY_NP_1 },
{ SDLK_KP2, INPUTEVENT_KEY_NP_2 },
{ SDLK_KP3, INPUTEVENT_KEY_NP_3 },
{ SDLK_KP4, INPUTEVENT_KEY_NP_4 },
{ SDLK_KP5, INPUTEVENT_KEY_NP_5 },
{ SDLK_KP6, INPUTEVENT_KEY_NP_6 },
{ SDLK_KP7, INPUTEVENT_KEY_NP_7 },
{ SDLK_KP8, INPUTEVENT_KEY_NP_8 },
{ SDLK_KP9, INPUTEVENT_KEY_NP_9 },
{ SDLK_KP_DIVIDE, INPUTEVENT_KEY_NP_DIV },
{ SDLK_KP_MULTIPLY, INPUTEVENT_KEY_NP_MUL },
{ SDLK_KP_MINUS, INPUTEVENT_KEY_NP_SUB },
{ SDLK_KP_PLUS, INPUTEVENT_KEY_NP_ADD },
{ SDLK_KP_PERIOD, INPUTEVENT_KEY_NP_PERIOD },
{ SDLK_KP_ENTER, INPUTEVENT_KEY_ENTER },
{ SDLK_0, INPUTEVENT_KEY_0 },
{ SDLK_1, INPUTEVENT_KEY_1 },
{ SDLK_2, INPUTEVENT_KEY_2 },
{ SDLK_3, INPUTEVENT_KEY_3 },
{ SDLK_4, INPUTEVENT_KEY_4 },
{ SDLK_5, INPUTEVENT_KEY_5 },
{ SDLK_6, INPUTEVENT_KEY_6 },
{ SDLK_7, INPUTEVENT_KEY_7 },
{ SDLK_8, INPUTEVENT_KEY_8 },
{ SDLK_9, INPUTEVENT_KEY_9 },
{ SDLK_F1, INPUTEVENT_KEY_F1 },
{ SDLK_F2, INPUTEVENT_KEY_F2 },
{ SDLK_F3, INPUTEVENT_KEY_F3 },
{ SDLK_F4, INPUTEVENT_KEY_F4 },
{ SDLK_F5, INPUTEVENT_KEY_F5 },
{ SDLK_F6, INPUTEVENT_KEY_F6 },
{ SDLK_F7, INPUTEVENT_KEY_F7 },
{ SDLK_F8, INPUTEVENT_KEY_F8 },
{ SDLK_F9, INPUTEVENT_KEY_F9 },
{ SDLK_F10, INPUTEVENT_KEY_F10 },
{ SDLK_BACKSPACE, INPUTEVENT_KEY_BACKSPACE },
{ SDLK_DELETE, INPUTEVENT_KEY_DEL },
{ SDLK_TAB, INPUTEVENT_KEY_TAB },
{ SDLK_RETURN, INPUTEVENT_KEY_RETURN },
{ SDLK_SPACE, INPUTEVENT_KEY_SPACE },
{ VK_ESCAPE, INPUTEVENT_KEY_ESC },
{ SDLK_INSERT, INPUTEVENT_KEY_HELP },
{ SDLK_HOME, INPUTEVENT_KEY_HOME },
{ SDLK_END, INPUTEVENT_KEY_END },
{ SDLK_CAPSLOCK, INPUTEVENT_KEY_CAPS_LOCK },
{ SDLK_UP, INPUTEVENT_KEY_CURSOR_UP },
{ SDLK_DOWN, INPUTEVENT_KEY_CURSOR_DOWN },
{ SDLK_LEFT, INPUTEVENT_KEY_CURSOR_LEFT },
{ SDLK_RIGHT, INPUTEVENT_KEY_CURSOR_RIGHT },
{ SDLK_LEFTBRACKET, INPUTEVENT_KEY_LEFTBRACKET },
{ SDLK_RIGHTBRACKET, INPUTEVENT_KEY_RIGHTBRACKET },
{ SDLK_BACKSPACE, INPUTEVENT_KEY_BACKSPACE },
{ SDLK_TAB, INPUTEVENT_KEY_TAB },
{ SDLK_RETURN, INPUTEVENT_KEY_RETURN },
{ VK_ESCAPE, INPUTEVENT_KEY_ESC },
{ SDLK_SPACE, INPUTEVENT_KEY_SPACE },
{ SDLK_QUOTE, INPUTEVENT_KEY_SINGLEQUOTE },
{ SDLK_COMMA, INPUTEVENT_KEY_COMMA },
{ SDLK_MINUS, INPUTEVENT_KEY_SUB },
{ SDLK_PERIOD, INPUTEVENT_KEY_PERIOD },
{ SDLK_SLASH, INPUTEVENT_KEY_DIV },
{ SDLK_SEMICOLON, INPUTEVENT_KEY_SEMICOLON },
{ SDLK_MINUS, INPUTEVENT_KEY_SUB },
{ SDLK_EQUALS, INPUTEVENT_KEY_EQUALS },
{ SDLK_LEFTBRACKET, INPUTEVENT_KEY_LEFTBRACKET },
{ SDLK_BACKSLASH, INPUTEVENT_KEY_BACKSLASH },
{ SDLK_RIGHTBRACKET, INPUTEVENT_KEY_RIGHTBRACKET },
{ SDLK_BACKQUOTE, INPUTEVENT_KEY_BACKQUOTE },
{ SDLK_QUOTE, INPUTEVENT_KEY_SINGLEQUOTE },
{ SDLK_BACKSLASH, INPUTEVENT_KEY_BACKSLASH },
{ SDLK_DELETE, INPUTEVENT_KEY_DEL },
{ -1, 0 }
{ -1, 0 }
};
static struct uae_input_device_kbr_default *keytrans[] =
{
keytrans_amiga,
@ -392,19 +360,25 @@ void keyboard_settrans (void)
SDL_VideoDriverName(vid_drv_name, sizeof(vid_drv_name));
if (strcmp(vid_drv_name, "x11") == 0)
{
#ifdef DEBUG
printf("Will use keycode from x11 mapping.\n");
#endif
keyboard_type = KEYCODE_X11;
inputdevice_setkeytranslation (keytrans_x11, kbmaps);
}
else if (strcmp(vid_drv_name, "fbcon") == 0)
{
#ifdef DEBUG
printf("Will use keycode from fbcon mapping.\n");
#endif
keyboard_type = KEYCODE_FBCON;
inputdevice_setkeytranslation (keytrans_fbcon, kbmaps);
}
else
{
#ifdef DEBUG
printf("Unknown keycode to use, will use keysym\n");
#endif
keyboard_type = KEYCODE_UNK;
inputdevice_setkeytranslation (keytrans, kbmaps);
}

View file

@ -171,7 +171,9 @@ static void open_screen(struct uae_prefs *p)
if(Dummy_prSDLScreen == NULL )
{
const SDL_VideoInfo* videoInfo = SDL_GetVideoInfo ();
printf("DispmanX: Current resolution: %d x %d %d bpp\n",videoInfo->current_w, videoInfo->current_h, videoInfo->vfmt->BitsPerPixel);
#ifdef DEBUG
printf("DispmanX: Current resolution: %d x %d %d bpp\n",videoInfo->current_w, videoInfo->current_h, videoInfo->vfmt->BitsPerPixel);
#endif
// For debug, in order to avoid full screen.
Dummy_prSDLScreen = SDL_SetVideoMode(videoInfo->current_w,videoInfo->current_h, 16, SDL_SWSURFACE | SDL_FULLSCREEN);
//Dummy_prSDLScreen = SDL_SetVideoMode(800,480,16,SDL_SWSURFACE );
@ -184,7 +186,9 @@ static void open_screen(struct uae_prefs *p)
((blit_rect.width != width) || (blit_rect.height != height) || (currprefs.gfx_correct_aspect != changed_prefs.gfx_correct_aspect) ||
(currprefs.gfx_fullscreen_ratio != changed_prefs.gfx_fullscreen_ratio)))
{
#ifdef DEBUG
printf("Emulation resolution change detected.\n");
#endif
if(prSDLScreen != NULL )
{
SDL_FreeSurface(prSDLScreen);
@ -199,7 +203,9 @@ static void open_screen(struct uae_prefs *p)
if (dispmanxresource_amigafb_1 == 0)
{
#ifdef DEBUG
printf("Emulation resolution: Width %i Height: %i\n",width,height);
#endif
currprefs.gfx_correct_aspect = changed_prefs.gfx_correct_aspect;
currprefs.gfx_fullscreen_ratio = changed_prefs.gfx_fullscreen_ratio;
prSDLScreen = SDL_CreateRGBSurface(SDL_SWSURFACE, width, height, 16,

View file

@ -176,7 +176,9 @@ static int pandora_start_sound(int rate, int bits, int stereo)
// init sem, start sound thread
init_soundbuffer_usage();
#ifdef DEBUG
printf("starting sound thread..\n");
#endif
ret = sem_init(&sound_sem, 0, 0);
sem_init(&callback_sem, 0, SOUND_BUFFERS_COUNT - 1);
if (ret != 0) printf("sem_init() failed: %i, errno=%i\n", ret, errno);
@ -213,7 +215,9 @@ void pandora_stop_sound(void)
printf("don't call pandora_stop_sound more than once!\n");
if (sound_thread_active)
{
printf("stopping sound thread..\n");
#ifdef DEBUG
printf("stopping sound thread...\n");
#endif
sound_thread_exit = 1;
sem_post(&sound_sem);
usleep(100*1000);