all repos — mgba @ 1882b155677ce11c4fd6e02bb5285fe78a2cc3f4

mGBA Game Boy Advance Emulator

DS GX: Don't reset state between swaps (fixes #642)
Vicki Pfau vi@endrift.com
Wed, 12 Apr 2017 20:50:26 -0700
commit

1882b155677ce11c4fd6e02bb5285fe78a2cc3f4

parent

b80e06f9bd127e9ca83141766a40b767c2deb516

2 files changed, 1 insertions(+), 6 deletions(-)

jump to
M CHANGESCHANGES

@@ -10,7 +10,6 @@ - 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 - DS GX: Fix 4-color texture coordinates - - DS GX: Reset polygon attributes between buffer swaps - DS Video: Fix blend bit on windows for 3D layer (fixes mgba.io/i/611) - DS GX: Hack around writing to a full FIFO that has a swap pending (fixes mgba.io/i/608) - DS Video: Enable overflow bit on extended affine modes

@@ -18,6 +17,7 @@ - DS Video: Fix extended mode 0 without extended palettes

- DS Video: Fix caputre stride - DS Video: Fix affine transformations in video capture - DS GX: Fix bitmap textures when no palette is mapped (fixes mgba.io/i/628) + - DS GX: Don't reset state between buffer swaps (fixes mgba.io/i/642) Misc: - DS: Set boot complete bit in RAM on boot (fixes mgba.io/i/576, mgba.io/i/580, mgba.io/i/586) - DS Memory: Ensure DS9 I/O is 8-byte aligned
M src/ds/gx.csrc/ds/gx.c

@@ -1172,11 +1172,6 @@ break;

case DS_GX_CMD_SWAP_BUFFERS: gx->swapBuffers = true; gx->wSort = entry.params[0] & 2; - memset(&gx->currentVertex, 0, sizeof(gx->currentVertex)); - memset(&gx->nextPoly, 0, sizeof(gx-> nextPoly)); - gx->currentVertex.color = 0x7FFF; - gx->currentPoly.polyParams = 0x001F00C0; - gx->nextPoly.polyParams = 0x001F00C0; break; case DS_GX_CMD_VIEWPORT: gx->viewportX1 = (uint8_t) entry.params[0];