I haven't figured out a good way to an exit on save for all engines,
so I'm re-adding the save autosave on exit that Myst previously had,
to call the new common Engine autosave method
Unfortunately, this will only apply to new engines that
use the Engine::loadGameState method. Other existing engines call
loadGameState directly and provide their own implementations,
so there's nowhere convenient to add the call that'd work for
all of them
- Add initializations to constructors
- Use correct variable
- Fix unintended sign extension because of int promotion
- Use camelCase for variable names
In this case, the linker optimizes out Debugger which get required
later by Engine due to @dreammaster rework. Building with all engines
prevents optimization because several engines subclass Debugger and they
are included before gui.a in linker command line
Lands of Lore sends several drumkit changes to Roland GS
devices with incorrect drumkit numbers. This would work
on some earlier devices like the SC-55, because they correct
these invalid selections. This change emulates the
corrections of the SC-55, so that the drumkit changes will
work on later Roland GS devices.
This adds support for the Roland GS drumkits used by SQ5 and QfG3.
The original Sierra GM driver does not pass the drumkit select MIDI
messages to the GM device, but they do exist in the MIDI data.
Another issue is that the drumkit numbers used are incorrect. This
does work on the original Roland SC-55 devices because they correct
the drumkit numbers. Later devices do not do this. Code has been
added to correct these wrong drumkit numbers.
- memory leak in loadHLZ when file couldn't be opened (CID 1401735)
- use of out of scope reference (nullptr) when script couldn't be found
(CID 1401734)