lcd: Fix 4bpp optimized 16-bit alpha blit

Fixes a bug introduced by commit 5d0c382a59 that caused graphical
corruption on anti-aliased fonts.

Change-Id: I6052ca758382bd9a1154d2e2208dee633dd17715
This commit is contained in:
Aidan MacDonald 2023-01-08 10:44:47 +00:00
parent 528b6a9a15
commit 593103cd8b

View file

@ -498,10 +498,11 @@ static void ICODE_ATTR lcd_alpha_bitmap_part_mix(
if (stride_alpha) { \ if (stride_alpha) { \
alpha_pixels = stride_alpha - alpha_pixels; \ alpha_pixels = stride_alpha - alpha_pixels; \
alpha += alpha_pixels / ALPHA_PIXELS_PER_BYTE; \ alpha += alpha_pixels / ALPHA_PIXELS_PER_BYTE; \
alpha_data = *alpha++ ^ dmask; \
alpha_pixels &= 1; \ alpha_pixels &= 1; \
if (alpha_pixels) \ if (alpha_pixels) { \
alpha_data = *alpha++ ^ dmask; \
alpha_data >>= ALPHA_BPP; \ alpha_data >>= ALPHA_BPP; \
} \
} \ } \
} while(0) } while(0)
#define READ_ALPHA() \ #define READ_ALPHA() \