Commit Graph

133483 Commits

Author SHA1 Message Date
Roland van Laar
bb4bd0845b DIRECTOR: Follow documentation for DIB header
width, height pixelspermeter are signed according to the spec.
Use a warning with 'buildbot' to see which movies have a negative
height.

https://learn.microsoft.com/en-us/previous-versions//dd183376(v=vs.85)
2022-10-18 22:57:17 +02:00
Roland van Laar
2e39acf84c DIRECTOR: Improve RIFF loading
Two improvements for RIFF loading: size and alignment
A RIFF elements header: FourCC and size (4 bytes each) are not included
in the size. Offset + 12 then size - 4.

'DIB ' resources were found to always lead with two zero bytes.
Tested with: Fujitsu fmTOWNS SUPER TECHNOLOGY DEMO 1993.
Other resources such as 'SND ' do need alignment.
Tested with: SpaceWarlock Win. Intro movie lacked sound without
alignment. (WARNING: SNDDecoder: Bad format: 17408!)
2022-10-18 22:02:41 +02:00
Roland van Laar
144dfead98 JANITORIAL: DIRECTOR: remove superfluous ':' 2022-10-18 22:02:41 +02:00
ShaharAriel
278b467f60 SWORD25: Apply code review suggestion 2022-10-18 17:37:55 +02:00
Shahar Ariel
c7b17f36be SWORD25: Apply code review suggestion 2022-10-18 17:37:55 +02:00
Shahar Ariel
20821f96ed SWORD25: Add hebrew support
changes:

* use unicode-bidi for hebrew text
* add detection of hebrew patch to detection table
2022-10-18 17:37:55 +02:00
Orgad Shaneh
1dbd274849 SCUMM: Use inline member initialization in Player_Towns* 2022-10-18 15:27:48 +02:00
Walter Agazzi
c0c2babe9d AGS: Add detection for Zid Journey Demo 2022-10-18 14:24:20 +02:00
Donovan Watteau
36c1c61c26 DISTS: MSVC: Properly document the flags in create_msvc.bat 2022-10-18 12:38:46 +02:00
Roland van Laar
1ec0dfb5e1 DIRECTOR: Fix segfault when loading broken pic
Handle loadStream returning false when the pic doesn't confirm.
In this case a 'DIB ' with a headersize not matching 40.

Observed happening in:
- Fujitsu fm TOWNS Super TECHNOLOGY DEMO
- KUZIRA.MMM from PINGU
2022-10-18 09:34:37 +02:00
Donovan Watteau
671603aa27 GRIM: Backport a Bison fix for uninitialized yyval (Trac#13784)
Reported by MSVC whenever pressing a key in EMI in debug builds.

Upstream fix from GNU Bison 1.28c on 2000-10-02:
https://git.savannah.gnu.org/cgit/bison.git/commit/?id=da9abf4366d824a23da3d2416856e9a482794eb1
2022-10-18 08:42:12 +03:00
Thunderforge
51e0530752
ENGINES: Changing Touche to Touché in game & engine name
The full title is *Touché: The Adventures of the Fifth Musketeer* (with the accented é) as shown on the [Wikipedia page](https://en.wikipedia.org/wiki/Touché:_The_Adventures_of_the_Fifth_Musketeer).

The engine name and game id are still `touche`.
2022-10-18 08:39:42 +03:00
elasota
93cdaccb9b MTROPOLIS: Fix severe image rendering regression. 2022-10-17 22:42:32 -04:00
elasota
4188d5982d MTROPOLIS: Implement shared scene modifier. 2022-10-17 22:42:28 -04:00
elasota
18e329463d MTROPOLIS: Fix PathMotionModifierV2 load regression. 2022-10-17 22:42:23 -04:00
elasota
7dab14010d MTROPOLIS: Fix shared scene modifier parsing incorrectly. 2022-10-17 22:42:18 -04:00
Walter Agazzi
8711379260 AGS: Change ID shivah to shivahkosher in achievements table 2022-10-18 01:42:50 +02:00
Walter Agazzi
24874a1067 AGS: Add detection for older Mac version of The Shivah Kosher 2022-10-18 01:42:50 +02:00
Walter Agazzi
839575a4d4 AGS: Add shivahkosher ID and change respective entries 2022-10-18 01:42:50 +02:00
athrxx
4cacd66d0d AUDIO: code style fixes 2022-10-17 23:03:05 +02:00
athrxx
829572057c SCUMM: minor code style fixes 2022-10-17 23:03:04 +02:00
AndywinXp
d65f6f4c92 SCUMM: SAMNMAX: Remove never triggered workaround
This workaround was originally meant to address the case in which derefActor was called with
an id == 0. Originally, a value of 0 triggered a range error. As a matter of fact, we (correctly) accept
actors id == 0 now, so this workaround is never being triggered.
2022-10-17 22:28:48 +02:00
Le Philousophe
c756415388 BACKENDS: OPENGL: Don't fail if parameter is not present in preset
RetroArch doesn't use this parameters value and looks up directly for
entries so it would never fail on this.
2022-10-17 22:19:26 +02:00
Le Philousophe
ef9eb436a0 BACKENDS: OPENGL: Apply parameters globally and load the preset ones 2022-10-17 22:09:35 +02:00
Le Philousophe
396d5fb425 BACKENDS: OPENGL: ALlow the use of software scalers with LibRetro 2022-10-17 22:09:35 +02:00
ScummVM-Translations
1f77009f32 I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2022-10-17 19:25:05 +00:00
AndywinXp
ade8ebd097 SCUMM: INDY4: Replace old actor workaround with proper fix 2022-10-17 21:24:41 +02:00
ScummVM-Translations
e84316151c I18N: Update translations templates 2022-10-17 17:36:10 +00:00
sluicebox
19377036f7 SCI: Add all ICEMAN 1.022 files to detection entry
Thanks to @OmerMor!
2022-10-17 12:35:15 -05:00
Donovan Watteau
ea0f0cc9ee SCUMM: Remove old getDist() MI2 workaround for Trac#420
This one was added more than 20 years ago, but I can't reproduce the
issue anymore with the DOS, Macintosh, or Amiga versions, and it
appears that it was already OK back in 2008.

I couldn't reproduce any lock-up with the original DOS version in
DOSBox either.
2022-10-17 17:28:57 +02:00
Donovan Watteau
4ff9960ac9 SCUMM: Remove old getDist() MI1 workaround for Trac#1194
We are probably closer to the behavior of the original interpreters
now, because I can't reproduce this ScummVM problem anymore with any
demo, Passport to Adventure, EGA or Amiga version.

Bisecting a bit with the Amiga demo, this has effectively been fixed
by commit d719e83783.
2022-10-17 16:56:59 +02:00
Eugene Sandulenko
b989c49018
JANITORIAL: Indentation fixes 2022-10-17 16:08:58 +02:00
AndywinXp
6572d3c3df SCUMM: Remove an unneeded 20 years old LOOM CD workaround
20 years ago this was needed because it was assumed that actor 0 was an invalid actor, but that
simply isn't true. In the original this particular call failed because actor 0 wasn't in the current room,
and this is exactly what happens now on our end, when removing this workaround.
2022-10-17 16:01:10 +02:00
Walter Agazzi
b060c7adca AGS: Add detection for some itch.io games 2022-10-17 13:29:23 +02:00
Roland van Laar
cf8f854960 DIRECTOR: LINGO: XOBJ: Scaffolding for Widget
Widget is an XObject used in Alice: An Interactive Museum.
The assumption is that getPro returns the drive letter as
the return value of getPro is assigned to a variable called drv.

Resolves the following errors from: https://bugs.scummvm.org/ticket/13204
- WARNING: BUILDBOT: Uncaught Lingo error: Call to undefined handler 'Widget'. Dropping 1 stack items!
- WARNING: varFetch: global variable drv not defined!
2022-10-17 12:49:46 +02:00
eientei
b96174c02e DIRECTOR: testExtensions: Try the non-converted filename as well
Required to get Wrath of the Gods to play, because due the existing code, when given `30AM1`, it was only checking `30AM1` and `AM1.MMM` but not `30AM1.MMM` (which is what the file is called)
2022-10-17 12:47:04 +02:00
eientei
b80fa3f122 DIRECTOR: Add support for multi-entry D3 EXEs
Tested on Wrath of the Gods demo, only contains movie file path
information
2022-10-17 12:29:16 +02:00
Daniel Abramowitz
f47977db1d AGI: Format Logs
Use the text's stringPrintf function to format the log messages.
2022-10-17 07:26:46 +03:00
Timo Mikkolainen
398550e996 I18N: Update translation (Finnish)
Currently translated at 100.0% (1768 of 1768 strings)
2022-10-17 00:33:49 +00:00
AndywinXp
3bd3fe6b04 SCUMM: INDY4: Properly fix #1265 2022-10-17 00:49:38 +02:00
Einar Johan Trøan Sømåen
614ad647d1
GRIM: Don't error out on "specialty" texture loading.
Specialty textures are not loaded from files, so
the previous change broke EFMI entirely. This change
makes an exception for specialty textures.
2022-10-16 22:43:20 +02:00
Roland van Laar
346d4b08c4 DIRECTOR: FONTS: Fix memory leak
Don't map the same fromFont twice.
CloneRanger mapped one fromFont twice, resulting in a memory leak on
descruction since the pointer to the first fontMap was lost.
2022-10-16 22:06:27 +02:00
Daniel Abramowitz
65aba03517 AGI: Write log() Function to File
Now the log() function writes to a file, as
the AGI engine did.

It appears that ScummVM doesn't have any "append" functionality.
As a result, I made this implementation create a new file each time
a message is logged. Note that the file is only created if the
log() function is called. The file name includes the game name
and the current time, ensuring that logs won't be overwritten.

The format is: agi.<gameid>.<currentime>.log and will be logged to
the working directory.

Last week I first implemented the log() function. In that commit
I just had it log to the console. In this commit we start
writing to a file.
2022-10-16 21:52:21 +02:00
Donovan Watteau
0e81058cc7 SCUMM: Don't print unprintable chars in warnings and errors 2022-10-16 22:27:58 +03:00
Le Philousophe
d398034fe5 BACKENDS: OPENGL: Enable filtering when using scaling shaders 2022-10-16 20:42:54 +02:00
Lothar Serra Mari
e8f262aca1 WIN32: Set release date for 2.6.1 2022-10-16 19:58:34 +02:00
Lothar Serra Mari
965c387aed NEWS: Reveal codename and release date for 2.6.1 2022-10-16 19:53:06 +02:00
Le Philousophe
c257251e8f BACKENDS: OPENGL: Implement FrameCount uniform 2022-10-16 19:43:05 +02:00
Le Philousophe
8047aef666 BACKENDS: OPENGL: Add support for wrap mode in libretro 2022-10-16 19:43:05 +02:00
Le Philousophe
73f48341c0 BACKENDS: OPENGL: Allow to set texture wrapping mode 2022-10-16 19:43:05 +02:00