[Scummvm-git-logs] scummvm master -> 0229c95953ea225c3b4304689c69c7f8a218e28e

sev- sev at scummvm.org
Thu Feb 9 21:56:47 CET 2017


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

Summary:
c6567ce71a DIRECTOR: Lingo: Documented D4 "Puppets" Lingo
0229c95953 DIRECTOR: Lingo: Documented D4 "Rectangle and point coordinates" Lingo


Commit: c6567ce71a5dff0422c1133945d590ee416e1d30
    https://github.com/scummvm/scummvm/commit/c6567ce71a5dff0422c1133945d590ee416e1d30
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-02-09T20:12:02+01:00

Commit Message:
DIRECTOR: Lingo: Documented D4 "Puppets" Lingo

Changed paths:
    engines/director/lingo/lingo-builtins.cpp
    engines/director/lingo/lingo-the.cpp
    engines/director/lingo/lingo-the.h


diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index f34be6e..99af75d 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -154,17 +154,17 @@ static struct BuiltinProto {
 	{ "move",			Lingo::b_move,			1, 2, false },	//			D4 c
 	{ "moveableSprite",	Lingo::b_moveableSprite,0, 0, false },	// D2
 	{ "pasteClipBoardInto",Lingo::b_pasteClipBoardInto,1, 1, false },	//	D4 c
-	{ "puppetPalette",	Lingo::b_puppetPalette, -1,0, false },	// D2
-	{ "puppetSound",	Lingo::b_puppetSound,	-1,0, false },	// D2
-	{ "puppetSprite",	Lingo::b_puppetSprite,	-1,0, false },	// D2
-	{ "puppetTempo",	Lingo::b_puppetTempo,	1, 1, false },	// D2
-	{ "puppetTransition",Lingo::b_puppetTransition,-1,0, false },// D2
+	{ "puppetPalette",	Lingo::b_puppetPalette, -1,0, false },	// D2 c
+	{ "puppetSound",	Lingo::b_puppetSound,	-1,0, false },	// D2 c
+	{ "puppetSprite",	Lingo::b_puppetSprite,	-1,0, false },	// D2 c
+	{ "puppetTempo",	Lingo::b_puppetTempo,	1, 1, false },	// D2 c
+	{ "puppetTransition",Lingo::b_puppetTransition,-1,0, false },// D2 c
 	{ "ramNeeded",		Lingo::b_ramNeeded,		2, 2, true },	//			D4 f
 	{ "rollOver",		Lingo::b_rollOver,		1, 1, true },	// D2 f
 	{ "spriteBox",		Lingo::b_spriteBox,		-1,0, false },	// D2
 	{ "unLoad",			Lingo::b_unLoad,		0, 2, false },	//			D4 c
 	{ "unLoadCast",		Lingo::b_unLoadCast,	0, 2, false },	//			D4 c
-	{ "updateStage",	Lingo::b_updateStage,	0, 0, false },	// D2
+	{ "updateStage",	Lingo::b_updateStage,	0, 0, false },	// D2 c
 	{ "zoomBox",		Lingo::b_zoomBox,		-1,0, false },	// D2
 	// Point
 	{ "point",			Lingo::b_point,			2, 2, true },
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 8a5f837..16c7be0 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -53,6 +53,7 @@ TheEntity entities[] = {
 	{ kTheFrame,			"frame",			false },	// D2 f
 	{ kTheFrameLabel,		"frameLabel",		false },	//				D4 p
 	{ kTheFrameScript,		"frameScript",		false },	//				D4 p
+	{ kTheFramePalette,		"framePalette",		false },	//				D4 p
 	{ kTheFreeBlock,		"freeBlock",		false },	// D2 f
 	{ kTheFreeBytes,		"freeBytes",		false },	// D2 f
 	{ kTheFullColorPermit,	"fullColorPermit",	false },	// D2 p
diff --git a/engines/director/lingo/lingo-the.h b/engines/director/lingo/lingo-the.h
index e675a2d..368b4a2 100644
--- a/engines/director/lingo/lingo-the.h
+++ b/engines/director/lingo/lingo-the.h
@@ -50,6 +50,7 @@ enum TheEntityType {
 	kTheFloatPrecision,
 	kTheFrame,
 	kTheFrameLabel,
+	kTheFramePalette,
 	kTheFrameScript,
 	kTheFreeBlock,
 	kTheFreeBytes,


Commit: 0229c95953ea225c3b4304689c69c7f8a218e28e
    https://github.com/scummvm/scummvm/commit/0229c95953ea225c3b4304689c69c7f8a218e28e
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-02-09T20:32:34+01:00

Commit Message:
DIRECTOR: Lingo: Documented D4 "Rectangle and point coordinates" Lingo

Changed paths:
    engines/director/lingo/lingo-builtins.cpp
    engines/director/lingo/lingo-the.cpp
    engines/director/lingo/lingo.h


diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 99af75d..d885272 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -52,7 +52,7 @@ static struct BuiltinProto {
 	{ "hilite",			Lingo::b_hilite,		1, 1, true },	//		D3
 	{ "length",			Lingo::b_length,		1, 1, true },	// D2
 	{ "numToChar",		Lingo::b_numToChar,		1, 1, true },	// D2
-	{ "offset",			Lingo::b_offset,		2, 2, true },	// D2
+	{ "offset",			Lingo::b_offset,		2, 3, true },	// D2
 	{ "string",			Lingo::b_string,		1, 1, true },	// D2
 	{ "value",		 	Lingo::b_value,			1, 1, true },	// D2 f
 	// Lists
@@ -148,7 +148,6 @@ static struct BuiltinProto {
 		// go													// D2
 	{ "importFileInto",	Lingo::b_importFileInto,2, 2, false },	//			D4 c
 	{ "installMenu",	Lingo::b_installMenu,	1, 1, false },	// D2 c
-	{ "intersect",		Lingo::b_intersect,		2, 2, false },	//			D4 f
 	{ "label",			Lingo::b_label,			1, 1, true },	// D2 f
 	{ "marker",			Lingo::b_marker,		1, 1, true },	// D2 f
 	{ "move",			Lingo::b_move,			1, 2, false },	//			D4 c
@@ -167,7 +166,12 @@ static struct BuiltinProto {
 	{ "updateStage",	Lingo::b_updateStage,	0, 0, false },	// D2 c
 	{ "zoomBox",		Lingo::b_zoomBox,		-1,0, false },	// D2
 	// Point
-	{ "point",			Lingo::b_point,			2, 2, true },
+	{ "point",			Lingo::b_point,			2, 2, true },	//			D4 f
+	{ "inside",			Lingo::b_inside,		2, 2, true },	//			D4 f
+	{ "intersect",		Lingo::b_intersect,		2, 2, false },	//			D4 f
+	{ "map",			Lingo::b_map,			3, 3, true },	//			D4 f
+	{ "rect",			Lingo::b_rect,			4, 4, true },	//			D4 f
+	{ "union",			Lingo::b_union,			2, 2, true },	//			D4 f
 	// Sound
 	{ "beep",	 		Lingo::b_beep,			0, 1, false },	// D2
 	{ "mci",	 		Lingo::b_mci,			1, 1, false },
@@ -238,6 +242,7 @@ static const char *builtinFunctions[] = {
 	"getPropAt",
 	"ilk",
 	"inflate",
+	"inside",
 	"integer",
 	"integerp",
 	"intersect",
@@ -245,16 +250,20 @@ static const char *builtinFunctions[] = {
 	"list",
 	"listP",
 	"log",
+	"map",
 	"marker",
 	"max",
 	"min",
 	"objectp",
+	"offset",
 	"param",
 	"pi",
 	"pictureP",
+	"point",
 	"power",
 	"ramNeeded",
 	"random",
+	"rect",
 	"rollOver",
 	"quote",
 	"return",
@@ -555,6 +564,10 @@ void Lingo::b_numToChar(int nargs) {
 }
 
 void Lingo::b_offset(int nargs) {
+	if (nargs == 3) {
+		b_offsetRect(nargs);
+		return;
+	}
 	Datum target = g_lingo->pop();
 	Datum source = g_lingo->pop();
 
@@ -1086,14 +1099,6 @@ void Lingo::b_installMenu(int nargs) {
 	warning("STUB: b_installMenu(%d)", d.u.i);
 }
 
-void Lingo::b_intersect(int nargs) {
-	g_lingo->printSTUBWithArglist("b_intersect", nargs);
-
-	g_lingo->dropStack(nargs);
-
-	g_lingo->push(Datum(0));
-}
-
 void Lingo::b_label(int nargs) {
 	Datum d = g_lingo->pop();
 	d.toInt();
@@ -1252,6 +1257,55 @@ void Lingo::b_point(int nargs) {
 	g_lingo->push(d);
 }
 
+void Lingo::b_rect(int nargs) {
+	g_lingo->printSTUBWithArglist("b_rect", nargs);
+
+	g_lingo->dropStack(nargs);
+
+	g_lingo->push(Datum(0));
+}
+
+
+void Lingo::b_intersect(int nargs) {
+	g_lingo->printSTUBWithArglist("b_intersect", nargs);
+
+	g_lingo->dropStack(nargs);
+
+	g_lingo->push(Datum(0));
+}
+
+void Lingo::b_inside(int nargs) {
+	g_lingo->printSTUBWithArglist("b_inside", nargs);
+
+	g_lingo->dropStack(nargs);
+
+	g_lingo->push(Datum(0));
+}
+
+void Lingo::b_map(int nargs) {
+	g_lingo->printSTUBWithArglist("b_map", nargs);
+
+	g_lingo->dropStack(nargs);
+
+	g_lingo->push(Datum(0));
+}
+
+void Lingo::b_offsetRect(int nargs) {
+	g_lingo->printSTUBWithArglist("b_offsetRect", nargs);
+
+	g_lingo->dropStack(nargs);
+
+	g_lingo->push(Datum(0));
+}
+
+void Lingo::b_union(int nargs) {
+	g_lingo->printSTUBWithArglist("b_union", nargs);
+
+	g_lingo->dropStack(nargs);
+
+	g_lingo->push(Datum(0));
+}
+
 
 ///////////////////
 // Sound
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 16c7be0..5997f5b 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -186,7 +186,7 @@ TheEntityField fields[] = {
 	{ kTheCast,		"modified",		kTheModified },		//				D4 p
 	{ kTheCast,		"name",			kTheName },			//		D3 p
 	{ kTheCast,		"number",		kTheNumber },		//		D3 p
-	{ kTheCast,		"rect",			kTheRect },
+	{ kTheCast,		"rect",			kTheRect },			//				D4 p
 	{ kTheCast,		"purgePriority",kThePurgePriority },//	 			D4 p // 0 Never purge, 1 Purge Last, 2 Purge next, 2 Purge normal
 	{ kTheCast,		"scriptText",	kTheScriptText },	//				D4 p
 	{ kTheCast,		"width",		kTheWidth },		//				D4 p
@@ -232,7 +232,7 @@ TheEntityField fields[] = {
 	{ kTheWindow,	"rect",			kTheRect },			//				D4 p
 	{ kTheWindow,	"title",		kTheTitle },		//				D4 p
 	{ kTheWindow,	"titleVisible",	kTheTitleVisible },	//				D4 p
-	{ kTheWindow,	"sourceRect",	kTheSourceRect },
+	{ kTheWindow,	"sourceRect",	kTheSourceRect },	//				D4 p
 	{ kTheWindow,	"visible",		kTheVisible },		//				D4 p
 	{ kTheWindow,	"windowType",	kTheWindowType },	//				D4 p
 
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 83c34fb..ab9f09b 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -397,7 +397,6 @@ public:
 	static void b_findEmpty(int nargs);
 	static void b_importFileInto(int nargs);
 	static void b_installMenu(int nargs);
-	static void b_intersect(int nargs);
 	static void b_label(int nargs);
 	static void b_marker(int nargs);
 	static void b_move(int nargs);
@@ -447,6 +446,12 @@ public:
 	static void b_xFactoryList(int nargs);
 
 	static void b_point(int nargs);
+	static void b_inside(int nargs);
+	static void b_intersect(int nargs);
+	static void b_map(int nargs);
+	static void b_offsetRect(int nargs);
+	static void b_rect(int nargs);
+	static void b_union(int nargs);
 
 	static void b_close(int nargs);
 	static void b_forget(int nargs);





More information about the Scummvm-git-logs mailing list