123640 Commits

Author SHA1 Message Date
alxpnv
4901928d5c ASYLUM: allow loading of savegames from the previous versions of the game 2021-09-22 15:54:50 +03:00
alxpnv
2145019341 ASYLUM: fix signed/unsigned mismatch
Reported by Henke37
2021-09-22 15:54:49 +03:00
Paul Gilbert
e1cb9afb4e AGS: AGSParallax plugin fix, workaround for Stargate Adventures 2021-09-21 21:09:51 -07:00
Paul Gilbert
796740e2e1 AGS: Added detection entries 2021-09-21 18:54:58 -07:00
Paul Gilbert
b63427641d AGS: Moved font's linespacing hack into the game_init
From upstream f8ad7b96b46c33156ee1d6c7c4b64b5029c7b93b
2021-09-21 18:45:18 -07:00
Paul Gilbert
a72e87df63 AGS: Fixed crash in auto outline in case of empty text argument
From upstream e3665a3c073e574d3e4fade869b3c0c3e88508e5
2021-09-21 18:45:18 -07:00
Eugene Sandulenko
e7043b49b5
Revert "MYST3: Add detection for PS2 prototype"
This reverts commit f87eed8b1b7e587d815b3024584af87f99dddff2.
2021-09-22 01:36:26 +02:00
sluicebox
ecc72dce23 SCI: Don't poll input events from MIDI thread
In March, b67c2d72d6c40fda2d67cfaf6a8aab9f44f7cd1e moved some MIDI
initialization from the main thread to the MIDI thread. This caused
MidiPlayer_Midi::sysEx() to run on the MIDI thread for the first time.
This is a problem because it calls SciEngine:sleep(), which polls
events, and that causes MacOS to throw an exception for calling
SDL_PollEvent() on a non-main thread.

While investigating, it also turns out that MidiPlayer_Midi::sysEx()
and MidiPlayer_Fb01::sysEx() were calling OSystem::updateScreen(),
and that also shouldn't be happening on a non-main thread.

Now SciEngine::sleep() is only called on the main thread, and
OSystem::delayMillis() is called on the MIDI timer thread.
Continuing to call sleep() on the main thread keeps the UI responsive
when loading patches, which can take several seconds.
The OSystem::updateScreen() calls had no effect and have been removed.

Fixes bug #12947
2021-09-21 16:35:46 -05:00
Lothar Serra Mari
1e61dc5ec6 NEWS: Update German NEWS file 2021-09-21 18:10:50 +02:00
Torbjörn Andersson
c18b91759a GROOVIE: Remove fast video mode from 11th Guest
Only the VDX player has a fast mode, and only The 7th Guest uses it. I
believe there's less use for it here, since the 11th Guest movies
already run at a decent frame rate.
2021-09-21 15:57:00 +02:00
alxpnv
b9e52233c3 ASYLUM: (TimeMachine puzzle) fix uninitialized class members
CID 1453221
2021-09-21 15:02:41 +03:00
alxpnv
ce0c5cce18 ASYLUM: fix arguments in wrong order
CID 1453225
2021-09-21 15:02:41 +03:00
alxpnv
5fe5a128a6 ASYLUM: fix improper use of negative value
CID 1453216
2021-09-21 15:02:41 +03:00
alxpnv
6c24eb0be2 ASYLUM: fix potential bad bit shift
CID 1453217
2021-09-21 15:02:41 +03:00
Paul Gilbert
345032ecc4 TITANIC: Add entry for should fix to NEWS.md 2021-09-20 18:54:36 -07:00
Paul Gilbert
6ac13a6c0c TITANIC: Make findByWordClass a static method 2021-09-20 18:47:05 -07:00
Paul Gilbert
8b90ea85df AGS: Implemented auto outlining with custom thickness and style
From upstream f2736d21677d2db4b0559c1ded31e284b8a8f64f
2021-09-20 17:20:59 -07:00
Paul Gilbert
d865acf606 AGS: introduced font outline style and thickness parameters
From upstream 43425f738dc6beb7d0758e256a840c5f37a4d38a
2021-09-20 17:20:59 -07:00
Paul Gilbert
9d9080ffda AGS: Also return real TTF height in TTFFontRenderer::GetTextHeight()
From upstream 5115943fce180fe3e0bd9fe3678faa2d01b6d474
2021-09-20 17:20:58 -07:00
Paul Gilbert
d8335ed435 AGS: Partially revert previous commit: had engine logic moved to fonts
From upstream a4bafa3597a98a0df1cb5f5e921b2e6651c28a89
2021-09-20 17:20:58 -07:00
Paul Gilbert
96ad02b3b9 AGS: Use real font height in game calculations, compat linespacing
From upstream  3a9b8f199e09b9919a201c1d2fa486a79761b339
2021-09-20 17:20:58 -07:00
Paul Gilbert
8058862f7d AGS: Precalculate and save font's height on load
From upstream 47001a398a1bc4ad022645ad21e1c891a3757167

Note: Since we don't implement alfont in full, the
referenced methods are stubbed in our alfont.cpp
2021-09-20 17:20:58 -07:00
Marcus Comstedt
c68fb8561d DC: Preserve appDomain when reloading config on disc swap
This is needed to prevent essential settings like
always_run_fallback_detection_extern from being removed.
2021-09-20 23:28:58 +02:00
Marcus Comstedt
a43b6cb67a DC: Enable options to save more memory 2021-09-20 23:28:58 +02:00
Marcus Comstedt
47de1896b9 PLUGINS: In uncached mode, try plugin which matches engine name first
Trying all engine plugins in alphabetical order is a time consuming
process, so start by trying the plugin which has the same name as the
engine id first, if it exists, as it will usually be the right one.

In the rare case that it would be the wrong one there is no problem;
the code will simply fall through to the old scanning and then record
the correct plugin in the engine_plugin_files domain where it will be
found the next time the plugin is needed.
2021-09-20 23:28:57 +02:00
Marcus Comstedt
d2fba8fc2f PLUGINS: Make detection plugin filename check case insensitive
Plugin filenames are all upper case on Dreamcast due to the ISO 9660
filesystem.  It doesn't seem likely that making the check case
insensitive would cause any problems even on a file system that
is case sensitive.
2021-09-20 23:28:57 +02:00
Henrik "Henke37" Andersson
4845b6daa2 DIRECTOR: Add full title for ernie in detection 2021-09-21 00:28:04 +03:00
alxpnv
a937575412 ASYLUM: (Pipes puzzle) fix uninitialized class members
CIDs 1453211 and 1453229
2021-09-20 16:04:29 +03:00
alxpnv
f6ca392be7 ASYLUM: use strlcpy
CID 1453210
2021-09-20 15:46:44 +03:00
alxpnv
69b545a8d0 ASYLUM: remove unused class member
CID 1453227
2021-09-20 15:41:39 +03:00
alxpnv
b8cfb363a3 ASYLUM: fix buffer overruns in Actor::getStride()
CIDs 1457938 and 1457990
2021-09-20 15:36:45 +03:00
alxpnv
8222dee141 ASYLUM: fix uninitialized class members
CID 1453223
2021-09-20 15:07:26 +03:00
alxpnv
e3af0aa2d1 ASYLUM: add missing va_end
CID 1453214
2021-09-20 14:10:48 +03:00
alxpnv
f1012335f7 ASYLUM: fix uninitialized variable
CID 1453219
2021-09-20 12:22:37 +03:00
alxpnv
eed6789af2 ASYLUM: fix buffer overrun
CID 1453215
2021-09-20 12:15:35 +03:00
alxpnv
377ffb92be ASYLUM: add support for loading during startup 2021-09-20 12:03:40 +03:00
alxpnv
0fbe223f8a ASYLUM: disable saving in demo versions 2021-09-20 11:14:54 +03:00
Matthew Duggan
dc17170673 ULTIMA8: Use 2 bytes of intrinsic stack for UINT8
This fixes #12917.

The usecode "push byte" opcodes (0x0A and 0x5D) always push 16 bits on the
stack, but the ARG_UINT8 macro was only removing 1 byte.  Most of the time this
went unnoticed because the UINT8 was the last argument in most cases (eg, a z
val), or unused.

This led to an inconsistency where sometimes z values were being popped with
ARG_UINT16 and sometimes ARG_UINT8.  The original games do not support z values
beyond 254, so this should always be UINT8.

Additionaly, a while back "push byte" was fixed so it always sign extends, but
this could result in a case where we pop incorrect values.  For example, a high
Z value could get sign-extended on push, and then popped back as a UINT16,
giving a z of 64000ish.

Fix by always moving the SP by 2 bytes, only use the first one.

Correcting this also fixes the strange color ordering I thought was needed for
I_jumpToAllGivenColor in Crusader: No Regret, where actually it should have
been popping the values as 16-bit instead of 8-bit.
2021-09-20 14:11:49 +09:00
Paul Gilbert
5d7ae659bf AGS: Added Sepulchre detection 2021-09-19 12:11:48 -07:00
Paul Gilbert
a04bec4d04 AGS: Added Broken WIndows detections 2021-09-19 12:00:31 -07:00
Paul Gilbert
7c7694739b AGS: Added KQ4 Retold detection 2021-09-19 11:55:54 -07:00
Martin Gerhardy
dc5d474160 MACVENTURE: re-use the read stream to reduce heap allocations 2021-09-19 15:21:56 +02:00
Martin Gerhardy
37de1b3146 MACGUI: const for some methods 2021-09-19 15:21:56 +02:00
Martin Gerhardy
b73889d2e0 MACVENTURE: pass by reference 2021-09-19 15:21:56 +02:00
Martin Gerhardy
1287dce313 MACGUI: whitespace issues 2021-09-19 15:21:56 +02:00
Martin Gerhardy
9f479e06f4 MACVENTURE: fixed whitespaces 2021-09-19 15:21:56 +02:00
Divyam Ahuja
9ad16ff273 MACVENTURE: Initialize struct according to C++98 convention 2021-09-19 15:21:56 +02:00
DivyamAhuja
dd6508500c MACVENTURE: Fix Output console text width 2021-09-19 15:21:56 +02:00
DivyamAhuja
6bc5d0e9ae MACVENTURE: Fix object not dropping at left side of window 2021-09-19 15:21:56 +02:00
DivyamAhuja
0638fca683 MACVENTURE: Remove unnecessary adding of NULL character to string 2021-09-19 15:21:56 +02:00