aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics/palette32.cpp
AgeCommit message (Collapse)Author
2016-08-23SCI32: Fix palette in SCI32 Mac gamesFilippos Karapetis
2016-07-12SCI32: Fix unnecessary palette updatesColin Snover
Some games load palettes that include color 255, but this is hardcoded to white in SSCI, so just ignore it during merges since it is ignored when the hardware palette is updated anyway.
2016-07-12SCI32: Avoid flash of incorrect colour when palettes are changedColin Snover
Avoid forcing the screen to refresh after a palette change if the screen is also about to be drawn to, as the palette change + draw is intended to be an atomic operation.
2016-07-11SCI32: Fix incorrect logic of cycler overflowColin Snover
2016-07-11SCI32: Minor cleanup of GfxPalette32Colin Snover
2016-07-11SCI32: Fix bad output caused by missing palette copiesColin Snover
Sometimes, games accidentally use palette entries that are not marked as used and expect them to be a particular colour, like the Phantasmagoria title screen, or the white palette entry (always 255 in DOS/Win).
2016-07-11SCI32: Split GfxPalette and GfxPalette32 + HunkPaletteColin Snover
2016-06-26SCI32: Fix broken Remap implementationColin Snover
Remap would crash SCI2.1early games with 19 remap slots, and did not actually work in most cases in SCI2.1mid+ games. The SCI16 implementation was moved to its own separate file but was otherwise touched as little as possible, so may still have similar problems to the SCI32 code. 1. Split SCI16 and SCI32 code into separate files 2. Use -32 prefixes for SCI32 code and no prefix for SCI16 code, where possible, to match other existing code 3. Avoid accidental corruption of values from the VM that may be valid when signed or larger than 8 bits 4. Added documentation 5. Add missing remap CelObj calls 6. Inline where possible in performance-critical code paths 7. Fix bad `matchColor` function, and move it from GfxPalette to GfxRemap32 since it is only used by GfxRemap32 8. Fix bad capitalisation in getCycleMap 9. Remove unnecessary initialisation of SingleRemaps 10. Update architecture to more closely mirror how SSCI worked 11. Clarify the purpose of each type of remap type (and associated variable names) 12. Split large `apply` function into smaller units 13. Fix buffer overrun when loading a SCI2.1early game with remap 14. Remove use of `#define` constants 15. Warn instead of crashing with an error on invalid input (to match SSCI more closely) 16. Change the collision avoidance mechanism between the RemapType enum and remap kernel functions 17. Add save/load function
2016-03-11SCI32: Initial implementation of kRemapColorsFilippos Karapetis
applyRemap() is still not finished, so nothing is actually visible yet
2016-03-08SCI: Add missing namespace comments in graphics/.Johannes Schickel
2016-03-08SCI: SpacingFilippos Karapetis
2016-03-07SCI32: Add unnecessary micro-optimisation to palette merging codeColin Snover
2016-03-07SCI32: Fix palette color overflowColin Snover
2016-03-07SCI32: Enable GfxPalette32::cycleAllPauseColin Snover
This is used by the Mr Soylent machines in SQ6 (e.g. room 370).
2016-02-18SCI: Minor cleanupColin Snover
1. Reorder member initialisations to match class member order 2. Use #pragma mark instead of comments for annotating sections 3. Remove useless >=0 checks on unsigned types
2016-02-19SCI: Use American English, like we do in other parts of ScummVMFilippos Karapetis
This replaces "colour" to "color"
2016-02-18SCI: Fix palette equality checkColin Snover
2016-02-18SCI: Implement accurate renderer architecture for SCI32Colin Snover
2016-02-14SCI: Proper initialization.Eugene Sandulenko
There is no guarantee of initialization order in the constructor declaration, thus corss references are not a good idea.
2016-01-15SCI: Fix usage of override functions and silence a warningFilippos Karapetis
2016-01-14SCI: Minor clean-ups to comments and null pointer valuesColin Snover
2016-01-14SCI: Implement SCI32 kPalette findColor and matchColorColin Snover
It seems that findColor is used only by kPalette, and matchColor is used only by Remap.
2016-01-14SCI: Implement SCI32 kPalVary and kPalette setFadeColin Snover
This also fixes kPalCycle signatures to be more accurate.
2016-01-08SCI: Fix the math in applyFade(), and simplify setFade()Filippos Karapetis
2016-01-08SCI: *Really* fix the logic in applyFade()Filippos Karapetis
Thanks wjp
2016-01-08SCI: Fix the logic in applyFade()Filippos Karapetis
Note that this is still unused, as it is normally called from kSetShowStyle()
2016-01-08SCI: Renamed one more function name to conform to our guidelinesFilippos Karapetis
2016-01-08SCI: Make GfxPalette32 conform to out formatting guidelinesFilippos Karapetis
We do not prepend underscores to private class functions
2016-01-08SCI: SCI32 palette cyclers are disjoint, so use a single palette copyFilippos Karapetis
2016-01-08SCI: Simplify the SCI32 palette cycling codeFilippos Karapetis
2016-01-08SCI: Fix compilationFilippos Karapetis
2016-01-07SCI32: Add initial support for palette cycling (kPalCycle) and fading (kPalFade)Colin Snover
Graphics palette code was rewritten between SCI1 and SCI2, so SCI32 palette engine code has been moved to a separate GfxPalette32 class.