gpu-fix bug leftover from r4073/r4227 which caused some games (AC:WW) to fail to clear their backdrops depending on BLDCNT configurations (fixes #3518648)
This commit is contained in:
parent
d5003c4db6
commit
a775c75a69
|
@ -2040,6 +2040,7 @@ static void GPU_RenderLine_layer(NDS_Screen * screen, u16 l)
|
||||||
//for backdrops, blend isnt applied (it's illogical, isnt it?)
|
//for backdrops, blend isnt applied (it's illogical, isnt it?)
|
||||||
case 0:
|
case 0:
|
||||||
case 1:
|
case 1:
|
||||||
|
PLAIN_CLEAR:
|
||||||
memset_u16_le<256>(gpu->currDst,backdrop_color);
|
memset_u16_le<256>(gpu->currDst,backdrop_color);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -2047,10 +2048,12 @@ static void GPU_RenderLine_layer(NDS_Screen * screen, u16 l)
|
||||||
case 2:
|
case 2:
|
||||||
if(gpu->BLDCNT & 0x20) //backdrop is selected for color effect
|
if(gpu->BLDCNT & 0x20) //backdrop is selected for color effect
|
||||||
memset_u16_le<256>(gpu->currDst,gpu->currentFadeInColors[backdrop_color]);
|
memset_u16_le<256>(gpu->currDst,gpu->currentFadeInColors[backdrop_color]);
|
||||||
|
else goto PLAIN_CLEAR;
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if(gpu->BLDCNT & 0x20) //backdrop is selected for color effect
|
if(gpu->BLDCNT & 0x20) //backdrop is selected for color effect
|
||||||
memset_u16_le<256>(gpu->currDst,gpu->currentFadeOutColors[backdrop_color]);
|
memset_u16_le<256>(gpu->currDst,gpu->currentFadeOutColors[backdrop_color]);
|
||||||
|
else goto PLAIN_CLEAR;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//windowed cases apparently need special treatment? why? can we not render the backdrop? how would that even work?
|
//windowed cases apparently need special treatment? why? can we not render the backdrop? how would that even work?
|
||||||
|
|
Loading…
Reference in New Issue