SDL_mixer can only stream a single music track
SDL_audiolib has unlimited streams.
With this change, we finally have streaming sounds (respecting
sfx_STREAM).
Audio options can now also be set via diablo.ini, which should help us
better diagnose the static noise issues.
Fix for Vita
Update to use free functions
Use std::optional to allow setting empty paths
Change header inclusion order
Co-authored-by: Gleb Mazovetskiy <glex.spb@gmail.com>
Use std::optional to allow setting empty paths
Apply clang-format
Temporary commit
`MPQ_FLAG_READ_ONLY` -> `MPQ_OPEN_READ_ONLY`.
The former is a flag that is set on an MPQ that was open in read-only
mode. To request opening in read-only mode, `MPQ_OPEN_READ_ONLY` should
be used instead.
1. Cleans up SVidVideoMode detection.
2. For devices where detection is not possible but it is known
to work, adds an `SDL1_FORCE_SVID_VIDEO_MODE` define.
`DVL_ERROR_HANDLE_EOF` was defined incorrectly on Windows.
These error codes are used and returned by Storm. Moves them
from `miniwin.h` to `storm.h`.
Also adds `STORM_ERROR_FILE_NOT_FOUND`, to be used in a follow-up PR.
SErrGet/SetLastError were not propagating errors from 3rdParty/StormLib
because StormLib uses native Windows functions on Windows and defines
its own on Linux.
Also removes storm_full.h