[Scummvm-cvs-logs] SF.net SVN: scummvm:[41966] scummvm/branches/gsoc2009-draci/engines/draci
dkasak13 at users.sourceforge.net
dkasak13 at users.sourceforge.net
Tue Jun 30 00:27:38 CEST 2009
Revision: 41966
http://scummvm.svn.sourceforge.net/scummvm/?rev=41966&view=rev
Author: dkasak13
Date: 2009-06-29 22:27:38 +0000 (Mon, 29 Jun 2009)
Log Message:
-----------
Changed some data members in Draci::GameInfo from uint32 to uint16 (previously I thought that the 'word' type in the original engine was 32 bits). Removed a FIXME concerning struct size mismatch (matches when the previous sentence is taken into account). GameInfo::_numDialogBlocks is now calculated, not read in (it wasn't stored in the data files at all).
Modified Paths:
--------------
scummvm/branches/gsoc2009-draci/engines/draci/game.cpp
scummvm/branches/gsoc2009-draci/engines/draci/game.h
Modified: scummvm/branches/gsoc2009-draci/engines/draci/game.cpp
===================================================================
--- scummvm/branches/gsoc2009-draci/engines/draci/game.cpp 2009-06-29 22:20:30 UTC (rev 41965)
+++ scummvm/branches/gsoc2009-draci/engines/draci/game.cpp 2009-06-29 22:27:38 UTC (rev 41966)
@@ -82,15 +82,13 @@
_info->_numDialogs = gameData.readByte();
_info->_maxIconWidth = gameData.readUint16LE();
_info->_maxIconHeight = gameData.readUint16LE();
- _info->_musicLength = gameData.readUint32LE();
+ _info->_musicLength = gameData.readUint16LE();
+ _info->_crc[0] = gameData.readUint16LE();
+ _info->_crc[1] = gameData.readUint16LE();
+ _info->_crc[2] = gameData.readUint16LE();
+ _info->_crc[3] = gameData.readUint16LE();
-// FIXME: Something is wrong here. The total file length is only 23 bytes
-// but the whole struct should be 35 bytes.
- _info->_crc[0] = gameData.readUint32LE();
- _info->_crc[1] = gameData.readUint32LE();
- _info->_crc[2] = gameData.readUint32LE();
- _info->_crc[3] = gameData.readUint32LE();
- _info->_numDialogBlocks = gameData.readUint16LE();
+ _info->_numDialogBlocks = curOffset;
// Read in variables
@@ -123,9 +121,6 @@
assert(numVariables == _info->_numVariables);
assert(numObjects == _info->_numObjects);
-// TODO: Why is this failing?
-// assert(curOffset == _info->_numDialogBlocks);
-
loadObject(0, &_heroObj);
_vm->_script->run(_heroObj._program, _heroObj._init);
}
Modified: scummvm/branches/gsoc2009-draci/engines/draci/game.h
===================================================================
--- scummvm/branches/gsoc2009-draci/engines/draci/game.h 2009-06-29 22:20:30 UTC (rev 41965)
+++ scummvm/branches/gsoc2009-draci/engines/draci/game.h 2009-06-29 22:27:38 UTC (rev 41966)
@@ -65,8 +65,8 @@
byte _numPersons;
byte _numDialogs;
uint16 _maxIconWidth, _maxIconHeight;
- uint32 _musicLength;
- uint32 _crc[4];
+ uint16 _musicLength;
+ uint16 _crc[4];
uint16 _numDialogBlocks;
};
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list