Commit 4def703f authored by GnoStiC's avatar GnoStiC

puae 2.3.1

parent deea891e
......@@ -97,7 +97,7 @@ noinst_HEADERS = \
include/audio.h include/autoconf.h \
include/blitter.h include/blkdev.h \
include/bsdsocket.h include/caps.h \
include/catweasel.h include/cdrom.h \
include/catweasel.h \
include/cia.h \
include/commpipe.h include/compemu.h \
include/cpu_prefetch.h include/custom.h \
......@@ -126,7 +126,7 @@ noinst_HEADERS = \
include/osemu.h include/picasso96.h \
include/readcpu.h include/savestate.h \
include/scsidev.h include/serial.h \
include/sinctable.h include/sana2.h \
include/sana2.h \
include/sleep.h include/sysdeps.h \
include/traps.h \
include/tui.h include/uae.h \
......
#include "sysconfig.h"
#include "sysdeps.h"
#include "cdrom.h"
/* CDROM MODE 1 EDC/ECC code (from Reed-Solomon library by Heiko Eissfeldt) */
......
......@@ -28,11 +28,11 @@
*/
struct sdl_raw_keymap
{
int sdl_gfx_driver;
const char *name;
const struct uaekey_hostmap *keymap;
int sdl_gfx_driver;
const char *name;
const struct uaekey_hostmap *keymap;
struct uae_hotkeyseq *hotkeys;
const int *modtable;
const int *modtable;
};
static struct uae_input_device_kbr_default *keyboard = 0;
......@@ -64,33 +64,33 @@ static const struct sdl_raw_keymap keymaps[] = {
struct uae_input_device_kbr_default *get_default_raw_keymap (int type)
{
const struct sdl_raw_keymap *k = &keymaps[0];
const struct sdl_raw_keymap *k = &keymaps[0];
if (!keyboard) {
if (!keyboard) {
free (keyboard);
keyboard = 0;
}
}
while (k->sdl_gfx_driver != type && k->sdl_gfx_driver != 0)
k++;
while (k->sdl_gfx_driver != type && k->sdl_gfx_driver != 0)
k++;
if (k->keymap) {
if (k->keymap) {
write_log ("Found %s raw keyboard mapping\n", k->name);
modkeytable = k->modtable;
keyboard = uaekey_make_default_kbr (k->keymap);
}
}
return keyboard;
return keyboard;
}
struct uae_hotkeyseq *get_default_raw_hotkeys (void)
{
const struct sdl_raw_keymap *k = &keymaps[0];
const struct sdl_raw_keymap *k = &keymaps[0];
while (k->sdl_gfx_driver != get_sdlgfx_type())
k++;
while (k->sdl_gfx_driver != get_sdlgfx_type())
k++;
return k->hotkeys;
return k->hotkeys;
}
......@@ -142,5 +142,5 @@ int modifier_hack (int *scancode, int *pressed)
} else
result = 0;
return result;
return result;
}
......@@ -1402,6 +1402,13 @@ void handle_events (void)
} /* end switch() */
} /* end while() */
//abant
inputdevicefunc_keyboard.read ();
inputdevicefunc_mouse.read ();
inputdevicefunc_joystick.read ();
inputdevice_handle_inputcode ();
check_prefs_changed_gfx ();
#ifdef PICASSO96
# ifdef USE_GL
if (!currprefs.use_gl) {
......@@ -2056,7 +2063,7 @@ static const char *get_kb_uniquename (unsigned int kb)
return "DEFKEYB1";
}
static unsigned int get_kb_widget_num (unsigned int kb)
static unsigned int get_kb_widget_num (unsigned int kb)
{
return 255; // fix me
}
......
......@@ -428,8 +428,10 @@ static BOOL wasFullscreen = NO; // used by ensureNotFullscreen() and restoreFull
{
changed_prefs.jports[1].id = [((NSMenuItem*)sender) tag];
if( changed_prefs.jports[1].id != currprefs.jports[1].id )
inputdevice_config_change();
if (changed_prefs.jports[1].id != currprefs.jports[1].id) {
inputdevice_updateconfig (&changed_prefs);
inputdevice_config_change();
}
}
- (void)swapGamePorts:(id)sender
......
......@@ -74,8 +74,8 @@ static GtkWidget *z3size_widget[10];
#ifdef PICASSO96
static GtkWidget *p96size_widget[7];
#endif
static GtkWidget *rom_text_widget, *key_text_widget;
static GtkWidget *rom_change_widget, *key_change_widget;
static GtkWidget *rom_text_widget;
static GtkWidget *rom_change_widget;
static GtkWidget *sstate_text_widget, *sstate_change_widget, *sstate_load_widget, *sstate_save_widget;
static GtkWidget *floppy_widget[4];
......@@ -199,7 +199,6 @@ enum uae_commands {
UAECMD_EJECTDISK,
UAECMD_INSERTDISK,
UAECMD_SELECT_ROM,
UAECMD_SELECT_KEY,
UAECMD_SAVESTATE_LOAD,
UAECMD_SAVESTATE_SAVE
};
......@@ -341,9 +340,6 @@ static void set_mem_state (void)
gtk_label_set_text (GTK_LABEL (rom_text_widget), changed_prefs.romfile[0]!='\0' ?
changed_prefs.romfile : currprefs.romfile);
gtk_label_set_text (GTK_LABEL (key_text_widget), changed_prefs.keyfile[0]!='\0' ?
changed_prefs.keyfile : currprefs.keyfile);
}
#ifdef JIT
......@@ -565,7 +561,6 @@ static void update_buttons (void)
gtk_widget_set_sensitive (hdpanel, !running && !paused);
gtk_widget_set_sensitive (memorypanel, !running && !paused);
gtk_widget_set_sensitive (rom_change_widget, !running && !paused);
gtk_widget_set_sensitive (key_change_widget, !running && !paused);
// gtk_widget_set_sensitive (sstate_change_widget, !running && !paused);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (pause_uae_widget), paused);
......@@ -844,7 +839,7 @@ static void on_pause_clicked (GtkWidget *widget, gpointer data)
}
static char *gui_romname, *gui_keyname;
static char *gui_romname;
static char *gui_sstate_name;
static void disc_changed (FloppyFileEntry *ffe, gpointer p)
......@@ -946,38 +941,6 @@ static void did_romchange (GtkWidget *w, gpointer data)
filesel_set_path (rom_selector, currprefs.path_rom.path[0]);
}
static GtkWidget *key_selector;
static void did_close_key (gpointer gdata)
{
gtk_widget_set_sensitive (key_change_widget, 1);
}
static void did_key_select (GtkObject *o)
{
const char *s = gtk_file_selection_get_filename (GTK_FILE_SELECTION (key_selector));
if (quit_gui)
return;
gtk_widget_set_sensitive (key_change_widget, 1);
uae_sem_wait (&gui_sem);
gui_keyname = strdup (s);
uae_sem_post (&gui_sem);
gtk_label_set_text (GTK_LABEL (key_text_widget), gui_keyname);
write_comm_pipe_int (&from_gui_pipe, UAECMD_SELECT_KEY, 0);
gtk_widget_destroy (key_selector);
}
static void did_keychange (GtkWidget *w, gpointer data)
{
gtk_widget_set_sensitive (key_change_widget, 0);
key_selector = make_file_selector ("Select a Kickstart key file", did_key_select, did_close_key);
filesel_set_path (key_selector, currprefs.path_rom.path[0]);
}
static void add_empty_vbox (GtkWidget *tobox)
{
GtkWidget *thing = gtk_vbox_new (FALSE, 0);
......@@ -1295,7 +1258,7 @@ static void on_cpuidle_changed (void)
DEBUG_LOG ("called\n");
changed_prefs.cpu_idle = CPUSPEEDPANEL (cspanel)->cpuidle;
DEBUG_LOG ("cpu_idle=%d\n", changed_prefs.cpu_idle);
}
......@@ -1413,32 +1376,32 @@ static void make_cpu_widgets2 (GtkWidget *vbox)
//cpu emulation
newbox = make_radio_group_box ("CPU", cpu_labels, cpu_widget, 0, cpu_changed);
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
newbox2 = gtk_check_button_new_with_label ("24-bit addressing");
gtk_widget_show (newbox2);
gtk_box_pack_start (GTK_BOX (newbox), newbox2, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (newbox), newbox2, FALSE, TRUE, 0);
newbox2 = gtk_check_button_new_with_label ("More compatible");
gtk_widget_show (newbox2);
gtk_box_pack_start (GTK_BOX (newbox), newbox2, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (newbox), newbox2, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("JIT");
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("68040 MMU");
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
//fpu mode
newbox = make_radio_group_box ("FPU", fpu_labels, fpu_widget, 0, fpu_changed);
gtk_widget_show (newbox);
newbox = make_radio_group_box ("FPU", fpu_labels, fpu_widget, 0, fpu_changed);
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
newbox = gtk_check_button_new_with_label ("More compatible");
gtk_widget_show (newbox);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox), newbox, FALSE, TRUE, 0);
}
static void make_sound_widgets (GtkWidget *vbox)
......@@ -1525,19 +1488,6 @@ static void make_mem_widgets (GtkWidget *vbox)
gtk_signal_connect (GTK_OBJECT (thing), "clicked", (GtkSignalFunc) did_romchange, 0);
}
{
GtkWidget *buttonbox = make_file_container ("ROM key file for Cloanto Amiga Forever:", vbox);
GtkWidget *thing = gtk_button_new_with_label ("Change");
/* Current file display */
key_text_widget = make_file_widget (buttonbox);
gtk_box_pack_start (GTK_BOX (buttonbox), thing, FALSE, TRUE, 0);
gtk_widget_show (thing);
key_change_widget = thing;
gtk_signal_connect (GTK_OBJECT (thing), "clicked", (GtkSignalFunc) did_keychange, 0);
}
gtk_widget_show (hbox);
add_centered_to_vbox (vbox, hbox);
......@@ -1976,6 +1926,7 @@ static void make_hd_widgets (GtkWidget *dvbox)
// "Volume", "File/Directory", "R/O", "Heads", "Cyl.", "Sec.", "Rsrvd", "Size", "Blksize"
// };
frame = gtk_frame_new (NULL);
gtk_widget_show (frame);
gtk_box_pack_start (GTK_BOX (dvbox), frame, TRUE, TRUE, 0);
......@@ -2394,25 +2345,18 @@ void gui_handle_events (void)
free (gui_romname);
uae_sem_post (&gui_sem);
break;
case UAECMD_SELECT_KEY:
uae_sem_wait (&gui_sem);
strncpy (changed_prefs.keyfile, gui_keyname, 255);
changed_prefs.keyfile[255] = '\0';
free (gui_keyname);
uae_sem_post (&gui_sem);
break;
case UAECMD_SAVESTATE_LOAD:
uae_sem_wait (&gui_sem);
savestate_initsave (gui_sstate_name, 0, 0, 0);
savestate_state = STATE_DORESTORE;
write_log ("Restoring state from '%s'...\n", gui_sstate_name);
write_log ("Restoring state from '%s'...\n", gui_sstate_name);
uae_sem_post (&gui_sem);
break;
case UAECMD_SAVESTATE_SAVE:
uae_sem_wait (&gui_sem);
savestate_initsave (gui_sstate_name, 0, 0, 0);
save_state (gui_sstate_name, "puae");
write_log ("Saved state to '%s'...\n", gui_sstate_name);
write_log ("Saved state to '%s'...\n", gui_sstate_name);
uae_sem_post (&gui_sem);
break;
/* case UAECMD_START:
......
extern void encode_l2 (uae_u8 *p, int address);
/*
* UAE - The Un*x Amiga Emulator
*
* custom chip support
*
* (c) 1995 Bernd Schmidt
*/
/*
* UAE - The Un*x Amiga Emulator
*
* custom chip support
*
* (c) 1995 Bernd Schmidt
*/
#include "machdep/rpt.h"
......
......@@ -319,7 +319,6 @@ struct uae_prefs {
uae_u32 romextfile2addr;
TCHAR romextfile2[MAX_DPATH];
TCHAR romextident[256];
TCHAR keyfile[256];
TCHAR flashfile[MAX_DPATH];
#ifdef ACTION_REPLAY
TCHAR cartfile[MAX_DPATH];
......
#ifndef _SINCTABLE_H_
#define _SINCTABLE_H_
#define SINC_QUEUE_MAX_AGE 2048
extern const int winsinc_integral[5][SINC_QUEUE_MAX_AGE];
#endif
......@@ -5863,4 +5863,4 @@ void clear_inputstate (void)
vertclear[i] = 1;
}
}
#endif
\ No newline at end of file
#endif
......@@ -284,32 +284,29 @@ static struct uae_input_device_kbr_default keytrans[] = {
{ -1, 0 }
};
/*
static int kb_np[] = { UAEKEY_NUMPAD4, -1, UAEKEY_NUMPAD6, -1, UAEKEY_NUMPAD8, -1, UAEKEY_NUMPAD2, -1, UAEKEY_NUMPAD0, UAEKEY_NUMPAD5, -1, UAEKEY_NUMPAD_PERIOD, UAEKEY_NUMPAD_DIVIDE, UAEKEY_NUMPAD_ENTER, -1, -1 };
//static int kb_np[] = { AK_NP4, -1, AK_NP6, -1, AK_NP8, -1, AK_NP2, -1, UAEKEY_NUMPAD0, UAEKEY_NUMPAD5, -1, UAEKEY_NUMPADPERIOD, UAEKEY_NUMPADDIV, UAEKEY_ENTER, -1, -1 };
static int kb_ck[] = { UAEKEY_CURSOR_LEFT, -1, UAEKEY_CURSOR_RIGHT, -1, UAEKEY_CURSOR_UP, -1, UAEKEY_CURSOR_DOWN, -1, UAEKEY_RIGHT_CTRL, UAEKEY_RIGHT_ALT, -1, UAEKEY_LEFT_SHIFT, -1, -1 };
static int kb_se[] = { UAEKEY_A, -1, UAEKEY_D, -1, UAEKEY_W, -1, UAEKEY_S, -1, UAEKEY_LEFT_ALT, -1, UAEKEY_RIGHT_SHIFT, -1, -1 };
static int kb_cd32_np[] = { UAEKEY_NUMPAD4, -1, UAEKEY_NUMPAD6, -1, UAEKEY_NUMPAD8, -1, UAEKEY_NUMPAD2, -1, UAEKEY_NUMPAD1, -1, UAEKEY_NUMPAD3, -1, UAEKEY_NUMPAD7, -1, UAEKEY_NUMPAD9, -1, UAEKEY_PERIOD, -1, UAEKEY_NUMPAD_MINUS, -1, UAEKEY_NUMPAD_MULTIPLY, -1, -1 };
static int kb_cd32_ck[] = { UAEKEY_CURSOR_LEFT, -1, UAEKEY_CURSOR_RIGHT, -1, UAEKEY_CURSOR_UP, -1, UAEKEY_CURSOR_DOWN, -1, UAEKEY_NUMPAD1, -1, UAEKEY_NUMPAD3, -1, UAEKEY_NUMPAD7, -1, UAEKEY_NUMPAD9, -1, UAEKEY_NUMPAD_DIVIDE, -1, UAEKEY_NUMPAD_MINUS, -1, UAEKEY_NUMPAD_MULTIPLY, -1, -1 };
static int kb_cd32_se[] = { UAEKEY_A, -1, UAEKEY_D, -1, UAEKEY_W, -1, UAEKEY_S, -1, UAEKEY_NUMPAD1, -1, UAEKEY_NUMPAD3, -1, UAEKEY_NUMPAD7, -1, UAEKEY_NUMPAD9, -1, UAEKEY_NUMPAD_DIVIDE, -1, UAEKEY_NUMPAD_MINUS, -1, UAEKEY_NUMPAD_MULTIPLY, -1, -1 };
static int kb_xa1[] = { UAEKEY_NUMPAD4, -1, UAEKEY_NUMPAD6, -1, UAEKEY_NUMPAD8, -1, UAEKEY_NUMPAD2, UAEKEY_NUMPAD5, -1, UAEKEY_LEFT_CTRL, -1, UAEKEY_LEFT_ALT, -1, UAEKEY_SPACE, -1, -1 };
static int kb_xa2[] = { UAEKEY_D, -1, UAEKEY_G, -1, UAEKEY_R, -1, UAEKEY_F, -1, UAEKEY_A, -1, UAEKEY_S, -1, UAEKEY_Q, -1 };
static int kb_arcadia[] = { UAEKEY_F2, -1, UAEKEY_1, -1, UAEKEY_2, -1, UAEKEY_5, -1, UAEKEY_6, -1, -1 };
static int kb_arcadiaxa[] = { UAEKEY_1, -1, UAEKEY_2, -1, UAEKEY_3, -1, UAEKEY_4, -1, UAEKEY_6, -1, UAEKEY_LEFTBRACKET, UAEKEY_LEFT_SHIFT, -1, UAEKEY_RIGHTBRACKET, -1, UAEKEY_C, -1, UAEKEY_5, -1, UAEKEY_Z, -1, UAEKEY_X, -1, -1 };
static int *kbmaps[] = { kb_np, kb_ck, kb_se, kb_cd32_np, kb_cd32_ck, kb_cd32_se, kb_xa1, kb_xa2, kb_arcadia, kb_arcadiaxa };
*/
//static int kb_np[] = { INPUTEVENT_KEY_NP_4, -1, INPUTEVENT_KEY_NP_6, -1, INPUTEVENT_KEY_NP_8, -1, INPUTEVENT_KEY_NP_2, -1, INPUTEVENT_KEY_NP_0, INPUTEVENT_KEY_NP_5, -1, INPUTEVENT_KEY_NP_PERIOD, INPUTEVENT_KEY_NP_DIV, INPUTEVENT_KEY_ENTER, -1, -1 };
static int kb_np[] = { 260, -1, AK_NP6, -1, 264, -1, AK_NP2, -1, INPUTEVENT_KEY_NP_0, 261, -1, INPUTEVENT_KEY_NP_PERIOD, INPUTEVENT_KEY_NP_DIV, INPUTEVENT_KEY_ENTER, -1, -1 };
static int kb_ck[] = { INPUTEVENT_KEY_CURSOR_LEFT, -1, INPUTEVENT_KEY_CURSOR_RIGHT, -1, INPUTEVENT_KEY_CURSOR_UP, -1, INPUTEVENT_KEY_CURSOR_DOWN, -1, INPUTEVENT_KEY_CTRL, INPUTEVENT_KEY_ALT_RIGHT, -1, INPUTEVENT_KEY_SHIFT_LEFT, -1, -1 };
static int kb_se[] = { INPUTEVENT_KEY_A, -1, INPUTEVENT_KEY_D, -1, INPUTEVENT_KEY_W, -1, INPUTEVENT_KEY_S, -1, INPUTEVENT_KEY_ALT_LEFT, -1, INPUTEVENT_KEY_SHIFT_RIGHT, -1, -1 };
static int kb_cd32_np[] = { INPUTEVENT_KEY_NP_4, -1, INPUTEVENT_KEY_NP_6, -1, INPUTEVENT_KEY_NP_8, -1, INPUTEVENT_KEY_NP_2, -1, INPUTEVENT_KEY_NP_1, -1, INPUTEVENT_KEY_NP_3, -1, INPUTEVENT_KEY_NP_7, -1, INPUTEVENT_KEY_NP_9, -1, INPUTEVENT_KEY_PERIOD, -1, INPUTEVENT_KEY_NP_SUB, -1, INPUTEVENT_KEY_NP_MUL, -1, -1 };
static int kb_cd32_ck[] = { INPUTEVENT_KEY_CURSOR_LEFT, -1, INPUTEVENT_KEY_CURSOR_RIGHT, -1, INPUTEVENT_KEY_CURSOR_UP, -1, INPUTEVENT_KEY_CURSOR_DOWN, -1, INPUTEVENT_KEY_NP_1, -1, INPUTEVENT_KEY_NP_3, -1, INPUTEVENT_KEY_NP_7, -1, INPUTEVENT_KEY_NP_9, -1, INPUTEVENT_KEY_NP_DIV, -1, INPUTEVENT_KEY_NP_SUB, -1, INPUTEVENT_KEY_NP_MUL, -1, -1 };
static int kb_cd32_se[] = { INPUTEVENT_KEY_A, -1, INPUTEVENT_KEY_D, -1, INPUTEVENT_KEY_W, -1, INPUTEVENT_KEY_S, -1, INPUTEVENT_KEY_NP_1, -1, INPUTEVENT_KEY_NP_3, -1, INPUTEVENT_KEY_NP_7, -1, INPUTEVENT_KEY_NP_9, -1, INPUTEVENT_KEY_NP_DIV, -1, INPUTEVENT_KEY_NP_SUB, -1, INPUTEVENT_KEY_NP_MUL, -1, -1 };
static int kb_xa1[] = { INPUTEVENT_KEY_NP_4, -1, INPUTEVENT_KEY_NP_6, -1, INPUTEVENT_KEY_NP_8, -1, INPUTEVENT_KEY_NP_2, INPUTEVENT_KEY_NP_5, -1, INPUTEVENT_KEY_CTRL, -1, INPUTEVENT_KEY_ALT_LEFT, -1, INPUTEVENT_KEY_SPACE, -1, -1 };
static int kb_xa2[] = { INPUTEVENT_KEY_D, -1, INPUTEVENT_KEY_G, -1, INPUTEVENT_KEY_R, -1, INPUTEVENT_KEY_F, -1, INPUTEVENT_KEY_A, -1, INPUTEVENT_KEY_S, -1, INPUTEVENT_KEY_Q, -1 };
static int kb_arcadia[] = { INPUTEVENT_KEY_F2, -1, INPUTEVENT_KEY_1, -1, INPUTEVENT_KEY_2, -1, INPUTEVENT_KEY_5, -1, INPUTEVENT_KEY_6, -1, -1 };
static int kb_arcadiaxa[] = { INPUTEVENT_KEY_1, -1, INPUTEVENT_KEY_2, -1, INPUTEVENT_KEY_3, -1, INPUTEVENT_KEY_4, -1, INPUTEVENT_KEY_6, -1, INPUTEVENT_KEY_LEFTBRACKET, INPUTEVENT_KEY_SHIFT_LEFT, -1, INPUTEVENT_KEY_RIGHTBRACKET, -1, INPUTEVENT_KEY_C, -1, INPUTEVENT_KEY_5, -1, INPUTEVENT_KEY_Z, -1, INPUTEVENT_KEY_X, -1, -1 };
static int *kbmaps[] = { kb_np, kb_ck, kb_se, kb_cd32_np, kb_cd32_ck, kb_cd32_se, kb_xa1, kb_xa2, kb_arcadia, kb_arcadiaxa };
static int kb_np[] = { DIK_NUMPAD4, -1, DIK_NUMPAD6, -1, DIK_NUMPAD8, -1, DIK_NUMPAD2, -1, DIK_NUMPAD0, DIK_NUMPAD5, -1, DIK_DECIMAL, -1, DIK_NUMPADENTER, -1, -1 };
static int kb_ck[] = { DIK_LEFT, -1, DIK_RIGHT, -1, DIK_UP, -1, DIK_DOWN, -1, DIK_RCONTROL, DIK_RMENU, -1, DIK_RSHIFT, -1, -1 };
static int kb_se[] = { DIK_A, -1, DIK_D, -1, DIK_W, -1, DIK_S, -1, DIK_LMENU, -1, DIK_LSHIFT, -1, -1 };
static int kb_np3[] = { DIK_NUMPAD4, -1, DIK_NUMPAD6, -1, DIK_NUMPAD8, -1, DIK_NUMPAD2, -1, DIK_NUMPAD0, DIK_NUMPAD5, -1, DIK_DECIMAL, -1, DIK_NUMPADENTER, -1, -1 };
static int kb_ck3[] = { DIK_LEFT, -1, DIK_RIGHT, -1, DIK_UP, -1, DIK_DOWN, -1, DIK_RCONTROL, -1, DIK_RSHIFT, -1, DIK_RMENU, -1, -1 };
static int kb_se3[] = { DIK_A, -1, DIK_D, -1, DIK_W, -1, DIK_S, -1, DIK_LMENU, -1, DIK_LSHIFT, -1, DIK_LCONTROL, -1, -1 };
static int kb_cd32_np[] = { DIK_NUMPAD4, -1, DIK_NUMPAD6, -1, DIK_NUMPAD8, -1, DIK_NUMPAD2, -1, DIK_NUMPAD0, DIK_NUMPAD5, DIK_NUMPAD1, -1, DIK_DECIMAL, DIK_NUMPAD3, -1, DIK_NUMPAD7, -1, DIK_NUMPAD9, -1, DIK_DIVIDE, -1, DIK_SUBTRACT, -1, DIK_MULTIPLY, -1, -1 };
static int kb_cd32_ck[] = { DIK_LEFT, -1, DIK_RIGHT, -1, DIK_UP, -1, DIK_DOWN, -1, DIK_RCONTROL, -1, DIK_RMENU, -1, DIK_NUMPAD7, -1, DIK_NUMPAD9, -1, DIK_DIVIDE, -1, DIK_SUBTRACT, -1, DIK_MULTIPLY, -1, -1 };
static int kb_cd32_se[] = { DIK_A, -1, DIK_D, -1, DIK_W, -1, DIK_S, -1, -1, DIK_LMENU, -1, DIK_LSHIFT, -1, DIK_NUMPAD7, -1, DIK_NUMPAD9, -1, DIK_DIVIDE, -1, DIK_SUBTRACT, -1, DIK_MULTIPLY, -1, -1 };
static int kb_cdtv[] = { DIK_NUMPAD1, -1, DIK_NUMPAD3, -1, DIK_NUMPAD7, -1, DIK_NUMPAD9, -1, -1 };
static int kb_xa1[] = { DIK_NUMPAD4, -1, DIK_NUMPAD6, -1, DIK_NUMPAD8, -1, DIK_NUMPAD2, DIK_NUMPAD5, -1, DIK_LCONTROL, -1, DIK_LMENU, -1, DIK_SPACE, -1, -1 };
static int kb_xa2[] = { DIK_D, -1, DIK_G, -1, DIK_R, -1, DIK_F, -1, DIK_A, -1, DIK_S, -1, DIK_Q, -1 };
static int kb_arcadia[] = { DIK_F2, -1, DIK_1, -1, DIK_2, -1, DIK_5, -1, DIK_6, -1, -1 };
static int kb_arcadiaxa[] = { DIK_1, -1, DIK_2, -1, DIK_3, -1, DIK_4, -1, DIK_6, -1, DIK_LBRACKET, DIK_LSHIFT, -1, DIK_RBRACKET, -1, DIK_C, -1, DIK_5, -1, DIK_Z, -1, DIK_X, -1, -1 };
static int *kbmaps[] = {
kb_np, kb_ck, kb_se, kb_np3, kb_ck3, kb_se3,
kb_cd32_np, kb_cd32_ck, kb_cd32_se,
kb_xa1, kb_xa2, kb_arcadia, kb_arcadiaxa, kb_cdtv
};
/*
* Build a default key translation table using the
......
......@@ -97,9 +97,9 @@ static void show_version_full (void)
show_version ();
hr ();
write_log ("Copyright 1995-2002 Bernd Schmidt\n");
write_log (" 1999-2010 Toni Wilen\n");
write_log (" 1999-2011 Toni Wilen\n");
write_log (" 2003-2007 Richard Drummond\n");
write_log (" 2006-2010 Mustafa 'GnoStiC' Tufan\n\n");
write_log (" 2006-2011 Mustafa 'GnoStiC' Tufan\n\n");
write_log ("See the source for a full list of contributors.\n");
write_log ("This is free software; see the file COPYING for copying conditions. There is NO\n");
write_log ("warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n");
......@@ -821,7 +821,7 @@ static int real_main2 (int argc, TCHAR **argv)
{
#ifdef USE_SDL
int result = (SDL_Init (SDL_INIT_TIMER | /*SDL_INIT_AUDIO |*/ SDL_INIT_JOYSTICK | SDL_INIT_NOPARACHUTE) == 0);
int result = (SDL_Init (SDL_INIT_TIMER | SDL_INIT_JOYSTICK | SDL_INIT_NOPARACHUTE) == 0);
if (result)
atexit (SDL_Quit);
#endif
......
/*
* A collection of ugly and random junk brought in from Win32
* A collection of ugly and random stuff brought in from Win32
* which desparately needs to be tidied up
*
*
......@@ -28,8 +28,8 @@
#define FALSE 0
static int logging_started;
#define LOG_BOOT "puaebootlog.txt"
#define LOG_NORMAL "puaelog.txt"
#define LOG_BOOT "puae_bootlog.txt"
#define LOG_NORMAL "puae_log.txt"
static int tablet;
static int axmax, aymax, azmax;
......@@ -63,6 +63,8 @@ static int data_in_serdatr; /* new data received */
// --- dinput.cpp START ---
int rawkeyboard = -1;
static bool rawinput_enabled_mouse, rawinput_enabled_keyboard;
int no_rawinput;
void getgfxoffset (int *dxp, int *dyp, int *mxp, int *myp)
......@@ -75,7 +77,7 @@ void getgfxoffset (int *dxp, int *dyp, int *mxp, int *myp)
int is_tablet (void)
{
return tablet ? 1 : 0;
return tablet ? 1 : 0;
}
int vsync_switchmode (int hz, int oldhz)
......@@ -340,7 +342,6 @@ uae_u32 emulib_target_getcpurate (uae_u32 v, uae_u32 *low)
t1 = (double)_tstart.tv_sec + (double)_tstart.tv_usec/(1000*1000);
t2 = (double)_tend.tv_sec + (double)_tend.tv_usec/(1000*1000);
return t2-t1;
*/
#endif
}
......@@ -493,9 +494,6 @@ static int testwritewatch (void)
void machdep_free (void)
{
#ifdef LOGITECHLCD
lcd_close ();
#endif
}
void target_run (void)
......@@ -506,15 +504,13 @@ void target_run (void)
// --- dinput.cpp ---
int input_get_default_keyboard (int i)
{
if (rawkeyboard > 0) {
if (i == 0)
return 0;
return 1;
} else {
if (i == 0)
return 1;
return 0;
}
if (rawinput_enabled_keyboard) {
return 1;
} else {
if (i == 0)
return 1;
return 0;
}
}
// --- unicode.cpp ---
......@@ -589,6 +585,7 @@ int target_cfgfile_load (struct uae_prefs *p, char *filename, int type, int isde
v = 1;
return v;
}
// --- win32gfx.c
int screen_is_picasso = 0;
struct uae_filter *usedfilter;
......@@ -763,18 +760,26 @@ TCHAR* buf_out (TCHAR *buffer, int *bufsize, const TCHAR *format, ...)
// dinput
void setid (struct uae_input_device *uid, int i, int slot, int sub, int port, int evt)
{
uid[i].eventid[slot][sub] = evt;
uid[i].port[slot][sub] = port + 1;
// wrong place!
uid->eventid[slot][SPARE_SUB_EVENT] = uid->eventid[slot][sub];
uid->flags[slot][SPARE_SUB_EVENT] = uid->flags[slot][sub];
uid->port[slot][SPARE_SUB_EVENT] = MAX_JPORTS + 1;
xfree (uid->custom[slot][SPARE_SUB_EVENT]);
uid->custom[slot][SPARE_SUB_EVENT] = uid->custom[slot][sub];
uid->custom[slot][sub] = NULL;
uid[i].eventid[slot][sub] = evt;
uid[i].port[slot][sub] = port + 1;
}
void setid_af (struct uae_input_device *uid, int i, int slot, int sub, int port, int evt, int af)
{
setid (uid, i, slot, sub, port, evt);
uid[i].flags[slot][sub] &= ~(ID_FLAG_AUTOFIRE | ID_FLAG_TOGGLE);
if (af >= JPORT_AF_NORMAL)
uid[i].flags[slot][sub] |= ID_FLAG_AUTOFIRE;
if (af == JPORT_AF_TOGGLE)
uid[i].flags[slot][sub] |= ID_FLAG_TOGGLE;
setid (uid, i, slot, sub, port, evt);
uid[i].flags[slot][sub] &= ~(ID_FLAG_AUTOFIRE | ID_FLAG_TOGGLE);
if (af >= JPORT_AF_NORMAL)
uid[i].flags[slot][sub] |= ID_FLAG_AUTOFIRE;
if (af == JPORT_AF_TOGGLE)
uid[i].flags[slot][sub] |= ID_FLAG_TOGGLE;
}
// win32.c
......@@ -951,7 +956,7 @@ static uae_u8 di_keycodes[MAX_INPUT_DEVICES][MAX_KEYCODES];
int ispressed (int key)
{
int i;
unsigned int i;
for (i = 0; i < MAX_INPUT_DEVICES; i++) {
if (di_keycodes[i][key])
return 1;
......@@ -1018,26 +1023,26 @@ static int np[] = {
void my_kbd_handler (int keyboard, int scancode, int newstate)
{
int code = 0;
int scancode_new;
static int swapperdrive = 0;
int code = 0;
int scancode_new;
static int swapperdrive = 0;
if (scancode == specialkeycode ())
return;
if (scancode == specialkeycode ())
return;
/* if (scancode == DIK_F11 && currprefs.win32_ctrl_F11_is_quit && ctrlpressed ())
code = AKS_QUIT;*/
scancode_new = scancode;
/* if (!specialpressed () && inputdevice_iskeymapped (keyboard, scancode))
scancode = 0;*/
scancode_new = scancode;
if (!specialpressed () && inputdevice_iskeymapped (keyboard, scancode))
scancode = 0;
// GUI must be always available
/* if (scancode_new == DIK_F12 && currprefs.win32_guikey < 0)
scancode = scancode_new;
if (scancode_new == currprefs.win32_guikey && scancode_new != DIK_F12)
scancode = scancode_new;*/
// write_log ("kbd = %d, scancode = %d, state = %d\n", keyboard, scancode, newstate );
// write_log ("kbd1 = %d, scancode = %d (0x%02x), state = %d\n", keyboard, scancode, scancode, newstate);
if (newstate == 0 && code == 0) {
switch (scancode)
......@@ -1050,7 +1055,6 @@ void my_kbd_handler (int keyboard, int scancode, int newstate)
if (newstate && code == 0) {
if (scancode == DIK_F12 /*|| scancode == currprefs.win32_guikey*/) {
if (ctrlpressed ()) {
code = AKS_TOGGLEDEFAULTSCREEN;
......@@ -1211,7 +1215,8 @@ void my_kbd_handler (int keyboard, int scancode, int newstate)
if (specialpressed ())
return;
// write_log ("kbd = %d, scancode = %d, state = %d\n", keyboard, scancode, newstate );
// write_log ("kbd2 = %d, scancode = %d (0x%02x), state = %d\n", keyboard, scancode, scancode, newstate);
inputdevice_translatekeycode (keyboard, scancode, newstate);
}
......
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