diff options
author | Jonathan Gray | 2003-08-28 14:25:29 +0000 |
---|---|---|
committer | Jonathan Gray | 2003-08-28 14:25:29 +0000 |
commit | 62f94f15be6ac784374b771c1324b85b331906f9 (patch) | |
tree | 3bafafd92a100d46712fa07796b0daf4eedf2bd5 /scumm | |
parent | 259fb4245982bc3f50454e19533f9afcf45fab55 (diff) | |
download | scummvm-rg350-62f94f15be6ac784374b771c1324b85b331906f9.tar.gz scummvm-rg350-62f94f15be6ac784374b771c1324b85b331906f9.tar.bz2 scummvm-rg350-62f94f15be6ac784374b771c1324b85b331906f9.zip |
clean up humongous v7 index file block handling
svn-id: r9893
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/resource.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/scumm/resource.cpp b/scumm/resource.cpp index 79ef9c0088..f49f321666 100644 --- a/scumm/resource.cpp +++ b/scumm/resource.cpp @@ -315,7 +315,6 @@ void Scumm::readIndexFile() { else num = _fileHandle.readUint16LE(); assert(num == _numGlobalObjects); - if (_version == 8) { /* FIXME: Not sure.. */ char buffer[40]; @@ -341,8 +340,8 @@ void Scumm::readIndexFile() { _objectOwnerTable[i] &= OF_OWNER_MASK; } if (_features & GF_AFTER_HEV7) { - // FIXME nasty nasty hack handle properly... - _fileHandle.seek(num * 6000, SEEK_CUR); + // _objectRoomTable + _fileHandle.seek(num * 4, SEEK_CUR); } } @@ -362,8 +361,10 @@ void Scumm::readIndexFile() { break; case MKID('DLFL'): - _HEV7RoomOffsets = (byte *)calloc(itemsize - 8, 1); - _fileHandle.read(_HEV7RoomOffsets, itemsize - 8); + i = _fileHandle.readUint16LE(); + _fileHandle.seek(-2, SEEK_CUR); + _HEV7RoomOffsets = (byte *)calloc(2 + (i * 4), 1); + _fileHandle.read(_HEV7RoomOffsets, (2 + (i * 4)) ); break; case MKID('DIRI'): |