Commit Graph
115 Commits
Author SHA1 Message Date
sluicebox daed465639 SCI: Add option for high resolution Mac fonts
This adds the existing GAMEOPTION_HIGH_RESOLUTION_GRAPHICS option to
Mac games with native fonts. Default is enabled. If disabled, then the
low resolution Mac fonts are used and the game isn't upscaled.
2022-11-06 23:05:20 -08:00
sluicebox 1efdb1cb6c SCI: Add support for Macintosh fonts
High-resolution native Macintosh fonts are now supported in the
following games when the game's executable is present:

- Castle of Dr. Brain
- Freddy Pharkas
- King's Quest 6
- Leisure Suit Larry 1
- Leisure Suit Larry 5
- Space Quest 1

And in these games when classicmacfonts.dat is present:

- Leisure Suit Larry 6 (floppy)
- Quest for Glory 1
2022-11-06 23:05:20 -08:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh 940c7bfc14 SCI: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Paul Gilbert 0136043f09 COMMON: Revert Change Rect and Point to have int32 fields
This reverts commit 1c3e7fb4e9.
2021-07-06 20:35:42 -07:00
Paul Gilbert 1c3e7fb4e9 COMMON: Change Rect and Point to have int32 fields 2021-07-04 18:24:26 -07:00
sluicebox 05d5299c54 SCI: Remove unused 640x480 mode from SCI16 code
This is old SCI32 code that should have been removed from
GfxScreen when GfxScreen32 was created.
2021-05-14 17:37:19 -06:00
Eugene Sandulenko 5e7fe2dc57 JANITORIAL: Replace spaces in indentation with tabs 2021-04-15 21:20:36 +02:00
wonst719 b7664c24dc SCI: Korean fan translation support 2020-11-08 22:26:31 +02:00
Willem Jan Palenstijn 2cc67cd29b SCI: Add custom palette mods for SQ3 and LSL2
This adds a devtools script to convert scifx config files from FreeSCI
into C++ code to apply the palette mods.

The actual palette mods are by Matt Hargett, and from FreeSCI.
2020-10-31 11:44:28 +02:00
Willem Jan Palenstijn 0be765b288 SCI: Add support for RGB rendering 2020-10-24 02:55:01 +03:00
D G Turner d11c61db14 SCI: Fix Missing Default Switch Cases
These are flagged by GCC if -Wswitch-default is enabled.
2019-12-01 05:06:31 +00:00
sluicebox 336a79f078 SCI: Add horizontal shake to kShakeScreen 2019-11-19 00:20:40 +01:00
sluicebox b8390fa161 GRAPHICS: Add interface for horizontal shake 2019-11-19 00:20:40 +01:00
sluicebox 954f5142cb SCI: Implement full kWait behavior
Fixes PQ3 bug #11020
2019-07-21 18:20:07 +03:00
Colin Snover 432fd522d2 ENGINES: Remove default1x scaler flag
This flag is removed for a few reasons:

* Engines universally set this flag to true for widths > 320,
  which made it redundant everywhere;
* This flag functioned primarily as a "force 1x scaler" flag,
  since its behaviour was almost completely undocumented and users
  would need to figure out that they'd need an explicit non-default
  scaler set to get a scaler to operate at widths > 320;
* (Most importantly) engines should not be in the business of
  deciding how the backend may choose to render its virtual screen.
  The choice of rendering behaviour belongs to the user, and the
  backend, in that order.

A nearby future commit restores the default1x scaler behaviour in
the SDL backend code for the moment, but in the future it is my
hope that there will be a better configuration UI to allow users
to specify how they want scaling to work for high resolutions.
2017-10-07 12:30:29 -05:00
Colin Snover a4eb6a5ca5 SCI: Remove old SCI32 view scaling code from SCI16 graphics code 2017-09-27 20:27:34 -05:00
Colin Snover 31daa956d6 SCI: Implement bounds-checked reads of game resources 2017-03-27 19:42:31 -05:00
Colin Snover ee4b172d54 SCI: Remove old SCI32 hires detection heuristic 2016-11-02 15:43:07 -05:00
Eugene Sandulenko dead4aa014 JANITORIAL: Remove trailing spaces 2016-10-09 14:59:58 +02:00
Colin Snover 6e2e862d8e SCI32: Implement kShakeScreen for SCI32 2016-08-19 13:57:40 -05:00
Colin Snover ff00e93c67 SCI32: Remove GfxScreen from SCI32 2016-08-19 13:57:40 -05:00
Colin Snover 9bfeb3c297 SCI32: Remove GfxScreen from GfxFrameout
Only cursor remains to be updated to go through GfxFrameout, and
then we can let GfxScreen go back to being SCI16-only.
2016-08-19 13:57:40 -05:00
Martin Kiewitz 209907d01e SCI: Screen pixel optimizations
Put things like putPixel() into screen.h, so that it can be inlined.
Also don't use look up tables for those methods anymore and instead
calculate offsets manually, because that should be faster.
2016-02-06 23:41:20 +01:00
Martin Kiewitz 1b7ed6a7cc SCI: Fix bits size calculation for upscaled hires
in screen class (calculating how many bytes are needed to
save a specified area of various screen maps)
2016-02-06 23:29:57 +01:00
Johannes Schickel 51d415733c SCI: Implement kernelSyncWithFramebuffer using copyFromScreen. 2016-02-06 22:50:53 +01:00
Johannes Schickel 74154f2101 SCI: Properly use pitch in GfxScreen::copyFromScreen. 2016-02-06 22:50:53 +01:00
Martin Kiewitz 9f43193730 SCI32: PQ4 seems to support high resolution too 2016-01-22 02:30:13 +01:00
Martin Kiewitz 0aa9924df1 SCI: add user option for high resolution graphics
Instead of choosing Windows as platform, users can now also simply
click this option for Gabriel Knight 1 + King's Quest 6
Defaults to high resolution graphics
2016-01-22 02:01:28 +01:00
Willem Jan Palenstijn 30b5497e24 SCI: Clarify function name 2015-05-03 13:45:05 +02:00
Martin Kiewitz 031b9b8ced SCI: restore: clear screen when restoring
primarily to clear kPortrait graphics in kq6
when restoring during portrait animation
2015-04-26 15:50:12 +02:00
Matthew Hoops 6dbdf03746 SCI: Fix Mac games with a height of 190
A regression from 72e6a9eeab
2015-01-07 00:29:50 -05:00
Matthew Hoops 59cd015fc9 SCI: Silence a gcc warning 2014-12-24 10:38:28 -05:00
Martin Kiewitz 5594feff2a SCI: Phantasmagoria actually outputs 630x450 now
clipping of video output was required
2014-11-09 17:33:17 +01:00
Martin Kiewitz 72e6a9eeab SCI: some more work on 480x300 mac support 2014-11-09 12:54:41 +01:00
Filippos Karapetis 9783f0bbd9 SCI: Remove trailing whitespace 2014-10-28 16:17:06 +02:00
Martin Kiewitz 924f1f1fee SCI: fix coordination translation for 480x300 mac 2014-06-08 23:10:17 +02:00
Martin Kiewitz c1e895d799 SCI: fix regression introduced by 480x300 commit
fix EGA graphic corruption
2014-06-02 01:37:08 +02:00
Martin Kiewitz 94160a28e3 SCI: work on SCI0/01 Mac 480x300 scaling 2014-06-01 13:41:14 +02:00
Johannes Schickel 8fc7d60feb SCI: Make GPL headers consistent in themselves. 2014-02-18 02:39:37 +01:00
m-kiewitz fa41ee132b SCI: fix for heap corruption during lsl3 ending 2013-09-21 22:35:53 +02:00
Johannes Schickel dbda889e63 SCI: Take advantage of Surface::getPixels. 2013-08-03 04:02:52 +02:00
Johannes Schickel dd67e9f099 SCI: Prefer getBasePtr over direct Surface::pixels access. 2013-08-03 02:52:33 +02:00
Filippos Karapetis 5b25c40c40 SCI: Fix a non-initialized variable in GfxScreen - CID 1003105 2013-05-01 01:51:12 +03:00
Filippos Karapetis c0beaf2337 SCI: Differentiate between screen width and pitch
This properly addresses the odd screen width (630) in Phantasmagoria 1
2012-07-26 11:06:51 +03:00
Filippos Karapetis e4378d5bac SCI: Better handling for Phantasmagoria's odd screen size
Still not right, as the width isn't set
2012-07-06 13:17:04 +03:00
Tarek Soliman a4798602d7 JANITORIAL: Fix missing whitespace in pointer cast
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g'

This seems to have caught some params as well which is not undesirable IMO.
It also caught some strings containing this which is undesirable so I
excluded them manually. (engines/sci/engine/kernel_tables.h)
2012-02-15 10:07:10 -06:00
Eugene Sandulenko 78f1ea7690 OSYSTEM: extended installTimerProc() with timer ID parameter 2011-08-06 11:28:35 +01:00
Johannes Schickel 933ee5b156 GRAPHICS: Remove default values from FontSJIS::drawChar.
drawChar is overloaded in FontSJIS. One takes a "Surface &" as first
parameter another one "void *", they furthermore have the exact same
number of required parameters. The one "void *" just had a few extra
parameters with default values. This resulted in a bug in SCUMM, where
"VirtScreen *" (a subclass of Surface) was passed instead of "VirtScreen &"
and thus the method taking "void *" was incorrectly used.

To make it easier to spot such bugs in the future I just removed the default
values and thus disallow such calls.
2011-07-01 05:42:54 +02:00
Walter van Niftrik 4628833a32 SCI: Set Mac versions of LSL1 and LSL5 to screen height 190.
This fixes bug #3310782. However, as I was unable to get the games working in
a Mac emulator, this is an educated guess at this point.
2011-06-04 15:32:57 +02:00