aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/input.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/scumm/input.cpp')
-rw-r--r--engines/scumm/input.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/engines/scumm/input.cpp b/engines/scumm/input.cpp
index 73e7285f81..bcbab79147 100644
--- a/engines/scumm/input.cpp
+++ b/engines/scumm/input.cpp
@@ -589,6 +589,25 @@ void ScummEngine::processKeyboard(Common::KeyState lastKeyHit) {
// Map arrow keys to number keys in the SEGA version of MI to support
// scrolling to conversation choices. See bug report #1193185 for details.
_mouseAndKeyboardStat = lastKeyHit.keycode - Common::KEYCODE_UP + 54;
+ } else if (_game.id == GID_LOOM && _game.platform == Common::kPlatformPCEngine) {
+ // Map arrow keys to number keys in the PCEngine version of Loom to support
+ // the menu screen.
+ switch (lastKeyHit.keycode) {
+ case Common::KEYCODE_UP:
+ _mouseAndKeyboardStat = 328;
+ break;
+ case Common::KEYCODE_DOWN:
+ _mouseAndKeyboardStat = 336;
+ break;
+ case Common::KEYCODE_LEFT:
+ _mouseAndKeyboardStat = 331;
+ break;
+ case Common::KEYCODE_RIGHT:
+ _mouseAndKeyboardStat = 333;
+ break;
+ default:
+ break;
+ }
} else if (_game.version >= 7) {
// Don't let pre-V7 game see arrow keys. This fixes bug with up arrow (273)
// corresponding to the "instant win" cheat in MI2 mentioned above.