Opened 12 months ago
Closed 12 months ago
#13392 closed defect (fixed)
Monkey Island 1 endless loop
|Reported by:||Neumi7712||Owned by:||eriktorbjorn|
When starting The Secret of Monkey Island (VGA, english) and not pressing anything, the "Part One The Tree Trials" screen won't go away and the music will play in a loop.
It's a minor inconvinience, by pressing ESC the game continues as it should. Important: Don't press anything until that scene. If you press ESC at any point before, it will continue without looping.
Just in case, here's my configuration.
description=Monkey Island 1: The Secret of Monkey Island (DOS, VGA, English)
path=E:\GamesScumm\Monkey Island 1 (VGA, e)\
tested with 2.5.1 release and daily build 2022-04-04.
Change History (3)
comment:1 by , 12 months ago
comment:2 by , 12 months ago
Nice funky loop :)
@eriktorbjorn: Your diff works well with both my floppy VGA and EGA versions from the Limited Run Games set. They both had the same bug, which disappears with your diff.
comment:3 by , 12 months ago
|Status:||new → closed|
Thanks for confirming that the EGA version had the same bug. As far as I know, the only other game that uses this MIDI parser is Loom, and that game does not - to the best of my knowledge - ever loop music.
I've committed my proposed fix. Let me know if there's still problems with the next daily build.
I can reproduce this with the VGA floppy version (the one with text inventory, rather than icons), so I guess that's what we're talking about here.
The script loops until the music ends. But with MIDI / MT-32 music, it keeps looping so it never stops. (AdLib works fine.)
But it also only seems to happen if the tune before it is allowed to loop. If you press "." to skip the lines, you can get through the scene before that happens, and then the chapter screen will work as expected.
The "music should loop" property is set by a MIDI message. But it's not cleared when a new tune is loaded, so any looping track will cause all subsequent tracks to loop. That seems wrong, and I think that's the problem here.
As far as I can tell, every song in MI1 VGA sets the auto loop flag at the end. But the player is also used by at the very least MI1 EGA. I don't own that version, so I can't test that. Either way, I'd like to discuss with someone before committing this fix: