From 57d0c6e4c474aac358dd13f1e3f8b961c1ed47b0 Mon Sep 17 00:00:00 2001 From: Michael Pavone Date: Sat, 28 Nov 2015 14:30:30 -0800 Subject: Make nexus player remote useable as a controller for games that only require a dpad + start + c. Use warning() instead of fprintf(stder,...) in io.c --- android/assets/default.cfg | 119 +++++++++++++++++++++++++++- android/src/org/libsdl/app/SDLActivity.java | 3 +- 2 files changed, 119 insertions(+), 3 deletions(-) mode change 120000 => 100644 android/assets/default.cfg (limited to 'android') diff --git a/android/assets/default.cfg b/android/assets/default.cfg deleted file mode 120000 index 5bd7104..0000000 --- a/android/assets/default.cfg +++ /dev/null @@ -1 +0,0 @@ -../../default.cfg \ No newline at end of file diff --git a/android/assets/default.cfg b/android/assets/default.cfg new file mode 100644 index 0000000..1fd9b25 --- /dev/null +++ b/android/assets/default.cfg @@ -0,0 +1,118 @@ + +bindings { + keys { + up gamepads.1.up + down gamepads.1.down + left gamepads.1.left + right gamepads.1.right + a gamepads.1.a + s gamepads.1.b + d gamepads.1.c + q gamepads.1.x + w gamepads.1.y + e gamepads.1.z + f gamepads.1.mode + enter gamepads.1.start + + [ ui.vdp_debug_mode + ] ui.vdp_debug_pal + u ui.enter_debugger + esc ui.exit + ` ui.save_state + 0 ui.set_speed.0 + 1 ui.set_speed.1 + 2 ui.set_speed.2 + 3 ui.set_speed.3 + 4 ui.set_speed.4 + 5 ui.set_speed.5 + 6 ui.set_speed.6 + 7 ui.set_speed.7 + = ui.next_speed + - ui.prev_speed + + + select gamepads.1.c + play gamepads.1.start + back ui.exit + } + pads { + 0 { + dpads { + 0 { + up gamepads.1.up + down gamepads.1.down + left gamepads.1.left + right gamepads.1.right + } + } + buttons { + 0 gamepads.1.a + 1 gamepads.1.b + 2 gamepads.1.c + 3 gamepads.1.x + 4 gamepads.1.y + 5 gamepads.1.z + 6 gamepads.1.mode + 7 gamepads.1.start + } + } + 1 { + dpads { + 0 { + up gamepads.2.up + down gamepads.2.down + left gamepads.2.left + right gamepads.2.right + } + } + buttons { + 0 gamepads.2.a + 1 gamepads.2.b + 2 gamepads.2.c + 3 gamepads.2.x + 4 gamepads.2.y + 5 gamepads.2.z + 6 gamepads.2.mode + 7 gamepads.2.start + } + } + } +} + +io { + devices { + 1 gamepad6.1 + 2 gamepad6.2 + } +} + +video { + width 640 + vertex_shader default.v.glsl + fragment_shader default.f.glsl +} + +audio { + rate 48000 + buffer 512 +} + +clocks { + max_cycles 3420 + speeds { + 1 150 + 2 200 + 3 300 + 4 400 + 5 25 + 6 50 + 7 75 + } +} + +ui { + rom menu.bin +} + +default_region U + diff --git a/android/src/org/libsdl/app/SDLActivity.java b/android/src/org/libsdl/app/SDLActivity.java index 49a1d38..62123ea 100644 --- a/android/src/org/libsdl/app/SDLActivity.java +++ b/android/src/org/libsdl/app/SDLActivity.java @@ -672,8 +672,7 @@ class SDLSurface extends SurfaceView implements SurfaceHolder.Callback, // Some SOURCE_DPAD or SOURCE_GAMEPAD are also SOURCE_KEYBOARD // So, we try to process them as DPAD or GAMEPAD events first, if that fails we try them as KEYBOARD - if ( (event.getSource() & 0x00000401) != 0 || /* API 12: SOURCE_GAMEPAD */ - (event.getSource() & InputDevice.SOURCE_DPAD) != 0 ) { + if ( (event.getSource() & InputDevice.SOURCE_GAMEPAD) == InputDevice.SOURCE_GAMEPAD) { if (event.getAction() == KeyEvent.ACTION_DOWN) { if (SDLActivity.onNativePadDown(event.getDeviceId(), keyCode) == 0) { return true; -- cgit v1.2.3