From 8e22365b5caa533998a3c362b4ae7bedb6ccb75c Mon Sep 17 00:00:00 2001 From: Fabio Priuli Date: Mon, 5 Apr 2010 15:30:00 +0000 Subject: [PATCH] Added a new input type IPT_KEYPAD for MESS, to distinguish between fully featured keyboards and keypad controllers [Fabio Priuli] --- src/emu/inptport.c | 3 ++- src/emu/inptport.h | 1 + src/emu/inpttype.h | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/emu/inptport.c b/src/emu/inptport.c index 54710267e8e..096e23bca2f 100644 --- a/src/emu/inptport.c +++ b/src/emu/inptport.c @@ -2079,7 +2079,7 @@ static void init_port_state(running_machine *machine) } /* Name keyboard key names */ - if ((field->type == IPT_KEYBOARD) && (field->name == NULL)) + if ((field->type == IPT_KEYBOARD || field->type == IPT_KEYPAD) && (field->name == NULL)) { astring *name = get_keyboard_key_name(field); if (name != NULL) @@ -5359,6 +5359,7 @@ int input_classify_port(const input_field_config *field) result = INPUT_CLASS_CONTROLLER; break; + case IPT_KEYPAD: case IPT_KEYBOARD: result = INPUT_CLASS_KEYBOARD; break; diff --git a/src/emu/inptport.h b/src/emu/inptport.h index 5bb060f4275..b2554df4146 100644 --- a/src/emu/inptport.h +++ b/src/emu/inptport.h @@ -150,6 +150,7 @@ enum IPT_VOLUME_DOWN, IPT_START, /* MESS only */ IPT_SELECT, /* MESS only */ + IPT_KEYPAD, /* MESS only */ IPT_KEYBOARD, /* MESS only */ #define __ipt_digital_joystick_start IPT_JOYSTICK_UP diff --git a/src/emu/inpttype.h b/src/emu/inpttype.h index c9fc9e3cea8..4df818f847f 100644 --- a/src/emu/inpttype.h +++ b/src/emu/inpttype.h @@ -568,6 +568,7 @@ static const input_type_desc core_types[] = INPUT_PORT_ANALOG_TYPE( 7, PLAYER7, MOUSE_Y, "Mouse Y 7", SEQ_DEF_1(INDEXED(MOUSECODE_Y, 6)), SEQ_DEF_1(INDEXED(JOYCODE_Y_UP_SWITCH, 6)), SEQ_DEF_1(INDEXED(JOYCODE_Y_DOWN_SWITCH, 6)) ) INPUT_PORT_ANALOG_TYPE( 8, PLAYER8, MOUSE_Y, "Mouse Y 8", SEQ_DEF_1(INDEXED(MOUSECODE_Y, 7)), SEQ_DEF_1(INDEXED(JOYCODE_Y_UP_SWITCH, 7)), SEQ_DEF_1(INDEXED(JOYCODE_Y_DOWN_SWITCH, 7)) ) + INPUT_PORT_DIGITAL_TYPE( 0, OTHER, KEYPAD, "Keypad", SEQ_DEF_0 ) INPUT_PORT_DIGITAL_TYPE( 0, OTHER, KEYBOARD, "Keyboard", SEQ_DEF_0 ) INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_ON_SCREEN_DISPLAY,"On Screen Display", SEQ_DEF_1(KEYCODE_TILDE) )