aboutsummaryrefslogtreecommitdiff
path: root/scumm/resource_v4.cpp
diff options
context:
space:
mode:
authorMax Horn2005-04-09 20:22:31 +0000
committerMax Horn2005-04-09 20:22:31 +0000
commit81e34e9110f88cd92227d451d153bd336a3902c1 (patch)
treec4e95bef98dc7ede51e466c7f87f35b9e0342fdf /scumm/resource_v4.cpp
parentd271b58aa78875983143c07facac596cd393f9f0 (diff)
downloadscummvm-rg350-81e34e9110f88cd92227d451d153bd336a3902c1.tar.gz
scummvm-rg350-81e34e9110f88cd92227d451d153bd336a3902c1.tar.bz2
scummvm-rg350-81e34e9110f88cd92227d451d153bd336a3902c1.zip
Overload getStringAddress in subclasses; moved V6-V8 specific res stuff to resource.cpp
svn-id: r17489
Diffstat (limited to 'scumm/resource_v4.cpp')
-rw-r--r--scumm/resource_v4.cpp137
1 files changed, 0 insertions, 137 deletions
diff --git a/scumm/resource_v4.cpp b/scumm/resource_v4.cpp
index 579820e467..f7cc007d2a 100644
--- a/scumm/resource_v4.cpp
+++ b/scumm/resource_v4.cpp
@@ -184,141 +184,4 @@ void ScummEngine_v4::readGlobalObjects() {
}
-void ScummEngine_v8::readGlobalObjects() {
- int i;
- int num = _fileHandle->readUint32LE();
- assert(num == _numGlobalObjects);
-
- char buffer[40];
- for (i = 0; i < num; i++) {
- _fileHandle->read(buffer, 40);
- if (buffer[0]) {
- // Add to object name-to-id map
- _objectIDMap[buffer] = i;
- }
- _objectStateTable[i] = _fileHandle->readByte();
- _objectRoomTable[i] = _fileHandle->readByte();
- _classData[i] = _fileHandle->readUint32LE();
- }
- memset(_objectOwnerTable, 0xFF, num);
-}
-
-void ScummEngine_v7::readGlobalObjects() {
- int num = _fileHandle->readUint16LE();
- assert(num == _numGlobalObjects);
-
- _fileHandle->read(_objectStateTable, num);
- _fileHandle->read(_objectRoomTable, num);
- memset(_objectOwnerTable, 0xFF, num);
-
- _fileHandle->read(_classData, num * sizeof(uint32));
-
-#if defined(SCUMM_BIG_ENDIAN)
- // Correct the endianess if necessary
- for (int i = 0; i != num; i++)
- _classData[i] = FROM_LE_32(_classData[i]);
-#endif
-}
-
-void ScummEngine_v8::readMAXS(int blockSize) {
- debug(9, "readMAXS: MAXS has blocksize %d", blockSize);
-
- _fileHandle->seek(50 + 50, SEEK_CUR); // 176 - 8
- _numVariables = _fileHandle->readUint32LE(); // 1500
- _numBitVariables = _fileHandle->readUint32LE(); // 2048
- _fileHandle->readUint32LE(); // 40
- _numScripts = _fileHandle->readUint32LE(); // 458
- _numSounds = _fileHandle->readUint32LE(); // 789
- _numCharsets = _fileHandle->readUint32LE(); // 1
- _numCostumes = _fileHandle->readUint32LE(); // 446
- _numRooms = _fileHandle->readUint32LE(); // 95
- _fileHandle->readUint32LE(); // 80
- _numGlobalObjects = _fileHandle->readUint32LE(); // 1401
- _fileHandle->readUint32LE(); // 60
- _numLocalObjects = _fileHandle->readUint32LE(); // 200
- _numNewNames = _fileHandle->readUint32LE(); // 100
- _numFlObject = _fileHandle->readUint32LE(); // 128
- _numInventory = _fileHandle->readUint32LE(); // 80
- _numArray = _fileHandle->readUint32LE(); // 200
- _numVerbs = _fileHandle->readUint32LE(); // 50
-
- _objectRoomTable = (byte *)calloc(_numGlobalObjects, 1);
- _numGlobalScripts = 2000;
-
- _shadowPaletteSize = NUM_SHADOW_PALETTE * 256;
- _shadowPalette = (byte *)calloc(_shadowPaletteSize, 1);
-
- allocateArrays();
- _dynamicRoomOffsets = true;
-}
-
-void ScummEngine_v7::readMAXS(int blockSize) {
- debug(9, "readMAXS: MAXS has blocksize %d", blockSize);
-
- _fileHandle->seek(50 + 50, SEEK_CUR);
- _numVariables = _fileHandle->readUint16LE();
- _numBitVariables = _fileHandle->readUint16LE();
- _fileHandle->readUint16LE();
- _numGlobalObjects = _fileHandle->readUint16LE();
- _numLocalObjects = _fileHandle->readUint16LE();
- _numNewNames = _fileHandle->readUint16LE();
- _numVerbs = _fileHandle->readUint16LE();
- _numFlObject = _fileHandle->readUint16LE();
- _numInventory = _fileHandle->readUint16LE();
- _numArray = _fileHandle->readUint16LE();
- _numRooms = _fileHandle->readUint16LE();
- _numScripts = _fileHandle->readUint16LE();
- _numSounds = _fileHandle->readUint16LE();
- _numCharsets = _fileHandle->readUint16LE();
- _numCostumes = _fileHandle->readUint16LE();
-
- _objectRoomTable = (byte *)calloc(_numGlobalObjects, 1);
-
- if ((_gameId == GID_FT) && (_features & GF_DEMO) &&
- (_features & GF_PC))
- _numGlobalScripts = 300;
- else
- _numGlobalScripts = 2000;
-
- _shadowPaletteSize = NUM_SHADOW_PALETTE * 256;
- _shadowPalette = (byte *)calloc(_shadowPaletteSize, 1);
-
- allocateArrays();
- _dynamicRoomOffsets = true;
-}
-
-void ScummEngine_v6::readMAXS(int blockSize) {
- debug(9, "readMAXS: MAXS has blocksize %d", blockSize);
-
- _numVariables = _fileHandle->readUint16LE();
- _fileHandle->readUint16LE();
- _numBitVariables = _fileHandle->readUint16LE();
- _numLocalObjects = _fileHandle->readUint16LE();
- _numArray = _fileHandle->readUint16LE();
- _fileHandle->readUint16LE();
- _numVerbs = _fileHandle->readUint16LE();
- _numFlObject = _fileHandle->readUint16LE();
- _numInventory = _fileHandle->readUint16LE();
- _numRooms = _fileHandle->readUint16LE();
- _numScripts = _fileHandle->readUint16LE();
- _numSounds = _fileHandle->readUint16LE();
- _numCharsets = _fileHandle->readUint16LE();
- _numCostumes = _fileHandle->readUint16LE();
- _numGlobalObjects = _fileHandle->readUint16LE();
- _numNewNames = 50;
-
- _objectRoomTable = NULL;
- _numGlobalScripts = 200;
-
- if (_heversion >= 70) {
- _objectRoomTable = (byte *)calloc(_numGlobalObjects, 1);
- }
-
- _shadowPaletteSize = 256;
- _shadowPalette = (byte *)calloc(_shadowPaletteSize, 1);
-
- allocateArrays();
- _dynamicRoomOffsets = true;
-}
-
} // End of namespace Scumm