Actually, even before this change it was possible. However, since we formerly
used the original channel specification it was not possible when two sfx were
started on the same channel. Now we can play such sounds simultaneously again.
This is a first step towards a AdLib support level we had when we tried to
convert SFX to MIDI to play it through iMuse. However, now we still play the
sound effects properly, i.e. they still sound like in the original.
A compiler could in principle decide that a ResType enum can
never equal 0xFF or 0xFFFF, and thus incorrectly optimize
the ScummEngine::saveOrLoad code. So check the value
*before* casting it.
This was introduced by fd3970aa52:
Apply patch #2984508 - "GSoC: SCUMM stopped audio from playing while
saving"
This was not quite correct as if the save fails, the function exits
without unpausing the engine, which resulted in sound and music
remaining muted. This corrects the logic to unpause in all cases.
Each engine now only has to provide a single configure.engine file
adding the engine into the configure script, which then produces the
required other files automatically.
This is the third and final commit enabling fully pluggable engines.
Now providing an engine folder contains a configure.engine, engine.mk
and engine-plugin.h file, it will be picked up automatically by the
configure script.
This is the second part of allowing engines to be added dynamically.
Each folder in engines/ which must contain a file named "engine.mk"
containing the make definitions for that engine.
This is the first part of allowing engines to be added dynamically.
They are placed into a folder in engines/ which must contain a file
named "configure.engine" to add the engine, which is pulled into the
top level configure script automatically.
Rename "player" directory to "players", and reintroduce the "player_"
file prefix. This has been done after sev's request.
"players/player_foo.*" is more descriptive, and avoids potential name
clashes in libraries
This makes HE follow the ScummVM convention of using the target name everywhere. It also fixes having more than one team in both soccer and football.
Loading old saves will still work and they will be tried if the newer save names are not found.