mirror of
https://github.com/libretro/ppsspp.git
synced 2024-12-04 07:00:51 +00:00
Merge pull request #1222 from unknownbrackets/gpu-fix
Correct dest stride on GPU block transfer
This commit is contained in:
commit
6ec7d237e8
@ -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);
|
||||
}
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user