From ee929136835a98a108073965315dd87028ed3f12 Mon Sep 17 00:00:00 2001 From: Arnaud Boutonné Date: Tue, 21 Apr 2009 21:44:37 +0000 Subject: Patch #2725859 : Added some MD5 to the gob engine, modified the way the first STK and TOT is declared, added inter and draw skeleton for Fascination svn-id: r40059 --- engines/gob/dataio.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'engines/gob/dataio.cpp') diff --git a/engines/gob/dataio.cpp b/engines/gob/dataio.cpp index a2bb730870..dbb1e66eb2 100644 --- a/engines/gob/dataio.cpp +++ b/engines/gob/dataio.cpp @@ -370,6 +370,7 @@ void DataIO::openDataFile(const char *src, bool itk) { ChunkDesc *dataDesc; char path[128]; int16 file; + char *fakeTotPtr; strncpy0(path, src, 127); if (!strchr(path, '.')) { @@ -409,6 +410,13 @@ void DataIO::openDataFile(const char *src, bool itk) { Util::replaceChar(dataDesc[i].chunkName, (char) 0x8E, 'O'); Util::replaceChar(dataDesc[i].chunkName, (char) 0x91, 'C'); Util::replaceChar(dataDesc[i].chunkName, (char) 0x92, 'T'); + + // Geisha use 0ot files, which are compressed TOT files without the packed byte set. + fakeTotPtr = strstr(dataDesc[i].chunkName, "0OT"); + if (fakeTotPtr != 0) { + strncpy(fakeTotPtr, "TOT", 3); + dataDesc[i].packed = 1; + } } for (int i = 0; i < _numDataChunks[file]; i++) -- cgit v1.2.3