residualvm/residualvm — pull request #1128 by bgK (2014-12-13 13:35:14+00:00)
Title: MYST3: Add support for the Xbox version

The Xbox version has minor changes when compared to the Windows / Mac version:
- Title videos are played before the menu is displayed
- The making of video is available through the main menu
- The savegame sections of the menu use a grid of thumbnails instead of a list of file names
- The Narayan shields have an additional GFX effect
- The cursor is not visible, unless it hovers a hotspot
- The music is encoded using WMA instead of MP3
- The subtitles are prerendered images instead of TrueType rendered text

While the original played with a gamepad, ResidualVM still only supports keyboard and mouse. The controls are as follow:
- Mouse: Look around and interact
- Direction keys: Change selection
- Enter: Confirm
- Escape: Cancel / Back / Skip
- F5: Open menu

The engine only required minor changes to support this version. I am not requesting a review of the Myst III engine part of this pull request, although comments are welcome.

Most of the changes are due to adding the WMA decoder from xoreos. There are also a few changes to common files.

Current state of the Xbox version is as follow:
- Audio is stuttering when playing specific chapters of the making of video, due to bug #1038 in the Bink seek code, for which I do not have a fix.
- Playing the later chapters of the making of video make the game crash due to the video code overflowing the timestamp. This commit fixes it: https://github.com/bgK/scummvm/commit/503effdccc1c2a9decddf35813b33fe6de92e028
- Everything else I've tested played fine. However, my testing was not thorough, there may still be bugs.

Please note that I'd like this code to be merged after the next release, to be sure it does not introduce regressions in the release build.