Commit Graph
216 Commits
Author SHA1 Message Date
Cameron Cawley 6506e59064 ENGINES: Add getMD5Bytes to the base MetaEngineDetection class 2022-11-30 23:29:37 +02:00
Cameron Cawley 7a7ba38f3c SCUMM: Move the engine options into the MetaEngine subclass 2022-11-16 23:58:54 +01:00
athrxx ff3a48d7c1 SCUMM: make use of new gui options handling for render modes 2022-11-07 00:27:34 +02:00
AndywinXp e01ea96054 SCUMM: DETECTION: improve readability of enableOriginalGUI declaration 2022-08-06 13:33:56 +02:00
AndywinXp 7e4d844969 SCUMM: DETECTION: Add an option for activating the original GUI 2022-08-06 13:33:56 +02:00
Cameron Cawley f3b094e53f ENGINES: Change the MetaEngineDetection interface to match MetaEngine 2022-07-23 23:31:58 +02:00
Thunderforge 060f9cd9b6 GUI: Change SCUMM audio override label to "Load modded audio" (#4080)
This is to avoid ambiguity since "external audio" can mean speakers and such. Also, changing from "Use" to "Load" both to make it clearer what is happening and also to match the "Load modded assets" setting in the Stark engine.
2022-07-01 19:54:31 -05:00
YYxsCnnPP 088115f468 SCUMM: Implement dedicated option for hifi audio 2022-06-28 19:13:51 +03:00
athrxx 54af166305 COMMON: (AD) - further reduce output of mass add detection
Follow-up to the feature that allows skipping certain ADGF flags.

This here now also allows skipping of incomplete file/md5/size matches. It is basically the same behavior as the graylist. For the mass add all files are treated as if they are on the list.
2022-06-12 10:12:39 +02:00
athrxx e01416ef32 COMMON: (AD) - allow mass add to skip targets with certain ADGF flags
I added skipping for the ADGF_WARNING and ADGF_UNSUPPORTED flags.

For me, this is mostly about fixing bug no. 13282. We sometimes have bogus entries which only have the purpose of presenting the error message (reasons for being unsupported) contained in the extra field of the detection entry.
2022-06-12 10:12:39 +02:00
Torbjörn Andersson 5ba5ab9926 SCUMM: Add GUIO_ENHANCEMENTS flag to indicate a game has enhancements
This should make it easier to add the "Enable enhancements" checkbox to
games, without accidentally adding it to demos etc. It's possible that
it will eventually become reduntant as the number of enhancement grows.
But there are so many demos and variants that I doubt that will ever
actually happen.
2022-04-22 00:36:15 +03:00
Torbjörn Andersson e06f3c9a5a GUI: Allow game option checkboxes to be disabled
Depending on other game option checkboxes. This is used to
enable/disable the semi-smooth scrolling checkboxes for FM Towns Loom,
since it's only used when smooth scrolling is enabled.
2022-04-21 11:07:17 +02:00
Torbjörn Andersson 0f4881214b SCUMM: Add semi-smooth scrolling for the FM Towns Loom intro
Scrolling four pixels at a time is smoother than eight, and able to
keep up with the fast camera move in the FM Towns Loom intro.
2022-04-21 11:07:17 +02:00
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