From 16ba51c20c044ff851d11dc5128519133576f4fe Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Wed, 6 Mar 2019 22:08:53 +0100 Subject: [PATCH] Clean up after audio and video --- SourceX/sound.cpp | 4 ++-- SourceX/storm.cpp | 18 +++++++++++------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/SourceX/sound.cpp b/SourceX/sound.cpp index 20f80e32d..23da34eec 100644 --- a/SourceX/sound.cpp +++ b/SourceX/sound.cpp @@ -131,7 +131,7 @@ void __fastcall sound_create_primary_buffer(HANDLE music_track) void __cdecl sound_cleanup() { snd_update(TRUE); - //SVidDestroy(); + SVidDestroy(); SFileDdaDestroy(); if (sglpDS) { @@ -215,7 +215,7 @@ int __fastcall sound_get_or_set_music_volume(int volume) sglMusicVolume = volume; if (sgpMusicTrack) - Mix_VolumeMusic(128 - 128 * volume / -1600); + SFileDdaSetVolume(sgpMusicTrack, volume, 0); return sglMusicVolume; } diff --git a/SourceX/storm.cpp b/SourceX/storm.cpp index 26273bb89..08d32c834 100644 --- a/SourceX/storm.cpp +++ b/SourceX/storm.cpp @@ -72,8 +72,9 @@ BOOL STORMAPI SFileDdaInitialize(HANDLE directsound) BOOL STORMAPI SFileDdaSetVolume(HANDLE directsound, signed int bigvolume, signed int volume) { - DUMMY(); - return 0; + Mix_VolumeMusic(128 - 128 * bigvolume / -1600); + + return TRUE; } BOOL STORMAPI SFileGetFileArchive(HANDLE hFile, HANDLE archive) @@ -351,11 +352,11 @@ BOOL STORMAPI SRegSaveValue(const char *keyname, const char *valuename, BYTE fla return TRUE; } -// BOOL STORMAPI SVidDestroy() -//{ -// UNIMPLEMENTED(); -//} -// +BOOL STORMAPI SVidDestroy() +{ + DUMMY(); +} + // BOOL STORMAPI SVidInitialize(HANDLE video) //{ // UNIMPLEMENTED(); @@ -536,6 +537,9 @@ BOOL STORMAPI SVidPlayEnd(HANDLE video) SVidBuffer = NULL; } + SDL_FreePalette(SVidPalette); + SDL_FreeSurface(SVidSurface); + SFileCloseFile(video); video = NULL;