aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorEugene Sandulenko2005-05-17 23:56:21 +0000
committerEugene Sandulenko2005-05-17 23:56:21 +0000
commitfc87c5821a643f9146155158b4a3c30e65e41d1b (patch)
tree2c4432c71dba01fe53ff2b33798b77b5388326d6 /scumm
parente05da91674c27ffebdc34b7d7a1de1f24711aea5 (diff)
downloadscummvm-rg350-fc87c5821a643f9146155158b4a3c30e65e41d1b.tar.gz
scummvm-rg350-fc87c5821a643f9146155158b4a3c30e65e41d1b.tar.bz2
scummvm-rg350-fc87c5821a643f9146155158b4a3c30e65e41d1b.zip
Initial support of C64 MM & Zak
svn-id: r18146
Diffstat (limited to 'scumm')
-rw-r--r--scumm/resource_v2.cpp48
1 files changed, 34 insertions, 14 deletions
diff --git a/scumm/resource_v2.cpp b/scumm/resource_v2.cpp
index 00f2628023..7f6088a003 100644
--- a/scumm/resource_v2.cpp
+++ b/scumm/resource_v2.cpp
@@ -35,30 +35,45 @@ void ScummEngine_v2::readClassicIndexFile() {
int i;
if (_gameId == GID_MANIAC) {
- if (_platform == Common::kPlatformNES)
+ if (_platform == Common::kPlatformC64) {
+ _numGlobalObjects = 256;
+ _numRooms = 55;
+ _numCostumes = 25;
+ _numScripts = 160;
+ _numSounds = 70;
+ } if (_platform == Common::kPlatformNES) {
_numGlobalObjects = 775;
- else
- _numGlobalObjects = 800;
- _numRooms = 55;
+ _numRooms = 55;
- if (_platform == Common::kPlatformNES)
// costumes 25-36 are special. see v1MMNEScostTables[] in costume.cpp
// costumes 37-76 are room graphics resources
// costume 77 is a character set translation table
// costume 78 is a preposition list
// costume 79 is unused but allocated, so the total is a nice even number :)
_numCostumes = 80;
- else
+ _numScripts = 200;
+ _numSounds = 100;
+ } else {
+ _numGlobalObjects = 800;
+ _numRooms = 55;
_numCostumes = 35;
-
- _numScripts = 200;
- _numSounds = 100;
+ _numScripts = 200;
+ _numSounds = 100;
+ }
} else if (_gameId == GID_ZAK) {
- _numGlobalObjects = 775;
- _numRooms = 61;
- _numCostumes = 37;
- _numScripts = 155;
- _numSounds = 120;
+ if (_platform == Common::kPlatformC64) {
+ _numGlobalObjects = 775;
+ _numRooms = 59;
+ _numCostumes = 38;
+ _numScripts = 155;
+ _numSounds = 127;
+ } else {
+ _numGlobalObjects = 775;
+ _numRooms = 61;
+ _numCostumes = 37;
+ _numScripts = 155;
+ _numSounds = 120;
+ }
}
_fileHandle->seek(0, SEEK_SET);
@@ -175,6 +190,11 @@ void ScummEngine_v2::readIndexFile() {
_version = 1;
readClassicIndexFile();
break;
+ case 0x132:
+ printf("C64 V1 game detected\n");
+ _version = 1;
+ readClassicIndexFile();
+ break;
default:
error("Unknown magic id (0x%X) - this version is unsupported", magic);
break;