all repos — mgba @ 33d1633ada1e250b49dd9365681c99fc239ab290

mGBA Game Boy Advance Emulator

GBA Video: Fix backdrop blending on lines without sprites (fixes #1647)
Vicki Pfau vi@endrift.com
Tue, 28 Jan 2020 19:58:08 -0800
commit

33d1633ada1e250b49dd9365681c99fc239ab290

parent

8f468875358d7e96a492e91db30fd62f35ee8cfd

M CHANGESCHANGES

@@ -4,6 +4,7 @@ - GBA Memory: Misaligned SRAM writes are ignored

- GBA Serialize: Fix serializing DMA transfer register - GBA Serialize: Fix audio DMA timing deserialization - GBA Video: Fix OAM not invalidating after reset (fixes mgba.io/i/1630) + - GBA Video: Fix backdrop blending on lines without sprites (fixes mgba.io/i/1647) Other fixes: - Qt: Only dynamically reset video scale if a game is running - Qt: Fix race condition with proxied video events
M src/gba/renderers/video-software.csrc/gba/renderers/video-software.c

@@ -623,7 +623,7 @@ softwareRenderer->bg[3].highlight = softwareRenderer->d.highlightBG[3];

_drawScanline(softwareRenderer, y); - if (softwareRenderer->forceTarget1 && softwareRenderer->target2Bd) { + if ((softwareRenderer->forceTarget1 || softwareRenderer->bg[0].target1 || softwareRenderer->bg[1].target1 || softwareRenderer->bg[2].target1 || softwareRenderer->bg[3].target1) && softwareRenderer->target2Bd) { x = 0; for (w = 0; w < softwareRenderer->nWindows; ++w) { uint32_t backdrop = 0;