Commit Graph
76 Commits
Author SHA1 Message Date
Le Philousophe c618b7fe91 CINE: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Eugene Sandulenko 81975911f7 CINE: Fix compilation 2020-08-22 22:58:43 +02:00
Kari Salminen 580a7e6568 CINE: Fix formatting, string copy and signedness.
Fix code formatting, string copying (strncpy -> strlcpy) and signedness (int -> uint).
2020-07-25 00:33:42 +02:00
Kari Salminen 9c68b62eb9 CINE: Fix clang compilation and DeepCode warning.
Change structure initialization from C++11 style to older style to fix
clang compilation. Add null check to fix DeepCode warning about
possible undefined behaviour.
2020-07-25 00:33:42 +02:00
Kari Salminen 2ca52fc007 CINE: Add support for Operation Stealth.
Add support for Operation Stealth PC 16 and 256 color versions with
AdLib and Roland MT-32 sound. Add support for 20 extended savegames
(Thumbnails, playtime etc) for both Future Wars and Operation Stealth
(20 because it fits on screen using the original save/load interface).

Details:
 - Add versioning to Future Wars and Operation Stealth savegames.
 - Add fade in effect to both Future Wars and Operation Stealth.
 - Add mouse wheel support and keyboard support to moving in menus.
 - Map middle mouse button to pressing both left and right buttons.
 - Make interface more responsive (See manageEvents() and drawFrame()).
 - Amiga versions should be completable but sound may or may not work.
 - Atari ST versions completely untested.

Game options currently supported:
 - Using original save/load interface
 - Using transparent dialog boxes in 16 color scenes (Also for PC)

Console commands currently supported:
 - labyrinthCheat (For cheating in Operation Stealth's labyrinths)
 - disableLabyrinthCheat (Disabling labyrinth cheat)
 - disableHacks (Disabling hacks, useful for testing)
 - enableHacks (Enabling hacks, useful for testing. On by default)
2020-07-25 00:33:42 +02:00
Strangerke ff569b0d2e CINE: Add a safeguard to avoid a divide by zero in Palette::save() 2014-05-25 18:11:14 +02:00
Strangerke 95728f4890 CINE: Avoid possible string buffer overrun by using strlcpy and strlcat 2014-03-16 14:24:45 +01:00
Johannes Schickel 4ad7c5b40d CINE: Make GPL headers consistent in themselves. 2014-02-18 02:39:33 +01:00
Johannes Schickel 5d84f2df43 CINE: A little bit enforcement of our formatting guidelines.
Powered by astyle & manual fixup afterwards.
2012-09-07 04:12:18 +01:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion 9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Johannes Schickel 9623ea05d6 CINE: Adapt to setPalette RGBA->RGB change. 2011-02-14 17:08:32 +01:00
Max Horn ab039812e7 COMMON: OSystem now has a PaletteManager
svn-id: r55806
2011-02-07 17:52:38 +00:00
David Turner a1739f7244 CINE: Modified Palette::rotateRight() function to cope with all positive values of rotation.
This fixes the assert in Operation Stealth in Scene 7 when the Russians mount the Jetskis.

svn-id: r55195
2011-01-10 00:35:45 +00:00
Johannes Schickel f56f093770 CINE: Get rid of needless static variable.
svn-id: r52608
2010-09-06 21:04:12 +00:00
Eugene Sandulenko 327d30d719 CINE: eliminate global variables
svn-id: r51937
2010-08-09 11:38:01 +00:00
Max Horn 76553e6418 CINE: Get rid of some global constructor uses
svn-id: r48843
2010-04-28 22:24:11 +00:00
Max Horn 37b7be4519 CINE: Change Doxygen commands to match our CFC
svn-id: r48764
2010-04-21 21:22:43 +00:00
Johannes Schickel 17fef29507 Get rid of the workaround for a g++ (code generation) bug on AMD64, by passing a reference of a Color instance to saturatedAddColor instead of a value.
svn-id: r48006
2010-02-08 20:29:19 +00:00
Johannes Schickel c2932942c8 According to Buddha^ it should be fine to calculate (and set) the AMIGA dim palette in Palette::setGlobalOSystemPalette.
svn-id: r48005
2010-02-08 20:28:13 +00:00
Johannes Schickel 420569626c Fix return of a reference to a temporary object introduced with r47766. (Hopefully this "workaround" will work also for Chrilith's compiler ;-).
svn-id: r47771
2010-01-31 18:29:54 +00:00
Johannes Schickel 3dd46d50f5 Slight fixes to comply with our coding guidelines.
svn-id: r47770
2010-01-31 18:24:49 +00:00
Chris Apers 3ed2192923 Prevent my compiler to crash and object copy hopefully it doesn't break something
svn-id: r47766
2010-01-31 18:08:51 +00:00
Johannes Schickel aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00
Johannes Schickel e062a56c31 Implement support for transparent dialgue boxes in the Amiga version of Future Wars.
svn-id: r44222
2009-09-20 23:00:08 +00:00
Johannes Schickel 6b9299e863 Implement more precise palette conversion in Palette::save. This makes the output look more like the original (compared against E-UAE), but still not perfect.
svn-id: r44221
2009-09-20 22:59:30 +00:00
Johannes Schickel eec86941f2 Add link to gcc bug report, in the comment for the gcc aimed workaround for AMD64.
svn-id: r44112
2009-09-15 22:16:55 +00:00
Max Horn 9369d6b772 CINE: Turn some methods into const methods
svn-id: r44100
2009-09-15 08:51:16 +00:00
Johannes Schickel 4e4074f393 Fix valgrind warning inside "saturatedAddColor", when using the same palette object as both source and destination.
svn-id: r44094
2009-09-15 00:03:21 +00:00
Kari Salminen 29a0963042 Remove obsolete comment from Cine::Palette::saturatedAddColor.
svn-id: r42973
2009-08-01 09:53:21 +00:00
Kari Salminen cfae016200 Convert FWRenderer and OSRenderer to use Cine::Palette.
Also fix some bugs that came up in testing of Cine::Palette.

svn-id: r41386
2009-06-08 20:46:21 +00:00
Johannes Schickel b3c6751b9b Strip trailing whitespaces in the whole code base.
svn-id: r40867
2009-05-24 15:17:42 +00:00
Kari Salminen 70f8f1fbf3 Add color and color component getters to Cine::Palette.
svn-id: r40849
2009-05-24 01:36:25 +00:00
Kari Salminen af0efd8938 Add saturatedAddColor-function in which you can specify the added color's format (This replaces saturatedAddNormalizedColor).
Make colorFormat()-accessor function to return a const reference for speed.

svn-id: r39851
2009-04-04 17:57:00 +00:00
Kari Salminen 7257fe0da1 Cine::Palette: Add saturatedAddNormalizedColor-function (Going to be used to combine FWRenderer's and OSRenderer's transformPalette-functions into one later on).
svn-id: r39795
2009-04-01 20:55:24 +00:00
Kari Salminen adbcfabcb1 Cine::Palette: Add empty() and isValid() functions.
svn-id: r39725
2009-03-28 16:07:56 +00:00
Kari Salminen ce414e6671 Cine::Palette: Add a black palette constructor and a clear-function for clearing the palette of all data (Releases used memory etc).
svn-id: r39713
2009-03-27 21:31:03 +00:00
Kari Salminen 6ef983335e Make Cine::Palette use the PixelFormat's convenience functions introduced in r39711 (This way I don't have to cache the rMax, gBits etc values and I'm left with less member variables to keep up to date).
svn-id: r39712
2009-03-27 20:59:46 +00:00
Kari Salminen 80ab6ccf44 Cine::Palette: Remove unnecessary and needlessly complicating saving of the last loaded palette data's endian type.
svn-id: r39710
2009-03-27 20:03:38 +00:00
Kari Salminen f7da5230e3 Cine::Palette: Add setGlobalOSystemPalette-method for setting the global OSystem's palette from the Palette object's internal representation.
svn-id: r39709
2009-03-27 19:11:00 +00:00
Kari Salminen 39f7484c9e Cine::Palette::saturatedAddNormalizedGray: Use fractional representation (dividend/denominator) of the normalized gray value in range [-1, +1] rather than a floating point.
svn-id: r39691
2009-03-25 19:52:08 +00:00
Kari Salminen 51751cd069 Cine::Palette: Add fillWithBlack and saturatedAddNormalizedGray-methods.
svn-id: r39676
2009-03-24 21:45:35 +00:00
Kari Salminen 6e3bf6af79 Fix for warnings on trunk-lenny-x86_64-build (Yay \o/ Buildbot!).
svn-id: r39456
2009-03-16 21:30:15 +00:00
Kari Salminen 97887377f0 Cine::Palette: Make saturatedAddColor-methods more like their old counterparts transformPaletteRange and transformColor.
svn-id: r39454
2009-03-16 21:10:15 +00:00
Kari Salminen 9dc2f16f16 Prefix Cine's endian types with CINE_ so they don't clash with already defined LITTLE_ENDIAN and/or BIG_ENDIAN on some platforms.
svn-id: r39453
2009-03-16 20:57:17 +00:00
Kari Salminen 739a31db12 Add endianness handling to Cine::Palette's load and save functions.
svn-id: r39452
2009-03-16 20:24:28 +00:00
Kari Salminen 814f27a72e Cine::Palette revamp part 2: Fix save-function, add Cine-palette formats etc.
- Removed excess convenience functions, made the used palette formats
  publicly available instead (Cine::kLowPalFormat, Cine::kHighPalFormat etc)
- Fixed output conversion i.e. save-functions.. Hopefully they work ;-)
- Renamed some parameters for unification (colors -> buf, numBytes -> size)
- Added some documentation, e.g. for the load- & save-functions.

svn-id: r39405
2009-03-14 22:36:05 +00:00
Kari Salminen 5fd0b88ffe Fix assertion (Doh! That was supposed to be the other way).
svn-id: r39344
2009-03-11 22:50:36 +00:00
Kari Salminen bac7bd00be Cine::Palette: Move color format setting to setColorFormat-method.
svn-id: r39339
2009-03-11 21:11:52 +00:00