Commit graph

434 commits

Author SHA1 Message Date
Filippos Karapetis
db5c5e853a ADL: Use C++ 11 range-based for loops 2025-03-27 13:47:57 +08:00
Eugene Sandulenko
b34411bc23
ENGINES: [a-k]*: Switched Debug Channels from bitfield to sequential enum 2025-02-22 15:51:24 +01:00
Eugene Sandulenko
fdecb6afca ENGINES: Add components to configure.engine's explanatory comment 2024-12-25 00:34:39 +01:00
Walter van Niftrik
41d1d943a2 ADL: Add delay for title screen in hires1
Fixes bug #15301
2024-11-28 11:31:46 +02:00
Walter van Niftrik
e7fa316065 ADL: Remove broken strings in hires5
Fixes bug #15382.

Co-authored-by: Torbjörn Andersson <eriktorbjorn@users.sourceforge.net>
2024-11-28 11:31:46 +02:00
Walter van Niftrik
7f7fbb52ee ADL: Fix formatting of full inventory message 2024-11-28 11:31:46 +02:00
Walter van Niftrik
3e03593c99 ADL: Check if inventory is full for dropped items
Fixes bug #15389
2024-11-28 11:31:46 +02:00
Walter van Niftrik
4c3bbe3c22 ADL: Add detection entry 2024-11-28 11:31:46 +02:00
Walter van Niftrik
95e39f85f4 ADL: Restore picture for unvisited rooms
Fixes bug #15379
2024-11-28 11:31:46 +02:00
sluicebox
4200d6575c ALL: Return result from MetaEngine::removeSaveState 2024-10-18 09:41:03 +03:00
Torbjörn Andersson
f9e43981aa ADL: Keep screen updated while playing music 2024-09-28 22:12:18 +02:00
Torbjörn Andersson
63ad473aee ADL: Update screen while waiting
Even if the game doesn't draw anything to the screen, it can still
change from outside events e.g. by changing the scaler or - on some
systems - by dragging another window across the ScummVM window.
2024-09-13 19:29:47 +02:00
Torbjörn Andersson
fbd2197d62 ADL: Fix uninitialized variable 2024-08-26 09:09:44 +03:00
Torbjörn Andersson
2aa94e2339 ADL: Make the checker cursor an option
It was explained to me that earlier Apple II models used the block
cursor, and only later ones used the checeked cursor. I try to never
underestimate the power of nostalgia, so let's have both.
2024-08-26 09:09:44 +03:00
Torbjörn Andersson
e6c87b326b ADL: Draw Apple II checkerboard cursor
Based on Apple II emulators, the original drew the blinking cursor as a
checkerboard pattern, not as a block. If the cursor was placed on top of
a character, it would switch between checkerboard and that character,
not invert it.
2024-08-26 09:09:44 +03:00
sluicebox
78552492b1 ADL: Move DiskImage into COMMON 2024-08-25 14:57:06 +03:00
Torbjörn Andersson
0220d3c597 ADL: Fix memory leak 2024-07-30 07:23:10 +02:00
Torbjörn Andersson
e4d12140a4 ADL: Fix string concatenation warnings
Instead of storing the encrypted string (which may contain zeroes) in a
String, decrypt it as it's read from file. While adding zeroes to a
string is allowed (for a brief time it wasn't), doing so is bad form.
2024-07-30 01:46:33 +03:00
Cameron Cawley
89c57d29ef COMMON: Move more maths functions into the Math namespace 2024-07-27 14:00:48 +03:00
Cameron Cawley
441b02d057 DETECTION: Use uint32 for ADGameFileDescription file size 2024-06-30 19:13:41 +02:00
Le Philousophe
7e0048b4a3 ENGINES: Add ADDynamicGameDescription class
This class manages a buffer where all data usually stored in detection
plugin will get copied before unloading the plugin and starting the
game.

This class expects that two functions are present in every
GameDescription: sizeBuffer which calculates how many bytes we will need
to store the entry in RAM and toBuffer which copies the data in the
buffer and fix the pointers in the class.
At the end, it is expected that an ADDynamicGameDescription doesn't
depend anymore on data stored in the detection plugin.

The AD_GAME_DESCRIPTION_HELPERS macro allow to implement these functions
in all GameDescription which don't have any pointer except those in
ADGameDescription.
2024-06-30 18:39:06 +02:00
Le Philousophe
b61bd3ff85 ENGINES: Create a type aware advanced meta engine 2024-06-30 18:39:06 +02:00
Le Philousophe
90b886097f ENGINES: Create a type aware advanced detector 2024-06-30 18:39:06 +02:00
Cameron Cawley
1357bfe672 COMMON: Avoid including engine headers in common code for DebugChannelDef 2024-06-20 20:15:57 +01:00
Peter
86a9fd66c5 JANITORIAL: Fix GCC 14 warnings
Fix repetitive warnings about template-id in constructors and destructors. This ensures C++20 compatibility. Warnings are encountered when compiling with GCC 14.
2024-05-26 00:00:45 +03:00
Matthew Jimenez
5219c99400 GRAPHICS: Move PaletteManager definition to a separate header 2024-03-12 12:24:00 +02:00
Le Philousophe
4b00b7e83d ADL: Migrate engine to Path 2023-12-24 13:19:25 +01:00
Eugene Sandulenko
ec2dd2726b ENGINES: Added optional parameter to canSave/LoadGameStateCurrently() for indicating the reason 2023-12-08 12:21:16 +01:00
Walter van Niftrik
01bb2bc689 ADL: Add support for three more hires4 versions 2023-06-05 14:26:21 +02:00
Walter van Niftrik
b9adfbaa01 ADL: Limit number of dropped items drawn
This prevents a possible out-of-bounds array read.
2023-06-05 11:19:51 +02:00
Walter van Niftrik
1af9e3fbff ADL: Add check for missing item picture
This prevents a crash or assert when the feathers are dropped in hires4.
The feathers will still be invisible, as they are in the original game.
2023-06-05 11:19:51 +02:00
Cameron Cawley
794a61395a ADL: Move the engine options into the MetaEngine subclass 2022-11-16 23:58:54 +01:00
Cameron Cawley
f3b094e53f ENGINES: Change the MetaEngineDetection interface to match MetaEngine 2022-07-23 23:31:58 +02: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
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
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
b125faf954 ADL: 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
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
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
Walter van Niftrik
9abd1d8d53 ADL: Remove testing flag for hires1 French 2021-08-16 19:24:46 +02:00
Cameron Cawley
2992675704 ADL: Add keymapper support 2021-08-07 17:11:02 +03:00
D G Turner
4968e0206f ADL: Remove C++-11 flag From Engine
This is not required as this engine does not use any C++-11 specific
code and thus will build fine with C++-98.
2021-08-06 05:28:39 +01: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
Walter van Niftrik
485e5def14 ADL: Add support for hires1 PD variant 2021-07-28 01:07:03 +02:00
Walter van Niftrik
87a75ad02b ADL: Add support for more hires2 variants 2021-07-27 23:56:27 +02:00
Walter van Niftrik
691392a109 ADL: Make hires1 extra fields more descriptive 2021-07-27 23:56:27 +02:00
Walter van Niftrik
5f6c88ef15 ADL: Add support for later French hires1 2021-07-24 00:56:51 +02:00