DS Video: Bitmap sprites use alpha bit for transparent
Vicki Pfau vi@endrift.com
Mon, 10 Apr 2017 01:47:00 -0700
2 files changed,
3 insertions(+),
2 deletions(-)
M
CHANGES
→
CHANGES
@@ -4,6 +4,7 @@ - DS Video: Fix VRAM mirroring in the renderer (fixes mgba.io/i/561)
- DS Video: Fix extended modes 1.x screen base range (fixes mgba.io/i/568) - DS GX: Fix T-repeat textures (fixes mgba.io/i/577) - DS Video: Capture with alpha bit set + - DS Video: Bitmap sprites use alpha bit for transparent Misc: - DS: Set boot complete bit in RAM on boot (fixes mgba.io/i/576, mgba.io/i/580, mgba.io/i/586)
M
src/gba/renderers/software-obj.c
→
src/gba/renderers/software-obj.c
@@ -197,7 +197,7 @@ } \
LOAD_16(tileData, spriteBase & VRAM_BLOCK_MASK, vramBase); \ current = renderer->spriteLayer[outX]; \ if ((current & FLAG_ORDER_MASK) > flags) { \ - if (tileData) { \ + if (tileData & 0x8000) { \ uint32_t color; \ TILE_TO_COLOR(tileData); \ renderer->spriteLayer[outX] = color | flags; \@@ -215,7 +215,7 @@ if (UNLIKELY(!vramBase)) { \
return 0; \ } \ LOAD_16(tileData, spriteBase & VRAM_BLOCK_MASK, vramBase); \ - if (tileData) { \ + if (tileData & 0x8000) { \ renderer->row[outX] |= FLAG_OBJWIN; \ }