Commit graph

203 commits

Author SHA1 Message Date
Torbjörn Andersson
378cf3a953 SCUMM: Make DOTT workaround optional
This workaround happens in some cases when Bernard interacts with the
chewing gum on the floor, where he will speak using Laverne's voice. See
bug #3803 for details. I've re-verified that it happens in the original
as well.
2022-04-08 16:37:03 +02:00
Torbjörn Andersson
88aaf2ce4d SCUMM: Make Fate of Atlantis intro workaround optional.
I didn't create this workaround, but I think it makes sense to make it
(ensuring that the window is broken and the coat is there even if you
skip the intro) optional.
2022-04-06 10:14:41 +02:00
Torbjörn Andersson
608a334c22 SCUMM: Make recent Loom workarounds optional
Unfortunately that means I had to add the enhancements checkbox to the
EGA Loom settings widget, because I can't see any way to automatically
combine the static and dynamic settings widget. Oh well.
2022-03-23 16:02:49 +01:00
Torbjörn Andersson
b66e84d57a SCUMM: Change "Use correct font spacing" to a game-specific enhancement
It doesn't make much sense to keep this as a separate option, when
fixing the font spacing is an enhancement specifically for the Mac
version of Indiana Jones and the Last Crusade.
2022-03-23 15:23:10 +01:00
Torbjörn Andersson
afb807599b SCUMM: Make palette effects in Mac b/w Loom / Last Crusade optional 2022-03-23 15:23:10 +01:00
Torbjörn Andersson
2a796cedd7 SCUMM: Make fixing VGA Loom "Choas" typo optional 2022-03-23 15:23:10 +01:00
Torbjörn Andersson
52549c1678 SCUMM: Make correcting position of green tank in Sam & Max optional 2022-03-23 15:23:10 +01:00
Torbjörn Andersson
20f9997300 SCUMM: Make MI2 Guybrush dialog when getting Rapp's map optional 2022-03-23 15:23:10 +01:00
Torbjörn Andersson
6ac9154403 SCUMM: Add options for game-specific tweaks, and enable it for MI1 2022-03-23 15:23:10 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Eugene Sandulenko
ccfaf478ab
AD: Make sure that we initialize hashmaps. Unfortunately, this leads to less const'ness 2021-11-29 01:50:03 +01:00
Orgad Shaneh
ed5489929c SCUMM: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Torbjörn Andersson
11bf8833df SCUMM: Add setting for correct font spacing in Indy 3 Mac
For all the purists out there (I know there is at least one), the
default behavior is to try and emulate the original's slightly broken
font spacing. Even though I prefer correct spacing myself.
2021-10-19 19:24:31 +02:00
athrxx
7afd105562 SCUMM: (FM-TOWNS) - add menu option to disable smooth scrolling 2021-08-01 16:10:42 +02:00
Torbjörn Andersson
6ecfc01b28 SCUMM: Clean up getExtraGuiOptions() 2021-07-28 13:37:40 +02:00
Torbjörn Andersson
69c91a76ad SCUMM: Remove stray comma 2021-07-28 13:37:40 +02:00
Torbjörn Andersson
a4fa54550a SCUMM: Add support for Mac Loom low quality music
This is guesswork, but it seems like the first channel always contains a
complete rendition of the music. I think that's intended for low-end
Macs, while the other voices (four, but the last one never seems to be
used) is the standard version of the music.

It doesn't sound particularly good, and also not quite as with Mini vMac
(I'm not fully prepared to rule out emulation problems), but it seems
reasonably close.
2021-07-28 13:37:40 +02:00
sluicebox
55344bf0bc SCUMM: Add missing debug channel terminator 2021-05-22 03:56:02 -06:00
ysj1173886760
17efb68cba SCUMM: move debug channels to metaEngineDetection 2021-05-22 01:34:57 +02:00
Zvika Haramaty
a1f440c073 SCUMM: FM-TOWNS: Add optional trimming to 200 pixels height
Trimming the screen to 200 pixels allows using aspect ratio correction.
2021-04-20 23:56:39 +02:00
Eugene Sandulenko
79ca0011b1 SCUMM: Show compiled-in subengines 2020-11-28 19:10:52 +01:00
Cameron Cawley
16706dc63f SCUMM: Allow detecting games from disabled subengines 2020-11-28 19:06:01 +01:00
Eugene Sandulenko
7ff34bc9ec PLUGINS: MetaEngineStatic -> MetaEngineDetection 2020-10-11 23:14:39 +02:00
Eugene Sandulenko
7ea6781043 PLUGINS: PLUGIN_TYPE_METAENGINE -> PLUGIN_TYPE_ENGINE_DETECTION 2020-10-11 23:12:32 +02:00
aryanrawlani28
d26bbe521c ENGINES: ALL: Finish renaming ME & AME classes
- ME -> MetaEngineStatic (static parts)
- MEC -> MetaEngine (dynamic parts)
2020-10-03 14:56:36 +02:00
aryanrawlani28
29ceb07959 ENGINES: ALL: Revert detection submodule to be directly present in the engine directory
- DETECT_OBJS are present and added inside an engine's modules.mk file.
2020-10-03 14:56:36 +02:00
aryanrawlani28
8189a05316 ENGINES: ALL: Adapt to changes for new plugins by defining a new detection module
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
2020-10-03 14:56:36 +02:00
aryanrawlani28
4c1a03845f SCUMM: Refactoring, remove detection.o dependency from modules.
- Move detection code used by createInstance & MetaEngine to a common header - detection_internal.h
- Move steam-related method & table to detection_steam.h
- More info in comments.
2020-10-03 14:56:36 +02:00
aryanrawlani28
dc4672e294 SCUMM: Split detection features & adapt to new plugins.
- Also, we remove the static keyword so other TU's can use the functions defined.
- This change has a catch.
- Because creating an instance depends on game detection code from detection.cpp, we cannot exclude it from Scumm.
- For Statically linked Scumm, we can simply exclude these detection files, because they're already being built.
- For dynamically linked Scumm, we can add it to our executable.
- Thus, for dynamically linked Scumm, one catch is that we have duplicated code (detection.o in our executable, as well as scumm.dll), but that shouldn't be a big problem considering the advantage it gives us: Detection without a plugin loading.
2020-10-03 14:56:36 +02:00
Eugene Sandulenko
c245a81a24 SCUMM: Improved detection for Chinese DIG 2020-09-01 00:08:33 +02:00
aryanrawlani28
219646378c SCUMM: GUI: U32: Remove redundant code
- Translations are removed from the md5 warning message because logMessage doesn't support unicode.
2020-08-30 14:43:41 +02:00
aryanrawlani28
12e4f871a3 GUI: U32: Improve u32 in all engine subsystems
- Common: add wordWrap function to ustr.cpp
- Bladerunner: Explicitly state we have a U32String in subs (same as Subtitles::loadOuttakeSubsText)
- Don't use translations for engine specific "put strings", because they might not support.
- SCI: Use const references for showScummVMDialog
- SCUMM:
-- Don't use translation in md5 warning. left comments with the translated version.
-- Remove some redundant headers in help.cpp
-- Don't use translation in handleSaveload when printing to console
-- Also, display success transaction correctly via u32::format
- TESTBED: Use fake constructor when setting label of button
- SKY: Correctly use translation when using SaveStateDescription
- ULTIMA: Don't use translations when display_string
- ENGINES:
-- GenerateUnknownGameReport correctly, with proper translations.
-- There was an error, where a function had been declared twice, in a header file. Correct this.
2020-08-30 14:43:41 +02:00
aryanrawlani28
bd19eaa5bf GUI: U32: More code improvements in engines and misc fixes
- Xeen's GUIError now takes in U32String
- Scumm's ValueDisplayDialog takes in U32
- Mohawk's InfoDialog & PauseDialog takes in U32
- Mohawk - in riven.cpp, Some assignment fixes
- Backends -in sdl.cpp, Remove incorrect conversion from iso8859 when setting text in clipboard
- Graphics - Add u32 strings instead of decoding each piece in format
2020-08-30 14:43:41 +02:00
Eugene Sandulenko
746ec5ce36 SCUMM: Show warning on unsupported Pajama2 Russian localization 2020-08-25 22:07:04 +02:00
Hubert Maier
062b9ae09c JANITORIAL: Fix comments 2020-05-27 12:20:54 +02:00
mataniko
581a6ec7d6 JANITORIAL: Rename kSupportsRTL to kSupportsReturnToLauncher 2020-05-12 10:36:38 +02:00
mataniko
e85e6cf846 SCUMM: Fix MM NES palette and colors
Also adds an optional more natural palette as a game option
2020-05-03 01:11:13 +02:00
Bastien Bouclet
730a1ee4cc SCUMM: Add override keywords 2020-02-09 12:43:16 +01:00
Eugene Sandulenko
ff17803dfc SCUMM: Add override keywords 2020-01-31 12:42:07 +01:00
D G Turner
59b639ed4d SCUMM: Fix Missing Default Switch Cases
These are flagged by GCC if -Wswitch-default is enabled.
2019-12-23 11:56:16 +00:00
Bastien Bouclet
bb813719b5 ENGINES: Change targets to have an 'engine ID'
The engine ID identifies which engine should be used to launch the target.
Also remove the 'single ID' system. Different games from engines that used
that system now have different game IDs.

Also-By: Matthew Hoops <clone2727@gmail.com>
2019-11-03 11:43:00 +01:00
Bastien Bouclet
4b42112721 ENGINES: Add an engine ID to all the engines 2019-11-03 11:43:00 +01:00
Ben Castricum
f10afb8d16 SCUMM: Detect language file of Steam version of DIG, fixes bug #10697 2019-09-30 07:46:12 +03:00
Bastien Bouclet
90b78c5446 ENGINES: Merge GameDescriptor and DetectedGame 2018-05-10 09:04:23 +02:00
Bastien Bouclet
1de5aca585 ENGINES: Set the GameDescriptor decription in the constructor 2018-05-10 09:04:23 +02:00
Bastien Bouclet
5aff87dc15 ENGINES: Turn GameDescriptor into a simple struct 2018-05-10 09:04:23 +02:00
Bastien Bouclet
643c24db75 ENGINES: Change MetaEngine::listSupportedGames to return plain game descriptors 2018-05-10 09:04:23 +02:00
Bastien Bouclet
8fb149e3c7 ENGINES: Change MetaEngine::findGame to return a plain game descriptor 2018-05-10 09:04:23 +02:00
Bastien Bouclet
cf1ebf2951 ENGINES: Add unknown game variants to the game detector results 2018-05-10 09:04:23 +02:00
Adrian Frühwirth
7b48934598 SCUMM: Protect autosave (slot 0) from deletion/overwriting 2018-05-01 22:34:00 +02:00