Accepting request 934062 from home:gcomes.obs

- Update to 2.5.0
  New games:
  * Added support for Grim Fandango.
  * Added support for The Longest Journey (only on some desktop platforms).
  * Added support for Myst 3: Exile (only on some desktop platforms).
  * Added support for Little Big Adventure.
  * Added support for Red Comrades 1: Save the Galaxy.
  * Added support for Red Comrades 2: For the Great Justice.
  * Added support for Transylvania.
  * Added support for Crimson Crown.
  * Added support for OO-Topos.
  * Added support for Glulx interactive fiction games.
  * Added support for Lure of the Temptress Konami release.
  * Added support for Private Eye.
  * Added support for Spanish Blue Force.
  * Added support for Spanish Ringworld.
  * Added support for Spanish Amazon: Guardians of Eden.
  * Added support for AGS Games versions 2.5+.
  * Added support for Nightlong: Union City Conspiracy.
  * Added support for The Journeyman Project 2: Buried in Time.
  * Added support for Crusader: No Remorse.
  * Added support for L-ZONE.
  * Added support for Spaceship Warlock.
  New ports:
  * The Nintendo DS port got a major rewrite.
  General:
  * Switched ScummVM GUI output to UTF-32.
  * Updated the Roland MT-32 emulation code to the Munt project’s mt32emu 2.5.1.
  * Updated Dropbox Cloud Storage to use the new Dropbox OAuth workflow.
  * Major extension to the number of supported graphics scalers.
  * Display path to scummvm configuration file in GUI -> Options -> Paths.
  * Added new optional dependency, giflib >= 5.0.0. Used by some version of LBA.
  * Added HiDPI support to the ScummVM GUI.
  * Added command line option --window-size for specifying ScummVM window size,
  * applicable only to the OpenGL renderer.
  * Fixed switching to the default graphics mode. This was sometimes not applied
  * until restarting ScummVM or starting a game.
  * ScummVM GUI has been fully translated into Korean and Japanese.
  * Added GUI option for enabling and disabling the Discord RPC integration.
  ADL:
  * Added support for Mystery House French translation.
  * Added support for several game variants.
  AGI:
  * Added support for Russian versions. Input now works.
  AGOS:
  * Added support for the Japanese PC-98 version of Elvira 1.
  CGE:
  * Added option to use Text To Speech for Soltys.
  CGE2:
  * Added option to use Text To Speech for Sfinx.
  Cine:
  * Added detection for Future Wars CD version with French translation patch.
  * Added detection for Italian Amiga Operation Stealth.
  * Fixed crash before entering secret base.
  * Fixed space missing in verb line.
  * Fixed vertically overflowing message boxes.
  Dreamweb:
  * Rendering fixes for Russian fan translation.
  Glk:
  * Fixed savegame issues with several subengines.
  * Fixed memory overrun in Level9 game detector.
  * Added detections for 2020 IF Comp games.
  * Enabled Glulx sub-engine.
  Gob:
  * Added support for Bargon Attack Russian translation.
  * Added support for Woodruff Russian translation.
  Griffon:
  * Fixed Return to Launcher from The Griffon Legend.
  * Added option to use Text To Speech in The Griffon Legend
  Grim:
  * Added support for Brazillian Portuguese Grim Fandango.
  Kyra:
  * Added support for the Japanese Sega-CD version of Eye of the Beholder.
  * Added support for the Hebrew fan translation of Legend of Kyrandia.
  * Added support for the Hebrew fan translation of Legend of Kyrandia 2.
  * Added support for the Simplified Chinese version of Legend of Kyrandia 3.
  * Added support for the playable demo of Lands of Lore.
  Lure:
  * Fixed fire animation in first room when loading saves.
  * Fixed AdLib support.
  * Fixed MT-32 support.
  Pegasus:
  * Added support for DVD/GOG.com release.
  Queen:
  * Added support for German Amiga floppy release.
  SAGA:
  * Added support for ITE GOG Mac CD v1.1.
  * Added support for ITE PC-98 Japanese.
  SCI:
  * Added RGB rendering mode (16/32bpp) for SCI0 - SCI1.1 games, which addresses palette
  * issues in screen transitions and avoids mode changes when playing Mac QuickTime videos.
  * Added custom palette mods for SQ3 and LSL2 from the FreeSCI project.
    When enabled, the mods improve the visuals
  * in these two games.
  * Added support for Macintosh version of Gabriel Knight 1.
  * Added support for CD-Audio version of Mixed-Up Mother Goose.
  * Added support for Korean fan translations from the scummkor project: Castle of Dr. Brain,
  * EcoQuest 1, Gabriel Knight 1, King’s Quest 1, 5, and 6, Laura Bow 2, and Space Quest 4.
  * Added support for Space Quest 4 Update 1.3 by New Rising Sun.
  * Added support for French LSL1VGA.
  * Added support for Hebrew QFG1VGA.
  * Added support for Hebrew GK1.
  * Added support for Russian Longbow.
  * Added support for Russian LSL6.
  * Added support for alternate Russian LSL7.
  * Added support for alternate Polish LSL7 including files packaged with InstallShield.
  * Added support for alternate Russian SQ5.
  * Added support for alternate Russian Torin’s Passage.
  * Added support for fan game Soulshade Asylum.
  * SCI1.1 views are now scaled accurately.
  * Fixed sounds not stopping or restarting correctly.
  * Fixed sound issues when restoring SCI0 games.
  * Fixed corruption when “Prefer digital sound effects” was disabled in SCI1 games.
  * Space Quest 4 CD sound effects now match the selected platform.
  * Added option to enable Windows cursors in CD versions of King’s Quest 5 and Space Quest 4.
  * Fixed “Girl In The Tower” song not playing at the end of King’s Quest 6 CD.
  * Fixed King’s Quest 5 Amiga beach error that prevented completing the game.
  * Fixed over 30 script bugs in GK1, HOYLE4, KQ1DEMO, KQ5, KQ6, KQ7, LB1,
  * LSL3, PEPPER, PQ3, QFG3, SQ1, SQ4, and SQ6.
  * Unlocked JANE easter egg in Gabriel Knight 1.
  SCUMM:
  * Fixed Chinese, Japanese and Korean text display for The Dig and for
    The Curse of Monkey Island. These fixes
  * also include some improvements to the common text display (mainly the formatting of wrapped texts).
  * Fixed display of Chinese, Japanese and Korean pause and restart dialogs.
  * Added support for numerous Korean translations from scummkor project.
  * Added support for Russobit-M versions of Pajama2 and SpyOzone.
  * Fixed speech playback in Akella version of COMI.
  * Added support for Discord and Humble Bundle versions of Indiana Jones and the Fate of Atlantis.
  * Added smooth scrolling for FM-TOWNS versions of games.
  * Added optional trimming to 200 pixels for some FM-TOWNS games, so aspect-ratio correction is possible.
  * Fixed audio distortion in Loom for PC-Engine.
  * Added support for the high resolution font and cursor in the 16-color Macintosh version of Loom.
  * Added support for Japanese Mac version of The Dig.
  * Added partial support for the high resolution fonts and cursor in the
  * 16-color Macintosh version of Indiana Jones and the Last Crusade.
  * Fixed missing instruments in the m68k Mac versions of Monkey Island 2
  * and Indiana Jones and the Fate of Atlantis.
  * Added “Macintosh b/w” render mode for the 16-color Macintosh versions of
  * Loom and Indiana Jones and the Last Crusade.
  * Enabled difficulty selection in the version of Monkey Island 2 that was
  * included on the LucasArts Mac CD Game Pack II compilation. (It had been
  * disabled along with the copy protection.)
  * Repaired clumsy crack in Maniac Mansion (enhanced)'s keypad script.
  * This means that the GOG and Steam versions will no longer accept incorrect
  * numbers, e.g. for Edna’s phone number. (Why are they selling a cracked
  * version anyway?!)
  * Added support for Low quality music in Macintosh version of Loom.
  * Improved Digital iMUSE accuracy for Full Throttle and The Curse of Monkey Island.
    These improvements also fix several audio related bugs for both games.
  * Fixed a very old regression in the walk code for Full Throttle which softlocked the game.
  * Improved the accuracy of the walk code for The Dig and The Curse of Monkey Island.
  * Fixed a bug in The Curse of Monkey Island which prevented, during the cannon minigame
    in Part 1, the destruction of one of the three destroyable turrets in the fort.
  * Added animated cigar smoke to the close-up of captain Smirk in the CD
  * version of Monkey Island 1. It was present in earlier versions.
  * Restored some missing Lemonhead lines in the English, Italian, German and Spanish CD
  * versions as well as the English Macintosh, FM-Towns and Sega CD versions
  * of Monkey Island 1.
  * Made the clock tower in Monkey Island 1 behave the same in the CD version
  * as in earlier versions, i.e. after examining it you have to leave the
  * room and come back again for its description to change.
  Tinsel:
  * Enabled the Return to Launcher feature.
  Titanic:
  * Fixed crashes when asking bots what I should do.
  TsAGE:
  * Added support for uninstalled floppy version.
  Stark:
  * Added support for Hungarian translation.
  Supernova:
  * Added Italian translation for part 1.
  Sword25:
  * Made the extracted version working.
  * Fixed crash when selecting Croatian language.
  Ultima:
  * Ultima 4: Added several debugger commands.
  * Ultima 4: Allow Enter key to exit ZStats display.
  * Ultima 8: Fixed several animation bugs for events and objects.
  * Ultima 8: Restored original text for the Spell of Resurrection book.
  Xeen:
  * Fixed occasional border corruption during fights.
  * Improvements to cutscenes to better match the original games.
  * Fixes for character selection, deselection, and dismissing to better match original.
  * Added support for Russian version.
  AmigaOS port:
  * Added native system file browser feature.
  * Re-activated nuked OPL Adlib driver.
  Big-endian ports:
  * Fixed crashes or rendering issues with the Blazing Dragons, Duckman and
  * Full Pipe games.
  iOS port:
  * Fixed using arrow keys on physical keyboard in iOS 15.
  * Fixed rotating the device while ScummVM is inactive.
  * Added support for upside down portrait orientation.
  macOS port:
  * Added support for Dark Mode.
  * Use OpenGL renderer by default, providing better support for HiDPI displays.
  MorphOS port:
  * Added native system file browser feature.
  * Added Cloud feature.
  * Re-activate nuked OPL Adlib driver.
  * Added CAMD MIDI driver support.
  Windows port:
  * Use OpenGL renderer by default, providing better support for HiDPI displays.
- Drop all patches to fix build with fluidsynth 2.2 (0001-0006)
- enable build with libmpeg2
- add BuildRequires:  liba52-devel libSDL2_net-devel libcurl-devel libspeechd-devel
                      fribidi-devel giflib-devel glew-devel

OBS-URL: https://build.opensuse.org/request/show/934062
OBS-URL: https://build.opensuse.org/package/show/games/scummvm?expand=0&rev=67
This commit is contained in:
Matthias Mailänder 2021-11-27 08:27:38 +00:00 committed by Git OBS Bridge
parent 1499fe8af5
commit fe8ee9d988
10 changed files with 231 additions and 329 deletions

View File

@ -1,57 +0,0 @@
From 08b54f489b663793168764986c1d1a834c33add3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Torbj=C3=B6rn=20Andersson?=
<eriktorbjorn@users.sourceforge.net>
Date: Wed, 13 Jan 2021 09:44:44 +0100
Subject: [PATCH] FLUIDSYNTH: Make FluidSynth logging less noisy by default
---
audio/softsynth/fluidsynth.cpp | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index e0d7c4e3df33..fe2b0689c283 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -46,6 +46,29 @@
#include "backends/platform/ios7/ios7_common.h"
#endif
+static void logHandler(int level, const char *message, void *data) {
+ switch (level) {
+ case FLUID_PANIC:
+ error("FluidSynth: %s", message);
+ break;
+ case FLUID_ERR:
+ warning("FluidSynth: %s", message);
+ break;
+ case FLUID_WARN:
+ debug(2, "FluidSynth: %s", message);
+ break;
+ case FLUID_INFO:
+ debug(1, "FluidSynth: %s", message);
+ break;
+ case FLUID_DBG:
+ debug(3, "FluidSynth: %s", message);
+ break;
+ default:
+ fluid_default_log_function(level, message, data);
+ break;
+ }
+}
+
class MidiDriver_FluidSynth : public MidiDriver_Emulated {
private:
MidiChannel_MPU401 _midiChannels[16];
@@ -166,6 +189,12 @@ int MidiDriver_FluidSynth::open() {
if (_isOpen)
return MERR_ALREADY_OPEN;
+ fluid_set_log_function(FLUID_PANIC, logHandler, NULL);
+ fluid_set_log_function(FLUID_ERR, logHandler, NULL);
+ fluid_set_log_function(FLUID_WARN, logHandler, NULL);
+ fluid_set_log_function(FLUID_INFO, logHandler, NULL);
+ fluid_set_log_function(FLUID_DBG, logHandler, NULL);
+
#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
// When provided with in-memory SoundFont data, only use the configured
// SoundFont instead if it's explicitly configured on the current game.

View File

@ -1,32 +0,0 @@
From 21d65cedf231cb03cd2e63863bd6d9d6bc70ed1d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Torbj=C3=B6rn=20Andersson?=
<eriktorbjorn@users.sourceforge.net>
Date: Mon, 8 Mar 2021 20:19:22 +0100
Subject: [PATCH] FLUIDSYNTH: Swapped debug levels for FLUID_WARN and
FLUID_INFO
If FLUID_INFO is "verbose informational messages", perhaps they should
be better hidden from the average user than warnings. Particularly since
warnings are the only kind I've actually seen in the wild. (Change
suggested by criezy.)
---
audio/softsynth/fluidsynth.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index fe2b0689c283..e41a7515b205 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -55,10 +55,10 @@ static void logHandler(int level, const char *message, void *data) {
warning("FluidSynth: %s", message);
break;
case FLUID_WARN:
- debug(2, "FluidSynth: %s", message);
+ debug(1, "FluidSynth: %s", message);
break;
case FLUID_INFO:
- debug(1, "FluidSynth: %s", message);
+ debug(2, "FluidSynth: %s", message);
break;
case FLUID_DBG:
debug(3, "FluidSynth: %s", message);

View File

@ -1,22 +0,0 @@
From a3bc5d64b8c4041326c8a214c47f9a206fb8b693 Mon Sep 17 00:00:00 2001
From: sluicebox <22204938+sluicebox@users.noreply.github.com>
Date: Mon, 8 Mar 2021 21:00:59 -0800
Subject: [PATCH] FLUIDSYNTH: Fix build
---
audio/softsynth/fluidsynth.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index e41a7515b205..215547c6bad4 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -46,7 +46,7 @@
#include "backends/platform/ios7/ios7_common.h"
#endif
-static void logHandler(int level, const char *message, void *data) {
+static void logHandler(int level, char *message, void *data) {
switch (level) {
case FLUID_PANIC:
error("FluidSynth: %s", message);

View File

@ -1,27 +0,0 @@
From 6ef406ac20a68f53e66bb98a0c9842dc9553da07 Mon Sep 17 00:00:00 2001
From: Thierry Crozat <criezy@scummvm.org>
Date: Tue, 9 Mar 2021 11:32:57 +0000
Subject: [PATCH] AUDIO: Fix compilation with Fluidsynth2
---
audio/softsynth/fluidsynth.cpp | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index 215547c6bad4..3b9f55346437 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -46,7 +46,12 @@
#include "backends/platform/ios7/ios7_common.h"
#endif
-static void logHandler(int level, char *message, void *data) {
+#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
+static void logHandler(int level, const char *message, void *data)
+#else
+static void logHandler(int level, char *message, void *data)
+#endif
+{
switch (level) {
case FLUID_PANIC:
error("FluidSynth: %s", message);

View File

@ -1,66 +0,0 @@
From 631b13b5f4990b667e19d9fbdc467f0c873b6c15 Mon Sep 17 00:00:00 2001
From: Le Philousophe <lephilousophe@users.noreply.github.com>
Date: Mon, 5 Apr 2021 12:22:51 +0200
Subject: [PATCH] FLUIDSYNTH: Simplify FluidSynth version check
---
audio/softsynth/fluidsynth.cpp | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index 3b9f55346437..e770fb68543b 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -46,7 +46,15 @@
#include "backends/platform/ios7/ios7_common.h"
#endif
-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
+// We assume here Fluidsynth minor will never be above 255 and
+// that micro versions won't break API compatibility
+#if defined(FLUIDSYNTH_VERSION_MAJOR) && defined(FLUIDSYNTH_VERSION_MINOR)
+#define FS_API_VERSION ((FLUIDSYNTH_VERSION_MAJOR << 8) | FLUIDSYNTH_VERSION_MINOR)
+#else
+#define FS_API_VERSION 0
+#endif
+
+#if FS_API_VERSION >= 0x0200
static void logHandler(int level, const char *message, void *data)
#else
static void logHandler(int level, char *message, void *data)
@@ -103,7 +111,7 @@ class MidiDriver_FluidSynth : public MidiDriver_Emulated {
void setEngineSoundFont(Common::SeekableReadStream *soundFontData) override;
bool acceptsSoundFontData() override {
-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
+#if FS_API_VERSION >= 0x0200
return true;
#else
return false;
@@ -162,7 +170,7 @@ void MidiDriver_FluidSynth::setStr(const char *name, const char *val) {
// Soundfont memory loader callback functions.
-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
+#if FS_API_VERSION >= 0x0200
static void *SoundFontMemLoader_open(const char *filename) {
void *p;
if (filename[0] != '&') {
@@ -200,7 +208,7 @@ int MidiDriver_FluidSynth::open() {
fluid_set_log_function(FLUID_INFO, logHandler, NULL);
fluid_set_log_function(FLUID_DBG, logHandler, NULL);
-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
+#if FS_API_VERSION >= 0x0200
// When provided with in-memory SoundFont data, only use the configured
// SoundFont instead if it's explicitly configured on the current game.
bool isUsingInMemorySoundFontData = _engineSoundFontData && !ConfMan.getActiveDomain()->contains("soundfont");
@@ -280,7 +288,7 @@ int MidiDriver_FluidSynth::open() {
const char *soundfont = !isUsingInMemorySoundFontData ?
ConfMan.get("soundfont").c_str() : Common::String::format("&%p", (void *)_engineSoundFontData).c_str();
-#if defined(FLUIDSYNTH_VERSION_MAJOR) && FLUIDSYNTH_VERSION_MAJOR > 1
+#if FS_API_VERSION >= 0x0200
if (isUsingInMemorySoundFontData) {
fluid_sfloader_t *soundFontMemoryLoader = new_fluid_defsfloader(_settings);
fluid_sfloader_set_callbacks(soundFontMemoryLoader,

View File

@ -1,108 +0,0 @@
From d0d38b0199dae9a1dbfecc53db54dd0a070694b4 Mon Sep 17 00:00:00 2001
From: Le Philousophe <lephilousophe@users.noreply.github.com>
Date: Mon, 5 Apr 2021 12:23:26 +0200
Subject: [PATCH] FLUIDSYNTH: Fix compilation with Fluidsynth 2.2
We replace deprecated functions as well
---
audio/softsynth/fluidsynth.cpp | 43 ++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/audio/softsynth/fluidsynth.cpp b/audio/softsynth/fluidsynth.cpp
index e770fb68543b..f01dd8c7362b 100644
--- a/audio/softsynth/fluidsynth.cpp
+++ b/audio/softsynth/fluidsynth.cpp
@@ -180,11 +180,19 @@ static void *SoundFontMemLoader_open(const char *filename) {
return p;
}
+#if FS_API_VERSION >= 0x0202
+static int SoundFontMemLoader_read(void *buf, fluid_long_long_t count, void *handle) {
+#else
static int SoundFontMemLoader_read(void *buf, int count, void *handle) {
+#endif
return ((Common::SeekableReadStream *) handle)->read(buf, count) == (uint32)count ? FLUID_OK : FLUID_FAILED;
}
+#if FS_API_VERSION >= 0x0202
+static int SoundFontMemLoader_seek(void *handle, fluid_long_long_t offset, int origin) {
+#else
static int SoundFontMemLoader_seek(void *handle, long offset, int origin) {
+#endif
return ((Common::SeekableReadStream *) handle)->seek(offset, origin) ? FLUID_OK : FLUID_FAILED;
}
@@ -193,7 +201,11 @@ static int SoundFontMemLoader_close(void *handle) {
return FLUID_OK;
}
+#if FS_API_VERSION >= 0x0202
+static fluid_long_long_t SoundFontMemLoader_tell(void *handle) {
+#else
static long SoundFontMemLoader_tell(void *handle) {
+#endif
return ((Common::SeekableReadStream *) handle)->pos();
}
#endif
@@ -237,7 +249,11 @@ int MidiDriver_FluidSynth::open() {
_synth = new_fluid_synth(_settings);
if (ConfMan.getBool("fluidsynth_chorus_activate")) {
+#if FS_API_VERSION >= 0x0202
+ fluid_synth_chorus_on(_synth, -1, 1);
+#else
fluid_synth_set_chorus_on(_synth, 1);
+#endif
int chorusNr = ConfMan.getInt("fluidsynth_chorus_nr");
double chorusLevel = (double)ConfMan.getInt("fluidsynth_chorus_level") / 100.0;
@@ -252,22 +268,49 @@ int MidiDriver_FluidSynth::open() {
chorusType = FLUID_CHORUS_MOD_TRIANGLE;
}
+#if FS_API_VERSION >= 0x0202
+ fluid_synth_set_chorus_group_nr(_synth, -1, chorusNr);
+ fluid_synth_set_chorus_group_level(_synth, -1, chorusLevel);
+ fluid_synth_set_chorus_group_speed(_synth, -1, chorusSpeed);
+ fluid_synth_set_chorus_group_depth(_synth, -1, chorusDepthMs);
+ fluid_synth_set_chorus_group_type(_synth, -1, chorusType);
+#else
fluid_synth_set_chorus(_synth, chorusNr, chorusLevel, chorusSpeed, chorusDepthMs, chorusType);
+#endif
} else {
+#if FS_API_VERSION >= 0x0202
+ fluid_synth_chorus_on(_synth, -1, 0);
+#else
fluid_synth_set_chorus_on(_synth, 0);
+#endif
}
if (ConfMan.getBool("fluidsynth_reverb_activate")) {
+#if FS_API_VERSION >= 0x0202
+ fluid_synth_reverb_on(_synth, -1, 1);
+#else
fluid_synth_set_reverb_on(_synth, 1);
+#endif
double reverbRoomSize = (double)ConfMan.getInt("fluidsynth_reverb_roomsize") / 100.0;
double reverbDamping = (double)ConfMan.getInt("fluidsynth_reverb_damping") / 100.0;
int reverbWidth = ConfMan.getInt("fluidsynth_reverb_width");
double reverbLevel = (double)ConfMan.getInt("fluidsynth_reverb_level") / 100.0;
+#if FS_API_VERSION >= 0x0202
+ fluid_synth_set_reverb_group_roomsize(_synth, -1, reverbRoomSize);
+ fluid_synth_set_reverb_group_damp(_synth, -1, reverbDamping);
+ fluid_synth_set_reverb_group_width(_synth, -1, reverbWidth);
+ fluid_synth_set_reverb_group_level(_synth, -1, reverbLevel);
+#else
fluid_synth_set_reverb(_synth, reverbRoomSize, reverbDamping, reverbWidth, reverbLevel);
+#endif
} else {
+#if FS_API_VERSION >= 0x0202
+ fluid_synth_reverb_on(_synth, -1, 0);
+#else
fluid_synth_set_reverb_on(_synth, 0);
+#endif
}
Common::String interpolation = ConfMan.get("fluidsynth_misc_interpolation");

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1469657e593bd8acbcfac0b839b086f640ebf120633e93f116cab652b5b27387
size 63652348

3
scummvm-2.5.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b47ee4b195828d2c358e38a4088eda49886dc37a04f1cc17b981345a59e0d623
size 130095472

View File

@ -1,3 +1,216 @@
-------------------------------------------------------------------
Wed Nov 24 19:38:46 UTC 2021 - Giacomo Comes <gcomes.obs@gmail.com> - 2.5.0
- Update to 2.5.0
New games:
* Added support for Grim Fandango.
* Added support for The Longest Journey (only on some desktop platforms).
* Added support for Myst 3: Exile (only on some desktop platforms).
* Added support for Little Big Adventure.
* Added support for Red Comrades 1: Save the Galaxy.
* Added support for Red Comrades 2: For the Great Justice.
* Added support for Transylvania.
* Added support for Crimson Crown.
* Added support for OO-Topos.
* Added support for Glulx interactive fiction games.
* Added support for Lure of the Temptress Konami release.
* Added support for Private Eye.
* Added support for Spanish Blue Force.
* Added support for Spanish Ringworld.
* Added support for Spanish Amazon: Guardians of Eden.
* Added support for AGS Games versions 2.5+.
* Added support for Nightlong: Union City Conspiracy.
* Added support for The Journeyman Project 2: Buried in Time.
* Added support for Crusader: No Remorse.
* Added support for L-ZONE.
* Added support for Spaceship Warlock.
New ports:
* The Nintendo DS port got a major rewrite.
General:
* Switched ScummVM GUI output to UTF-32.
* Updated the Roland MT-32 emulation code to the Munt projects mt32emu 2.5.1.
* Updated Dropbox Cloud Storage to use the new Dropbox OAuth workflow.
* Major extension to the number of supported graphics scalers.
* Display path to scummvm configuration file in GUI -> Options -> Paths.
* Added new optional dependency, giflib >= 5.0.0. Used by some version of LBA.
* Added HiDPI support to the ScummVM GUI.
* Added command line option --window-size for specifying ScummVM window size,
* applicable only to the OpenGL renderer.
* Fixed switching to the default graphics mode. This was sometimes not applied
* until restarting ScummVM or starting a game.
* ScummVM GUI has been fully translated into Korean and Japanese.
* Added GUI option for enabling and disabling the Discord RPC integration.
ADL:
* Added support for Mystery House French translation.
* Added support for several game variants.
AGI:
* Added support for Russian versions. Input now works.
AGOS:
* Added support for the Japanese PC-98 version of Elvira 1.
CGE:
* Added option to use Text To Speech for Soltys.
CGE2:
* Added option to use Text To Speech for Sfinx.
Cine:
* Added detection for Future Wars CD version with French translation patch.
* Added detection for Italian Amiga Operation Stealth.
* Fixed crash before entering secret base.
* Fixed space missing in verb line.
* Fixed vertically overflowing message boxes.
Dreamweb:
* Rendering fixes for Russian fan translation.
Glk:
* Fixed savegame issues with several subengines.
* Fixed memory overrun in Level9 game detector.
* Added detections for 2020 IF Comp games.
* Enabled Glulx sub-engine.
Gob:
* Added support for Bargon Attack Russian translation.
* Added support for Woodruff Russian translation.
Griffon:
* Fixed Return to Launcher from The Griffon Legend.
* Added option to use Text To Speech in The Griffon Legend
Grim:
* Added support for Brazillian Portuguese Grim Fandango.
Kyra:
* Added support for the Japanese Sega-CD version of Eye of the Beholder.
* Added support for the Hebrew fan translation of Legend of Kyrandia.
* Added support for the Hebrew fan translation of Legend of Kyrandia 2.
* Added support for the Simplified Chinese version of Legend of Kyrandia 3.
* Added support for the playable demo of Lands of Lore.
Lure:
* Fixed fire animation in first room when loading saves.
* Fixed AdLib support.
* Fixed MT-32 support.
Pegasus:
* Added support for DVD/GOG.com release.
Queen:
* Added support for German Amiga floppy release.
SAGA:
* Added support for ITE GOG Mac CD v1.1.
* Added support for ITE PC-98 Japanese.
SCI:
* Added RGB rendering mode (16/32bpp) for SCI0 - SCI1.1 games, which addresses palette
* issues in screen transitions and avoids mode changes when playing Mac QuickTime videos.
* Added custom palette mods for SQ3 and LSL2 from the FreeSCI project.
When enabled, the mods improve the visuals
* in these two games.
* Added support for Macintosh version of Gabriel Knight 1.
* Added support for CD-Audio version of Mixed-Up Mother Goose.
* Added support for Korean fan translations from the scummkor project: Castle of Dr. Brain,
* EcoQuest 1, Gabriel Knight 1, Kings Quest 1, 5, and 6, Laura Bow 2, and Space Quest 4.
* Added support for Space Quest 4 Update 1.3 by New Rising Sun.
* Added support for French LSL1VGA.
* Added support for Hebrew QFG1VGA.
* Added support for Hebrew GK1.
* Added support for Russian Longbow.
* Added support for Russian LSL6.
* Added support for alternate Russian LSL7.
* Added support for alternate Polish LSL7 including files packaged with InstallShield.
* Added support for alternate Russian SQ5.
* Added support for alternate Russian Torins Passage.
* Added support for fan game Soulshade Asylum.
* SCI1.1 views are now scaled accurately.
* Fixed sounds not stopping or restarting correctly.
* Fixed sound issues when restoring SCI0 games.
* Fixed corruption when “Prefer digital sound effects” was disabled in SCI1 games.
* Space Quest 4 CD sound effects now match the selected platform.
* Added option to enable Windows cursors in CD versions of Kings Quest 5 and Space Quest 4.
* Fixed “Girl In The Tower” song not playing at the end of Kings Quest 6 CD.
* Fixed Kings Quest 5 Amiga beach error that prevented completing the game.
* Fixed over 30 script bugs in GK1, HOYLE4, KQ1DEMO, KQ5, KQ6, KQ7, LB1,
* LSL3, PEPPER, PQ3, QFG3, SQ1, SQ4, and SQ6.
* Unlocked JANE easter egg in Gabriel Knight 1.
SCUMM:
* Fixed Chinese, Japanese and Korean text display for The Dig and for
The Curse of Monkey Island. These fixes
* also include some improvements to the common text display (mainly the formatting of wrapped texts).
* Fixed display of Chinese, Japanese and Korean pause and restart dialogs.
* Added support for numerous Korean translations from scummkor project.
* Added support for Russobit-M versions of Pajama2 and SpyOzone.
* Fixed speech playback in Akella version of COMI.
* Added support for Discord and Humble Bundle versions of Indiana Jones and the Fate of Atlantis.
* Added smooth scrolling for FM-TOWNS versions of games.
* Added optional trimming to 200 pixels for some FM-TOWNS games, so aspect-ratio correction is possible.
* Fixed audio distortion in Loom for PC-Engine.
* Added support for the high resolution font and cursor in the 16-color Macintosh version of Loom.
* Added support for Japanese Mac version of The Dig.
* Added partial support for the high resolution fonts and cursor in the
* 16-color Macintosh version of Indiana Jones and the Last Crusade.
* Fixed missing instruments in the m68k Mac versions of Monkey Island 2
* and Indiana Jones and the Fate of Atlantis.
* Added “Macintosh b/w” render mode for the 16-color Macintosh versions of
* Loom and Indiana Jones and the Last Crusade.
* Enabled difficulty selection in the version of Monkey Island 2 that was
* included on the LucasArts Mac CD Game Pack II compilation. (It had been
* disabled along with the copy protection.)
* Repaired clumsy crack in Maniac Mansion (enhanced)'s keypad script.
* This means that the GOG and Steam versions will no longer accept incorrect
* numbers, e.g. for Ednas phone number. (Why are they selling a cracked
* version anyway?!)
* Added support for Low quality music in Macintosh version of Loom.
* Improved Digital iMUSE accuracy for Full Throttle and The Curse of Monkey Island.
These improvements also fix several audio related bugs for both games.
* Fixed a very old regression in the walk code for Full Throttle which softlocked the game.
* Improved the accuracy of the walk code for The Dig and The Curse of Monkey Island.
* Fixed a bug in The Curse of Monkey Island which prevented, during the cannon minigame
in Part 1, the destruction of one of the three destroyable turrets in the fort.
* Added animated cigar smoke to the close-up of captain Smirk in the CD
* version of Monkey Island 1. It was present in earlier versions.
* Restored some missing Lemonhead lines in the English, Italian, German and Spanish CD
* versions as well as the English Macintosh, FM-Towns and Sega CD versions
* of Monkey Island 1.
* Made the clock tower in Monkey Island 1 behave the same in the CD version
* as in earlier versions, i.e. after examining it you have to leave the
* room and come back again for its description to change.
Tinsel:
* Enabled the Return to Launcher feature.
Titanic:
* Fixed crashes when asking bots what I should do.
TsAGE:
* Added support for uninstalled floppy version.
Stark:
* Added support for Hungarian translation.
Supernova:
* Added Italian translation for part 1.
Sword25:
* Made the extracted version working.
* Fixed crash when selecting Croatian language.
Ultima:
* Ultima 4: Added several debugger commands.
* Ultima 4: Allow Enter key to exit ZStats display.
* Ultima 8: Fixed several animation bugs for events and objects.
* Ultima 8: Restored original text for the Spell of Resurrection book.
Xeen:
* Fixed occasional border corruption during fights.
* Improvements to cutscenes to better match the original games.
* Fixes for character selection, deselection, and dismissing to better match original.
* Added support for Russian version.
AmigaOS port:
* Added native system file browser feature.
* Re-activated nuked OPL Adlib driver.
Big-endian ports:
* Fixed crashes or rendering issues with the Blazing Dragons, Duckman and
* Full Pipe games.
iOS port:
* Fixed using arrow keys on physical keyboard in iOS 15.
* Fixed rotating the device while ScummVM is inactive.
* Added support for upside down portrait orientation.
macOS port:
* Added support for Dark Mode.
* Use OpenGL renderer by default, providing better support for HiDPI displays.
MorphOS port:
* Added native system file browser feature.
* Added Cloud feature.
* Re-activate nuked OPL Adlib driver.
* Added CAMD MIDI driver support.
Windows port:
* Use OpenGL renderer by default, providing better support for HiDPI displays.
- Drop all patches to fix build with fluidsynth 2.2 (0001-0006)
- enable build with libmpeg2
- add BuildRequires: liba52-devel libSDL2_net-devel libcurl-devel libspeechd-devel
fribidi-devel giflib-devel glew-devel
-------------------------------------------------------------------
Fri Apr 16 14:49:13 UTC 2021 - Antonio Larrosa <alarrosa@suse.com>

View File

@ -17,22 +17,16 @@
%bcond_with faad
%bcond_with libmpeg2
%bcond_without libmpeg2
%bcond_without mad
Name: scummvm
Version: 2.2.0
Version: 2.5.0
Release: 0
Summary: Interpreter for several adventure games
License: GPL-2.0-or-later
Group: Amusements/Games/Other
URL: https://www.scummvm.org/
Source: https://www.scummvm.org/frs/scummvm/%{version}/scummvm-%{version}.tar.xz
Patch0: 0001-FLUIDSYNTH-Make-FluidSynth-logging-less-noisy-by-default.patch
Patch1: 0002-FLUIDSYNTH-Swapped-debug-levels-for-FLUID_WARN-and-FLUID_INFO.patch
Patch2: 0003-FLUIDSYNTH-Fix-build.patch
Patch3: 0004-AUDIO-Fix-compilation-with-Fluidsynth2.patch
Patch4: 0005-FLUIDSYNTH-Simplify-FluidSynth-version-check.patch
Patch5: 0006-FLUIDSYNTH-Fix-compilation-with-Fluidsynth-2.2.patch
BuildRequires: desktop-file-utils
BuildRequires: discord-rpc-devel
BuildRequires: gcc-c++
@ -64,6 +58,14 @@ BuildRequires: pkgconfig(libmpeg2) >= 0.4.0
%ifarch %{ix86}
BuildRequires: nasm
%endif
BuildRequires: fdupes
BuildRequires: fribidi-devel
BuildRequires: giflib-devel
BuildRequires: glew-devel
BuildRequires: libSDL2_net-devel
BuildRequires: liba52-devel
BuildRequires: libcurl-devel
BuildRequires: libspeechd-devel
%description
ScummVM is an interpreter that will play graphic adventure games written for
@ -86,16 +88,13 @@ These engines are in a worse state, but allow to play extra games.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
# build the endianness test without optimization otherwise gcc is too smart
# and optimize everything away, making the test fail
sed -i '/tmp_endianness_check.cpp/ s/$CXXFLAGS/$CXXFLAGS -fno-lto -O0/' configure
#allow to use liba52 from svn
sed -i '/a52_init/s@(0)@()@' configure
sed -i '/a52_init/s@(0)@()@' audio/decoders/ac3.cpp
%build
# scummvm relies on -gsplit-dwarf which is incompatible with -flto
@ -119,6 +118,8 @@ make %{?_smp_mflags}
%install
%make_install
rm %{buildroot}%{_docdir}/%{name}/COPYING*
%fdupes %{buildroot}%{_datadir}/scummvm
%files
%defattr(0644,root,root,0755)