summaryrefslogtreecommitdiff
path: root/src/blitter/8bpp_optimized.cpp
diff options
context:
space:
mode:
authortruelight <truelight@openttd.org>2007-06-13 10:31:40 +0000
committertruelight <truelight@openttd.org>2007-06-13 10:31:40 +0000
commite7221d1fa93229b8a56a84155bf20930c7b5d2aa (patch)
tree98a70aa7bd079e3d0a506b21ae4262f53fdd811c /src/blitter/8bpp_optimized.cpp
parent97b74fe4f205fc65fbc2e3933fd7cb4d08e8df33 (diff)
downloadopenttd-e7221d1fa93229b8a56a84155bf20930c7b5d2aa.tar.xz
(svn r10132) -Codechange: split out the last direct video-buffer read access to the blitter-layer
-Add: added a new renderer and blitter to make room for some optimized bpp -Fix: fill the alpha channel in the grf-spriteloader
Diffstat (limited to 'src/blitter/8bpp_optimized.cpp')
-rw-r--r--src/blitter/8bpp_optimized.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/blitter/8bpp_optimized.cpp b/src/blitter/8bpp_optimized.cpp
index 9af922e30..09c5886f0 100644
--- a/src/blitter/8bpp_optimized.cpp
+++ b/src/blitter/8bpp_optimized.cpp
@@ -102,6 +102,16 @@ void Blitter_8bppOptimized::Draw(Blitter::BlitterParams *bp, BlitterMode mode, Z
}
}
+void Blitter_8bppOptimized::DrawColorMappingRect(void *dst, int width, int height, int pal)
+{
+ const uint8 *ctab = GetNonSprite(pal) + 1;
+
+ do {
+ for (int i = 0; i != width; i++) _screen.renderer->SetPixel(dst, i, 0, ctab[((uint8 *)dst)[i]]);
+ dst = _screen.renderer->MoveTo(dst, 0, 1);
+ } while (height--);
+}
+
Sprite *Blitter_8bppOptimized::Encode(SpriteLoader::Sprite *sprite, Blitter::AllocatorProc *allocator)
{
Sprite *dest_sprite;