diff options
-rw-r--r-- | scumm/smush/smush_player.cpp | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/scumm/smush/smush_player.cpp b/scumm/smush/smush_player.cpp index d7ce370c9a..a6ad89ba08 100644 --- a/scumm/smush/smush_player.cpp +++ b/scumm/smush/smush_player.cpp @@ -685,6 +685,8 @@ void SmushPlayer::handleNewPalette(Chunk &b) { setPalette(_pal); } +void smush_decode_codec1(byte *dst, byte *src, int height); + void SmushPlayer::handleFrameObject(Chunk &b) { checkBlock(b, TYPE_FOBJ, 14); if (_skipNext) { @@ -720,17 +722,8 @@ void SmushPlayer::handleFrameObject(Chunk &b) { switch (codec) { case 1: - bompDecodeLine(_dst, chunk_buffer, chunk_size); case 3: - // FIXME: I am not 100% sure if this is correct. I tried to test this, - // but the only place I found codec 1 being used was in FT. - // But either is the codec only used to encode all-black frames, or - // smush_decode_codec1 already produced invalid (all-black?) output. - // - // BTW regarding codec 3: I haven't yet actually seen it being used, - // but is it really identical to codec 1? Or isn't it maybe a - // 'reverse' version (see also bompDecodeLineReverse). - bompDecodeLineReverse(_dst, chunk_buffer, chunk_size); + smush_decode_codec1(_dst, chunk_buffer, _height); break; case 37: _codec37.decode(_dst, chunk_buffer); |