[Scummvm-cvs-logs] SF.net SVN: scummvm: [30263] scummvm/trunk/engines/agi/agi.cpp
buddha_ at users.sourceforge.net
buddha_ at users.sourceforge.net
Sat Jan 5 22:10:49 CET 2008
Revision: 30263
http://scummvm.svn.sourceforge.net/scummvm/?rev=30263&view=rev
Author: buddha_
Date: 2008-01-05 13:10:49 -0800 (Sat, 05 Jan 2008)
Log Message:
-----------
Workaround for Amiga Gold Rush's broken picture 147 by patching it.
Modified Paths:
--------------
scummvm/trunk/engines/agi/agi.cpp
Modified: scummvm/trunk/engines/agi/agi.cpp
===================================================================
--- scummvm/trunk/engines/agi/agi.cpp 2008-01-05 20:59:33 UTC (rev 30262)
+++ scummvm/trunk/engines/agi/agi.cpp 2008-01-05 21:10:49 UTC (rev 30263)
@@ -24,7 +24,7 @@
*/
-
+#include "common/md5.h"
#include "common/events.h"
#include "common/file.h"
#include "common/savefile.h"
@@ -515,6 +515,23 @@
i = _loader->loadResource(r, n);
+ // WORKAROUND: Patches broken picture 147 in a corrupted Amiga version of Gold Rush! (v2.05 1989-03-09).
+ // The picture can be seen in room 147 after dropping through the outhouse's hole in room 146.
+ if (i == errOK && getGameID() == GID_GOLDRUSH && r == rPICTURE && n == 147 && _game.dirPic[n].len == 1982) {
+ uint8 *pic = _game.pictures[n].rdata;
+ Common::MemoryReadStream picStream(pic, _game.dirPic[n].len);
+ char md5str[32+1];
+ Common::md5_file_string(picStream, md5str, _game.dirPic[n].len);
+ if (scumm_stricmp(md5str, "1c685eb048656cedcee4eb6eca2cecea") == 0) {
+ pic[0x042] = 0x4B; // 0x49 -> 0x4B
+ pic[0x043] = 0x66; // 0x26 -> 0x66
+ pic[0x204] = 0x68; // 0x28 -> 0x68
+ pic[0x6C0] = 0x2D; // 0x25 -> 0x2D
+ pic[0x6F0] = 0xF0; // 0x70 -> 0xF0
+ pic[0x734] = 0x6F; // 0x2F -> 0x6F
+ }
+ }
+
return i;
}
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