aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/save/saveconverter_v6.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/gob/save/saveconverter_v6.cpp')
-rw-r--r--engines/gob/save/saveconverter_v6.cpp135
1 files changed, 0 insertions, 135 deletions
diff --git a/engines/gob/save/saveconverter_v6.cpp b/engines/gob/save/saveconverter_v6.cpp
deleted file mode 100644
index a768ac5c67..0000000000
--- a/engines/gob/save/saveconverter_v6.cpp
+++ /dev/null
@@ -1,135 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * 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/endian.h"
-#include "common/savefile.h"
-
-#include "gob/gob.h"
-#include "gob/save/saveconverter.h"
-#include "gob/save/savefile.h"
-#include "gob/save/savehandler.h"
-
-namespace Gob {
-
-SaveConverter_v6::SaveConverter_v6(GobEngine *vm, const Common::String &fileName) :
- SaveConverter(vm, fileName) {
-}
-
-SaveConverter_v6::~SaveConverter_v6() {
-}
-
-int SaveConverter_v6::isOldSave(Common::InSaveFile **save) const {
- uint32 varSize = SaveHandler::getVarSize(_vm);
- if (varSize == 0)
- return 0;
-
- uint32 saveSize = getActualSize(save);
- if (saveSize == 0)
- return 0;
-
- // The size of the old save always follows that rule
- if (saveSize == (varSize * 2 + kSlotNameLength * 2))
- return 1;
-
- // Not an old save, clean up
- if (save) {
- delete *save;
- *save = 0;
- }
-
- return 0;
-}
-
-char *SaveConverter_v6::getDescription(Common::SeekableReadStream &save) const {
- char *desc = new char[kSlotNameLength];
-
- // Read the description
- if (save.read(desc, kSlotNameLength) != kSlotNameLength) {
- delete[] desc;
- return 0;
- }
-
- return desc;
-}
-
-bool SaveConverter_v6::loadFail(SavePartInfo *info, SavePartVars *vars,
- Common::InSaveFile *save) {
-
- delete info;
- delete vars;
- delete save;
-
- clear();
-
- return false;
-}
-
-// Loads the old save by constructing a new save containing the old save's data
-bool SaveConverter_v6::load() {
- clear();
-
- uint32 varSize = SaveHandler::getVarSize(_vm);
- if (varSize == 0)
- return false;
-
- Common::InSaveFile *save;
-
- // Test if it's an old savd
- if (!isOldSave(&save) || !save)
- return false;
-
- displayWarning();
-
- SaveWriter writer(2, 0);
-
- SavePartInfo *info = readInfo(*save, kSlotNameLength);
- if (!info)
- return loadFail(0, 0, save);
-
- SavePartVars *vars = readVars(*save, varSize, true);
- if (!vars)
- return loadFail(info, 0, save);
-
- // We don't need the save anymore
- delete save;
-
- // Write all parts
- if (!writer.writePart(0, info))
- return loadFail(info, vars, 0);
- if (!writer.writePart(1, vars))
- return loadFail(info, vars, 0);
-
- // We don't need those anymore
- delete info;
- delete vars;
-
- // Create the final read stream
- if (!createStream(writer))
- return loadFail(0, 0, 0);
-
- return true;
-}
-
-} // End of namespace Gob