aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/wince/CEActionsPocket.cpp
diff options
context:
space:
mode:
authorCeRiAl2011-07-18 23:24:49 +0200
committerCeRiAl2011-07-20 02:14:38 +0200
commitbc47ce1fefd1a247e8de6246cdd31459e607d05e (patch)
tree7a4404fe2e4c07cbc7de86e22763c32edbf89008 /backends/platform/wince/CEActionsPocket.cpp
parent822a2ef3dccaedd654ca5429b677456328b22ef1 (diff)
downloadscummvm-rg350-bc47ce1fefd1a247e8de6246cdd31459e607d05e.tar.gz
scummvm-rg350-bc47ce1fefd1a247e8de6246cdd31459e607d05e.tar.bz2
scummvm-rg350-bc47ce1fefd1a247e8de6246cdd31459e607d05e.zip
WINCE: Change keymapping for AGI and Simon 1 & 2
Diffstat (limited to 'backends/platform/wince/CEActionsPocket.cpp')
-rw-r--r--backends/platform/wince/CEActionsPocket.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/backends/platform/wince/CEActionsPocket.cpp b/backends/platform/wince/CEActionsPocket.cpp
index 194f855e98..5980a41caa 100644
--- a/backends/platform/wince/CEActionsPocket.cpp
+++ b/backends/platform/wince/CEActionsPocket.cpp
@@ -215,6 +215,8 @@ void CEActionsPocket::initInstanceGame() {
_key_action[POCKET_ACTION_MULTI].setKey(Common::ASCII_F1, SDLK_F1); // bargon : F1 to start
else if (gameid == "atlantis")
_key_action[POCKET_ACTION_MULTI].setKey(0, SDLK_KP0); // fate of atlantis : Ins to sucker-punch
+ else if (is_simon)
+ _key_action[POCKET_ACTION_MULTI].setKey(Common::ASCII_F10, SDLK_F10); // F10
else
_key_action[POCKET_ACTION_MULTI].setKey('V', SDLK_v, KMOD_SHIFT); // FT cheat : shift-V
// Key bind method
@@ -268,6 +270,15 @@ bool CEActionsPocket::perform(GUI::ActionType action, bool pushed) {
else
_key_action[action].setKey(SDLK_s);
}
+ if (action == POCKET_ACTION_SKIP && ConfMan.get("gameid") == "agi") {
+ // In several AGI games (for example SQ2) it is needed to press F10 to exit from
+ // a screen. But we still want be able to skip normally with the skip button.
+ // Because of this, we inject a F10 keystroke here (this works and doesn't seem
+ // to have side-effects)
+ _key_action[action].setKey(Common::ASCII_F10, SDLK_F10); // F10
+ EventsBuffer::simulateKey(&_key_action[action], true);
+ _key_action[action].setKey(KEY_ALL_SKIP);
+ }
EventsBuffer::simulateKey(&_key_action[action], true);
return true;
case POCKET_ACTION_KEYBOARD: