[Scummvm-git-logs] scummvm master -> 3642054399272a9a038fd166ae0baedf48de0110
sev-
sev at scummvm.org
Sun Feb 5 23:54:56 CET 2017
This automated email contains information about 4 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
b4f736e058 DIRECTOR: Lingo: Documented D4 "Cast members" Lingo
b1503cc1ef DIRECTOR: Lingo: Documented D4 "Cast window management" Lingo
4e9341ef7b DIRECTOR: Lingo: Added tests for new grammar for built-ins
3642054399 DIRECTOR: Lingo: Documented D4 "Code structures" Lingo
Commit: b4f736e0582f15a1a4dad209d4ecdef4914e683a
https://github.com/scummvm/scummvm/commit/b4f736e0582f15a1a4dad209d4ecdef4914e683a
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-02-05T23:44:51+01:00
Commit Message:
DIRECTOR: Lingo: Documented D4 "Cast members" Lingo
Changed paths:
engines/director/lingo/lingo-the.cpp
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 71211e3..8fc9de3 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -147,7 +147,7 @@ TheEntityField fields[] = {
{ kTheSprite, "pattern", kThePattern }, // D2 p
{ kTheSprite, "puppet", kThePuppet }, // D2 p
{ kTheSprite, "right", kTheRight }, // D2 p
- { kTheSprite, "scriptNum", kTheScriptNum },
+ { kTheSprite, "scriptNum", kTheScriptNum }, D4 p
{ kTheSprite, "startTime", kTheStartTime },
{ kTheSprite, "stretch", kTheStrech }, // D2 p
{ kTheSprite, "stopTime", kTheStopTime },
@@ -167,9 +167,9 @@ TheEntityField fields[] = {
{ kTheCast, "name", kTheName }, // D3 p
{ kTheCast, "number", kTheNumber }, // D3 p
{ kTheCast, "rect", kTheRect },
- { kTheCast, "purgePriority",kThePurgePriority }, // 0 Never purge, 1 Purge Last, 2 Purge next, 2 Purge normal
+ { kTheCast, "purgePriority",kThePurgePriority },// D4 p // 0 Never purge, 1 Purge Last, 2 Purge next, 2 Purge normal
{ kTheCast, "scriptText", kTheScriptText },
- { kTheCast, "width", kTheWidth },
+ { kTheCast, "width", kTheWidth }, // D4 p
// Shape fields
{ kTheCast, "backColor", kTheBackColor },
Commit: b1503cc1eff844fdba3b4afd633a6427944a4aeb
https://github.com/scummvm/scummvm/commit/b1503cc1eff844fdba3b4afd633a6427944a4aeb
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-02-05T23:44:51+01:00
Commit Message:
DIRECTOR: Lingo: Documented D4 "Cast window management" 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 a7a0d8b..f7c1abe 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -133,14 +133,18 @@ static struct BuiltinProto {
// Score
{ "constrainH", Lingo::b_constrainH, 2, 2, true }, // D2
{ "constrainV", Lingo::b_constrainV, 2, 2, true }, // D2
- { "duplicate-cast", Lingo::b_duplicateCast, 1, 2, false }, // D4
+ { "duplicate", Lingo::b_duplicate, 1, 2, false }, // D4
{ "editableText", Lingo::b_editableText, 0, 0, false }, // D2
- { "erase-cast", Lingo::b_eraseCast, 1, 2, false }, // D4
+ { "erase", Lingo::b_erase, 1, 1, false }, // D4
+ { "findEmpty", Lingo::b_findEmpty, 1, 1, true }, // D4
// go // D2
+ { "importFileInto", Lingo::b_importFileInto,2, 2, false }, // D4
{ "installMenu", Lingo::b_installMenu, 1, 1, false }, // D2
{ "label", Lingo::b_label, 1, 1, true }, // D2
{ "marker", Lingo::b_marker, 1, 1, true }, // D2
+ { "move", Lingo::b_move, 1, 2, false }, // D4
{ "moveableSprite", Lingo::b_moveableSprite,0, 0, false }, // D2
+ { "pasteClipBoardInto",Lingo::b_pasteClipBoardInto,1, 1, false }, // D4
{ "puppetPalette", Lingo::b_puppetPalette, -1,0, false }, // D2
{ "puppetSound", Lingo::b_puppetSound, -1,0, false }, // D2
{ "puppetSprite", Lingo::b_puppetSprite, -1,0, false }, // D2
@@ -148,6 +152,8 @@ static struct BuiltinProto {
{ "puppetTransition",Lingo::b_puppetTransition,-1,0, false },// D2
{ "rollOver", Lingo::b_rollOver, 1, 1, true }, // D2
{ "spriteBox", Lingo::b_spriteBox, -1,0, false }, // D2
+ { "unLoad", Lingo::b_unLoad, 0, 2, false }, // D4
+ { "unLoadCast", Lingo::b_unLoadCast, 0, 2, false }, // D4
{ "updateStage", Lingo::b_updateStage, 0, 0, false }, // D2
{ "zoomBox", Lingo::b_zoomBox, -1,0, false }, // D2
// Point
@@ -172,6 +178,7 @@ static struct BuiltinProto {
{ "true", Lingo::b_true, 0, 0, false }, // D2
{ "version", Lingo::b_version, 0, 0, false }, // D3
// References
+ { "cast", Lingo::b_cast, 1, 1, false }, // D4
{ "field", Lingo::b_field, 1, 1, false }, // D3
{ "me", Lingo::b_me, -1,0, false }, // D3
@@ -180,8 +187,8 @@ static struct BuiltinProto {
};
static const char *twoWordBuiltins[] = {
- "duplicate",
- "erase",
+ //"duplicate",
+ //"erase",
"sound",
0
};
@@ -888,8 +895,8 @@ void Lingo::b_constrainV(int nargs) {
g_lingo->push(Datum(0));
}
-void Lingo::b_duplicateCast(int nargs) {
- g_lingo->printSTUBWithArglist("b_duplicateCast", nargs);
+void Lingo::b_duplicate(int nargs) {
+ g_lingo->printSTUBWithArglist("b_duplicate", nargs);
g_lingo->dropStack(nargs);
}
@@ -898,8 +905,22 @@ void Lingo::b_editableText(int nargs) {
warning("STUB: b_editableText");
}
-void Lingo::b_eraseCast(int nargs) {
- g_lingo->printSTUBWithArglist("b_eraseCast", nargs);
+void Lingo::b_erase(int nargs) {
+ g_lingo->printSTUBWithArglist("b_erase", nargs);
+
+ g_lingo->dropStack(nargs);
+}
+
+void Lingo::b_findEmpty(int nargs) {
+ g_lingo->printSTUBWithArglist("b_findEmpty", nargs);
+
+ g_lingo->dropStack(nargs);
+
+ g_lingo->push(Datum(0));
+}
+
+void Lingo::b_importFileInto(int nargs) {
+ g_lingo->printSTUBWithArglist("b_importFileInto", nargs);
g_lingo->dropStack(nargs);
}
@@ -924,11 +945,23 @@ void Lingo::b_marker(int nargs) {
g_lingo->push(marker);
}
+void Lingo::b_move(int nargs) {
+ g_lingo->printSTUBWithArglist("b_move", nargs);
+
+ g_lingo->dropStack(nargs);
+}
+
void Lingo::b_moveableSprite(int nargs) {
Datum d = g_lingo->pop();
warning("STUB: b_moveableSprite(%d)", d.u.i);
}
+void Lingo::b_pasteClipBoardInto(int nargs) {
+ g_lingo->printSTUBWithArglist("b_pasteClipBoardInto", nargs);
+
+ g_lingo->dropStack(nargs);
+}
+
void Lingo::b_puppetPalette(int nargs) {
g_lingo->convertVOIDtoString(0, nargs);
@@ -975,6 +1008,18 @@ void Lingo::b_spriteBox(int nargs) {
g_lingo->dropStack(nargs);
}
+void Lingo::b_unLoad(int nargs) {
+ g_lingo->printSTUBWithArglist("b_unLoad", nargs);
+
+ g_lingo->dropStack(nargs);
+}
+
+void Lingo::b_unLoadCast(int nargs) {
+ g_lingo->printSTUBWithArglist("b_unLoadCast", nargs);
+
+ g_lingo->dropStack(nargs);
+}
+
void Lingo::b_zoomBox(int nargs) {
g_lingo->printSTUBWithArglist("b_zoomBox", nargs);
@@ -1154,6 +1199,10 @@ void Lingo::factoryCall(Common::String &name, int nargs) {
///////////////////
// References
///////////////////
+void Lingo::b_cast(int nargs) {
+ warning("STUB: b_cast");
+}
+
void Lingo::b_field(int nargs) {
warning("STUB: b_field");
}
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 8fc9de3..5dea147 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -147,7 +147,7 @@ TheEntityField fields[] = {
{ kTheSprite, "pattern", kThePattern }, // D2 p
{ kTheSprite, "puppet", kThePuppet }, // D2 p
{ kTheSprite, "right", kTheRight }, // D2 p
- { kTheSprite, "scriptNum", kTheScriptNum }, D4 p
+ { kTheSprite, "scriptNum", kTheScriptNum }, // D4 p
{ kTheSprite, "startTime", kTheStartTime },
{ kTheSprite, "stretch", kTheStrech }, // D2 p
{ kTheSprite, "stopTime", kTheStopTime },
@@ -160,15 +160,15 @@ TheEntityField fields[] = {
// Common cast fields
{ kTheCast, "castType", kTheCastType }, // D4 p
- { kTheCast, "filename", kTheFilename },
- { kTheCast, "height", kTheHeight },
- { kTheCast, "loaded", kTheLoaded },
- { kTheCast, "modified", kTheModified },
+ { kTheCast, "filename", kTheFilename }, // D4 p
+ { kTheCast, "height", kTheHeight }, // D4 p
+ { kTheCast, "loaded", kTheLoaded }, // D4 p
+ { kTheCast, "modified", kTheModified }, // D4 p
{ kTheCast, "name", kTheName }, // D3 p
{ kTheCast, "number", kTheNumber }, // D3 p
{ kTheCast, "rect", kTheRect },
{ kTheCast, "purgePriority",kThePurgePriority },// D4 p // 0 Never purge, 1 Purge Last, 2 Purge next, 2 Purge normal
- { kTheCast, "scriptText", kTheScriptText },
+ { kTheCast, "scriptText", kTheScriptText }, // D4 p
{ kTheCast, "width", kTheWidth }, // D4 p
// Shape fields
@@ -186,13 +186,13 @@ TheEntityField fields[] = {
// Bitmap fields
{ kTheCast, "depth", kTheDepth },
- { kTheCast, "regPoint", kTheRegPoint },
- { kTheCast, "palette", kThePalette },
+ { kTheCast, "regPoint", kTheRegPoint }, // D4 p
+ { kTheCast, "palette", kThePalette }, // D4 p
{ kTheCast, "picture", kThePicture }, // D3 p
// TextCast fields
{ kTheCast, "hilite", kTheHilite }, // D2 p
- { kTheCast, "size", kTheSize },
+ { kTheCast, "size", kTheSize }, // D4 p
{ kTheCast, "text", kTheText }, // D2 p
// Field fields
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 0899bac..3c75dd5 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -382,13 +382,17 @@ public:
static void b_constrainH(int nargs);
static void b_constrainV(int nargs);
- static void b_duplicateCast(int nargs);
+ static void b_duplicate(int nargs);
static void b_editableText(int nargs);
- static void b_eraseCast(int nargs);
+ static void b_erase(int nargs);
+ static void b_findEmpty(int nargs);
+ static void b_importFileInto(int nargs);
static void b_installMenu(int nargs);
static void b_label(int nargs);
static void b_marker(int nargs);
+ static void b_move(int nargs);
static void b_moveableSprite(int nargs);
+ static void b_pasteClipBoardInto(int nargs);
static void b_puppetPalette(int nargs);
static void b_puppetSound(int nargs);
static void b_puppetSprite(int nargs);
@@ -396,6 +400,8 @@ public:
static void b_puppetTransition(int nargs);
static void b_rollOver(int nargs);
static void b_spriteBox(int nargs);
+ static void b_unLoad(int nargs);
+ static void b_unLoadCast(int nargs);
static void b_updateStage(int nargs);
static void b_zoomBox(int nargs);
@@ -449,6 +455,7 @@ public:
static void b_factory(int nargs);
void factoryCall(Common::String &name, int nargs);
+ static void b_cast(int nargs);
static void b_field(int nargs);
static void b_me(int nargs);
Commit: 4e9341ef7b105d2c979fcce83507326a062dc255
https://github.com/scummvm/scummvm/commit/4e9341ef7b105d2c979fcce83507326a062dc255
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-02-05T23:44:51+01:00
Commit Message:
DIRECTOR: Lingo: Added tests for new grammar for built-ins
Changed paths:
engines/director/lingo/tests/builtin.lingo
diff --git a/engines/director/lingo/tests/builtin.lingo b/engines/director/lingo/tests/builtin.lingo
index 351efdb..e499a23 100644
--- a/engines/director/lingo/tests/builtin.lingo
+++ b/engines/director/lingo/tests/builtin.lingo
@@ -22,3 +22,9 @@ puppetSprite 15, true
puppetTempo 30
puppetTransition 1
puppetTransition 2,4,20
+
+move cast 1, cast 3
+move cast 3
+put findEmpty(cast 10)
+pasteClipBoardInto cast 2
+put the width of the cast 3
Commit: 3642054399272a9a038fd166ae0baedf48de0110
https://github.com/scummvm/scummvm/commit/3642054399272a9a038fd166ae0baedf48de0110
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-02-05T23:54:31+01:00
Commit Message:
DIRECTOR: Lingo: Documented D4 "Code structures" Lingo
Changed paths:
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo-the.cpp
engines/director/lingo/lingo-the.h
engines/director/lingo/lingo.h
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index f7c1abe..f5abbca 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -98,6 +98,7 @@ static struct BuiltinProto {
{ "dontPassEvent", Lingo::b_dontPassEvent, 0, 0, false }, // D2
{ "delay", Lingo::b_delay, 1, 1, false }, // D2
{ "do", Lingo::b_do, 1, 1, false }, // D2
+ { "halt", Lingo::b_halt, 0, 0, false }, // D4
{ "nothing", Lingo::b_nothing, 0, 0, false }, // D2
{ "pause", Lingo::b_pause, 0, 0, false }, // D2
// play // D2
@@ -715,6 +716,12 @@ void Lingo::b_do(int nargs) {
warning("STUB: b_do(%s)", d.u.s->c_str());
}
+void Lingo::b_halt(int nargs) {
+ b_quit(nargs);
+
+ warning("Movie halted");
+}
+
void Lingo::b_pause(int nargs) {
g_director->_playbackPaused = true;
@@ -769,19 +776,13 @@ void Lingo::b_quit(int nargs) {
}
void Lingo::b_restart(int nargs) {
- if (g_director->_currentScore)
- g_director->_currentScore->_stopPlay = true;
-
- g_lingo->pushVoid();
+ b_quit(nargs);
warning("Computer restarts");
}
void Lingo::b_shutDown(int nargs) {
- if (g_director->_currentScore)
- g_director->_currentScore->_stopPlay = true;
-
- g_lingo->pushVoid();
+ b_quit(nargs);
warning("Computer shuts down");
}
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 5dea147..d606b76 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -120,6 +120,9 @@ TheEntity entities[] = {
{ kTheTimeoutScript, "timeoutScript", false }, // D2 p
{ kTheTime, "time", false }, // D3 f
{ kTheTimer, "timer", false }, // D2 p
+ { kTheTrace, "trace", false }, // D4 p
+ { kTheTraceLoad, "traceLoad", false }, // D4 p
+ { kTheTraceLogFile, "traceLogFile", false }, // D4 p
{ kTheWindow, "window", false },
{ kTheWords, "words", false }, // D3
{ kTheNOEntity, NULL, false }
diff --git a/engines/director/lingo/lingo-the.h b/engines/director/lingo/lingo-the.h
index 8cec0ce..be501ba 100644
--- a/engines/director/lingo/lingo-the.h
+++ b/engines/director/lingo/lingo-the.h
@@ -118,6 +118,9 @@ enum TheEntityType {
kTheTimeoutPlay,
kTheTimeoutScript,
kTheTimer,
+ kTheTrace,
+ kTheTraceLoad,
+ kTheTraceLogFile,
kTheWindow,
kTheWords
};
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 3c75dd5..b327853 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -410,6 +410,7 @@ public:
static void b_dontPassEvent(int nargs);
static void b_delay(int nargs);
static void b_do(int nargs);
+ static void b_halt(int nargs);
static void b_nothing(int nargs);
static void b_pause(int nargs);
static void b_playAccel(int nargs);
More information about the Scummvm-git-logs
mailing list