aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorMartin Kiewitz2010-06-20 21:12:15 +0000
committerMartin Kiewitz2010-06-20 21:12:15 +0000
commit6f195ae5a4c862fede87126e2587b0fdc2952827 (patch)
tree46f37ea3a41727365417c4963316aba7b084fd0f /engines/sci/engine
parent4a83b2c5f6a0b43c25d8870168baca9a76eee103 (diff)
downloadscummvm-rg350-6f195ae5a4c862fede87126e2587b0fdc2952827.tar.gz
scummvm-rg350-6f195ae5a4c862fede87126e2587b0fdc2952827.tar.bz2
scummvm-rg350-6f195ae5a4c862fede87126e2587b0fdc2952827.zip
SCI: implemented kPalVary(changeTicks)
svn-id: r50100
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/kgraphics.cpp17
1 files changed, 11 insertions, 6 deletions
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index ca2bec39d7..0b2f37f690 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -673,7 +673,7 @@ reg_t kPalVary(EngineState *s, int argc, reg_t *argv) {
warning("kPalVary(reverse) called with ticks = %d, stop = %d, direction = %d", ticks, stepStop, direction);
return make_reg(0, result);
} else {
- warning("kPalVary(1) called with parameter %d (argc %d)", argv[1].toUint16(), argc);
+ warning("kPalVary(reverse) called with parameter %d (argc %d)", argv[1].toUint16(), argc);
}
}
case 2: { // Get Current Step
@@ -694,13 +694,18 @@ reg_t kPalVary(EngineState *s, int argc, reg_t *argv) {
}
break;
}
- case 4: { // Unknown
- warning("kPalVary(4) called with parameter %d (argc %d)", argv[1].toUint16(), argc);
+ case 4: { // Change Target
+ // seems to be 1 parameter, we should find a game that is using this feature before implementing it
+ warning("kPalVary(changeTarget) called with parameter %d (argc %d)", argv[1].toUint16(), argc);
break;
}
- case 5: { // Unknown
- // Called in xmas 1992 demo (2 parameters)
- warning("kPalVary(5) called with parameter %d (argc %d)", argv[1].toUint16(), argc);
+ case 5: { // Change ticks
+ if (argc == 2) {
+ uint16 ticks = argv[1].toUint16();
+ g_sci->_gfxPalette->kernelPalVaryChangeTicks(ticks);
+ } else {
+ warning("kPalVary(changeTicks) called with parameter %d (argc %d)", argv[1].toUint16(), argc);
+ }
break;
}
case 6: { // Pause/Resume