diff --git a/android/native/jni/input_autodetect.c b/android/native/jni/input_autodetect.c index 37c072314a..f717e1d567 100644 --- a/android/native/jni/input_autodetect.c +++ b/android/native/jni/input_autodetect.c @@ -651,6 +651,17 @@ void input_autodetect_setup (void *data, char *msg, size_t sizeof_msg, unsigned keycode_lut[AKEYCODE_3] |= ((RETRO_DEVICE_ID_JOYPAD_Y+1) << shift); keycode_lut[AKEYCODE_4] |= ((RETRO_DEVICE_ID_JOYPAD_X+1) << shift); break; + case ICADE_PROFILE_IPEGA_PG9017: + /* Todo: diagonals - patchy? */ + keycode_lut[AKEYCODE_BUTTON_1] |= ((RETRO_DEVICE_ID_JOYPAD_Y+1) << shift); + keycode_lut[AKEYCODE_BUTTON_2] |= ((RETRO_DEVICE_ID_JOYPAD_X+1) << shift); + keycode_lut[AKEYCODE_BUTTON_3] |= ((RETRO_DEVICE_ID_JOYPAD_B+1) << shift); + keycode_lut[AKEYCODE_BUTTON_4] |= ((RETRO_DEVICE_ID_JOYPAD_A+1) << shift); + keycode_lut[AKEYCODE_BUTTON_5] |= ((RETRO_DEVICE_ID_JOYPAD_L+1) << shift); + keycode_lut[AKEYCODE_BUTTON_6] |= ((RETRO_DEVICE_ID_JOYPAD_R+1) << shift); + keycode_lut[AKEYCODE_BUTTON_9] |= ((RETRO_DEVICE_ID_JOYPAD_SELECT+1) << shift); + keycode_lut[AKEYCODE_BUTTON_10] |= ((RETRO_DEVICE_ID_JOYPAD_START+1) << shift); + break; } } } diff --git a/android/native/jni/input_autodetect.h b/android/native/jni/input_autodetect.h index b13fc54cc8..ce96d6393d 100644 --- a/android/native/jni/input_autodetect.h +++ b/android/native/jni/input_autodetect.h @@ -23,6 +23,7 @@ enum { ICADE_PROFILE_RED_SAMURAI = 0, + ICADE_PROFILE_IPEGA_PG9017, } icade_profile_enums; enum { diff --git a/android/phoenix/res/values/array.xml b/android/phoenix/res/values/array.xml index 62e8ba9e71..fa494636ba 100644 --- a/android/phoenix/res/values/array.xml +++ b/android/phoenix/res/values/array.xml @@ -22,10 +22,12 @@ Red Samurai + iPega PG-9017 0 + 1