aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorEugene Sandulenko2017-02-08 19:43:46 +0100
committerEugene Sandulenko2017-02-08 20:32:53 +0100
commit03e7c3ca60c60e0001772550b97946f8a10db34c (patch)
tree57a3dabe4ae2e3e5695b17aaafc629304186a8c9 /engines
parentf1d9955540076e044905afb3fd6dbc03034aacd3 (diff)
downloadscummvm-rg350-03e7c3ca60c60e0001772550b97946f8a10db34c.tar.gz
scummvm-rg350-03e7c3ca60c60e0001772550b97946f8a10db34c.tar.bz2
scummvm-rg350-03e7c3ca60c60e0001772550b97946f8a10db34c.zip
DIRECTOR: Lingo: Documented D4 "Operators and math functions" Lingo
Diffstat (limited to 'engines')
-rw-r--r--engines/director/lingo/lingo-builtins.cpp44
-rw-r--r--engines/director/lingo/lingo-the.cpp2
-rw-r--r--engines/director/lingo/lingo-the.h2
3 files changed, 33 insertions, 15 deletions
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 2005aa11a2..101e0fb299 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -32,19 +32,19 @@ static struct BuiltinProto {
bool parens;
} builtins[] = {
// Math
- { "abs", Lingo::b_abs, 1, 1, true }, // D2
- { "atan", Lingo::b_atan, 1, 1, true }, // D4
- { "cos", Lingo::b_cos, 1, 1, true }, // D4
- { "exp", Lingo::b_exp, 1, 1, true }, // D4
- { "float", Lingo::b_float, 1, 1, true }, // D4
- { "integer", Lingo::b_integer, 1, 1, true },
- { "log", Lingo::b_log, 1, 1, true }, // D4
- { "pi", Lingo::b_pi, 0, 0, true }, // D4
- { "power", Lingo::b_power, 2, 2, true }, // D4
- { "random", Lingo::b_random, 1, 1, true }, // D2
- { "sin", Lingo::b_sin, 1, 1, true },
- { "sqrt", Lingo::b_sqrt, 1, 1, true }, // D2
- { "tan", Lingo::b_tan, 1, 1, true }, // D4
+ { "abs", Lingo::b_abs, 1, 1, true }, // D2 function
+ { "atan", Lingo::b_atan, 1, 1, true }, // D4 function
+ { "cos", Lingo::b_cos, 1, 1, true }, // D4 function
+ { "exp", Lingo::b_exp, 1, 1, true }, // D4 function
+ { "float", Lingo::b_float, 1, 1, true }, // D4 function
+ { "integer", Lingo::b_integer, 1, 1, true }, // D3 f
+ { "log", Lingo::b_log, 1, 1, true }, // D4 f
+ { "pi", Lingo::b_pi, 0, 0, true }, // D4 f
+ { "power", Lingo::b_power, 2, 2, true }, // D4 f
+ { "random", Lingo::b_random, 1, 1, true }, // D2 f
+ { "sin", Lingo::b_sin, 1, 1, true }, // D4 f
+ { "sqrt", Lingo::b_sqrt, 1, 1, true }, // D2 f
+ { "tan", Lingo::b_tan, 1, 1, true }, // D4 f
// String
{ "chars", Lingo::b_chars, 3, 3, true }, // D2
{ "charToNum", Lingo::b_charToNum, 1, 1, true }, // D2
@@ -54,13 +54,13 @@ static struct BuiltinProto {
{ "numToChar", Lingo::b_numToChar, 1, 1, true }, // D2
{ "offset", Lingo::b_offset, 2, 2, true }, // D2
{ "string", Lingo::b_string, 1, 1, true }, // D2
- { "value", Lingo::b_value, 1, 1, true }, // D2
+ { "value", Lingo::b_value, 1, 1, true }, // D2 f
// Lists
{ "add", Lingo::b_add, 2, 2, false }, // D4 command
{ "addAt", Lingo::b_addAt, 3, 3, false }, // D4 c
{ "addProp", Lingo::b_addProp, 3, 3, false }, // D4 c
{ "append", Lingo::b_append, 2, 2, false }, // D4 c
- { "count", Lingo::b_count, 1, 1, true }, // D4 function
+ { "count", Lingo::b_count, 1, 1, true }, // D4 f
{ "deleteAt", Lingo::b_deleteAt, 2, 2, false }, // D4 c
{ "deleteProp", Lingo::b_deleteProp, 2, 2, false }, // D4 c
{ "findPos", Lingo::b_findPos, 2, 2, true }, // D4 f
@@ -208,16 +208,21 @@ static const char *twoWordBuiltins[] = {
};
static const char *builtinFunctions[] = {
+ "abs",
+ "atan",
"backspace",
"cast",
+ "cos",
"count",
"empty",
"enter",
+ "exp",
"false",
"field",
"findEmpty",
"findPos",
"findPosNear",
+ "float",
"getaProp",
"getAt",
"getLast",
@@ -228,22 +233,31 @@ static const char *builtinFunctions[] = {
"getPropAt",
"ilk",
"inflate",
+ "integer",
"integerp",
"intersect",
"list",
"listP",
+ "log",
"max",
"min",
"objectp",
+ "pi",
"pictureP",
+ "power",
+ "random",
"rollOver",
"quote",
"return",
+ "sin",
+ "sqrt",
"soundBusy",
"stringp",
"symbolp",
"tab",
+ "tan",
"true",
+ "value",
"version",
"window",
"xFactoryList",
diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp
index ec94d066f3..35a5707a52 100644
--- a/engines/director/lingo/lingo-the.cpp
+++ b/engines/director/lingo/lingo-the.cpp
@@ -70,6 +70,7 @@ TheEntity entities[] = {
{ kTheLastRoll, "lastRoll", false }, // D2 f
{ kTheLines, "lines", false }, // D3
{ kTheMachineType, "machineType", false }, // D2 f
+ { kTheMaxInteger, "maxInteger", false }, // D4 f
{ kTheMemorySize, "memorySize", false }, // D2 f
{ kTheMenu, "menu", true },
{ kTheMenus, "menus", false },
@@ -100,6 +101,7 @@ TheEntity entities[] = {
{ kThePreloadEventAbort,"preloadEventAbort",false },
{ kThePreLoadRAM, "preLoadRAM", false }, // D4 p
{ kTheQuickTimePresent, "quickTimePresent", false }, // D4 f
+ { kTheRandomSeed, "randomSeed", false }, // D4 p
{ kTheResult, "result", false }, // D2 f
{ kTheRightMouseDown, "rightMouseDown", false },
{ kTheRightMouseUp, "rightMouseUp", false },
diff --git a/engines/director/lingo/lingo-the.h b/engines/director/lingo/lingo-the.h
index 24f5e266a3..994fcc9e80 100644
--- a/engines/director/lingo/lingo-the.h
+++ b/engines/director/lingo/lingo-the.h
@@ -68,6 +68,7 @@ enum TheEntityType {
kTheLastRoll,
kTheLines,
kTheMachineType,
+ kTheMaxInteger,
kTheMemorySize,
kTheMenu,
kTheMenuItem,
@@ -98,6 +99,7 @@ enum TheEntityType {
kThePreloadEventAbort,
kThePreLoadRAM,
kTheQuickTimePresent,
+ kTheRandomSeed,
kTheResult,
kTheRightMouseDown,
kTheRightMouseUp,