gpu: dont render an obj window in one of N cases remaining where that happens accidentally and add a note about a failing save autodetection

This commit is contained in:
zeromus 2009-11-22 00:07:24 +00:00
parent b25867dc5f
commit 2adab7ef1a
2 changed files with 11 additions and 4 deletions

View File

@ -1494,6 +1494,7 @@ void GPU::_spriteRender(u8 * dst, u8 * dst_alpha, u8 * typeTab, u8 * prioTab)
u16 l = currLine;
GPU *gpu = this;
struct _DISPCNT * dispCnt = &(gpu->dispx_st)->dispx_DISPCNT.bits;
_OAM_ * spriteInfo = (_OAM_ *)(gpu->oam + (nbShow-1));// + 127;
u8 block = gpu->sprBoundary;
@ -1723,10 +1724,15 @@ void GPU::_spriteRender(u8 * dst, u8 * dst_alpha, u8 * typeTab, u8 * prioTab)
if(colour && (prioTab[sprX]>=prio))
{
T2WriteWord(dst, (sprX<<1), LE_TO_LOCAL_16(T2ReadWord(pal, colour << 1)));
dst_alpha[sprX] = 16;
typeTab[sprX] = spriteInfo->Mode;
prioTab[sprX] = prio;
if(spriteInfo->Mode==2)
sprWin[sprX] = 1;
else
{
T2WriteWord(dst, (sprX<<1), LE_TO_LOCAL_16(T2ReadWord(pal, colour << 1)));
dst_alpha[sprX] = 16;
typeTab[sprX] = spriteInfo->Mode;
prioTab[sprX] = prio;
}
}
}

View File

@ -358,6 +358,7 @@ void BackupDevice::reset_command()
//another modern typical case..
//but unfortunately we select this case for spider-man 3, when what it meant to do was
//present the archaic 1+2 case
//it seems that over the hedge does this also.
addr_size = 2;
break;
case 4: