[Scummvm-git-logs] scummvm master -> f2bad1d9b8493e4d3855d4575be8ad4fe7c7bfef
sev-
noreply at scummvm.org
Fri Oct 3 23:34:55 UTC 2025
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://api.github.com/repos/scummvm/scummvm .
Summary:
f2bad1d9b8 DIRECTOR: Finished documenting D5 keywords
Commit: f2bad1d9b8493e4d3855d4575be8ad4fe7c7bfef
https://github.com/scummvm/scummvm/commit/f2bad1d9b8493e4d3855d4575be8ad4fe7c7bfef
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2025-10-04T01:34:22+02:00
Commit Message:
DIRECTOR: Finished documenting D5 keywords
Changed paths:
R engines/director/lingo/docs/d4-d5.txt
engines/director/castmember/text.cpp
engines/director/lingo/lingo-builtins.cpp
engines/director/lingo/lingo-events.cpp
engines/director/lingo/lingo-gr.y
engines/director/lingo/lingo-object.cpp
engines/director/lingo/lingo-the.cpp
engines/director/lingo/lingo-the.h
engines/director/types.h
diff --git a/engines/director/castmember/text.cpp b/engines/director/castmember/text.cpp
index f398a895a61..7319f18b863 100644
--- a/engines/director/castmember/text.cpp
+++ b/engines/director/castmember/text.cpp
@@ -828,6 +828,7 @@ void TextCastMember::setField(int field, const Datum &d) {
warning("STUB: TextCastMember::setField(): boxDropShadow not implemented");
return;
case kTheBoxType:
+ // The possible values are #adjust, #scroll, #fixed, and #limit.
warning("STUB: TextCastMember::setField(): boxType not implemented");
return;
case kTheDropShadow:
diff --git a/engines/director/lingo/docs/d4-d5.txt b/engines/director/lingo/docs/d4-d5.txt
deleted file mode 100644
index b3bb4558a9b..00000000000
--- a/engines/director/lingo/docs/d4-d5.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-adjust
-antiAlias
-appFileSpec
-case
-editFocusSprite
-fileType
-fixed
-interface
-is
-limit
-maskMember
-members
-messageLock
-mOpenEditor
-mouseDoubleClick
-mouseEnter
-mouseHitTest
-mouseSprite
-mouseStillDown
-mouseWithin
-music
-otherwise
-parent
-productName
-productVersion
-quickTime
-scroll
-setTrackEnabled
-textWrap
-timeCode
-track
-tracks
-vga
-videoForWindows
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 6dd55d0d070..8f500af981d 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -406,6 +406,9 @@ static const BuiltinProto builtins[] = {
tempo // D5
transition // D5
+ Host Info:
+ appFileSpec // D5
+
Types:
bitmap
button
@@ -4078,6 +4081,8 @@ void LB::b_trackStopTime(int nargs) {
void LB::b_trackType(int nargs) {
g_lingo->printSTUBWithArglist("b_trackType", nargs);
g_lingo->dropStack(nargs);
+ // Possible values are #video, #sound, #text, and #music
+ // also #timeCode is present but seemingly not used
Datum result("video");
result.type = SYMBOL;
g_lingo->push(result);
diff --git a/engines/director/lingo/lingo-events.cpp b/engines/director/lingo/lingo-events.cpp
index bc6874e757c..8fbed3354f4 100644
--- a/engines/director/lingo/lingo-events.cpp
+++ b/engines/director/lingo/lingo-events.cpp
@@ -69,10 +69,10 @@ struct EventHandlerType {
{ kEventMouseDown, "mouseDown" }, // D2 w D3
{ kEventRightMouseDown, "rightMouseDown" }, // D5
{ kEventRightMouseUp, "rightMouseUp" }, // D5
- { kEventMouseEnter, "mouseEnter" }, // D6
+ { kEventMouseEnter, "mouseEnter" }, // D6, present in D5
{ kEventMouseLeave, "mouseLeave" }, // D6
{ kEventMouseUpOutSide, "mouseUpOutSide" }, // D6
- { kEventMouseWithin, "mouseWithin" }, // D6
+ { kEventMouseWithin, "mouseWithin" }, // D6, present in D5
{ kEventTimeout, "timeout" }, // D2 as when
diff --git a/engines/director/lingo/lingo-gr.y b/engines/director/lingo/lingo-gr.y
index 3c89a2400f7..fc23083a5df 100644
--- a/engines/director/lingo/lingo-gr.y
+++ b/engines/director/lingo/lingo-gr.y
@@ -149,6 +149,9 @@ static void checkEnd(Common::String *token, Common::String *expect, bool require
%token tON tMETHOD tENDIF tENDREPEAT tENDTELL
%token tASSERTERROR
+// D5
+// %token tCASE tOTHERWISE
+
%type<w> tWHEN
// TOP-LEVEL STUFF
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index 75fc767fe86..bbc809a4da1 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -919,6 +919,7 @@ void LM::m_moveToFront(int nargs) {
hitTest
ilk
mouseDown
+ mouseHitTest
mouseTrack
mouseUp
setAProp
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index 535ac919395..19edc6ea499 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -242,6 +242,7 @@ const TheEntityField fields[] = {
{ kTheCastLib, "selection", kTheSelectionField,500 },// D5 p
// Common cast fields
+ { kTheCast, "antiAlias", kTheAntiAlias, 500 },// D5 p (?), documented in D7
{ kTheCast, "backColor", kTheBackColor, 400 },// D4 p
{ kTheCast, "castLibNum", kTheCastLibNum, 500 },// D5 p
{ kTheCast, "castType", kTheCastType, 400 },// D4 p
@@ -274,6 +275,7 @@ const TheEntityField fields[] = {
{ kTheSprite, "movieTime", kTheMovieTime, 300 },// D3.1 P
{ kTheCast, "pausedAtStart",kThePausedAtStart,400 },// D4 p
{ kTheCast, "preLoad", kThePreLoad, 300 },// D3.1 p
+ { kTheSprite, "setTrackEnabled",kTheSetTrackEnabled, 500 },// D5 p
{ kTheCast, "sound", kTheSound, 300 },// D3.1 p // 0-1 off-on
{ kTheSprite, "startTime", kTheStartTime, 300 },// D3.1 p
{ kTheSprite, "stopTime", kTheStopTime, 300 },// D3.1 p
@@ -286,6 +288,8 @@ const TheEntityField fields[] = {
{ kTheSprite, "trackText", kTheTrackText, 500 },// D5 p
{ kTheCast, "video", kTheVideo, 400 },// D4 p
{ kTheSprite, "volume", kTheVolume, 300 },// D3.1 p
+ // track, scontains track type, seems to be unused
+ // tracks, number of track, seems to be unused
// Movie fields
{ kTheCast, "paletteMapping", kThePaletteMapping, 500 },// D5 p
@@ -347,6 +351,9 @@ const TheEntityField fields[] = {
{ kTheCast, "chunkSize", kTheChunkSize, 500 },// D5 p
{ kTheCast, "transitionType",kTheTransitionType,500 },// D5 p
+ // XtrsaCastMember fields
+ { kTheCast, "interface", kTheInterface, 500 },// D5 p
+
// Field fields
{ kTheField, "alignment", kTheTextAlign, 500 },// D5 p
{ kTheField, "font", kTheTextFont, 500 },// D5 p
diff --git a/engines/director/lingo/lingo-the.h b/engines/director/lingo/lingo-the.h
index e4941d59a33..ae1b3f57675 100644
--- a/engines/director/lingo/lingo-the.h
+++ b/engines/director/lingo/lingo-the.h
@@ -142,6 +142,7 @@ enum TheEntityType {
kTheSelEnd,
kTheSelStart,
kTheSerialNumber,
+ kTheSetTrackEnabled,
kTheShiftDown,
kTheSoundEntity,
kTheSoundEnabled,
@@ -181,6 +182,7 @@ enum TheEntityType {
enum TheFieldType {
kTheNOField = 0,
kTheAbbr = 1,
+ kTheAntiAlias,
kTheAutoTab,
kTheBackColor,
kTheBlend,
@@ -221,6 +223,7 @@ enum TheFieldType {
kTheHilite,
kTheImmediate,
kTheInk,
+ kTheInterface,
kTheLast,
kTheLeft,
kTheLineCount,
diff --git a/engines/director/types.h b/engines/director/types.h
index 66fc029c7f3..2c9405c4cc3 100644
--- a/engines/director/types.h
+++ b/engines/director/types.h
@@ -308,6 +308,8 @@ enum PaletteType {
kClutVivid = -5,
kClutNTSC = -6,
kClutMetallic = -7,
+ kClutWeb216 = -8, // D7
+ kClutVGA = -9, // D7
kClutSystemWin = -101,
kClutSystemWinD5 = -102
};
More information about the Scummvm-git-logs
mailing list