peres
2dddcbf41d
GRAPHICS: implement the long awaited interpolate16_5_3
2011-05-07 08:38:32 +09:00
Matthew Hoops
4a3d94a60e
GRAPHICS: Add a new MacCursor class for handling CURS/crsr cursors
2011-05-05 19:26:44 -04:00
Max Horn
a48b705c54
GRAPHICS: Turn printf into warning
2011-05-02 13:40:25 +02:00
Johannes Schickel
71bdb86e02
Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".
...
For further discussion check here:
https://github.com/scummvm/scummvm/pull/16
Conflicts:
graphics/png.cpp
2011-05-01 16:54:45 +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
Ori Avtalion
cd6ee0589d
JANITORIAL: Format forward declarations to follow convention
2011-04-28 12:20:34 +03:00
md5
27e4a1dee5
PNG: Changed getPalette() to properly return a copy of the image palette
2011-04-27 13:44:19 +03:00
md5
99e3028459
PNG: Improved code readability a bit
2011-04-27 13:43:03 +03:00
Johannes Schickel
33a88e5cac
PNG: This PNG::getPalette.
...
Formerly the palette parameter was a value copy, which was assigned in
getPalette. That did not make much sense, thus I changed it to be a reference.
Since I am not quite sure whether this really shouldn't make a palette copy
I added an TODO comment about it.
2011-04-25 15:45:05 +02:00
Johannes Schickel
da734a4af0
ALL/GRAPHICS: Remove Surface::bytesPerPixel.
2011-04-17 21:27:34 +02:00
Johannes Schickel
3fd919060c
GRPAHICS: Do not access Surface::bytesPerPixel anymore.
2011-04-17 20:58:08 +02:00
Johannes Schickel
39b993fb02
GRAPHICS: Prefer Surface::create taking a PixelFormat over the one taking a byte depth.
2011-04-17 16:24:52 +02:00
Johannes Schickel
4fd3e3d6fe
GRAPHICS: Add a PixelFormat member to Surface.
2011-04-17 15:17:42 +02:00
Alyssa Milburn
cfacca1a26
GRAPHICS: Tidy up 4bpp handling a little.
2011-04-14 21:47:56 +02:00
Alyssa Milburn
c60e773981
GRAPHICS: Handle 4bpp paletted PNG files.
2011-04-14 21:08:03 +02:00
Alyssa Milburn
2ac86f8140
GRAPHICS: Replace PNG_HEADER macro with MKTAG
2011-04-14 18:37:27 +02:00
Max Horn
0ce2ca4e00
COMMON: Replace MKID_BE by MKTAG
...
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
2011-04-12 16:53:15 +02:00
dhewg
d83a83ef50
JANITORIAL: Remove/comment unused vars
...
Found by GCC 4.6's -Wunused-but-set-variable
2011-03-29 21:57:56 +02:00
dhewg
2def212de7
ALL: s/PI/M_PI/
...
Tip of the day: git grep -w PI
2011-03-19 11:24:06 +01:00
md5
334e1cd675
GRAPHICS: Silenced a warning
2011-03-19 02:30:03 +02:00
Matthew Hoops
4e7b66b1bc
GRAPHICS: Cleanup WinCursorGroup functions a bit
...
ScopedPtr is now used on the streams to avoid having repetitive delete calls.
2011-03-07 16:37:12 -05:00
Matthew Hoops
b158a40844
GRAPHICS: Add doxygen comments for WinCursorGroup
2011-03-07 13:24:05 -05:00
Matthew Hoops
4dba6962f5
GRAPHICS: Fix a missing 'f'
...
Thanks, fuzzie
2011-03-07 11:40:54 -05:00
Matthew Hoops
d49f3a8a78
GRAPHICS: Improve support of Windows 8bpp cursors
2011-03-07 00:53:40 -05:00
Matthew Hoops
5b907e828b
GRAPHICS: Fix PE cursors
...
Initial work on 8bpp cursors has also been added
2011-03-06 19:53:17 -05:00
Matthew Hoops
6143fe965b
GRAPHICS: Add support for PE cursors in WinCursorGroup
...
Only 1bpp still
2011-03-05 13:36:55 -05:00
Matthew Hoops
c66233f83e
GRAPHICS: Split the NE cursor code from the NEResources class
...
Now the code lies in Graphics and all cursors are not cached upon opening an exe. The engine is now in charge of caching which cursors it wants.
2011-03-04 23:17:57 -05:00
Matthew Hoops
550cff84f8
GRAPHICS: Add support for PE FON files
...
This hopefully will work out of the box, but requires testing
2011-02-23 14:43:18 -05:00
Matthew Hoops
a2a0b13de2
COMMON: Begin to merge some NE/PE code
...
The ID classes are now common to both. The files have been renamed to better illustrate their purpose.
2011-02-22 20:03:18 -05:00
Johannes Schickel
9afc89e67c
GRAPHICS: Let PNG::getPalette take an uint16 for the palette entry count.
...
This is in analogy to r55742 / 2f08dcb
.
I also took the freedom to clarify that the PNG loader uses a RGBA palette
format.
2011-02-20 21:43:24 +01:00
Johannes Schickel
75ee5af7c9
GRAPHICS: Remove leftover RGBA reference in PaletteManager documentation.
2011-02-20 21:38:40 +01:00
Matthew Hoops
5091f846a7
GRAPHICS: Switch PICT's palette from RGBA to RGB
2011-02-20 00:45:59 -05:00
Matthew Hoops
098581b3b5
GRAPHICS: Use the DirectBits size instead of the overall PICT dimensions
...
Fixes some Myst ME images
2011-02-20 00:43:18 -05:00
Johannes Schickel
e6c7544fe2
GRAPHICS: Fix cursor palette buffering after RGBA->RGB change.
...
Thanks to clone2727 for noticing this.
2011-02-20 05:43:04 +01:00
Johannes Schickel
292f197142
GRAPHICS: Remove note about alpha channel removal in PaletteManager.
2011-02-19 23:45:03 +01:00
Johannes Schickel
05f0855efc
GRAPHICS: Update CursorManager documentation for RGBA->RGB change.
2011-02-14 17:08:32 +01:00
Johannes Schickel
f53f1af062
GRAPHICS: Adapt thumbnail code to grabPalette RGBA->RGB change.
2011-02-14 17:08:32 +01:00
Johannes Schickel
18ff02a2fa
GRAPHICS: Update PaletteManager documentation for RGBA->RGB change.
2011-02-14 17:08:31 +01:00
Max Horn
ab039812e7
COMMON: OSystem now has a PaletteManager
...
svn-id: r55806
2011-02-07 17:52:38 +00:00
Bastien Bouclet
e7a57de38b
GRAPHICS: Improved JPEG decoder performance
...
Replaced the 2D IDCT by two 1D IDCT (rows, then columns).
JPEG images now decode about twice as fast as they used to.
svn-id: r55794
2011-02-06 13:43:40 +00:00
Filippos Karapetis
2f08dcb667
GRAPHICS: Fixed a bug with indexed PNGs in the PNG decoder (a byte can't hold 256 entries)
...
svn-id: r55742
2011-02-02 21:18:10 +00:00
Filippos Karapetis
e6f2f7e615
GRAPHICS: Updated the copyright information regarding LodePNG. Removed the obsolete reference to ysflight, as no code is actually used from or based on that project
...
svn-id: r55726
2011-02-02 16:40:39 +00:00
Filippos Karapetis
a86cb87b98
GRAPHICS: Implemented a PNG decoder, and set it as default for the sword25 engine
...
libpng is still needed for PNG encoding (for thumbnails in saved games of sword25), but
since we'll probably drop support for the original saved games anyway, the PNG encoding
code will ultimately be removed
svn-id: r55723
2011-02-02 15:43:45 +00:00
Filippos Karapetis
c0ce8a839e
Silenced some MSVC warnings
...
svn-id: r55699
2011-01-31 23:19:00 +00:00
Max Horn
c44f9bdb1d
GRAPHICS: Make JPEG::getComponent error out if component was not found
...
svn-id: r55587
2011-01-28 09:50:05 +00:00
Max Horn
96d91ec182
GRAPHICS: Turn sqrt(2) and cosine values into constants ;)
...
svn-id: r55586
2011-01-28 09:46:39 +00:00
Max Horn
baf6af4fa6
GRAPHICS: Rename JPEG::_str to _stream
...
We use _str to denote strings almost everywhere, so this
was a bit confusing. Another alternative would be to use _s.
svn-id: r55585
2011-01-28 09:37:11 +00:00
Torbjörn Andersson
7bf8dda27f
JANITORIAL: Remove unnecessary backslash
...
svn-id: r55483
2011-01-23 21:59:26 +00:00
Eugene Sandulenko
806ccf5d25
GRAPHICS: Move graphics/video/ to video/. Step 1/2
...
svn-id: r55473
2011-01-23 17:14:43 +00:00
Sven Hesse
c039b06c3c
VIDEO: Fix createSurface() for the case that there's no video
...
Fixes clicking on the Piano in the Apartment in Urban Runner.
svn-id: r55456
2011-01-23 03:46:38 +00:00
Matthew Hoops
57521f7574
VIDEO: Update documentation on which decoder is used by what engine
...
svn-id: r55455
2011-01-23 01:27:40 +00:00
Matthew Hoops
257a6b2e6d
VIDEO: Fix QuickTime audio buffering on the last frame
...
svn-id: r55450
2011-01-22 23:31:21 +00:00
Sven Hesse
95e557c564
VIDEO: Seek a video seek glitch
...
Observable when ESCing a 16bit or 24bit video, for example
the fuses in Urban Runner's Labyrinth screen.
svn-id: r55410
2011-01-22 08:00:57 +00:00
Sven Hesse
e1e299d0b8
VIDEO: Correctly correct the _blitMode 1/2 coordinate differences
...
This fixes the figure lights position in the Secret Room, while
still leaving the flow rate gauge position in the Labyrinth correct
svn-id: r55409
2011-01-22 07:20:16 +00:00
Sven Hesse
bb6c230587
GOB: Implement looping live videos
...
Needed for the buttons in the Playtoons series
svn-id: r55359
2011-01-20 18:17:39 +00:00
Sven Hesse
33ed3fa8a0
VIDEO: Don't delete, just finish the audiostream on video end
...
svn-id: r55356
2011-01-20 17:07:17 +00:00
Sven Hesse
75c840b527
VIDEO: Add hasVideo()
...
svn-id: r55348
2011-01-20 12:28:22 +00:00
Sven Hesse
8c80f80697
VIDEO: The getTimeToNextFrame override is useless now
...
svn-id: r55341
2011-01-20 03:27:09 +00:00
Sven Hesse
d77899e158
GOB: Make Urban Runner's "3D view" work again
...
svn-id: r55340
2011-01-20 03:22:43 +00:00
Sven Hesse
679a8d6ad6
VIDEO: Recreate the audiostream if necessary
...
svn-id: r55324
2011-01-19 09:03:09 +00:00
Sven Hesse
2e30eca6d0
VIDEO: Don't segfault when no audiostream is present
...
svn-id: r55322
2011-01-19 09:02:07 +00:00
Sven Hesse
22c3e7b1de
VIDEO: Don't assert() when a needed codec isn't compiled in
...
svn-id: r55317
2011-01-19 00:16:13 +00:00
Matthew Hoops
503fdb6147
GRAPHICS: Add a getSurface() function to JPEG to automatically convert to RGB
...
svn-id: r55301
2011-01-18 16:18:10 +00:00
Sven Hesse
94f5bec0f6
GOB: Fix Woodruff video offsets
...
svn-id: r55288
2011-01-18 07:03:12 +00:00
Sven Hesse
d509941eca
VIDEO: Clip render rect to the surface's dimension
...
...And not to the video's. Oops :P
svn-id: r55285
2011-01-18 05:09:43 +00:00
Sven Hesse
da65a3cbf3
GOB: Fix the flow rate gauge in Urban Runner
...
svn-id: r55275
2011-01-17 09:48:42 +00:00
Sven Hesse
84cda62d1f
VIDEO: Implement internal-codec 24bpp VMDs
...
svn-id: r55265
2011-01-16 16:41:27 +00:00
Sven Hesse
32b94cc236
VIDEO: Implement internal-codec 16bit VMDs
...
svn-id: r55263
2011-01-16 16:29:43 +00:00
Sven Hesse
faa66fc01a
VIDEO: Add color mode methods
...
To query the video's color mode and notifying the decoder that
the system's color mode changed.
svn-id: r55259
2011-01-16 16:27:52 +00:00
Sven Hesse
afd101c526
VIDEO: Add range checks to deLZ77()
...
svn-id: r55258
2011-01-16 16:27:22 +00:00
Sven Hesse
23c1184d80
VIDEO: Simplying the video buffers
...
svn-id: r55257
2011-01-16 16:26:52 +00:00
Matthew Hoops
8ce55fbcde
VIDEO: Reset the pause start time when seeking while paused
...
svn-id: r55239
2011-01-14 13:01:57 +00:00
Matthew Hoops
4e56df4dbd
GRAPHICS: Begin to parse Win1 fonts based on our sole Hugo1 sample (still WIP)
...
svn-id: r55227
2011-01-13 16:06:35 +00:00
Matthew Hoops
095384b90f
GRAPHICS: Use the pixel height instead of the ascent as the WinFont height
...
svn-id: r55224
2011-01-13 14:45:14 +00:00
Matthew Hoops
0f04b4609c
VIDEO: Fix QuickTime timing when seeking without audio (thanks bgK)
...
svn-id: r55211
2011-01-11 21:33:23 +00:00
Matthew Hoops
3cb7224c10
VIDEO: Add seeking capability to QuickTimeDecoder
...
svn-id: r55203
2011-01-11 17:27:37 +00:00
Matthew Hoops
3bb5a9fe71
VIDEO: Add a SeekableVideoDecoder class
...
svn-id: r55202
2011-01-11 17:27:31 +00:00
Sven Hesse
3ac598624d
BUILD: Include scummsys.h to force rebuild after reconfigure
...
svn-id: r55157
2011-01-08 03:36:21 +00:00
Willem Jan Palenstijn
6a28d05676
BUILD: Include scummsys.h to force rebuild after reconfigure (thanks LordHoto)
...
svn-id: r55156
2011-01-08 03:27:13 +00:00
Johannes Schickel
f9ebeb330b
GRAPHICS: Some basic documentation for Font.
...
svn-id: r55143
2011-01-07 12:43:00 +00:00
Johannes Schickel
2817f80db8
GRAPHICS: Add some doxygen comments to Surface.
...
svn-id: r55142
2011-01-07 12:26:01 +00:00
Matthew Hoops
4e05e450c3
VIDEO: Mirror QuickTime's mishandling of its own mdat atoms
...
While the specs say that the 'mdat' ("media data") atom is required in all QuickTime files, QuickTime makes no check if the atom is actually present. This allows for some videos with typos in the atom tag in them to play in QuickTime anyway. The offsets in the 'stco' atom are only used instead.
This will fix a video in DS2 Mac and a music file in IHNM Mac (although this is not needed for either just yet).
svn-id: r55125
2011-01-05 18:06:46 +00:00
Matthew Hoops
bee912ff54
GRAPHICS: Add support for Windows FON/FNT fonts
...
As required by Hugo and Mohawk.
svn-id: r55120
2011-01-04 20:39:27 +00:00
Alyssa Milburn
7e0744aa4a
VIDEO: Stop leaking surface data in several codecs.
...
svn-id: r55095
2011-01-02 14:57:49 +00:00
Filippos Karapetis
cc0b2b210f
GRAPHICS: Fixed code analysis warnings (bug #3087917 )
...
svn-id: r54964
2010-12-19 16:16:25 +00:00
Alyssa Milburn
eac4a64143
VIDEO: Add CDToons decoder
...
svn-id: r54936
2010-12-16 17:01:09 +00:00
Matthew Hoops
ebf2dd8d38
VIDEO: Extend Codec to support internal palettes
...
svn-id: r54932
2010-12-16 13:25:29 +00:00
Matthew Hoops
9285986e62
VIDEO: Make Codec::decodeImage() return a const Surface pointer
...
svn-id: r54930
2010-12-16 02:02:53 +00:00
Matthew Hoops
98a2bc8a9a
VIDEO: Remove the need to call updateAudioBuffer() externally for QuickTime
...
svn-id: r54929
2010-12-16 01:49:29 +00:00
Matthew Hoops
1ead0d8436
VIDEO: Make VideoDecoder::getPalette() return a const byte pointer
...
svn-id: r54928
2010-12-16 01:41:11 +00:00
Matthew Hoops
375f32fbe9
VIDEO: Make VideoDecoder::decodeNextFrame() return a const Surface pointer
...
svn-id: r54927
2010-12-16 01:35:13 +00:00
Matthew Hoops
cf65709c45
VIDEO: Fix QuickTimeDecoder::hasDirtyPalette() by allocating the palette only for 8bpp videos
...
svn-id: r54849
2010-12-10 02:09:48 +00:00
Matthew Hoops
09abe6f151
VIDEO: Allow for 8bpp Cinepak videos
...
svn-id: r54841
2010-12-09 20:48:08 +00:00
Matthew Hoops
680b0d3172
VIDEO: Implement multiple video codec support for QuickTime
...
svn-id: r54840
2010-12-09 19:59:26 +00:00
Matthew Hoops
cf86141ca3
VIDEO: Fix a truncation in the SMC decoder (thanks, fuzzie)
...
svn-id: r54839
2010-12-09 13:36:23 +00:00
Max Horn
2180b2d6b5
COMMON: Split common/stream.h into several headers
...
svn-id: r54385
2010-11-19 17:03:07 +00:00
Max Horn
a0df86955f
ALL: Push down deps on stream.h from .h to .cpp files
...
svn-id: r54358
2010-11-19 01:37:04 +00:00
Max Horn
dbddd758d1
GRAPHICS: colour -> color
...
svn-id: r54287
2010-11-17 12:21:37 +00:00
Max Horn
abe1959d36
COMMON: Simplify DECLARE_SINGLETON macro
...
This makes it possible to write
DECLARE_SINGLETON(foo);
instead of
DECLARE_SINGLETON(foo)
without causing a warning about an extra semicolon.
The extra semicolon helps some editors at parsing the C++ code.
svn-id: r54258
2010-11-16 08:23:13 +00:00
Matthew Hoops
f4af4d2366
VIDEO: Switch Truemotion 1 to RGB565 for potential use with SCI CLUT tables
...
svn-id: r54231
2010-11-13 19:15:31 +00:00