Commit Graph

1226 Commits

Author SHA1 Message Date
Filippos Karapetis
0df39b7502 SAGA: Unify language index for all hardcoded strings 2022-03-11 01:21:34 +02:00
BLooperZ
2618a00043 SAGA: align hebrew converse text to the right 2022-03-11 00:21:16 +02:00
BLooperZ
28e1a9e9be SAGA: hebrew translation of embedded texts 2022-03-11 00:21:16 +02:00
BLooperZ
0036ebe8df SAGA: support hebrew text rendering 2022-03-11 00:21:16 +02:00
Coen Rampen
a78b3d32cf SAGA: Update ItE detection entry info 2022-02-01 17:15:30 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Filippos Karapetis
5641d603c0 SAGA: Remove unused variable
Thanks to eientei for reporting this
2021-12-24 03:14:23 +02:00
Orgad Shaneh
2930d37788 SAGA: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Orgad Shaneh
ee57380de7 ENGINES: JANITORIAL: Remove 'virtual' when override is specified 2021-11-14 14:32:04 +02:00
trembyle
6e1135ee8a ENGINES: Revise language constants to ISO standards
* Use ISO-3166 country codes and ISO-639 language codes
2021-11-11 12:06:15 +01:00
Orgad Shaneh
78ef6203de ENGINES: Fix getSavegameFile for almost all engines
Use kSimpleSavesNames correctly, add where needed, remove where needed.

Trac #12977
2021-11-10 21:49:48 +00:00
Torbjörn Andersson
216ad40746 SAGA: Fix ITE digial music looping regression
When the MUSIC_DEFAULT flag was removed, the logic for looping music was
accidentally inverted: Instead of everything except tracks 13 and 19
defaulting to looping, now only tracks 13 and 19 would default to
looping.

See b14a2599bc (SAGA: Get rid of the MUSIC_DEFAULT flag, 2014-07-20)
2021-11-10 21:30:24 +02:00
Orgad Shaneh
fe104cc337 ENGINES: Use MetaEngine consistently for getting autosave slot
The autosave refactoring that was done in
7adad5aaf5 used g_engine for identifying the
autosave slot. This worked for in-game save/load, but doesn't fit when
called from the launcher.

Fix by passing MetaEngine to SaveStateDescriptor ctor and using it for this
query.

Amends 7adad5aaf5.
2021-10-24 16:46:06 +02:00
Lothar Serra Mari
23f93b6c3f SAGA: Add missing reference to POTFILES 2021-10-16 11:23:53 +02:00
Coen Rampen
28dcd89782 SAGA: Add AdLib fallback for IHNM GOG
This commit adds a fallback for the GOG version of I Have No Mouth... This
version is missing the AdLib instrument definition files which are necessary
to use the Miles driver. If these files are missing, the regular AdLib driver
is used, which has built-in instrument definitions. A warning is shown so the
user knows the music is inaccurate without the missing files.
2021-10-13 22:21:16 +02:00
Coen Rampen
d6b0b78ae3 SAGA: Allow use of non-resource files for detection
The engine expected all files listed in the detection entries to be resource
files. This commit adds the option to use a non-resource file for detection.
This is needed to use a MID file to detect one of the Windows versions of
Inherit the Earth.
2021-10-05 20:37:05 +02:00
Coen Rampen
5006b1a50c SAGA: Add scanning music subdir during detection
Scanning the music subdirectory is now necessary for detecting the Windows
version of Inherit The Earth.
2021-10-04 20:35:22 +02:00
Coen Rampen
bc886473d9 SAGA: Add separate ItE Windows and Linux detection entries
This commit adds separate detection entries for the Windows and Linux versions
of Inherit The Earth.
There was a combined DOS/Windows/Linux entry with DOS as the platform. It is
not clear to me if this is a combined release or a single entry for three
separate releases, but the Windows and Linux release do exist as separate
releases. These would be detected with DOS as the platform, which would cause
the music not to work, because the DOS, Windows and Linux versions use
different music formats.
2021-10-03 21:05:53 +02:00
trembyle
65eb54b94c SAGA: Add detection for ITE Pocket PC demo
We can detect the modern 64-bit macOS and WinCE trial versions and
inform users that they're unsupported.

We should explore whether the limited trial functionality can be
implemented in ScummVM, as the Pocket PC version has some unique
features in both trial and unlocked states.
2021-09-19 14:52:46 +02:00
Coen Rampen
af75c433e0 SAGA: Fix MIDI driver type detection
This fixes a small omission in the MIDI driver type detection where it would
not look at the Native MT-32 setting to set MT-32 type on a MIDI device.
2021-08-06 22:37:46 +02:00
Coen Rampen
d73b19b9b3 AUDIO/MIDI: Fix Miles 3 AdLib pitch bend range
Miles 2 uses the default MT-32 pitch bend range of 12 semitones for its AdLib
driver. Miles 3 switched to the default GM pitch bend range of 2 semitones for
AdLib. ScummVM would always use the Miles 2 pitch bend range, which caused
pitch bend for Miles 3 games to sound wrong on AdLib.

To fix this, a property was added to the Miles AdLib driver to specify which
Miles version to emulate. Depending on the value of this option, the correct
default pitch bend range is set.
2021-08-06 21:01:08 +02:00
Max Horn
2f1f8f502e DEVTOOLS: move credits from devtools/credits.pl to engines
This employs a "lazy" approach: the "format" for the credits stays
exactly as it was, i.e., perl code. Of course one may want to change
this to another format (e.g. YAML, JSON, XML; or also shell script or
AWK, like `configure.engine` uses). But I deliberately kept it simple,
to get a minimal change that is easy to verify. Any further changes to
e.g. the format can be layered atop this.
2021-08-05 00:01:46 +02:00
Coen Rampen
832791407c SAGA: Fix music fade-outs
This fixes the fade-outs in IHNM, most notably at the end of the title screen
when using GM. Fades would take 30 seconds instead of the intended 3, and the
engine did not wait for the fade to finish but immediately played the next
track, which aborted the fade.
Note that the engine still does not always wait for a fade to finish when it is
triggered from a script. For example after AM's speech when dying in
Gorrister's chapter, in the original interpreter the music fades out while the
screen fades to black. In ScummVM, the screen does not fade out, so the music
fade is immediately aborted by playing the next track.
2021-07-29 20:24:43 +02:00
Coen Rampen
72c8622927 SAGA: Set Miles version on MIDI driver
This sets the version to emulate on the Miles MIDI driver so the MIDI devices
are initialized in the same way as the original interpreter.
2021-07-29 20:24:42 +02:00
Coen Rampen
e63b556015 SAGA: Add ITE MT-32 display message
This adds the message that the DOS version of Inherit The Earth displays on the
MT-32 when quitting the game.
2021-07-29 20:24:42 +02:00
Coen Rampen
12974b29e4 SAGA: Limit end of track resets to IHNM
This limits the pitch bend and sustain reset messages at the end of MIDI tracks
to I Have No Mouth, And I Must Scream. Inherit The Earth does not use sustain
and pitch bend is already reset at the start of each track. IHNM does use
sustain and does not reset pitch bend at the start of each track.
2021-07-29 20:24:42 +02:00
Coen Rampen
e6b30e4d57 SAGA: Fix MIDI parser memory leak
A new MidiParser object is created every time a MIDI track is played, but the
old parser would not be freed. Fixed this by first deleting the parser before
creating a new one.
2021-07-21 22:25:32 +02:00
Le Philousophe
5b9bcb4efb SAGA: Fix compilation on C++98 platforms 2021-07-16 12:53:53 +02:00
athrxx
dcf5a40f03 SAGA: fix encodings of save descriptions 2021-07-16 01:08:14 +02:00
Coen Rampen
5864bbc1d0 SAGA: Remove unused include from music 2021-07-10 20:33:35 +02:00
Cameron Cawley
d1488f46de SAGA: Fix compilation with C++98 compilers 2021-07-09 17:09:00 +01:00
Coen Rampen
de003b403d SAGA: Remove _musicVolume
Music volume is now handled by the Music class. Some calls to play included a
call to setVolume, but play already does this, so these calls were unnecessary.
2021-07-09 15:20:51 +02:00
Coen Rampen
f86604ce66 SAGA: Replace MusicPlayer with multisource drivers
This removes the MusicDriver class, which was a subclass of MidiPlayer. The
MidiPlayer relies on MidiChannel objects for some functionality and has
problems with the Miles AdLib driver and Munt.
The functionality of this class is now implemented in the Music class. Volume
management is handled by the multisource MIDI drivers themselves, and added to
the Music class for digital and PC98 music.
2021-07-09 15:20:50 +02:00
Eugene Sandulenko
3fc298cb18
SAGA: Remove remaining references to saga2 2021-07-06 00:37:07 +02:00
Paul Gilbert
baccbedf50 GRAPHICS: Changed surface classes sizes from uint16 to int16 2021-07-04 18:24:27 -07:00
Torbjörn Andersson
719d9017b7 SAGA + SAGA2: Fix build 2021-07-01 15:57:05 +02:00
Filippos Karapetis
9fc1a19d9f SAGA: Remove dead code
Some of this code is for SAGA2 games and some is just unused
2021-07-01 16:29:49 +03:00
Filippos Karapetis
e9c60720c0 SAGA: Remove SAGA2 references, code and stubs
All SAGA2 game development will continue in the new SAGA2 engine
2021-07-01 16:23:48 +03:00
Eugene Sandulenko
90a98160a9
SAGA: Disable dino and fta2 from the engine 2021-05-23 19:14:38 +02:00
Eugene Sandulenko
5b30618ee0
SAGA: Disable dino and fta2 from the engine 2021-05-23 16:04:53 +02:00
Eugene Sandulenko
e80f4678fb
SAGA: Disable saga2 subengine 2021-05-18 20:30:02 +02:00
Eugene Sandulenko
ef4f019125
SAGA: Added support for Russian ITE fan-translation 2021-05-10 01:26:21 +02:00
Orgad Shaneh
a05e54f00c JANITORIAL: Remove trailing whitespaces 2021-05-04 11:46:30 +03:00
Eugene Sandulenko
50b97c723a
SAGA: Added detection for unsupported Chinese IHNM. Bugreport #7894 2021-04-20 01:45:54 +02:00
Eugene Sandulenko
5e7fe2dc57
JANITORIAL: Replace spaces in indentation with tabs 2021-04-15 21:20:36 +02:00
a/
4c41632a01 SAGA: Fix a hitzone detection bug in ITE 2021-04-14 18:28:04 +02:00
sluicebox
93eeffc84d JANITORIAL: Update old bug tracker numbers 2021-03-03 02:15:05 +02:00
trembyle
c8e31ee64a SAGA: IHNM: Detect Korean variant
Flag as unsupported. Game does not start.
2020-12-07 01:35:53 +01:00
Cameron Cawley
4ced49acd4 ENGINES: Changed AdvancedMetaEngine::createInstance to return a Common::Error 2020-12-04 20:57:14 +00:00
Eugene Sandulenko
370c695308 SAGA: Always detect subengine games 2020-11-28 20:57:02 +01:00