Commit Graph
9469 Commits
Author SHA1 Message Date
D G Turner b767aa2010 SCI: Fix Signed vs. Unsigned Comparison GCC Compiler Warning 2024-11-05 23:18:11 +00:00
Filippos Karapetis 26ba26b937 SCI: Fix build 2024-11-04 10:38:09 +02:00
Filippos Karapetis 5972e1b97c SCI: Add support for playing Mac QT videos in paletted screen formats
This is needed for the QT videos of the Mac version of KQ6
2024-11-04 10:33:12 +02:00
Filippos Karapetis 609e8b54e0 SCI: Disallow saving from the GMM and add a new game option to allow it
This disables the feature, but allows users to enable it, if they want,
via a new checkbox. An appropriate warning has been added to the
checkbox, notifying the user that saves created through the GMM may be
corrupted and unusable. This addresses bug 15358
2024-11-04 10:11:57 +02:00
Cameron Cawley 09ab1ddfb7 SCI: Speed up GfxScreen::scale2x() for 2bpp and 4bpp formats 2024-11-01 02:33:51 +02:00
Cameron Cawley 68f3c51f2b SCI: Support more pixel formats in GfxScreen::scale2x() 2024-11-01 02:33:51 +02:00
athrxx 9339b3b3c3 SCI: (KQ6/MAC) - icon bar colors in rgb render mode 2024-11-01 01:26:51 +01:00
sluicebox 915173612a SCI: Validate font character offsets
Handles buggy fonts in fan translations
2024-10-29 18:00:48 -07:00
sluicebox 024999a4c7 SCI: Add detection entry for SQ3 Spanish translation
Trac #15381
2024-10-29 18:00:48 -07:00
sluicebox 55522a39b5 SCI: Remove unused check from SoundCommandParser
CID 1563851
2024-10-21 23:18:54 -07:00
sluicebox 4200d6575c ALL: Return result from MetaEngine::removeSaveState 2024-10-18 09:41:03 +03:00
sluicebox 2554549b41 SCI: Reduce variable scope 2024-10-17 14:47:43 -06:00
sluicebox c779adb2b1 SCI: Clip kStrCmp result before casting
CID 1003896
CID 1003897
2024-10-17 13:27:13 -06:00
sluicebox 20878e1503 SCI: Fix getSoundResourceId validation
CID 1551903
2024-10-17 13:27:13 -06:00
sluicebox 27fb4f0e1c SCI: Test FSNode::getChildren return value
CID 1563746
2024-10-16 16:09:20 -06:00
sluicebox 42cbbcd2df SCI: Fix Window destructor not running
CID 1403309
2024-10-16 13:58:15 -06:00
athrxx 980572c29b SCI: (PC-98 audio) - fix sound enable switch for SCI0 2024-10-16 18:16:05 +02:00
sluicebox 5a6470e3f2 SCI: Remove unused member 2024-10-15 13:31:34 -06:00
Eugene Sandulenko 4e3a2ee13f SCI: Added missing override keyword 2024-10-12 16:16:53 +02:00
athrxx 51012c33a6 SCI: improve last commit (Japanese text input)
(914e017290)

It did fix the problem, but it kind of defeated the purpose of
the strnlen safety check. Now it gets the correct length...
2024-10-12 01:47:10 +02:00
athrxx 914e017290 SCI: fix Japanese text input (regression)
Regression from 10d97ce379

If you try the Japanese text input it is kind of obvious, e. g.
when you type "kyo" which the parser converts to "キョ" the
cursor should end up to the right of that. Instead it was
reset to 0, due to the wrong strnlen size argument.
2024-10-12 00:37:01 +02:00
athrxx 1fefea04b7 SCI: (QFG/PC-98) - fix Japanese text color (regression)
I noticed that in the Meeps scene there was green
sjis text color. It is always supposed to be black. The
original interpreter can't do anything else. Same
for SCI1, although for different reasons. I think I broke
that when I fixed the PQ2 colors.
2024-10-11 14:43:57 +02:00
Le Philousophe ace20bbf29 SCI: Fix build when SCI32 is disabled 2024-10-10 19:07:37 +02:00
athrxx 389b51edbb SCI: (KQ6Win Gfx driver) - fix glitch when in rgb rendering mode 2024-10-10 01:09:06 +02:00
sluicebox 2c110fd12a SCI: Initialize various members
Coverity issues
2024-10-09 09:52:33 -06:00
athrxx bf48bc41b3 SCI: (KQ6 Gfx driver) - fix monochrome mouse cursors in non-rgb rendering mode 2024-10-09 08:35:11 +03:00
athrxx c0492ece44 SCI: work around original script/interpreter bug
The original interpreter expects the same arguments for
kGraph 15 as for kGraph 7. The scripts never pass the last
arguments, though. So the engine would use undefined
values here (which apparently had no visual consequence).
2024-10-09 08:35:11 +03:00
athrxx 523add9022 SCI: revert unneeded video code changes 2024-10-09 08:35:11 +03:00
athrxx 6be167aeaf SCI: cleanup 2024-10-09 08:35:11 +03:00
athrxx de32f308b4 SCI: remove GFX_SCREEN_MASK_DISPLAY
(and code sections guarded by it)

This was only used for the KQ6 Win hi-res code.
2024-10-09 08:35:11 +03:00
athrxx 2ec9c46373 SCI: replace workaround to clear hires portrait rects
As the GFX_SCREEN_MASK_DISPLAY flag is no longer
used, I have made a new workaround. Nowadays it
seems to be needed only for the mixed speech/text
mode (which didn't exist in the original game, but has
been added to ScummVM via script patches). The
problem is that the hires portrait frames will be drawn
at y = 5 in mixed speech/text mode. The window/port
rect starts at y=10, though. The engine is not meant to
update screen parts outside the port dimensions.

Another solution would be to improve the vertical
placement of the portraits with these patches, but
that seems to be more complicated.
2024-10-09 08:35:11 +03:00
athrxx 80258d543a SCI: re-enable hi-res option for KQ6 Windows
(since the "small window" mode is now supported,
there needs to be an option to select that)
2024-10-09 08:35:11 +03:00
athrxx a4380b8e0b SCI: add appropriate render options for KQ6 Win 2024-10-09 08:35:11 +03:00
athrxx c11193f35c COMMON: add Windows 16 colors render mode option 2024-10-09 08:35:11 +03:00
athrxx 5f66d7161a SCI: add 16 colors mode for KQ6 Win
The original interpreter supports that, although it is slightly
broken. It will show black boxes for the hires graphics, since
the mode isn't properly checked. I have fixed that here to
show the the lores graphics.
2024-10-09 08:35:11 +03:00
athrxx 71a2af0de2 SCI: more accurate KQ6 video handling
I was just exploring this when trying to debug a glitch (which was
not connected to this). The changes do literally nothing to the
output. So the only purpose is to have a better documentation
of what the scripts actually do here.
2024-10-09 08:35:11 +03:00
athrxx 70414a0b87 SCI: make upscaled gfx driver for KQ6 Windows
- The main purpose was to move more upscaling logic out of the engine
- This actually contains various precision fixes to the hires code. There
were some comments about being unsure what to. I think I managed to
fix all of these, although it shouldn't make a visible difference, since the
workarounds worked as intended.
- It does actually fix a very minor glitch: The portraits were vertically off
by one pixel. And the opening AVI video is probably also vertically fixed
by one pixel (although the video display in the original is not done very
well, anyway).
2024-10-09 08:35:11 +03:00
athrxx 6e59e0a1ac SCI: add some asserts to gfx drivers
(I have noticed that the (not really well supported) Mac SCI0 versions
with 480x300 pixels resolution may pass invalid (negative) withs or
heights)
2024-10-09 08:35:11 +03:00
sluicebox 7a4974a35c SCI: Improve KQ6 CD enable_high_resolution_graphics
- KQ6 CD DOS now delivers a DOS experience by default instead of Windows
- KQ6 CD Windows no longer offers an option that has no effect
2024-10-06 01:25:14 +03:00
athrxx 7f6cc6b12b SCI: (PCJr sound driver) - minor cleanup
(remove emumidi dependance)
2024-10-05 14:50:15 +02:00
athrxx 4d05381e17 SCI: (PCJr audio) - minor Coverity fixes 2024-09-27 23:16:04 +02:00
Giovanni Cascione 29713de5cc SCI: fix RELEASE_BUILD tests 2024-09-23 23:29:21 +03:00
sluicebox f4561ee66e SCI: Add KQ5 German EGA detection entry
Thanks to @indy4fan for reporting this and figuring out version numbers

Trac #15377
2024-09-22 15:59:33 -07:00
athrxx 39e8cf97ed SCI: remove unused var 2024-09-22 20:55:03 +02:00
athrxx 664c0b278a SCI: fix another part of bug no. 15375
(SCI: SQ4 Korean text not rendered after refactor)

This fixes the issue with kDisplay, basically in the
same way as it is done for the controls.
2024-09-21 12:41:58 +02:00
Filippos Karapetis c4942be17f SCI: Replace NDEBUG define checks with RELEASE_BUILD 2024-09-20 19:05:29 +03:00
athrxx fca2fc4eb6 SCI: fix bug no. 15375
(SQ4 Korean text not rendered after refactor)

This should get some testing if possible.

Also, it would be interesting to know if other
controls (icon, list, text edit) would also need
a similar solution.
2024-09-20 14:03:01 +02:00
sluicebox e893587ae2 SCI: Fix memory leak when patch files have same name 2024-09-18 12:41:00 -07:00
sluicebox 8a8de3502d SCI: Fix memory leak when reloading patch file resource 2024-09-18 12:41:00 -07:00
sluicebox 99143ecb07 SCI: Fix memory leak in MidiPlayer_AmigaMac1 2024-09-18 12:41:00 -07:00