Merge pull request #1222 from unknownbrackets/gpu-fix

Correct dest stride on GPU block transfer
This commit is contained in:
Henrik Rydgård 2013-04-08 11:01:04 -07:00
commit 6ec7d237e8
3 changed files with 4 additions and 4 deletions

View File

@ -902,7 +902,7 @@ void GLES_GPU::DoBlockTransfer() {
// Do the copy!
for (int y = 0; y < height; y++) {
const u8 *src = Memory::GetPointer(srcBasePtr + ((y + srcY) * srcStride + srcX) * bpp);
u8 *dst = Memory::GetPointer(dstBasePtr + ((y + dstY) * srcStride + dstX) * bpp);
u8 *dst = Memory::GetPointer(dstBasePtr + ((y + dstY) * dstStride + dstX) * bpp);
memcpy(dst, src, width * bpp);
}

View File

@ -340,7 +340,7 @@ void GeDisassembleOp(u32 pc, u32 op, u32 prev, char *buffer) {
case GE_CMD_TRANSFERSRCW:
{
u32 xferSrc = gstate.transfersrc | ((data&0xFF0000)<<8);
u32 xferSrc = (gstate.transfersrc & 0x00FFFFFF) | ((data & 0xFF0000) << 8);
u32 xferSrcW = gstate.transfersrcw & 1023;
sprintf(buffer, "Block Transfer Src: %08x W: %i", xferSrc, xferSrcW);
break;
@ -355,7 +355,7 @@ void GeDisassembleOp(u32 pc, u32 op, u32 prev, char *buffer) {
case GE_CMD_TRANSFERDSTW:
{
u32 xferDst= gstate.transferdst | ((data&0xFF0000)<<8);
u32 xferDst = (gstate.transferdst & 0x00FFFFFF) | ((data & 0xFF0000) << 8);
u32 xferDstW = gstate.transferdstw & 1023;
sprintf(buffer, "Block Transfer Dest: %08x W: %i", xferDst, xferDstW);
break;

View File

@ -242,7 +242,7 @@ enum GECommand
GE_CMD_TRANSFERSTART=0xEA,
GE_CMD_TRANSFERSRCPOS=0xEB,
GE_CMD_TRANSFERDSTPOS=0xEC,
GE_CMD_TRANSFERSIZE=0xED,
GE_CMD_TRANSFERSIZE=0xEE,
};
enum GEBufferFormat