aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/gfx
AgeCommit message (Collapse)Author
2009-10-04SCI: Rename EngineState::segMan to _segManMax Horn
svn-id: r44629
2009-10-03SCI: Merge new GUI code written by m_kiewitz.Willem Jan Palenstijn
This is a major rewrite of the graphics code. A slightly adapted version of the old code is still available and currently the default. The new code is selectable in sci.cpp, but is not yet finished. svn-id: r44565
2009-10-03fixed addMenu isspace() issue on umlautsMartin Kiewitz
svn-id: r44563
2009-09-30Added a new special reg_t, SIGNAL_REG, for signaling when an error occurs ↵Filippos Karapetis
(usually), or to signal success in some special occasions svn-id: r44505
2009-09-30- Removed some leftover 16/32bpp color code, as we're always using palette ↵Filippos Karapetis
mode now - Simplified the mouse cursor manipulation code svn-id: r44502
2009-09-30oopsMax Horn
svn-id: r44500
2009-09-30SCI: Some palette code cleanupMax Horn
svn-id: r44494
2009-09-30Converted _color_equals() into respective equality operators within the ↵Filippos Karapetis
gfx_color_t structure svn-id: r44477
2009-09-28SCI: When merging palettes, map all unused colours to index 0.Willem Jan Palenstijn
This fixes the boots/belt of the hero sprite in QfG3 character generation. svn-id: r44448
2009-09-27SCI: Fix crash when opening menu'sWillem Jan Palenstijn
svn-id: r44398
2009-09-27SCI: Major string handling update.Willem Jan Palenstijn
All string access to segments should now work with both raw and non-raw (reg_t) segments, using the new utility functions in segMan. There will likely be regressions. svn-id: r44388
2009-09-25Create a define for the special "signal" offset used throughout the engine, ↵Filippos Karapetis
and fixed the arbitrary 0 values from commit #44294, set when some math functions do invalid calculations svn-id: r44359
2009-09-24SCI: When setting global palette, map all unused colours to index 0.Willem Jan Palenstijn
This fixes white artifacts outside the bar in the SQ4CD intro, but might cause regressions elsewhere. svn-id: r44320
2009-09-24SCI: Delete unused function declarationWillem Jan Palenstijn
svn-id: r44319
2009-09-24SCI: Fix flat dithering by permuting the blended palette so that the EGA ↵Willem Jan Palenstijn
colours are the first 16 entries svn-id: r44317
2009-09-23- Moved the SCI version in a global variableFilippos Karapetis
- Changed all the SCI version checks to use getSciVersion() - Also made getSciVersionDesc a global function (removes some ugly accessing of the SCI engine) The fallback detector should work correctly now svn-id: r44269
2009-09-22Simplified the code which creates the mouse cursorFilippos Karapetis
svn-id: r44248
2009-09-15Slight cleanup of the resource palette modification codeFilippos Karapetis
svn-id: r44097
2009-09-14SCI: Rename SegManager::kernelDeref*() methods to SegManager::deref*()Max Horn
svn-id: r44083
2009-09-14SCI: kernelDeref*() functions are now seSegmentManager methodsMax Horn
svn-id: r44082
2009-09-09Removed/replaced the gfx_pixmap_color structFilippos Karapetis
svn-id: r44017
2009-09-07Merged xfact and yfact into scaleFactor - it doesn't really make sense to ↵Filippos Karapetis
multiply one dimension with an integer multiplier which is different to the multiplier of the other dimension, otherwise we'll end up with funny looking and squashed resolutions like 640x200 or 320x400. Also, removed the now-unused pixelFormat member variable of the graphics driver struct svn-id: r44003
2009-09-06Removed some unused variablesFilippos Karapetis
svn-id: r43998
2009-09-06CleanupFilippos Karapetis
svn-id: r43996
2009-09-06Fixed compilation on BE systemsFilippos Karapetis
svn-id: r43995
2009-09-06Removed the hi-color code (16bpp & 24bpp). All SCI games use up to 256 ↵Filippos Karapetis
colors, so hi-color isn't really used anywhere, and it only makes the overall code more complex for no reason svn-id: r43994
2009-09-06Removed some leftover debug code, and turned p0printf messages into debug ↵Filippos Karapetis
messages, introducing a new debug level svn-id: r43993
2009-09-06SCI: Rename resManager -> resMan; segManager -> segManMax Horn
svn-id: r43980
2009-09-04OopsFilippos Karapetis
svn-id: r43943
2009-09-04- Allow SCI games to set the cursor position when it's hidden once againFilippos Karapetis
- Changed the message shown when the game tries to move the cursor off the screen bounds from a warning to a debug message, to avoid spam in games that do this behavior, e.g. the Camelot demo svn-id: r43942
2009-09-04- Removed the gfx error defines. When resources are not found, or are ↵Filippos Karapetis
corrupted, we should error out instead of piggy-banking an error flag to another function - Do not try and set the position of the mouse cursor when it's hidden svn-id: r43941
2009-09-04Removed the "reverse alpha" flag from the graphics driver code. Alpha values ↵Filippos Karapetis
are now always 0 for transparent, up to 255 for opaque svn-id: r43939
2009-09-04Removed the bilinear and trilinear FreeSCI scalers, and only left the ↵Filippos Karapetis
unfiltered scaler in (to be replaced by ScummVM's scaler code). We really don't need bilinear and trilinear filtered scaling in the engine, as ScummVM's filters already perform bilinear and trilinear filtered scaling, if requested svn-id: r43938
2009-09-03- Re-added the SCI0 dithering code. Dithering is disabled by default. Added ↵Filippos Karapetis
the 3 dithering modes as an enum (and reorganized them a bit) - Added 3 config options for dithering in the ini file - mainly for purists (config option "dither_mode"): 0 - disabled, 1 - 16 color dithering (Sierra style) and 2 - 256 color dithering - Dithering is now always applied depending on the screen scale (removed the relevant parameter) - Removed the background picture buffering option, used to speed-up room changes. Room changing is quite fast (instantaneous), and the extra memory allocated is not worth the possible speed increase in small devices. Plus.... there is no reliable value to set this option to, so there is no point in letting the user decide what value to put there using guesswork svn-id: r43915
2009-09-02Removed the dirty rectangle option of updating one huge rectangle, and only ↵Filippos Karapetis
left the algorithm of updating the screen with multiple small rectangles, like we do in all the other engines that support dirty rectangle screen updates svn-id: r43909
2009-09-02Some renaming:Filippos Karapetis
getresourceManager -> getResourceManger resourceManager -> resMan segmentManager ->segMan svn-id: r43908
2009-09-02SCI: Renamed kernel_dereference_* to kernelDeref*, and added kernelDerefStringMax Horn
svn-id: r43907
2009-09-01Disabled the FreeSCI PIC0 palette dithering code, for now. It doesn't really ↵Filippos Karapetis
make sense to dither, as Sierra games use up to 256 colors (even the later SVGA ones), and it messes up the result of the FreeSCI graphics filters. Plus, the resulting image looks worse than the original one svn-id: r43901
2009-09-01Re-enabled custom graphics options, and read the cursor, view, pic and text ↵Filippos Karapetis
filtering algorithm options from the ScummVM ini file (options "cursor_filter", "view_filter", "pic_filter" and "text_filter", 0 - unfiltered, 1 - bilinear filtering, 2 - trilinear filtering) svn-id: r43894
2009-09-01- Reverted the *vga targets back to *sci, and used the extras field again ↵Filippos Karapetis
for VGA remakes - The extras field is now filled by the fallback detector for VGA games svn-id: r43893
2009-09-01Fixed regression with some weird mouse cursors (e.g. in EcoQuest)Filippos Karapetis
svn-id: r43874
2009-08-31Removed many bogus return values in the SCI graphics functions - some ↵Filippos Karapetis
functions always returned "true", whereas in others they errored out in fatal conditions before any value was returned. FreeSCI was returning values from the graphics drivers it used. In ScummVM, we have one graphics driver, and we error out in fatal conditions anyway, so these error checks are no longer necessary, and the resulting code looks much neater svn-id: r43851
2009-08-30SCI: Add support for SetCursor with 4 args.Walter van Niftrik
svn-id: r43813
2009-08-25- Split SCI_VERSION_32 into SCI_VERSION_2, SCI_VERSION_2_1, and ↵Matthew Hoops
SCI_VERSION_3 (each version has a different kernel table). - Improve map detection. - Fix SCI32 object and script initialization (Torin's Passage and GK1 scripts now start up, and probably most SCI2/2.1 games). - Add SCI2 and SCI2.1 kernel tables. svn-id: r43742
2009-08-25- Replaced more cases of EngineState parametersFilippos Karapetis
- Made some version comparisons for old SCI0 versions easier to read - Removed the GET_SEL32SV macro svn-id: r43729
2009-08-25- Simplified the parameters of some functionsFilippos Karapetis
- Replaced some EngineState parameters - The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions - Plugged 2 leaks in the fallback detector - Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency svn-id: r43722
2009-08-24SCI: Reverted r40889. New fix for window erasing issue in SCI1.1 games.Walter van Niftrik
svn-id: r43711
2009-08-21Merged RGB color API and support in from /scummvm/branches/gsoc2009-16bit/Jody Northup
svn-id: r43577
2009-08-19SCI: Don't dither in SCI.Walter van Niftrik
svn-id: r43550
2009-08-19SCI: Add partial support for Amiga SCI1 games.Walter van Niftrik
svn-id: r43549