Commit Graph

306 Commits

Author SHA1 Message Date
Matthew Hoops
030e4d0608 AUDIO: Make Rewindable- and SeekableAudioStream inherit virtually 2015-08-30 19:53:53 -04:00
Martin Kiewitz
bf180101a6 GROOVIE: add support for TIMB chunk
also fix MT32 instrument filename (which was "fatFAT.MT" by accident)
2015-06-30 16:11:26 +02:00
Matthew Hoops
30de61dcce GROOVIE: Silence a gcc warning 2015-06-28 20:05:24 -04:00
Martin Kiewitz
7ecf553e24 GROOVIE: add support for Miles Audio MIDI driver
- currently optional, to enable set milesAudioEnabled to true
2015-06-28 01:16:43 +02:00
Filippos Karapetis
9f2c3d794e GROOVIE: Do not play audio in V2 games when only one frame is shown 2014-11-07 12:11:33 +02:00
Filippos Karapetis
028238ed54 GROOVIE: Handle transparency in Gamepad videos in the 11th Hour 2014-11-04 12:57:58 +02:00
Filippos Karapetis
c9a60233d5 GROOVIE: More bugfixes for V2 puzzle overlay videos 2014-11-04 12:40:08 +02:00
Filippos Karapetis
d8e650b4cb GROOVIE: Handle flag 2 for V2 games (show a whole overlay video) 2014-11-04 11:52:09 +02:00
Filippos Karapetis
70fe89b92d GROOVIE: More work on transparency in the puzzle scenes for V2 games
This fixes most of the transparency issues in the puzzle screens.
They are still not correct, as the relevant videos play completely,
instead of showing a single frame. This also fixes issues with commit
2d42ab8
2014-11-04 11:51:13 +02:00
Filippos Karapetis
2d42ab88b7 GROOVIE: Fix video transparency in V2 games 2014-11-03 12:41:37 +02:00
Filippos Karapetis
35577ab71e GROOVIE: Initial implementation of direct game load for the 11th Hour 2014-11-03 11:40:38 +02:00
Filippos Karapetis
5dc03107fd GROOVIE: Add a stub for opcode 42 in V2 games
This was o_cellmove in T7G (the Microscope puzzle)
2014-11-03 11:40:38 +02:00
Filippos Karapetis
a82740516c GROOVIE: Implement o2_copyscreentobg and o2_copybgtoscreen 2014-11-03 11:40:38 +02:00
Filippos Karapetis
9d6437c01e GROOVIE: Add initial full screen functionality for V2 games 2014-11-03 11:40:37 +02:00
Filippos Karapetis
f733498388 GROOVIE: Finish implementation of o_hotspot_outrect
This is needed by the main menu in the 11th Hour
2014-11-03 11:40:36 +02:00
D G Turner
025556d9a5 GROOVIE: Use debugC() and debugCN() functions directly in script debug.
This removes the debugScript() wrapper, which can now be implemented
directly using the relevant debug function. This avoids the variadic
debug functions being wrapped in a second layer of variadic function
which is probably causing a significant overhead.
2014-06-05 03:32:55 +01:00
D G Turner
d8751516cc GROOVIE: Remove engine-specific "all" debugflag. Minor naming cleanup.
This is now uneeded as the GUI debugger superclass implements the same
functionality and this removes a bunch of complexity from the Groovie
engine debug calls. Also, removed groovie prefix from the debug flag
naming as unecessary as these are within the Groovie namespace.
2014-06-05 03:01:12 +01:00
D G Turner
86b3a075d4 GROOVIE: Add sanity checks and range limits to copyRect opcode param.
This prevents segfault crashes in "The 11th Hour" when you open the
Gamebook palmtop from the top of the screen. The opcode needs some
work on the changes from 7th Guest, but this will prevent crashes
while this is being worked on.
2014-06-02 22:09:53 +01:00
Matthew Hoops
98dbb8070b GROOVIE: Only compile ROQ when groovie2 is enabled 2014-06-02 06:44:53 -04:00
Matthew Hoops
3c287aad18 GROOVIE: Switch to 32bpp only in groovie2
Needed for alpha
2014-06-01 22:08:28 -04:00
Matthew Hoops
c0a172bc71 GROOVIE: Fix various roq glitches
They should now all decode correctly
2014-06-01 22:08:28 -04:00
Matthew Hoops
3638f1191c GROOVIE: Switch roq decoding to do YUV decoding on codebook load 2014-06-01 22:08:28 -04:00
Matthew Hoops
5d4fd2e154 GROOVIE: Remove groovie2 8bpp mode
It didn't work properly, it's not what the original did, and spooky mode needs to be implemented completely differently
2014-06-01 22:08:28 -04:00
Johannes Schickel
ae4ffe01f0 ALL: Rename Debugger::DCmd_Register to Debugger::registerCmd. 2014-05-27 02:04:08 +02:00
Johannes Schickel
daa8d57a86 ALL: Rename Debugger::DebugPrintf to Debugger::debugPrintf. 2014-05-27 02:04:07 +02:00
Max Horn
4d02f67bd1 ALL: Resolve multiple clang warnings 2014-03-30 14:38:02 +02:00
Strangerke
72a548c8bc GROOVIE: Remove two useless variables 2014-03-09 22:12:52 +01:00
Matthew Hoops
740b6e8fbd IMAGE: Move all ImageDecoders to image/ 2014-02-28 00:27:28 -05:00
Johannes Schickel
8f55aed475 GROOVIE: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
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