771 Commits

Author SHA1 Message Date
Matthew Hoops
b0366e65e5 Cleanup AVI a bit, add support for stereo audio
svn-id: r49279
2010-05-27 23:57:44 +00:00
Matthew Hoops
017507ffa6 Take any 'moov' resource from a resource fork, not just 0x80; minor cleanup.
svn-id: r49245
2010-05-26 15:42:26 +00:00
Filippos Karapetis
14fae8db03 Proper fix for the MSVC warning concerning packing: reordered the members of the ParseTable struct and removed the struct packing pragmas
svn-id: r49235
2010-05-26 11:56:58 +00:00
Filippos Karapetis
ad9772fac6 Properly fixed MSVC warning C4121 (alignment of a member was sensitive to packing)
svn-id: r49226
2010-05-26 06:45:57 +00:00
Matthew Hoops
cd5e90f298 Implement QuickTime playback for SCI1.1 Mac. The 'Halfdome' and 'KQ6Movie' videos now play. However, they require multiple edit list support to look completely correct.
svn-id: r49224
2010-05-26 03:43:21 +00:00
Matthew Hoops
ab540af9f8 Fix a regression with rewinding in QuickTime videos (looping works in Riven again) and some minor cleanup.
svn-id: r49206
2010-05-25 02:35:50 +00:00
Filippos Karapetis
d4ae096a63 Surface is a struct, not a class
svn-id: r49201
2010-05-24 20:50:53 +00:00
Matthew Hoops
ad0eb0b06e Move the PICT code to graphics/ with some updates; needed for SCI1.1 Mac.
svn-id: r49195
2010-05-24 17:18:09 +00:00
Matthew Hoops
8f14c15b1a Add support for loading the QuickTime 'moov' atom from the file's resource fork, needed for SCI Mac.
svn-id: r49172
2010-05-23 23:26:28 +00:00
Matthew Hoops
b3bd797e01 Move the QDM2 code to the graphics module, removing the cyclic dependency.
svn-id: r49171
2010-05-23 21:41:13 +00:00
Matthew Hoops
5e90f66edc Hide the QDM2 implementation and only expose it via a factory method, hopefully fixing compilation on most systems at the same time.
svn-id: r49170
2010-05-23 19:54:17 +00:00
Eugene Sandulenko
ed0e8182ce FFMpeg switched to Git, so update link to original smacker decoder.
svn-id: r49166
2010-05-23 19:08:31 +00:00
Matthew Hoops
2f31b05651 Move Mohawk's QuickTime code to graphics/ (and QDM2 to sound, disabled when Mohawk is not enabled) so SCI can use the code.
svn-id: r49165
2010-05-23 18:33:55 +00:00
Matthew Hoops
2e0fdda51f Add a pause level system to VideoDecoder (blatantly ripped off from Engine) and adapt Mohawk to it.
svn-id: r49120
2010-05-20 18:38:06 +00:00
Matthew Hoops
759e4923d0 Add a new class 'RewindableVideoDecoder' that allows a video to be rewound and have QTPlayer inherit from that.
svn-id: r49084
2010-05-18 17:36:34 +00:00
Matthew Hoops
11cbdd0318 Committing the rest of the VideoDecoder Rewrite from patch #2963496.
svn-id: r49079
2010-05-18 14:17:24 +00:00
Ori Avtalion
7ab8f6e25b Fix currentFrame semantics in Flic player
svn-id: r49073
2010-05-18 10:01:31 +00:00
Matthew Hoops
c7fa1074fb Change VideoDecoder::getCurFrame() to mean the last frame drawn instead of the next frame to draw. This is patch 1 from patch #2963496 (VideoDecoder Rewrite).
svn-id: r49063
2010-05-17 21:59:05 +00:00
Andre Heider
be0885e9d1 Revert r48979. Instead, make the HQ scalers depend on the normal ones. Configure reflects that now.
svn-id: r48996
2010-05-10 17:25:12 +00:00
Andre Heider
998531a022 Since configure allows HQ scalers without the normal onces, allow this combination.
svn-id: r48979
2010-05-09 12:30:20 +00:00
Andre Heider
a3e428f6db Rename DISABLE_*SCALERS to USE_*SCALERS, and move the mk/cpp defines to configure.
svn-id: r48977
2010-05-09 11:00:17 +00:00
Andre Heider
74c0db4548 Use the faster memset() in Surface::fillRect() for 16bit modes when possible.
svn-id: r48756
2010-04-20 20:22:33 +00:00
Johannes Schickel
d163686d2d Document that the current Hercules mode thumbnail scaler code is pretty much aimed for SCUMM games.
svn-id: r48736
2010-04-19 20:44:25 +00:00
Johannes Schickel
498d1da182 Cleanup.
svn-id: r48735
2010-04-19 20:44:05 +00:00
Andre Heider
64cba2878a Do not call OSystem::grabPalette() for 16bit modes, when the result is not used anyway for those modes.
svn-id: r48733
2010-04-19 20:37:20 +00:00
Max Horn
bb26c04053 Fixing some warnings (with gcc 3.3.6)
svn-id: r48694
2010-04-17 23:19:52 +00:00
Robin Watts
9bb92eba9e Fix for ARM Normal2xAspect scaler that was causing crashes when the screen
'shakes' (such as when the head/bomb goes of at the start of sam'n'max).
Was overwriting the end of the screen when asked to plot a non-multiple of
5 lines.

svn-id: r48690
2010-04-17 15:45:06 +00:00
Max Horn
a1840bd573 AUDIO: Rename Mixer::playInputStream to playStream
svn-id: r48637
2010-04-12 09:14:17 +00:00
Johannes Schickel
3f2057226f Commit salty-horse's patch for VectorRendererSpec.cpp, which fixes the use of invalid C++.
svn-id: r48291
2010-03-18 21:45:27 +00:00
Max Horn
c934642bdb COMMON: Move typedef StringList from str.h to new header str-array.h
This removes the dependency on array.h from str.h.
Also, begun migration from the confusing type name "StringList" to
the more appropriate StringArray.

svn-id: r48282
2010-03-18 15:09:24 +00:00
Sven Hesse
a1f1cdf820 Changing Imd::renderFrame() and Vmd::renderFrame() to properly clip the drawing area to prevent overdrawing without producing garbage output
svn-id: r48264
2010-03-15 22:24:11 +00:00
Sven Hesse
a9b7722df3 The frame coordinate cropping for IMDs is wrong, and should be unnecessary anyway, since Imd::renderFrame() should already check for overblitting. This fixes bug #2969904 ("GOB3: Graphical Glitch in finished cutscene")
svn-id: r48262
2010-03-15 17:44:59 +00:00
Johannes Schickel
40562798d6 Fix our DECLARE_SINGLETON macro to conform to the C++ specs.
We need to use a namespace Common { } there to make strict C++ compilers
like clang++ and comeau happy. I also added a slight comment about why
that is needed to the macro definition and a note that you need to use
it from the global namespace.

svn-id: r48254
2010-03-13 21:55:49 +00:00
Sven Hesse
5886a0cc77 Removing a debug warning() and adding some comments
svn-id: r48236
2010-03-11 19:47:59 +00:00
Sven Hesse
31f980ffde Adding support for the very primitive and simply early IMD format used in Fascination
svn-id: r48233
2010-03-11 06:14:52 +00:00
Robin Watts
99e032e954 Fix missing definition of gBitFormat.
svn-id: r48213
2010-03-09 01:20:23 +00:00
Johannes Schickel
6dacac2187 Conistenlty use USE_NASM instead of using HAVE_NASM in config.mk (this matches all the external library use too).
svn-id: r48208
2010-03-08 23:56:59 +00:00
Johannes Schickel
56bd4a6e18 Use a template for hq2x and hq3x instead of using #include and defines.
svn-id: r48197
2010-03-08 19:16:50 +00:00
Johannes Schickel
807f0223d7 Fix compilation.
svn-id: r48196
2010-03-08 19:07:31 +00:00
Max Horn
e90f074177 Add new aspect ratio scaler variant, based on the Normal2xAspect ARM code
svn-id: r48195
2010-03-08 10:32:45 +00:00
Max Horn
706769a3dc Rewrite Normal1xAspect (untested, may be broken)
svn-id: r48194
2010-03-08 10:32:28 +00:00
Max Horn
569273040e Remove redundant code
svn-id: r48193
2010-03-08 10:32:05 +00:00
Max Horn
2cdf8996f3 Rename PocketPCLandscapeAspect to Normal1xAspect and move it to
graphics/scaler/aspect.cpp

svn-id: r48192
2010-03-08 10:31:42 +00:00
Max Horn
0fc137cdf2 Rename PocketPCPortrait scaler to DownscaleHorizByThreeQuarters,
and move it to graphics/scaler.

svn-id: r48191
2010-03-08 10:31:09 +00:00
Max Horn
deec3408a1 Move some var declarations into '#ifdef USE_NASM'
svn-id: r48190
2010-03-08 10:30:39 +00:00
Max Horn
a558e60fec SCALERS: Get rid of MAKE_WRAPPER; make RGBtoYUV internal
svn-id: r48189
2010-03-08 10:30:23 +00:00
Max Horn
78b6bed8db Code formatting
svn-id: r48188
2010-03-08 10:29:52 +00:00
Max Horn
d239d5c2f8 SCALERS: Change 'bitformat' template params to 'colormasks';
get rid of some #defines

svn-id: r48187
2010-03-08 10:29:35 +00:00
Max Horn
28c6c600d4 Move some aspect ratio related stuff to graphics/scaler/aspect.h
svn-id: r48186
2010-03-08 10:29:00 +00:00
Max Horn
9fb27a26f8 Remove unnecessary #includes
svn-id: r48185
2010-03-08 10:28:14 +00:00