42
edits
(The director buildbot was moved to a new location.) |
(Add information about compiling director with `--enable-asan`. The buildbot will error when finding a memory leak.) |
||
(12 intermediate revisions by 10 users not shown) | |||
Line 1: | Line 1: | ||
{{EngineDescription| | {{EngineDescription| | ||
name=director| | name=director| | ||
developer=[[User:sev|sev]], [[User:iskrich|iskrich]], [[User:djsrv|djsrv]], [[User:npjg|npjg]]| | developer=[[User:sev|sev]], [[User:iskrich|iskrich]], [[User:djsrv|djsrv]], [[User:npjg|npjg]], [[User:Mstea|mstea]]| | ||
companies=[[Macromedia]]| | companies=[[Macromedia]]| | ||
usedBy=hundreds of games| | usedBy=[[Director/Games|hundreds of games]]| | ||
dateAdded=August 4, 2016 | | dateAdded=August 4, 2016 | | ||
release=| | release=2.5.0| | ||
}} | }} | ||
The Macromedia Director engine was partially implemented by [[User:iskrich|iskrich]] for the [[Summer of Code|Google Summer of Code]] in [[Summer of Code/GSoC2016|2016]] and was further implemented by the Google Summer of Code students [[User:djsrv|djsrv]] and [[User:npjg|npjg]] in [[Summer of Code/GSoC2020|2020]]. | The Macromedia Director engine was partially implemented by [[User:iskrich|iskrich]] for the [[Summer of Code|Google Summer of Code]] in [[Summer of Code/GSoC2016|2016]] and was further implemented by the Google Summer of Code students [[User:djsrv|djsrv]] and [[User:npjg|npjg]] in [[Summer of Code/GSoC2020|2020]] and the Google Summer of Code students djsrv and [[User:sheep|sheep]] in [[Summer of Code/GSoC2021|2021]]. | ||
== Introduction == | == Introduction == | ||
Started out as MacroMind VideoWorks. MacroMind was founded by Marc Canter. The name VideoWorks was changed to Director in 1987. | |||
Director underwent huge number of versions. | Director underwent huge number of versions. | ||
Line 23: | Line 25: | ||
== Versions == | == Versions == | ||
See [[Director/Versions]] | |||
== File Format == | == File Format == | ||
Line 78: | Line 80: | ||
* bytecode -- execute precompiled bytecode instead of compiling Lingo. Lingo Workshop movies have both bytecode and script texts | * bytecode -- execute precompiled bytecode instead of compiling Lingo. Lingo Workshop movies have both bytecode and script texts | ||
* loading -- produces tons of deciphered data from movie files. | * loading -- produces tons of deciphered data from movie files. | ||
=== Compilation === | |||
We aim for 0 memory leaks in the director engine. The automated tests will error when it detects a memory leak. To enable memory leak checks run `./configure` with `--enable-asan`. | |||
=== Automated Tests === | === Automated Tests === | ||
Line 86: | Line 91: | ||
=== Is my game a Director Game and which version is it? === | === Is my game a Director Game and which version is it? === | ||
Run the following command in the | Run the following command in the directory of your installed gamedata: | ||
grep --text -ir director|strings |egrep 'Macromedia Director [0-9]' | grep --text -ir director|strings |egrep 'Macromedia Director [0-9]' | ||
This will show which version of Macromedia Director was used. If this yields nothing, it probably isn't a Macromedia director game. | This will show which version of Macromedia Director was used. If this yields nothing, it probably isn't a Macromedia director game. | ||
== Debugger Commands == | |||
To open the [[Debugging ScummVM|interactive debugger console]] press the key combination that is set for "Open Debugger" in the "Keymaps" tab from ScummVM options (default should be Ctrl+Alt+d). | |||
=== lingo === | |||
Opens a lingo language shell. | |||
) lingo on | |||
lingo) set a to "Hello ScummVM" | |||
lingo) put a | |||
-- "Hello ScummVM | |||
lingo) lingo off | |||
) | |||
Arguments: | |||
* lingo on - Start the interactive lingo shell | |||
* lingo off - Stop the interactive lingo shell | |||
When the shell is on when the line starts with `lingo) `. | |||
Line 98: | Line 121: | ||
* [https://github.com/scummvm-director/scummvm/tree/director another clone of it] | * [https://github.com/scummvm-director/scummvm/tree/director another clone of it] | ||
* [https://en.wikipedia.org/wiki/Adobe_Director Wikipedia article on the topic] | * [https://en.wikipedia.org/wiki/Adobe_Director Wikipedia article on the topic] | ||
* [https://www.mistys-internet.website/blog/blog/2022/01/06/do-you-speak-the-lingo/ Do You Speak the Lingo?] - blog post by Misty De Meo about the ScummVM engine's development | |||
[[Category:Engines]] | [[Category:Engines]] |
edits