[Scummvm-cvs-logs] scummvm master -> 453afd7bbc7b83506638bf87b830384078f729e1

m-kiewitz m_kiewitz at users.sourceforge.net
Sun Jan 3 18:30:51 CET 2016


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
453afd7bbc SCI: kGetEvent modifiers bug was fixed in SCI1


Commit: 453afd7bbc7b83506638bf87b830384078f729e1
    https://github.com/scummvm/scummvm/commit/453afd7bbc7b83506638bf87b830384078f729e1
Author: Martin Kiewitz (m_kiewitz at users.sourceforge.net)
Date: 2016-01-03T18:32:25+01:00

Commit Message:
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

Changed paths:
    engines/sci/engine/kevent.cpp



diff --git a/engines/sci/engine/kevent.cpp b/engines/sci/engine/kevent.cpp
index 1d9dbdc..beaad26 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;
 		}
 	}






More information about the Scummvm-git-logs mailing list