Opened 11 years ago

Closed 8 years ago

Last modified 8 years ago

#3985 closed defect (fixed)

KYRA2: WinCE:Music on Menu freezes and goes to infinity

Reported by: SF/titan4 Owned by: CeRiAl
Priority: normal Component: Engine: Kyra
Keywords: Cc:
Game: Kyrandia 2

Description

ScummVM version 0.12.0 (official build)

Details: When running Kyra2 on Windows Mobile 6.1 (HTC Touch Pro) one tone in music starts to play to infinity and goes like that until i start a new game or start introduction. In introduction same thing happens a moment after start in first scene.

Version/Language of game: CD Version/English
Platform: WIN CE

AFAIK Same bug happened in previous subversions with kyra2 support.

titan4 <titan4(at)centrum(dot)cz>

Ticket imported from: #2138118. Ticket imported from: bugs/3985.

Change History (17)

comment:1 Changed 11 years ago by SF/titan4

Summary: WinCE:Music on Menu or in Intro freezes and goes to infinityKYRA2:WinCE:Music on Menu freezes and goes to infinity

comment:2 Changed 11 years ago by fingolfin

Does this work OK for your on your desktop computer?

comment:3 Changed 11 years ago by fingolfin

Owner: set to SF/knakos
Summary: KYRA2:WinCE:Music on Menu freezes and goes to infinityKYRA2: WinCE:Music on Menu freezes and goes to infinity

comment:4 Changed 11 years ago by SF/titan4

Yes it does. It works OK on Win32 Version.

comment:5 Changed 10 years ago by SF/knakos

This is a semi-regular bug I remember having from release 0.8.0 onwards (it must be older though). It is too difficult for me to debug it. It seems it has something to do with the mixing rate and the adlib/midi/whateverthisis emulator. The ce port mixes with frequency equal to the game's original output rate to minimize upsampling processing. For kyra I think this is 11kHz. So at one point I theorized that the lower mixing rate somehow got the chip emulator confused, mostly by not shutting off channels (the note-off events). To add to the confusion, AFAIK the bug is not consistently reproducible across builds.

But it seems you're right. In kyra2 a note gets stuck at the menu right at the start consistently. I might take a look at this. Thanks for the report.

comment:6 Changed 10 years ago by sev-

What is the status of this item?

comment:7 Changed 10 years ago by lordhoto

I gave this problem a try and I can reproduce it also in a certain case in Kyra 1: The falling leaf right of the "Pool of Sorrow" scene.

It seems if I choose the DOSBox OPL emulator it's gone. At least I wasn't able to reproduce this in Kyra1 nor Kyra2 menu, while I was able to reproduce it with the MAME emulator.

I guess this might be related to the quality settings, which are lower on WinCE for the MAME emulator.

comment:8 Changed 9 years ago by bluegr

This issue has probably been fixed with r55256, can you please check if it still occurs?

comment:9 Changed 9 years ago by bluegr

Owner: changed from SF/knakos to bluegr

comment:10 Changed 9 years ago by lordhoto

KYRA does not use MIDI for the AdLib sound. Thus r55256 is totally unrelated to this bug. So I doubt it is fixed. Since the WinCE backend does not build currently there is also no possibility to test this.

comment:11 Changed 9 years ago by bluegr

Ah I thought that SMF MIDI is used for the Adlib music in KYRA, thus this isn't related to the MidiParser change. I suppose that MidiParser is used for MT-32/GM music then. So someone with more knowledge on WinCE should have a look at this - if we find someone to maintain the WinCE backend

comment:12 Changed 9 years ago by bluegr

Owner: bluegr deleted

comment:13 Changed 8 years ago by digitall

Owner: set to CeRiAl

comment:14 Changed 8 years ago by digitall

cerial23: Can you replicate this with current builds?

comment:15 Changed 8 years ago by CeRiAl

tdhs: Yes, I can still reproduce this with the current builds. However, this can be fixed by specifying the following in the [kyra2] section in scummvm.ini:
FM_high_quality=true
(this is also described in the port specific README).
Still I think I will change the default value for this and "high_sample_rate" to true as I think most devices today are fast enough to handle this. This will be of course documented in the port specific README, and it will still be possible to change these values to "false".
I will close the bug now.

comment:16 Changed 8 years ago by CeRiAl

Status: newclosed

comment:17 Changed 8 years ago by CeRiAl

Resolution: fixed
Note: See TracTickets for help on using tickets.