sprite rendering improvements for masking and limit edge cases

This commit is contained in:
kub 2020-01-26 20:40:07 +01:00
parent 7aab476859
commit 5f0d224e18
5 changed files with 117 additions and 65 deletions

View file

@ -200,6 +200,7 @@ static void DmaSlow(int len, unsigned int source)
a = (a + inc) & 0x1ffff;
}
Pico.video.addr_u = a >> 16;
Pico.est.rendstatus |= PDRAW_DIRTY_SPRITES;
break;
default:
@ -266,6 +267,7 @@ static NOINLINE void DmaFill(int data)
// Increment address register
a = (u16)(a + inc);
}
Pico.est.rendstatus |= PDRAW_DIRTY_SPRITES;
break;
case 3: // cram
case 5: { // vsram
@ -289,7 +291,6 @@ static NOINLINE void DmaFill(int data)
Pico.video.reg[0x15] = source;
Pico.video.reg[0x16] = source >> 8;
Pico.est.rendstatus |= PDRAW_DIRTY_SPRITES;
}
static NOINLINE void CommandDma(void)