aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/saveload_v6.cpp
diff options
context:
space:
mode:
authorSven Hesse2008-12-28 18:00:19 +0000
committerSven Hesse2008-12-28 18:00:19 +0000
commit017561a2e1da047b94e224e27062219fe7db11bb (patch)
treeddc1ed00b39ad4b1c80409de2dd706e970b83fa3 /engines/gob/saveload_v6.cpp
parentacdd0354b22d8aca7959743575052118e2c486a2 (diff)
downloadscummvm-rg350-017561a2e1da047b94e224e27062219fe7db11bb.tar.gz
scummvm-rg350-017561a2e1da047b94e224e27062219fe7db11bb.tar.bz2
scummvm-rg350-017561a2e1da047b94e224e27062219fe7db11bb.zip
Fixing the save/load list box's width
svn-id: r35591
Diffstat (limited to 'engines/gob/saveload_v6.cpp')
-rw-r--r--engines/gob/saveload_v6.cpp19
1 files changed, 4 insertions, 15 deletions
diff --git a/engines/gob/saveload_v6.cpp b/engines/gob/saveload_v6.cpp
index 694b96f1ec..7396642e33 100644
--- a/engines/gob/saveload_v6.cpp
+++ b/engines/gob/saveload_v6.cpp
@@ -50,7 +50,6 @@ SaveLoad_v6::SaveLoad_v6(GobEngine *vm, const char *targetName) :
sprintf(_saveFiles[0].destName, "%s.s00", targetName);
_varSize = 0;
- _hasIndex = false;
}
SaveLoad_v6::~SaveLoad_v6() {
@@ -145,8 +144,7 @@ int SaveLoad_v6::getSlotRemainder(int32 offset) const {
}
int32 SaveLoad_v6::getSizeGame(SaveFile &saveFile) {
- if (!_hasIndex)
- return -1;
+ refreshIndex();
Common::SaveFileManager *saveMan = g_system->getSavefileManager();
Common::InSaveFile *in;
@@ -178,11 +176,6 @@ bool SaveLoad_v6::loadGame(SaveFile &saveFile,
return false;
}
- if (!_hasIndex) {
- warning("No index written yet");
- return false;
- }
-
refreshIndex();
byte *sizes = new byte[size];
@@ -234,7 +227,6 @@ bool SaveLoad_v6::saveGame(SaveFile &saveFile,
}
_vm->_inter->_variables->copyTo(dataVar, _indexBuffer + offset, 0, size);
- _hasIndex = true;
} else {
int slot = getSlot(offset);
@@ -248,11 +240,6 @@ bool SaveLoad_v6::saveGame(SaveFile &saveFile,
return false;
}
- if (!_hasIndex) {
- warning("No index written yet");
- return false;
- }
-
SaveLoad::setCurrentSlot(saveFile.destName, slot);
byte sizes[40];
@@ -295,7 +282,9 @@ void SaveLoad_v6::refreshIndex() {
memset(names, 0, 40);
}
- WRITE_LE_UINT32(_indexBuffer + 160, max + 1);
+ memset(_indexBuffer + 40, 0xFF, 40); // Joker
+ _indexBuffer[159] = 0x03; // # of joker unused
+ WRITE_LE_UINT32(_indexBuffer + 160, max + 1); // # of saves
}
} // End of namespace Gob