aboutsummaryrefslogtreecommitdiff
path: root/engines/access/video
diff options
context:
space:
mode:
Diffstat (limited to 'engines/access/video')
-rw-r--r--engines/access/video/movie_decoder.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/engines/access/video/movie_decoder.cpp b/engines/access/video/movie_decoder.cpp
index 78b7a33fd0..c67dac6379 100644
--- a/engines/access/video/movie_decoder.cpp
+++ b/engines/access/video/movie_decoder.cpp
@@ -619,10 +619,11 @@ bool AccessVIDMovieDecoder::StreamVideoTrack::skipOverPalette(Common::SeekableRe
void AccessVIDMovieDecoder::StreamVideoTrack::decodePalette(Common::SeekableReadStream *stream) {
assert(stream);
+ // VID files use a 6-bit palette and not a 8-bit one, we change it to 8-bit
for (uint16 curColor = 0; curColor < 256; curColor++) {
- _palette[curColor * 3] = stream->readByte();
- _palette[curColor * 3 + 1] = stream->readByte();
- _palette[curColor * 3 + 2] = stream->readByte();
+ _palette[curColor * 3] = stream->readByte() << 2;
+ _palette[curColor * 3 + 1] = stream->readByte() << 2;
+ _palette[curColor * 3 + 2] = stream->readByte() << 2;
}
_dirtyPalette = true;