aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/scumm/script_v2.cpp26
1 files changed, 18 insertions, 8 deletions
diff --git a/engines/scumm/script_v2.cpp b/engines/scumm/script_v2.cpp
index 7322a8f9d9..d0be273547 100644
--- a/engines/scumm/script_v2.cpp
+++ b/engines/scumm/script_v2.cpp
@@ -861,16 +861,26 @@ void ScummEngine_v2::o2_verbOps() {
vs->curRect.left = x;
vs->curRect.top = y;
- // FIXME: again, this map depends on the language of the game.
+ // FIXME: these keyboard map depends on the language of the game.
// E.g. a german keyboard has 'z' and 'y' swapped, while a french
// keyboard starts with "awert", etc.
- const char keyboard[] = {
- 'q','w','e','r','t',
- 'a','s','d','f','g',
- 'z','x','c','v','b'
- };
- if (1 <= slot && slot <= ARRAYSIZE(keyboard))
- vs->key = keyboard[slot - 1];
+ if (_game.platform == Common::kPlatformNES) {
+ static const char keyboard[] = {
+ 'q','w','e','r',
+ 'a','s','d','f',
+ 'z','x','c','v'
+ };
+ if (1 <= slot && slot <= ARRAYSIZE(keyboard))
+ vs->key = keyboard[slot - 1];
+ } else {
+ static const char keyboard[] = {
+ 'q','w','e','r','t',
+ 'a','s','d','f','g',
+ 'z','x','c','v','b'
+ };
+ if (1 <= slot && slot <= ARRAYSIZE(keyboard))
+ vs->key = keyboard[slot - 1];
+ }
// It follows the verb name
loadPtrToResource(rtVerb, slot, NULL);