diff options
author | Sven Hesse | 2011-01-16 16:29:43 +0000 |
---|---|---|
committer | Sven Hesse | 2011-01-16 16:29:43 +0000 |
commit | 32b94cc236c5c0d0ec4bf73d7bf87bd2e3c67bc9 (patch) | |
tree | f69e73df7e0d42ae18dec50ec3e55d72a4fb89f3 /graphics/video/coktel_decoder.h | |
parent | b451d3b51c7b9c1db0e4203791793020f330cb07 (diff) | |
download | scummvm-rg350-32b94cc236c5c0d0ec4bf73d7bf87bd2e3c67bc9.tar.gz scummvm-rg350-32b94cc236c5c0d0ec4bf73d7bf87bd2e3c67bc9.tar.bz2 scummvm-rg350-32b94cc236c5c0d0ec4bf73d7bf87bd2e3c67bc9.zip |
VIDEO: Implement internal-codec 16bit VMDs
svn-id: r55263
Diffstat (limited to 'graphics/video/coktel_decoder.h')
-rw-r--r-- | graphics/video/coktel_decoder.h | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/graphics/video/coktel_decoder.h b/graphics/video/coktel_decoder.h index 8279415d89..97be4ac72b 100644 --- a/graphics/video/coktel_decoder.h +++ b/graphics/video/coktel_decoder.h @@ -200,12 +200,12 @@ protected: void deRLE(byte *&destPtr, const byte *&srcPtr, int16 destLen, int16 srcLen); // Block rendering - void renderBlockWhole (const byte *src, Common::Rect &rect); - void renderBlockWhole4X (const byte *src, Common::Rect &rect); - void renderBlockWhole2Y (const byte *src, Common::Rect &rect); - void renderBlockSparse (const byte *src, Common::Rect &rect); - void renderBlockSparse2Y(const byte *src, Common::Rect &rect); - void renderBlockRLE (const byte *src, Common::Rect &rect); + void renderBlockWhole (Surface &dstSurf, const byte *src, Common::Rect &rect); + void renderBlockWhole4X (Surface &dstSurf, const byte *src, Common::Rect &rect); + void renderBlockWhole2Y (Surface &dstSurf, const byte *src, Common::Rect &rect); + void renderBlockSparse (Surface &dstSurf, const byte *src, Common::Rect &rect); + void renderBlockSparse2Y(Surface &dstSurf, const byte *src, Common::Rect &rect); + void renderBlockRLE (Surface &dstSurf, const byte *src, Common::Rect &rect); // Sound helper functions inline void unsignedToSigned(byte *buffer, int length); @@ -457,8 +457,10 @@ private: uint32 _firstFramePos; ///< Position of the first frame's data within the stream. uint32 _videoBufferSize; ///< Size of the video buffers. - byte *_videoBuffer[2]; ///< Video buffers. - uint32 _videoBufferLen[2]; ///< Size of the video buffers filled. + byte *_videoBuffer[3]; ///< Video buffers. + uint32 _videoBufferLen[3]; ///< Size of the video buffers filled. + + Surface _8bppSurface[3]; ///< Fake 8bpp surfaces over the video buffers. bool _externalCodec; Codec *_codec; @@ -479,6 +481,8 @@ private: // Video bool renderFrame(Common::Rect &rect); + void blit16(const Surface &srcSurf, Common::Rect &rect); + void blit24(const Surface &srcSurf, Common::Rect &rect); // Sound void emptySoundSlice (uint32 size); |