From 0470e47145b42a8e9af56c1553bc9944c6096cba Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Wed, 17 Nov 2010 08:30:08 +0000 Subject: SCI: The heap was a separate resource in SCI1.1 - SCI2.1 games only. It was later merged into the script files again in SCI3 svn-id: r54279 --- engines/sci/engine/script.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'engines/sci/engine') diff --git a/engines/sci/engine/script.cpp b/engines/sci/engine/script.cpp index e3d43f4fd2..7133ca0168 100644 --- a/engines/sci/engine/script.cpp +++ b/engines/sci/engine/script.cpp @@ -90,8 +90,8 @@ void Script::init(int script_nr, ResourceManager *resMan) { if (getSciVersion() == SCI_VERSION_0_EARLY) { _bufSize += READ_LE_UINT16(script->data) * 2; - } else if (getSciVersion() >= SCI_VERSION_1_1) { - // In SCI11, the heap was in a separate space from the script. We append + } else if (getSciVersion() >= SCI_VERSION_1_1 && getSciVersion() <= SCI_VERSION_2_1) { + // In SCI1.1 - SCI2.1, the heap was in a separate space from the script. We append // it to the end of the script, and adjust addressing accordingly. // However, since we address the heap with a 16-bit pointer, the // combined size of the stack and the heap must be 64KB. So far this has @@ -129,7 +129,7 @@ void Script::load(ResourceManager *resMan) { // Check scripts for matching signatures and patch those, if found matchSignatureAndPatch(_nr, _buf, script->size); - if (getSciVersion() >= SCI_VERSION_1_1) { + if (getSciVersion() >= SCI_VERSION_1_1 && getSciVersion() <= SCI_VERSION_2_1) { Resource *heap = resMan->findResource(ResourceId(kResourceTypeHeap, _nr), 0); assert(heap != 0); -- cgit v1.2.3