#5525 closed defect (fixed)
MIDI channel aftertouch ignored in SCI (patch inside)
Reported by: | SF/sven3000 | Owned by: | bluegr |
---|---|---|---|
Priority: | normal | Component: | Engine: SCI |
Version: | Keywords: | ||
Cc: | Game: | King's Quest 4 |
Description
In King's Quest 4 SCI, I repeatedly encountered the message "WARNING: Ignoring MIDI event d0". This MIDI command is the MIDI "channel aftertouch" message, and for some reason it is ignored by the SCI MIDI driver. This is because "case 0xd0" is not handled in the MidiPlayer_Midi::send function.
Although I have only seen this problem in KQ4 so far, I suppose it could occur in any SCI game that uses the channel aftertouch messages.
Attached is a patch that fixes this issue. It simply forwards the channel aftertouch messages to the driver as is. Further testing might be needed to see if this cause any side-effects.
This issue was observed on ScummVM 1.2 and 1.3svn54422 on Windows 7 x64, with game versions 1.000.111 and 1.006.004.
Ticket imported from: #3116614. Ticket imported from: bugs/5525.
Attachments (1)
Change History (5)
by , 14 years ago
Attachment: | midi_aftertouch.patch added |
---|
comment:1 by , 14 years ago
Component: | → Engine: SCI |
---|---|
Game: | → King's Quest 4 |
comment:2 by , 14 years ago
I just noticed the function also ignores case 0xA0, which is the polyphonic aftertouch message. Although I've not yet seen a situation in any SCI game that I've played with ScummVM where those are actually used, you might want to consider handling these properly as well (live with D0, forwarding them directly to the driver should probably work).
comment:3 by , 14 years ago
Just talked this over with waltervn, and we're now ignoring these in the MIDI driver, like with the Adlib driver
SSCI originally didn't handle aftertouch, so we shouldn't either. MT-32 doesn't support aftertouch anyway, according to its manual, so this shouldn't make any audible difference. The only place where it would make a difference is in GM, but this might make the music different in GM, so again, I believe that the best thing to do is disable these instead of supporting them
comment:4 by , 14 years ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Patch to enable handing of channel aftertouch messages in the SCI MIDI code.