aboutsummaryrefslogtreecommitdiff
path: root/engines/cine/resource.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/cine/resource.cpp')
-rw-r--r--engines/cine/resource.cpp126
1 files changed, 0 insertions, 126 deletions
diff --git a/engines/cine/resource.cpp b/engines/cine/resource.cpp
deleted file mode 100644
index fb5fcfb94e..0000000000
--- a/engines/cine/resource.cpp
+++ /dev/null
@@ -1,126 +0,0 @@
-/* ScummVM - Scumm Interpreter
- * Copyright (C) 2006 The ScummVM project
- *
- * cinE Engine is (C) 2004-2005 by CinE Team
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
-
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
-
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- * $URL$
- * $Id$
- *
- */
-
-#include "common/file.h"
-
-#include "cine/cine.h"
-#include "cine/resource.h"
-#include "cine/unpack.h"
-#include "cine/various.h"
-
-namespace Cine {
-
-void checkDataDisk(int16 param) {
-}
-
-/* FW specific */
-static Common::File *snd_baseSndFile = NULL;
-static uint16 snd_numBasesonEntries = 0;
-static BasesonEntry *snd_basesonEntries = NULL;
-
-int snd_loadBasesonEntries(const char *fileName) {
- int i;
-
- snd_baseSndFile = new Common::File();
- snd_baseSndFile->open(fileName);
- if (!snd_baseSndFile->isOpen())
- return -1;
-
- snd_numBasesonEntries = snd_baseSndFile->readUint16BE();
- snd_baseSndFile->readUint16BE(); /* entry_size */
- snd_basesonEntries = (BasesonEntry *)malloc(snd_numBasesonEntries * sizeof(BasesonEntry));
- if (snd_basesonEntries) {
- for (i = 0; i < snd_numBasesonEntries; ++i) {
- BasesonEntry *be = &snd_basesonEntries[i];
- snd_baseSndFile->read(be->name, 14);
- be->offset = snd_baseSndFile->readUint32BE();
- be->size = snd_baseSndFile->readUint32BE();
- be->unpackedSize = snd_baseSndFile->readUint32BE();
- snd_baseSndFile->readUint32BE(); /* unused */
- }
- }
- return 0;
-}
-
-void snd_clearBasesonEntries() {
- snd_baseSndFile->close();
- delete snd_baseSndFile;
- free(snd_basesonEntries);
- snd_basesonEntries = NULL;
- snd_numBasesonEntries = 0;
-}
-
-static int snd_findBasesonEntry(const char *entryName) {
- int i;
- char *p;
- char basesonEntryName[20];
-
- assert(strlen(entryName) < 20);
- strcpy(basesonEntryName, entryName);
- for (p = basesonEntryName; *p; ++p) {
- if (*p >= 'a' && *p <= 'z')
- *p += 'A' - 'a';
- }
-
- for (i = 0; i < snd_numBasesonEntries; ++i) {
- if (strcmp(snd_basesonEntries[i].name, basesonEntryName) == 0)
- return i;
- }
- return -1;
-}
-
-byte *snd_loadBasesonEntry(const char *entryName) {
- int entryNum;
- byte *entryData = NULL;
-
- if (g_cine->getGameType() == Cine::GType_OS) {
- entryNum = findFileInBundle((const char *)entryName);
- if (entryNum != -1)
- entryData = readBundleFile(entryNum);
- } else {
- entryNum = snd_findBasesonEntry(entryName);
- if (entryNum != -1 && entryNum < snd_numBasesonEntries) {
- const BasesonEntry *be = &snd_basesonEntries[entryNum];
- entryData = (byte *)malloc(be->unpackedSize);
- if (entryData) {
- if (be->unpackedSize > be->size) {
- byte *tempData = (byte *)malloc(be->size);
- if (tempData) {
- snd_baseSndFile->seek(be->offset, SEEK_SET);
- snd_baseSndFile->read(tempData, be->size);
- delphineUnpack(entryData, tempData, be->size);
- free(tempData);
- }
- } else {
- snd_baseSndFile->seek(be->offset, SEEK_SET);
- snd_baseSndFile->read(entryData, be->size);
- }
- }
- }
- }
-
- return entryData;
-}
-
-} // End of namespace Cine