all repos — mgba @ a142dc3c9391f6218e500db0619f3a7835bd9c7e

mGBA Game Boy Advance Emulator

DS Video: Bitmap sprites use alpha bit for transparent
Vicki Pfau vi@endrift.com
Mon, 10 Apr 2017 01:47:00 -0700
commit

a142dc3c9391f6218e500db0619f3a7835bd9c7e

parent

a01feb2909e2053c8b7ebccaa679d44c63e0bd35

2 files changed, 3 insertions(+), 2 deletions(-)

jump to
M CHANGESCHANGES

@@ -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.csrc/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; \ }