[Scummvm-cvs-logs] CVS: scummvm/scumm actor.cpp,1.402,1.403 charset.cpp,2.164,2.165 cursor.cpp,2.50,2.51 debugger.cpp,1.158,1.159 gfx.cpp,2.488,2.489 help.cpp,1.27,1.28 script.cpp,1.242,1.243 script_v5.cpp,1.306,1.307 scumm.cpp,1.703,1.704 scumm.h,1.672,1.673 sound.cpp,1.503,1.504 string.cpp,1.321,1.322 vars.cpp,1.165,1.166
Max Horn
fingolfin at users.sourceforge.net
Mon Jan 23 12:11:01 CET 2006
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3067
Modified Files:
actor.cpp charset.cpp cursor.cpp debugger.cpp gfx.cpp help.cpp
script.cpp script_v5.cpp scumm.cpp scumm.h sound.cpp
string.cpp vars.cpp
Log Message:
Removing GID_ZAK256 and GID_LOOM256
Index: actor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/actor.cpp,v
retrieving revision 1.402
retrieving revision 1.403
diff -u -d -r1.402 -r1.403
--- actor.cpp 22 Jan 2006 20:46:48 -0000 1.402
+++ actor.cpp 23 Jan 2006 20:09:23 -0000 1.403
@@ -253,7 +253,7 @@
// not necessary here because we never call the function unless the
// actor is in the current room anyway.
- if (!_ignoreBoxes || (_vm->_gameId == GID_LOOM || _vm->_gameId == GID_LOOM256)) {
+ if (!_ignoreBoxes || _vm->_gameId == GID_LOOM) {
specdir = _vm->_extraBoxFlags[_walkbox];
if (specdir) {
if (specdir & 0x8000) {
@@ -1384,7 +1384,7 @@
convertMessageToString(msg, _charsetBuffer, sizeof(_charsetBuffer));
// FIXME: Workaround for bugs #770039 and #770049
- if (_gameId == GID_LOOM || _gameId == GID_LOOM256) {
+ if (_gameId == GID_LOOM) {
if (!*_charsetBuffer)
return;
}
Index: charset.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/charset.cpp,v
retrieving revision 2.164
retrieving revision 2.165
diff -u -d -r2.164 -r2.165
--- charset.cpp 18 Jan 2006 17:39:40 -0000 2.164
+++ charset.cpp 23 Jan 2006 20:09:23 -0000 2.165
@@ -1175,8 +1175,8 @@
bool useShadow = false;
_color = color;
- // FM-TOWNS version of Loom uses old colour method as well
- if ((_vm->_version >= 2) && (_vm->_features & GF_16COLOR || _vm->_gameId == GID_LOOM)) {
+ // FM-TOWNS version of Loom uses old color method as well
+ if ((_vm->_version >= 2) && (_vm->_features & GF_16COLOR || (_vm->_gameId == GID_LOOM && _vm->_version == 3))) {
useShadow = ((_color & 0xF0) != 0);
_color &= 0x0f;
} else if (_vm->_features & GF_OLD256) {
Index: cursor.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/cursor.cpp,v
retrieving revision 2.50
retrieving revision 2.51
diff -u -d -r2.50 -r2.51
--- cursor.cpp 18 Jan 2006 17:39:40 -0000 2.50
+++ cursor.cpp 23 Jan 2006 20:09:23 -0000 2.51
@@ -335,7 +335,7 @@
void ScummEngine_v5::redefineBuiltinCursorFromChar(int index, int chr) {
// Cursor image in both Looms are based on images from charset.
- if (_gameId != GID_LOOM && _gameId != GID_LOOM256) {
+ if (_gameId != GID_LOOM) {
// FIXME: Actually: is this opcode ever called by a non-Loom game?
// Which V3-V5 game besides Loom makes use of custom cursors, ever?
error("V3--V5 SO_CURSOR_IMAGE(%d,%d) called - tell Fingolfin where you saw this!", index, chr);
@@ -379,7 +379,7 @@
void ScummEngine_v5::redefineBuiltinCursorHotspot(int index, int x, int y) {
// Cursor image in both Looms are based on images from charset.
- if (_gameId != GID_LOOM && _gameId != GID_LOOM256) {
+ if (_gameId != GID_LOOM) {
// FIXME: Actually: is this opcode ever called by a non-Loom game?
// Which V3-V5 game besides Loom makes use of custom cursors, ever?
error("V3--V5 SO_CURSOR_HOTSPOT(%d,%d,%d) called - tell Fingolfin where you saw this!", index, x, y);
Index: debugger.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/debugger.cpp,v
retrieving revision 1.158
retrieving revision 1.159
diff -u -d -r1.158 -r1.159
--- debugger.cpp 21 Jan 2006 13:01:19 -0000 1.158
+++ debugger.cpp 23 Jan 2006 20:09:23 -0000 1.159
@@ -104,7 +104,7 @@
DCmd_Register("scripts", &ScummDebugger::Cmd_PrintScript);
DCmd_Register("importres", &ScummDebugger::Cmd_ImportRes);
- if (_vm->_gameId == GID_LOOM || _vm->_gameId == GID_LOOM256)
+ if (_vm->_gameId == GID_LOOM)
DCmd_Register("drafts", &ScummDebugger::Cmd_PrintDraft);
DCmd_Register("loadgame", &ScummDebugger::Cmd_LoadGame);
@@ -824,7 +824,7 @@
const char *notes = "cdefgabC";
int i, base, draft;
- if (_vm->_gameId != GID_LOOM && _vm->_gameId != GID_LOOM256) {
+ if (_vm->_gameId != GID_LOOM) {
DebugPrintf("Command only works with Loom/LoomCD\n");
return true;
}
@@ -850,7 +850,7 @@
// Possibly they store information on where and/or how the draft can
// be used. They appear to remain constant throughout the game.
- base = (_vm->_gameId == GID_LOOM) ? 50 : 100;
+ base = (_vm->_version == 3) ? 50 : 100;
if (argc == 2) {
// We had to debug a problem at the end of the game that only
Index: gfx.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/gfx.cpp,v
retrieving revision 2.488
retrieving revision 2.489
diff -u -d -r2.488 -r2.489
--- gfx.cpp 18 Jan 2006 17:39:40 -0000 2.488
+++ gfx.cpp 23 Jan 2006 20:09:23 -0000 2.489
@@ -1105,7 +1105,7 @@
return;
// Calculate the area of the flashlight
- if (_gameId == GID_ZAK256 || _version <= 2) {
+ if (_gameId == GID_ZAK || _gameId == GID_MANIAC) {
x = _mouse.x + vs->xstart;
y = _mouse.y - vs->topline;
} else {
@@ -1118,7 +1118,7 @@
_flashlight.x = x - _flashlight.w / 2 - _screenStartStrip * 8;
_flashlight.y = y - _flashlight.h / 2;
- if (_gameId == GID_LOOM || _gameId == GID_LOOM256)
+ if (_gameId == GID_LOOM)
_flashlight.y -= 12;
// Clip the flashlight at the borders
@@ -3153,7 +3153,7 @@
// Speed up the effect for CD Loom since it uses it so often. I don't
// think the original had any delay at all, so on modern hardware it
// wasn't even noticeable.
- if (_gameId == GID_LOOM256)
+ if (_gameId == GID_LOOM && (_version == 3))
blits_before_refresh *= 2;
for (i = 0; i < w * h; i++) {
@@ -3280,7 +3280,7 @@
void ScummEngine::unkScreenEffect6() {
// CD Loom (but not EGA Loom!) uses a more fine-grained dissolve
- if (_gameId == GID_LOOM256)
+ if (_gameId == GID_LOOM && (_version == 3))
dissolveEffect(1, 1);
else
dissolveEffect(8, 4);
Index: help.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/help.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- help.cpp 18 Jan 2006 17:39:41 -0000 1.27
+++ help.cpp 23 Jan 2006 20:09:24 -0000 1.28
@@ -33,14 +33,12 @@
switch (gameId) {
case GID_MANIAC:
case GID_ZAK:
- case GID_ZAK256:
return 4;
break;
case GID_INDY3:
return 6;
break;
case GID_LOOM:
- case GID_LOOM256:
case GID_MONKEY_EGA:
case GID_MONKEY_VGA:
case GID_MONKEY:
@@ -113,13 +111,12 @@
ADD_TEXT(" or incorrect game behaviour.");
break;
case 3:
- if (gameId == GID_LOOM || gameId == GID_LOOM256)
+ if (gameId == GID_LOOM)
title = "Spinning drafts on the keyboard:";
else
title = "Main game controls:";
switch (gameId) {
case GID_ZAK:
- case GID_ZAK256:
case GID_MANIAC:
// HACK. I know use of g_scumm here is evil, however,
// introducing new GID and putting it everywhere will
@@ -182,7 +179,6 @@
ADD_BIND("b", "To Henry / To Indy");
break;
case GID_LOOM:
- case GID_LOOM256:
ADD_BIND("q, c", "play C minor on distaff");
ADD_BIND("w, d", "play D on distaff");
ADD_BIND("e, e", "play E on distaff");
@@ -260,10 +256,8 @@
}
break;
case 4:
- switch (gameId) {
- case GID_MANIAC:
- case GID_ZAK:
- title = "Other game controls:";
+ title = "Other game controls:";
+ if (version <= 2) {
ADD_TEXT("Inventory: (not yet implemented)");
ADD_BIND("u", "Scroll list up");
ADD_BIND("j", "Scroll list down");
@@ -283,10 +277,8 @@
ADD_BIND("F3", "Melissa");
ADD_BIND("F4", "Leslie");
}
- break;
- case GID_INDY3:
- case GID_ZAK256:
- title = "Other game controls:";
+ } else if (gameId == GID_INDY3 || gameId == GID_ZAK) {
+ // Indy3, or FM-TOWNS Zak
ADD_TEXT("Inventory:");
ADD_BIND("y", "Upper left item");
ADD_BIND("h", "Middle left item");
@@ -296,7 +288,7 @@
ADD_BIND("m", "Lower right item");
ADD_BIND("o", "Scroll list up");
ADD_BIND("l", "Scroll list down");
- if (gameId == GID_ZAK256) {
+ if (gameId == GID_ZAK) {
ADD_LINE;
ADD_TEXT("Switching characters:");
ADD_BIND("F1", "Zak");
@@ -304,7 +296,6 @@
ADD_BIND("F3", "Melissa");
ADD_BIND("F4", "Leslie");
}
- break;
}
break;
case 5:
Index: script.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script.cpp,v
retrieving revision 1.242
retrieving revision 1.243
diff -u -d -r1.242 -r1.243
--- script.cpp 22 Jan 2006 21:28:37 -0000 1.242
+++ script.cpp 23 Jan 2006 20:09:24 -0000 1.243
@@ -538,7 +538,7 @@
if (!_copyProtection) {
if (_gameId == GID_LOOM && (_platform == Common::kPlatformFMTowns) && var == 214 && bit == 15) {
return 0;
- } else if (_gameId == GID_ZAK256 && var == 151 && bit == 8) {
+ } else if (_gameId == GID_ZAK && (_platform == Common::kPlatformFMTowns) && var == 151 && bit == 8) {
return 0;
}
}
Index: script_v5.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script_v5.cpp,v
retrieving revision 1.306
retrieving revision 1.307
diff -u -d -r1.306 -r1.307
--- script_v5.cpp 22 Jan 2006 20:46:51 -0000 1.306
+++ script_v5.cpp 23 Jan 2006 20:09:24 -0000 1.307
@@ -563,7 +563,7 @@
// understand the reasoning behind this, compare script 210 and 218 in
// room 20. Apparently they made a mistake when converting the absolute
// delays into relative ones.
- if (_gameId == GID_LOOM256 && vm.slot[_currentScript].number == 210 && _currentRoom == 20 && _resultVarNumber == 0x4000) {
+ if (_gameId == GID_LOOM && _version == 4 && vm.slot[_currentScript].number == 210 && _currentRoom == 20 && _resultVarNumber == 0x4000) {
switch (a) {
// Fix for the Var[250] == 11 case
case 138:
@@ -1740,7 +1740,7 @@
case 6: // SO_NUKE_SOUND
case 7: // SO_NUKE_COSTUME
case 8: // SO_NUKE_ROOM
- if (_gameId == GID_ZAK256)
+ if (_gameId == GID_ZAK && (_platform == Common::kPlatformFMTowns))
error("o5_resourceRoutines %d should not occur in Zak256", op);
else
res.setResourceCounter(resType[op-5], resid, 0x7F);
@@ -2266,12 +2266,12 @@
// FIXME: Script 171 loads a complete room resource, instead of the actual script.
// Causing invalid opcode cases, see bug #1290485
- if (_gameId == GID_ZAK256 && script == 171)
+ if (_gameId == GID_ZAK && (_platform == Common::kPlatformFMTowns) && script == 171)
return;
if (!_copyProtection) {
// Method used by original games to skip copy protection scheme
- if (_gameId == GID_LOOM && _currentRoom == 69 && script == 201)
+ if (_gameId == GID_LOOM && _version == 3 && _currentRoom == 69 && script == 201)
script = 205;
else if ((_gameId == GID_MONKEY_VGA || _gameId == GID_MONKEY_EGA) && script == 152)
return;
@@ -2321,7 +2321,7 @@
b = getVarOrDirectByte(PARAM_2);
c = getVarOrDirectByte(PARAM_3);
ptr = getResourceAddress(rtString, a);
- if (_gameId != GID_LOOM256) { /* FIXME - LOOM256 */
+ if (!(_gameId == GID_LOOM && _version == 4)) { /* FIXME - LOOM256 */
if (ptr == NULL)
error("String %d does not exist", a);
ptr[b] = c;
@@ -2433,7 +2433,7 @@
vs->curRect.top += 8;
break;
}
- } else if (_gameId == GID_LOOM256) {
+ } else if (_gameId == GID_LOOM && _version == 4) {
// FIXME: hack loom notes into right spot
if ((verb >= 90) && (verb <= 97)) { // Notes
switch (verb) {
@@ -2602,7 +2602,7 @@
return;
}
- if (_gameId == GID_LOOM256 && nr == 1 && nr2 == 0 &&
+ if (_gameId == GID_LOOM && _version == 4 && nr == 1 && nr2 == 0 &&
dist == 255 && vm.slot[_currentScript].number == 98) {
// WORKAROUND bug #743615: LoomCD script 98 contains this:
// walkActorToActor(1,0,255)
@@ -2736,7 +2736,7 @@
int offset = (uint16)getVarOrDirectWord(PARAM_1);
int delay = (uint16)getVarOrDirectWord(PARAM_2);
- if (_gameId == GID_LOOM256) {
+ if (_gameId == GID_LOOM && _version == 4) {
if (offset == 0 && delay == 0) {
VAR(VAR_MUSIC_TIMER) = 0;
_sound->stopCD();
@@ -2762,7 +2762,7 @@
// WORKAROUND: This happens when Chaos introduces
// herself to bishop Mandible. Of all the places to put
// a typo...
- if (_gameId == GID_LOOM256 && strcmp((const char *) _scriptPointer, "I am Choas.") == 0)
+ if (_gameId == GID_LOOM && strcmp((const char *) _scriptPointer, "I am Choas.") == 0)
printString(textSlot, (const byte *) "I am Chaos.");
else
printString(textSlot, _scriptPointer);
Index: scumm.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.cpp,v
retrieving revision 1.703
retrieving revision 1.704
diff -u -d -r1.703 -r1.704
--- scumm.cpp 23 Jan 2006 19:13:05 -0000 1.703
+++ scumm.cpp 23 Jan 2006 20:09:24 -0000 1.704
@@ -494,7 +494,7 @@
{"6f0be328c64d689bb606d22a389e1b0f", "Loom (Macintosh)", GID_LOOM, 3, 0, MDT_PCSPK,
GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, Common::kPlatformMacintosh},
- {"5d88b9d6a88e6f8e90cded9d01b7f082", "Loom (256 color CD version)", GID_LOOM256, 4, 0, MDT_NONE,
+ {"5d88b9d6a88e6f8e90cded9d01b7f082", "Loom (256 color CD version)", GID_LOOM, 4, 0, MDT_NONE,
GF_SMALL_HEADER | GF_USE_KEY | GF_AUDIOTRACKS, Common::kPlatformPC},
{"c5d10e190d4b4d59114b824f2fdbd00e", "Loom (FM-TOWNS)", GID_LOOM, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
@@ -677,18 +677,18 @@
{"7020931d5a2be0a49d68e7a1882363e4", "Zak McKracken and the Alien Mindbenders (v1)", GID_ZAK, 1, 0, MDT_PCSPK,
GF_SMALL_HEADER | GF_USE_KEY | GF_16COLOR | GF_OLD_BUNDLE | GF_NO_SCALING, Common::kPlatformPC},
- {"2d4536a56e01da4b02eb021e7770afa2", "Zak McKracken and the Alien Mindbenders (FM-TOWNS)", GID_ZAK256, 3, 0, MDT_TOWNS,
+ {"2d4536a56e01da4b02eb021e7770afa2", "Zak McKracken and the Alien Mindbenders (FM-TOWNS)", GID_ZAK, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
- {"ce3edc99cd4f478c5b37104d70c68ca5", "Zak McKracken and the Alien Mindbenders (FM-TOWNS Jp)", GID_ZAK256, 3, 0, MDT_TOWNS,
+ {"ce3edc99cd4f478c5b37104d70c68ca5", "Zak McKracken and the Alien Mindbenders (FM-TOWNS Jp)", GID_ZAK, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
- {"1ca86e2cf9aaa2068738a1e5ba477e60", "Zak McKracken and the Alien Mindbenders (FM-TOWNS Jp)", GID_ZAK256, 3, 0, MDT_TOWNS,
+ {"1ca86e2cf9aaa2068738a1e5ba477e60", "Zak McKracken and the Alien Mindbenders (FM-TOWNS Jp)", GID_ZAK, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
- {"2d388339d6050d8ccaa757b64633954e", "Indy/Loom Demo (FM-TOWNS)", GID_ZAK256, 3, 0, MDT_TOWNS,
+ {"2d388339d6050d8ccaa757b64633954e", "Indy/Loom Demo (FM-TOWNS)", GID_ZAK, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
- {"77f5c9cc0986eb729c1a6b4c8823bbae", "Zak/Loom Demo (FM-TOWNS)", GID_ZAK256, 3, 0, MDT_TOWNS,
+ {"77f5c9cc0986eb729c1a6b4c8823bbae", "Zak/Loom Demo (FM-TOWNS)", GID_ZAK, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
- {"3938ee1aa4433fca9d9308c9891172b1", "Indy/Zak Demo (FM-TOWNS)", GID_ZAK256, 3, 0, MDT_TOWNS,
+ {"3938ee1aa4433fca9d9308c9891172b1", "Indy/Zak Demo (FM-TOWNS)", GID_ZAK, 3, 0, MDT_TOWNS,
GF_SMALL_HEADER | GF_NO_SCALING | GF_OLD256 | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
#endif
{NULL, NULL, 0, 0, MDT_NONE, 0, 0, Common::kPlatformUnknown}
@@ -2340,7 +2340,7 @@
VAR(VAR_TMR_1) += delta;
VAR(VAR_TMR_2) += delta;
VAR(VAR_TMR_3) += delta;
- if (_gameId == GID_ZAK256 || _gameId == GID_INDY3) {
+ if (_gameId == GID_ZAK || _gameId == GID_INDY3) {
// All versions of Indy3 set three extra timers
// FM-TOWNS version of Zak sets three extra timers
VAR(39) += delta;
@@ -2487,7 +2487,7 @@
_charset->_hasMask = false;
// HACK as in game save stuff isn't supported currently
- if (_gameId == GID_LOOM || _gameId == GID_LOOM256) {
+ if (_gameId == GID_LOOM) {
int args[16];
uint value;
memset(args, 0, sizeof(args));
@@ -2495,8 +2495,10 @@
if (_platform == Common::kPlatformMacintosh)
value = 105;
+ else if (_version == 4) // 256 color CD version
+ value = 150;
else
- value = (_gameId == GID_LOOM256) ? 150 : 100;
+ value = 100;
byte restoreScript = (_platform == Common::kPlatformFMTowns) ? 17 : 18;
// if verbs should be shown restore them
if (VAR(value) == 2)
Index: scumm.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/scumm.h,v
retrieving revision 1.672
retrieving revision 1.673
diff -u -d -r1.672 -r1.673
--- scumm.h 22 Jan 2006 20:10:13 -0000 1.672
+++ scumm.h 23 Jan 2006 20:09:25 -0000 1.673
@@ -195,7 +195,6 @@
GID_INDY3,
GID_INDY4,
GID_LOOM,
- GID_LOOM256,
GID_MANIAC,
GID_MONKEY_EGA,
GID_MONKEY_VGA,
@@ -205,7 +204,6 @@
GID_SAMNMAX,
GID_TENTACLE,
GID_ZAK,
- GID_ZAK256,
GID_HEGAME, // Generic name for all HE games with default behaviour
GID_PUTTDEMO,
Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/sound.cpp,v
retrieving revision 1.503
retrieving revision 1.504
diff -u -d -r1.503 -r1.504
--- sound.cpp 21 Jan 2006 13:01:19 -0000 1.503
+++ sound.cpp 23 Jan 2006 20:09:25 -0000 1.504
@@ -1111,7 +1111,7 @@
// when Chaos first appears, and I have to use 101 for Monkey 1 or the
// intro music will be cut short.
- if (_vm->_gameId == GID_LOOM256)
+ if (_vm->_gameId == GID_LOOM && _vm->_version == 4)
timer_interval = 100;
else
timer_interval = 101;
@@ -1766,7 +1766,7 @@
if (_gameId == GID_INDY3) {
// Note: since we fix ppqn at 480, ppqn/473 is almost 1
dw = 500000 * 256 / 473 * ppqn / ticks;
- } else if (_gameId == GID_LOOM) {
+ } else if (_gameId == GID_LOOM && _version == 3) {
dw = 500000 * ppqn / 4 / ticks;
} else {
dw = 500000 * 256 / ticks;
@@ -2108,7 +2108,7 @@
debug(4, "readSoundResourceSmallHeader(%d)", idx);
- if ((_gameId == GID_LOOM) && (_platform == Common::kPlatformPC) && VAR(VAR_SOUNDCARD) == 4) {
+ if ((_gameId == GID_LOOM) && (_version == 3) && (_platform == Common::kPlatformPC) && VAR(VAR_SOUNDCARD) == 4) {
// Roland resources in Loom are tagless
// So we add an RO tag to allow imuse to detect format
byte *ptr, *src_ptr;
Index: string.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/string.cpp,v
retrieving revision 1.321
retrieving revision 1.322
diff -u -d -r1.321 -r1.322
--- string.cpp 18 Jan 2006 17:39:47 -0000 1.321
+++ string.cpp 23 Jan 2006 20:09:25 -0000 1.322
@@ -410,7 +410,7 @@
if (!_haveMsg)
return;
- if (!(_features & GF_NEW_CAMERA) && !(_gameId == GID_ZAK256 && getTalkingActor() == 0xFF)) {
+ if (!(_features & GF_NEW_CAMERA) && !(_gameId == GID_ZAK && (_platform == Common::kPlatformFMTowns) && getTalkingActor() == 0xFF)) {
if ((camera._dest.x / 8) != (camera._cur.x / 8) || camera._cur.x != camera._last.x)
return;
}
@@ -578,7 +578,7 @@
// HE games which use sprites for subtitles
} else if (_heversion >= 60 && !ConfMan.getBool("subtitles") && _sound->isSoundRunning(1)) {
// Special case for HE games
- } else if ((_gameId == GID_LOOM256) && !ConfMan.getBool("subtitles") && (_sound->pollCD())) {
+ } else if ((_gameId == GID_LOOM) && !ConfMan.getBool("subtitles") && (_sound->pollCD())) {
// Special case for loomcd, since it only uses CD audio.for sound
} else if (!ConfMan.getBool("subtitles") && (!_haveActorSpeechMsg || _mixer->isSoundHandleActive(_sound->_talkChannelHandle))) {
// Subtitles are turned off, and there is a voice version
Index: vars.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/vars.cpp,v
retrieving revision 1.165
retrieving revision 1.166
diff -u -d -r1.165 -r1.166
--- vars.cpp 18 Jan 2006 17:39:47 -0000 1.165
+++ vars.cpp 23 Jan 2006 20:09:25 -0000 1.166
@@ -167,7 +167,7 @@
if (_version >= 4) {
VAR_V5_TALK_STRING_Y = 54;
}
- if (_gameId == GID_LOOM256 || _version >= 5) {
+ if ((_gameId == GID_LOOM && _version == 4) || _version >= 5) {
VAR_NOSUBTITLES = 60;
}
}
@@ -655,7 +655,7 @@
VAR(VAR_SOUNDCARD) = 3;
break;
default:
- if ((_gameId == GID_MONKEY_EGA || _gameId == GID_MONKEY_VGA || _gameId == GID_LOOM)
+ if ((_gameId == GID_MONKEY_EGA || _gameId == GID_MONKEY_VGA || (_gameId == GID_LOOM && _version == 3))
&& (_platform == Common::kPlatformPC)) {
if (_gameId == GID_LOOM) {
char buf[50];
@@ -694,7 +694,7 @@
// Set screen size for the Macintosh version of Indy3/Loom
VAR(39) = 320;
}
- if (_platform == Common::kPlatformPC && _gameId == GID_LOOM) {
+ if (_platform == Common::kPlatformPC && _gameId == GID_LOOM && _version == 3) {
// Set number of sound resources
VAR(39) = 80;
}
More information about the Scummvm-git-logs
mailing list