[Scummvm-cvs-logs] SF.net SVN: scummvm:[50265] scummvm/trunk/engines/sci/engine

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Fri Jun 25 16:50:10 CEST 2010


Revision: 50265
          http://scummvm.svn.sourceforge.net/scummvm/?rev=50265&view=rev
Author:   thebluegr
Date:     2010-06-25 14:50:10 +0000 (Fri, 25 Jun 2010)

Log Message:
-----------
Added the SCI2.1 kText kernel function (subop 0, kTextSize for now)

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/kernel.cpp
    scummvm/trunk/engines/sci/engine/kernel.h
    scummvm/trunk/engines/sci/engine/kernel32.cpp

Modified: scummvm/trunk/engines/sci/engine/kernel.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.cpp	2010-06-25 14:49:11 UTC (rev 50264)
+++ scummvm/trunk/engines/sci/engine/kernel.cpp	2010-06-25 14:50:10 UTC (rev 50265)
@@ -357,6 +357,8 @@
 	{ "TextColors", kTextColors, ".*" },
 	{ "TextFonts", kTextFonts, ".*" },
 	{ "Portrait", kPortrait, ".*" },
+	{ "PalVary", kPalVary, "ii*" },
+	{ "AssertPalette", kAssertPalette, "i" },
 	{ "Empty", kEmpty, ".*" },
 
 #ifdef ENABLE_SCI32
@@ -389,13 +391,10 @@
 	{ "PlayVMD", kPlayVMD, ".*" },
 	{ "IsOnMe", kIsOnMe, "iio.*" },
 	{ "MulDiv", kMulDiv, "iii" },
+	{ "Text", kText, ".*" },
 
 #endif
 
-	// its a stub, but its needed for Pharkas to work
-	{ "PalVary", kPalVary, "ii*" },
-	{ "AssertPalette", kAssertPalette, "i" },
-
 #if 0
 	// Stub functions
 	/*09*/	{ "Show", kShow, "i" },

Modified: scummvm/trunk/engines/sci/engine/kernel.h
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.h	2010-06-25 14:49:11 UTC (rev 50264)
+++ scummvm/trunk/engines/sci/engine/kernel.h	2010-06-25 14:50:10 UTC (rev 50265)
@@ -439,6 +439,7 @@
 reg_t kInPolygon(EngineState *s, int argc, reg_t *argv);
 
 // SCI2.1 Kernel Functions
+reg_t kText(EngineState *s, int argc, reg_t *argv);
 reg_t kSave(EngineState *s, int argc, reg_t *argv);
 reg_t kList(EngineState *s, int argc, reg_t *argv);
 reg_t kRobot(EngineState *s, int argc, reg_t *argv);

Modified: scummvm/trunk/engines/sci/engine/kernel32.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel32.cpp	2010-06-25 14:49:11 UTC (rev 50264)
+++ scummvm/trunk/engines/sci/engine/kernel32.cpp	2010-06-25 14:50:10 UTC (rev 50265)
@@ -511,6 +511,19 @@
 	return NULL_REG;
 }
 
+reg_t kText(EngineState *s, int argc, reg_t *argv) {
+	switch (argv[0].toUint16()) {
+	case 0:
+		return kTextSize(s, argc - 1, argv + 1);
+		break;
+	default:
+		warning("kText(%d)", argv[0].toUint16());
+		break;
+	}
+
+	return s->r_acc;
+}
+
 reg_t kString(EngineState *s, int argc, reg_t *argv) {
 	switch (argv[0].toUint16()) {
 	case 0: { // New


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list