From 0f3ebbd3b371a900ce8d2d48d4f4b5eb68672933 Mon Sep 17 00:00:00 2001 From: Nicola Mettifogo Date: Mon, 19 Feb 2007 13:07:18 +0000 Subject: table routines merged with common engine code svn-id: r25721 --- engines/parallaction/parallaction.cpp | 61 ++++++++++++++++++++++ engines/parallaction/table.cpp | 97 ----------------------------------- 2 files changed, 61 insertions(+), 97 deletions(-) delete mode 100644 engines/parallaction/table.cpp (limited to 'engines') diff --git a/engines/parallaction/parallaction.cpp b/engines/parallaction/parallaction.cpp index 0f83cd1900..30c71c555b 100644 --- a/engines/parallaction/parallaction.cpp +++ b/engines/parallaction/parallaction.cpp @@ -22,6 +22,7 @@ #include "parallaction/parallaction.h" #include "parallaction/menu.h" +#include "parallaction/parser.h" #include "parallaction/disk.h" #include "parallaction/music.h" #include "parallaction/inventory.h" @@ -1006,4 +1007,64 @@ void jobWaitRemoveJob(void *parm, Job *j) { } +void Parallaction::initTable(const char *path, char** table) { +// printf("initTable(%s)\n", path); + + Common::File stream; + + if (!stream.open(path)) + errorFileNotFound(path); + + uint16 count = 0; + + tableFillBuffers(stream); + + while (scumm_stricmp(_tokens[0], "ENDTABLE")) { + + table[count] = (char*)memAlloc(strlen(_tokens[0])+1); + strcpy(table[count], _tokens[0]); + + count++; + tableFillBuffers(stream); + } + + table[count] = NULL; + + stream.close(); + + return; + +} + +void Parallaction::freeTable(char** table) { + + uint16 count = 0; + + while (table[count]) { + + memFree(table[count]); + table[count] = NULL; + + count++; + } + + return; + +} + +int16 Parallaction::searchTable(const char *s, const char **table) { + + int16 count = 0; + + if (!s) return 0; + + while (table[count]) { + if (!scumm_stricmp(table[count], s)) return count + 1; + count++; + } + + return -1; +} + + } // namespace Parallaction diff --git a/engines/parallaction/table.cpp b/engines/parallaction/table.cpp deleted file mode 100644 index 8d184410bb..0000000000 --- a/engines/parallaction/table.cpp +++ /dev/null @@ -1,97 +0,0 @@ -/* ScummVM - Scumm Interpreter - * Copyright (C) 2006 The ScummVM project - * - * 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 "parallaction/parallaction.h" -#include "parallaction/parser.h" -#include "parallaction/disk.h" - - -namespace Parallaction { - - - - - -void Parallaction::initTable(const char *path, char** table) { -// printf("initTable(%s)\n", path); - - Common::File stream; - - if (!stream.open(path)) - errorFileNotFound(path); - - uint16 count = 0; - - tableFillBuffers(stream); - - while (scumm_stricmp(_tokens[0], "ENDTABLE")) { - - table[count] = (char*)memAlloc(strlen(_tokens[0])+1); - strcpy(table[count], _tokens[0]); - - count++; - tableFillBuffers(stream); - } - - table[count] = NULL; - - stream.close(); - - return; - -} - -void Parallaction::freeTable(char** table) { - - uint16 count = 0; - - while (table[count]) { - - memFree(table[count]); - table[count] = NULL; - - count++; - } - - return; - -} - -int16 Parallaction::searchTable(const char *s, const char **table) { - - int16 count = 0; - - if (!s) return 0; - - while (table[count]) { - if (!scumm_stricmp(table[count], s)) return count + 1; - count++; - } - - return -1; -} - - - -} // namespace Parallaction - -- cgit v1.2.3