aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/kevent.cpp
diff options
context:
space:
mode:
authorMartin Kiewitz2016-01-03 18:32:25 +0100
committerMartin Kiewitz2016-01-03 18:32:25 +0100
commit453afd7bbc7b83506638bf87b830384078f729e1 (patch)
tree1492418abc8ff255c03ca77de46ed9b3dcd68e85 /engines/sci/engine/kevent.cpp
parentf9459656f56e52930fca10ef6ab7fa143fd11b15 (diff)
downloadscummvm-rg350-453afd7bbc7b83506638bf87b830384078f729e1.tar.gz
scummvm-rg350-453afd7bbc7b83506638bf87b830384078f729e1.tar.bz2
scummvm-rg350-453afd7bbc7b83506638bf87b830384078f729e1.zip
SCI: kGetEvent modifiers bug was fixed in SCI1
- SCI1 EGA QfG2 keyboard driver resets AH In the original commit I forgot to mention: - thanks to lskovlun for figuring out that bit 9 is checked/set - thanks to wjp for checking SCI32
Diffstat (limited to 'engines/sci/engine/kevent.cpp')
-rw-r--r--engines/sci/engine/kevent.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/engines/sci/engine/kevent.cpp b/engines/sci/engine/kevent.cpp
index 1d9dbdcbb4..beaad2628a 100644
--- a/engines/sci/engine/kevent.cpp
+++ b/engines/sci/engine/kevent.cpp
@@ -124,8 +124,9 @@ reg_t kGetEvent(EngineState *s, int argc, reg_t *argv) {
// At least one fan-made game (Betrayed Alliance) requires 0x02 to be in the upper byte,
// otherwise the darts game (script 111) will not work properly.
- // It seems Sierra fixed this behaviour (effectively bug) in SCI32
- if (getSciVersion() <= SCI_VERSION_1_1) {
+ // It seems Sierra fixed this behaviour (effectively bug) in the SCI1 keyboard driver.
+ // SCI32 also resets the upper byte.
+ if (getSciVersion() <= SCI_VERSION_01) {
modifiers |= 0x0200;
}
}