possible fix for bug #642894; cleanup/additional debug output

svn-id: r5717
This commit is contained in:
Max Horn 2002-11-26 12:30:47 +00:00
parent df56e29d2e
commit 2b1f489195

View file

@ -1285,9 +1285,10 @@ void Scumm::o5_loadRoom()
room = getVarOrDirectByte(0x80); room = getVarOrDirectByte(0x80);
// FIXME - the following 'if' is needed for Zak256 and MonkeyVGA, but might // For small header games, we only call startScene if the room
// cause regression in other games. // actually changed. This avoid unwanted (wrong) fades in Zak256
if (room != _currentRoom) // and others. OTOH, it seems to cause a problem in newer games.
if (!(_features & GF_SMALL_HEADER) || room != _currentRoom)
startScene(room, 0, 0); startScene(room, 0, 0);
_fullRedraw = 1; _fullRedraw = 1;
} }
@ -1589,27 +1590,27 @@ void Scumm::o5_resourceRoutines()
case 0x1F + 1: case 0x1F + 1:
// TODO // TODO
warning("o5_resourceRoutines %d not yet handled", _opcode); warning("o5_resourceRoutines %d not yet handled (script %d)", _opcode, vm.slot[_currentScript].number);
break; break;
case 0x20 + 1: case 0x20 + 1:
// TODO // TODO
warning("o5_resourceRoutines %d not yet handled", _opcode); warning("o5_resourceRoutines %d not yet handled (script %d)", _opcode, vm.slot[_currentScript].number);
break; break;
case 0x22 + 1: case 0x22 + 1:
// TODO // TODO
foo = getVarOrDirectByte(0x40); foo = getVarOrDirectByte(0x40);
warning("o5_resourceRoutines %d not yet handled", _opcode); warning("o5_resourceRoutines %d not yet handled (script %d)", _opcode, vm.slot[_currentScript].number);
break; break;
case 0x23 + 1: case 0x23 + 1:
// TODO // TODO
foo = getVarOrDirectByte(0x40); foo = getVarOrDirectByte(0x40);
bar = fetchScriptByte(); bar = fetchScriptByte();
warning("o5_resourceRoutines %d not yet handled", _opcode); warning("o5_resourceRoutines %d not yet handled (script %d)", _opcode, vm.slot[_currentScript].number);
break; break;
case 0x24 + 1: case 0x24 + 1:
// TODO // TODO
foo = getVarOrDirectByte(0x40); foo = getVarOrDirectByte(0x40);
warning("o5_resourceRoutines %d not yet handled", _opcode); warning("o5_resourceRoutines %d not yet handled (script %d)", _opcode, vm.slot[_currentScript].number);
break; break;
default: default:
@ -1881,7 +1882,7 @@ void Scumm::o5_setObjectName()
int a; int a;
int i = 0; int i = 0;
byte *name = NULL; byte *name = NULL;
unsigned char work[255]; unsigned char work[256];
// Read in new name // Read in new name
while ((a = fetchScriptByte()) != 0) { while ((a = fetchScriptByte()) != 0) {
@ -2089,14 +2090,13 @@ void Scumm::o5_stringOps()
case 3: /* set string char */ case 3: /* set string char */
a = getVarOrDirectByte(0x80); a = getVarOrDirectByte(0x80);
b = getVarOrDirectByte(0x40); b = getVarOrDirectByte(0x40);
c = getVarOrDirectByte(0x20);
ptr = getResourceAddress(rtString, a); ptr = getResourceAddress(rtString, a);
if (!(_gameId == GID_LOOM256)) { /* FIXME - LOOM256 */ if (_gameId != GID_LOOM256) { /* FIXME - LOOM256 */
if (ptr == NULL) if (ptr == NULL)
error("String %d does not exist", a); error("String %d does not exist", a);
c = getVarOrDirectByte(0x20);
ptr[b] = c; ptr[b] = c;
} else }
getVarOrDirectByte(0x20);
break; break;