From 8db28496c8a68aa06208477e12e5a21995fae4f0 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Fri, 12 Dec 2014 01:36:49 +0100 Subject: And another one - pt. 2 --- video.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'video.c') diff --git a/video.c b/video.c index 9f34443..ced76f5 100644 --- a/video.c +++ b/video.c @@ -636,6 +636,22 @@ static void render_scanline_conditional_bitmap(u32 start, u32 end, u16 *scanline map_ptr++; \ } \ +#define multiple_tile_map_transparent_8bpp_normal() \ + for(i = 0; i < tile_run; i++) \ + { \ + single_tile_map(tile, transparent, 8bpp, normal); \ + advance_dest_ptr_transparent(8); \ + map_ptr++; \ + } \ + +#define multiple_tile_map_transparent_4bpp_normal() \ + for(i = 0; i < tile_run; i++) \ + { \ + single_tile_map(tile, transparent, 4bpp, normal); \ + advance_dest_ptr_transparent(8); \ + map_ptr++; \ + } \ + #define multiple_tile_map_base_8bpp_normal() \ for(i = 0; i < tile_run; i++) \ { \ @@ -1096,12 +1112,12 @@ static void render_scanline_text_transparent_normal(u32 layer, } tile_run = (pixel_run - partial_tile_run) / 8; - multiple_tile_map(transparent, 8bpp, normal); + multiple_tile_map_transparent_8bpp_normal(); map_ptr = second_ptr; end -= pixel_run; } tile_run = end / 8; - multiple_tile_map(transparent, 8bpp, normal); + multiple_tile_map_transparent_8bpp_normal(); partial_tile_run = end % 8; if(partial_tile_run) @@ -1159,13 +1175,13 @@ static void render_scanline_text_transparent_normal(u32 layer, } tile_run = (pixel_run - partial_tile_run) / 8; - multiple_tile_map(transparent, 4bpp, normal); + multiple_tile_map_transparent_4bpp_normal(); map_ptr = second_ptr; end -= pixel_run; } tile_run = end / 8; - multiple_tile_map(transparent, 4bpp, normal); + multiple_tile_map_transparent_4bpp_normal(); partial_tile_run = end % 8; if(partial_tile_run) -- cgit v1.2.3