diff options
author | James Brown | 2002-10-22 09:52:14 +0000 |
---|---|---|
committer | James Brown | 2002-10-22 09:52:14 +0000 |
commit | 80f55f19a3a6ebe132b8f2f90c6d7e8294df06fb (patch) | |
tree | 3661816edd77af910685386db4f00b552536b6ab /scumm/akos.cpp | |
parent | 0718ff5126f1168cfdafcfdd93408eb15dbe65a6 (diff) | |
download | scummvm-rg350-80f55f19a3a6ebe132b8f2f90c6d7e8294df06fb.tar.gz scummvm-rg350-80f55f19a3a6ebe132b8f2f90c6d7e8294df06fb.tar.bz2 scummvm-rg350-80f55f19a3a6ebe132b8f2f90c6d7e8294df06fb.zip |
Akos(16) fixes by Ludde - yay, it's working :)
svn-id: r5229
Diffstat (limited to 'scumm/akos.cpp')
-rw-r--r-- | scumm/akos.cpp | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/scumm/akos.cpp b/scumm/akos.cpp index 771cc38f8e..a05a5873ff 100644 --- a/scumm/akos.cpp +++ b/scumm/akos.cpp @@ -1148,10 +1148,10 @@ void AkosRenderer::akos16SkipData(int32 numskip) { akos16_numbits += 8; } bits = akos16_bits & 3; - if (bits != 1) { + if (bits & 1) { akos16_bits >>= 2; akos16_numbits -= 2; - if (bits != 2) { + if (bits & 2) { tmp_bits = akos16_bits & 7; akos16_numbits -= 3; akos16_bits >>= 3; @@ -1215,10 +1215,10 @@ void AkosRenderer::akos16DecodeLine(byte *buf, int32 numbytes, int32 dir) { akos16_numbits += 8; } bits = akos16_bits & 3; - if (bits != 1) { + if (bits & 1) { akos16_bits >>= 2; akos16_numbits -= 2; - if (bits != 2) { + if (bits & 2) { tmp_bits = akos16_bits & 7; akos16_numbits -= 3; akos16_bits >>= 3; @@ -1298,7 +1298,7 @@ void AkosRenderer::akos16Decompress(byte * dest, int32 pitch, byte * src, int32 if (dir < 0) { dest -= (t_width - 1); - tmp_buf += (t_height - 1); + tmp_buf += (t_width - 1); } akos16SetupBitReader(src); @@ -1375,11 +1375,7 @@ void AkosRenderer::codec16() { int32 tmp_x, tmp_y; tmp_x = clip_left; - if(tmp_x < 0) { - tmp_x = -tmp_x; - clip_left -= tmp_x; - skip_x = tmp_x; - } + if (clip_left < 0) { skip_x = -clip_left; clip_left = 0; } tmp_x = clip_right - maxw; if(tmp_x > 0) { |