This fixes the Indiana Jones and the Fate of Atlantis specific issue reported
in bug #6242 "AUDIO: Built-In MT-32 MUNT Produces Wrong Sounds".
Delaying MIDI events has been introduced with Munt 1.3.0.
Regression from 00992c1e68444a8123ffc89a971751cecf7287ed.
This reverts commit 908d2f39d7579c3f1781f7dedc7b26366a6d3dfc.
The licence of the SHA1 code that munt is using is unclear.
Reverting until it's sorted properly, for now
This ensures that the capabilities of the detected ROM files are
set properly from the list of known ROMs. This is mostly needed
for the extra samples of the CM32-L ROMs
(This works around issues with some Indy 3 sound tracks. These tracks seem to be broken, since they have way too long duration values for some notes which would fill up the event buffer rather quickly. I tested with the UNZ emulator to be sure that this is an issue which also occurs with the original driver.)
This keeps the original MUNT code in showLCDMessage/printDebug and simply
comments it out. This *silences* a warning about debug use in our former
default replacement code. Since we already implement a ReportHandler there
is no need to adapt the default implementation.
This is not the cleanest way but the solution which requires the least changes
to MUNT code.
This removes overwrites in ReportHandlerScummVM which are simply the default
implementation anyway. A side effect is that this silences/fixes a warning
about the former onProgramChanged to hide an virtual method due to parameter
differences.
MIDI code will control volume via MIDI events thus the generated audio should
not be affected by mixer sound volumes.
The initial commit 0e6cdfd67580f75e912c5e92abb26821d032f74b added it as music
sound type. Might be copied from the (also) incorrect FluidSynth code.
MIDI code will control volume via MIDI events thus the generated audio should
not be affected by mixer sound volumes.
The initial commit(s) in d4d045b1174b4a48659f39f026ade42684b679bf /
13dc149ded691e718905049990dd0220230c500e added it as music sound type.
So, this seems to be a long standing issue.
Formerly the audio stream was registered as sfx. This is incorrect behavior
since the client code will control music volume with MIDI events on its own.
It seems 67b311713d8f4cfcd460a9649e0075f24278a048 introduced this very long
ago.
This should fix unintended coupling of sfx volume and music volume in BASS.
At the point where the emulator is created extrapath should already been
added to extrapath. If not, the check in checkDevice already failed and thus
adding it would be too late anyway.
It seems this was added in 805b21181ab7138da6960ade703b25716120fc29. The
comment about it being a HACK has been removed in bbad3f333a9227ccb1de633a0fe92d9e01ad7bb3
but it's not clear to my why... At any rate, this should not be here.