Commit Graph

277 Commits

Author SHA1 Message Date
Johannes Schickel
0e017f007a Merge pull request #375 from digitall/engineAutoPlug
RFC: Pluggable Engines #2 (No Python, just evolution of current configure shell and make code)
2013-11-26 02:27:11 -08:00
D G Turner
ef85456859 BUILD: Remove need for engine.mk in each engine directory.
Each engine now only has to provide a single configure.engine file
adding the engine into the configure script, which then produces the
required other files automatically.
2013-11-24 00:48:01 +00:00
D G Turner
1ac01d2333 BUILD: Remove need for engine-plugin.h in engines.
This is now generated automatically by the configure script from the
engine directory names.
2013-11-24 00:48:01 +00:00
D G Turner
00c27a28f9 BUILD: Split engines/plugins_table header down to a file per engine.
This is the third and final commit enabling fully pluggable engines.

Now providing an engine folder contains a configure.engine, engine.mk
and engine-plugin.h file, it will be picked up automatically by the
configure script.
2013-11-24 00:48:01 +00:00
D G Turner
d77cf95a18 BUILD: Split engines.mk down to a single file per engine.
This is the second part of allowing engines to be added dynamically.
Each folder in engines/ which must contain a file named "engine.mk"
containing the make definitions for that engine.
2013-11-24 00:48:01 +00:00
D G Turner
aa947c9474 BUILD: Split configure.engines down to a single file per engine.
This is the first part of allowing engines to be added dynamically.
They are placed into a folder in engines/ which must contain a file
named "configure.engine" to add the engine, which is pulled into the
top level configure script automatically.
2013-11-24 00:45:38 +00:00
Johannes Schickel
afa3f50b8a GRAPHICS: Let Font take uint32 as character codes.
This is required to support UTF-32 strings but does not make them work
automatically!
2013-11-23 21:34:54 +01:00
Matthew Hoops
b882939141 GROOVIE: Fix ROQ JPEG decoding 2013-09-16 20:56:59 -04:00
Johannes Schickel
46a69c89f4 Merge pull request #376 from lordhoto/libjpeg
GRAPHICS: Implement JPEGDecoder based on libjpeg.
2013-09-16 17:10:57 -07:00
Johannes Schickel
4809294b43 GRAPHICS: Make JPEGDecoder request RGB output from libjpeg by default.
This fixes loading of JPEG files which contain RGB color space instead of YUV.
It is a pretty odd extension of JPEG files by Adobe which is indicated by this:
http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/JPEG.html#Adobe

To still support Groovie's need for YUV data I added some possibility to
request direct YUV output.
2013-09-16 19:54:19 +02:00
Johannes Schickel
ac66cc9219 GRAPHICS: Implement JPEGDecoder based on libjpeg. 2013-09-16 15:55:36 +02:00
Johannes Schickel
378387c903 I18N: Move specification of engine specific files to enginedir/POTFILES.
This allows to keep the engines to specfiy the files for translation close to
the engine sources itself.

Thanks to criezy for his suggestion on this approach.
2013-08-12 17:54:31 +02:00
Johannes Schickel
254dea1a35 GROOVIE: Take advantage of Surface::getPixels. 2013-08-03 04:02:51 +02:00
Sven Hesse
989ea7cb56 JANITORIAL: Remove trailing whitespace 2013-07-14 19:01:47 +02:00
Matthew Hoops
0031c41db8 COMMON: Change kPlatformPC to kPlatformDOS
"PC" was very ambiguous and now it matches what we show in the GUI.

This also corrects sword2's platform to Windows.
2013-05-02 18:43:10 -04:00
Eugene Sandulenko
f8593e8ecb GROOVOE: Plug memory leak. CID 1003912 2013-04-27 08:49:07 +03:00
Max Horn
b791edabf7 ENGINES: Remove a bunch of unused private member variables
All instances uncovered by clang warnings.
2013-04-18 23:50:20 +02:00
Filippos Karapetis
3249278a51 GROOVIE: Simplify the movie speed settings and add a GUI option
This removes the "iOS" speed setting, where some movies could get out
of sync. Two movie options are now available, "normal" and "fast" movie
speed, which is the old "tweaked" setting. With the "fast" movie speed,
the movie speed is changed to match that of the iOS version, but only
in movies with sound. Movies without sound (like the supernatural
animations, i.e. the "teeth" icon in-game) are still played at their
regular speed, to avoid music sync issues.
2013-01-02 12:42:53 +02:00
clone2727
91317c3630 Merge pull request #293 from clone2727/qtmidi
Add support for QuickTime Music playback
2012-12-13 15:49:40 -08:00
Matthew Hoops
f65b229234 GROOVIE: Fix some indentation in StuffIt 2012-12-03 09:16:58 -05:00
Filippos Karapetis
542b99bfe7 GROOVIE: Added documentation for the GameSpeed enum 2012-11-15 18:26:15 +02:00
Johannes Schickel
89abab97e3 JANITORIAL: Remove trailing whitespaces.
Powered by:
git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-09-26 04:17:55 +02:00
Matthew Hoops
77ef097723 GROOVIE: Load the 11H Mac installer file when present 2012-09-12 18:17:18 -04:00
Matthew Hoops
1d98435d34 GROOVIE: Add detection for 11H Mac 2012-09-12 18:07:00 -04:00
Matthew Hoops
7d684d1166 GROOVIE: Add a MusicPlayerMac_v2 for 11H Mac 2012-09-12 18:02:58 -04:00
Matthew Hoops
72a1140d57 GROOVIE: Rename MusicPlayerMac to MusicPlayerMac_t7g 2012-09-09 12:43:29 -04:00
Matthew Hoops
9780c8e56e GROOVIE: Add StuffIt archive code for 11H Mac 2012-09-09 12:32:34 -04:00
Jordi Vilalta Prat
f1819d8658 GROOVIE: ROQ Info blocks clean the buffers unconditionally.
This fixes some glitches on the Clandestiny trailer.
2012-09-05 18:31:42 +02:00
Johannes Schickel
31f339880d GROOVIE: Slight cleanup in querySaveMetaInfos. 2012-07-03 18:39:50 +02:00
Johannes Schickel
4fb9bceabc Merge pull request #246 from lordhoto/osystem-void-buffers
OSYSTEM: Use void buffers for screen/overlay/mouse buffers and proper pitch values for overlay code
2012-06-20 08:02:26 -07:00
Scott Thomas
06b905a218 GROOVIE: Fix 'off-by-one' when searching for ROQs by name 2012-06-17 16:27:49 +09:30
Johannes Schickel
2afc0a5fbc GROOVIE: Get rid of casts on OSystem::copyRectToScreen calls. 2012-06-16 02:38:59 +02:00
Johannes Schickel
a401f0a19e ALL: Replace cursorTargetScale in OSystem API with a simple "do not scale" logic.
All uses of the old target scale API actually wanted to disallow scaling of
the mouse cursor. This commit adapts our API to this and thus simplifies
backend implementations.

Some backends, most notable the Wii and Android, did some implementation of
the cursor target scale, which I didn't adapt yet. I added a TODO for the
porters there.
2012-06-03 02:02:57 +02:00
Johannes Schickel
f7d2cd7331 GROOVIE: Do not cast away const qualifier. 2012-04-05 00:40:30 +02:00
Scott Thomas
19d36330c5 GROOVIE: Detect if external music exists for the Music Enhancement Project.
T7G's music framework uses either all external or all XMIDI, so assume if one
external song is present, the entire music pack is.
2012-03-24 11:00:09 +10:30
Matthew Hoops
765a870445 GRAPHICS: Convert JPEG to the ImageDecoder API 2012-03-20 01:06:48 +01: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
Scott Thomas
c23f8f856c GROOVIE: Prefer 'mask' animations to run at regular speed.
Not all 'mask' animations have sound, so need to mark preference for
regular speed for both 'mask' and 'teeth' animations.
2011-11-29 22:31:26 +10:30
Christoph Mallon
d485b36b45 GROOVIE: Use SWAP(). 2011-11-21 15:58:31 +01:00
Strangerke
7cf921814d GROOVIE: Add GUIO_NOASPECT 2011-10-24 06:42:30 +02:00
Eugene Sandulenko
32972a5ffb AD: Switched rest of the engines to new GUIO 2011-10-23 17:53:13 +01:00
Scott Thomas
862a4ca929 GROOVIE: Remove dither code from ROQ 2011-09-06 21:59:24 +09:30
Eugene Sandulenko
0dafa7f80f ALL: Reduce audio/ header dependency 2011-08-06 11:30:42 +01:00
Eugene Sandulenko
78f1ea7690 OSYSTEM: extended installTimerProc() with timer ID parameter 2011-08-06 11:28:35 +01:00
Johannes Schickel
09501be85b ENGINES: Clean up SaveStateDescriptor.
Now SaveStateDescriptor no longer subclasses HashMap. Instead all possible
saved meta data is included directly into SaveStateDescriptor.

This is slightly less flexible, but we never needed that flexibility so far.
On the other hand it should reduce the memory usage. At least on my system
(Linux/amd64) the old SaveStateDescriptor had a size of 928 and the new
SaveStateDescriptor has a size of 200.
2011-07-02 21:07:55 +02:00
Max Horn
88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Tarek Soliman
d4b5c595c6 GROOVIE: flag all WIP games with ADGF_UNSTABLE
Groovie 2 games
2011-06-16 13:37:57 -05:00
Max Horn
3b5863834b GROOVIE: Document why I *think* kADFlagUseExtraAsHint is used 2011-06-14 18:52:09 +02:00
Max Horn
7c992d6598 DETECTOR: Merge ADParams into AdvancedMetaEngine 2011-06-14 18:17:01 +02:00
Thierry Crozat
06bbb57ad7 I18N: Make many more GUI MessageDialog strings translatable 2011-06-13 22:19:18 +01:00