all repos — mgba @ 940ba00182ac35886da977adc82fc531601b3d34

mGBA Game Boy Advance Emulator

DS GX: Reset polygon attributes between buffer swaps
Vicki Pfau vi@endrift.com
Mon, 10 Apr 2017 21:16:05 -0700
commit

940ba00182ac35886da977adc82fc531601b3d34

parent

3d25a10f3d9e5baaa6a42ffa9d06ac9851b94242

2 files changed, 5 insertions(+), 0 deletions(-)

jump to
M CHANGESCHANGES

@@ -8,6 +8,7 @@ - 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 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

@@ -1175,6 +1175,8 @@ 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];

@@ -1279,6 +1281,8 @@ gx->activeParams = 0;

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; gx->dmaSource = -1; }