This fixes bug #7076 "LOOM: AdLib sound effect not stopped at Cygna's grave.".
Original SCUMM (I checked Monkey Island EGA) implemented Sound::isSoundRunning
by checking whether the sound resource of the requested sound id is locked. We
use actual sound state inside the player.
Engines should only have to call one set of functions and not decide between the two. In fact, the 'emulation' API was documented to just call the 'real CD' API.
The original check broke if either DOTT or MM had a trailing path
separator in the game path. The new check is too broad, but the risk of
false positives should be minimal.
The one in e11a370fe4 would break if one
of the two had a separator, but not both.
It turns out that in some versions of ScummVM, paths end with a
directory separator, while in others they don't. This should handle
both cases, I hope. (It's a bit tricky for me to test.)
When adding support for Russian fan translations the font source data was
accidentally switched to the Russian font data for all game versions, not just
the Russian one. Now we only use the Russian font data only for the Russian
versions.
Bug #7071 "MM V2: Umlauts disappeared in German versions" is a regression from
556d65713b.
Bug #7070 "ZAK V2: Umlauts disappeared in German versions" is a regression from
c809a65b93.
Some backends like GCW0 do no support graphics >320x240 due to
the hardware limitation (downscaling is possible but it will ruin
the pixel hunting which is often part of the gameplay).
Instead of manually updating the list of engines, we now introduce
a new dependency.
I marked all relevant engines, but some, like tinsel, require more
work with putting their relevant high-res games under USE_HIGHRES
define.
This includes a TODO to check which SCUMM games actually exhibit this behavior
originally. cbd867329e added this behavior to our
backend code initially.