Opened 15 years ago

Closed 15 years ago

Last modified 4 weeks ago

#1690 closed defect (fixed)

DOTT: (German) Crash in 2nd intro. sequence (Regression)

Reported by: SF/trinity78 Owned by: fingolfin
Priority: high Component: Engine: SCUMM
Keywords: Cc:
Game: Day of the Tentacle

Description

Windows 2000 Sp 4
ScummVM 0.6.1 as well as ScummVM Daily Build
Day of the Tentacle - German - disk version

The game exits in the second part of the intro.
This is the part, where all three travel back in time using
the loos and all the funny things (cats, clocks,
tentacles, E=mc2 ...) flying around them.

The game exits with following message:

Assertion failed: version == 0x010A || version ==
0x0114, file sound/voc.cpp, line 142

The Dott - German - Talkie works fine, so its disk only.
Savegame attached.

Ticket imported from: #999638. Ticket imported from: bugs/1690.

Attachments (1)

tentaclea.s01 (7.7 KB) - added by SF/trinity78 15 years ago.
DOTT - German - disk - savegame

Download all attachments as: .zip

Change History (19)

Changed 15 years ago by SF/trinity78

Attachment: tentaclea.s01 added

DOTT - German - disk - savegame

comment:1 Changed 15 years ago by SF/trinity78

Just checked it with the english DOTT - disk version. Works
fine. Maybe my german version got somehow corrupted.
Can someone else who owns the german disk version check it?

comment:2 Changed 15 years ago by SF/trinity78

Hmm, I did a clean install from disk using the original install
files. So the files are not corrupted.
Seems to me that the german "monster.sou" file is somehow
different from the english one, which works fine.
Its a specific error with the german disk version of DOTT, all
other versions (english, german cd) according to my tests
work fine.

comment:3 Changed 15 years ago by SF/trinity78

Just wanted to add:

In ScummVM 0.6.1 the error message is:

Assertion failed: memcpy(&fileHeader, "Creative Voice
File\x1A", 20) == 0, file sound/voc.cpp, line 125

In ScummVM Daily Build the error message is:

Assertion failed: version == 0x010A || version == 0x0114, file
sound/voc.cpp, line 142

The attached savegame is from the daily build.

I checked the game with DosBox and it worked without
problems.

comment:4 Changed 15 years ago by SF/trinity78

Another update :)

1.)
It does not (!) crash with ScummVM 0.6.0. On the contrary it
works perfect.

2.)
With ScummVM 0.6.1 or the daily build it also crashes in the
first part of the intro, when the tentacles drink the
radioactive slime and the purple tentacle says "die welt
erobern" ("take over the world"). Displays the same assertion
failed message as with the other crash.

comment:5 Changed 15 years ago by SF/c3lo

I have the same problem on my Fujitsu/Siemens Pocket LOOX
610. (ScummVM 0.6 works fine)

comment:6 Changed 15 years ago by Kirben

Those asserts were added by fingolfin, in sound/voc.cpp
revision 1.15.

comment:7 Changed 15 years ago by Kirben

Owner: set to fingolfin

comment:8 Changed 15 years ago by Kirben

Summary: DOTT: Crash in 2. intro sequenceDOTT: (German) Crash in 2nd intro. sequence (Regression)

comment:9 Changed 15 years ago by fingolfin

Yeah. Those version values are the only ones I know that make up a
valid VOC version. Either there is a third one (unlikely, but not
impossible), or the LEC guys simply screwed up once more and used
invalid VOC data <sigh>.
Would be interesting to get a dump of the VOC in question. Anybody who
has the data files in question might be able to insert this right before the
assert:
Common::hexdump((byte *)&fileHeader, sizeof(VocFileHeader));
Then paste me the output here, please.

comment:10 Changed 15 years ago by Kirben

I just had the same assert problem reported in French version
of Simon the Sorcerer 2. A dump of header which causes
arrset in this case:
000000: 43 72 65 61 74 69 76 65 20 56 6f 69 63 65 20 46
|Creative Voice F|
000010: 69 6c 65 1a 1a 00 00 01 33 11
|ile.....3. |

The invalid version is 0100 instead of 010A

comment:11 Changed 15 years ago by (none)

Logged In: NO

Hello,

I've got the same problem with the french version of DOTT.
But the error message is slightly different.

Assertion failed: memcmp(&fileHeader, "Creative Voice
File\x1A", 20) == 0, file
sound/voc.cpp, line 125

This was a clean install from a clean package, so it is unsure
that VOC files are corrupted.

Perhaps are there differences between localized versions of
VOC files ?

Laurent.

comment:12 Changed 15 years ago by fingolfin

nobody/Laurent: sounds like you were using an older version. However
since you give us no details on your setup, I can't really say much more.

Kirben: hm, version 0x100? We could add that to the list, I guess.
Although it's odd :-). Try modifying sound/voc.cpp, and extend the
version check, does that help?
assert(version == 0x010A || version == 0x0114);
--->
assert(version == 0x010A || version == 0x0114 || version ==
0x0100);

comment:13 Changed 15 years ago by fingolfin

Priority: normalhigh

comment:14 Changed 15 years ago by Kirben

I added the invalid version used by French version of Simon
the Sorcerer 2 and it works fine now.

Could someone with German version of DOTT disk version
please try the current Windows daily snapshot to see if it
helps. If the problem still occurs, paste the last few lines of
output from console window.

comment:15 Changed 15 years ago by SF/trinity78

Yes, all crashes are fixed with the latest changes. Works
perfect again.

Thanks Kirben and Fingolfin :)

comment:16 Changed 15 years ago by Kirben

Status: newclosed

comment:17 Changed 15 years ago by Kirben

Resolution: fixed

comment:18 Changed 4 weeks ago by Peter Kohaut <peterkohaut@…>

Last edited 4 weeks ago by criezy (previous) (diff)
Note: See TracTickets for help on using tickets.