10-17-2010, 09:29 AM
For future reference, sceGuCopyImage in the pspsdk does :
void sceGuCopyImage(int psm, int sx, int sy, int width, int height, int srcw, void* src, int dx, int dy, int destw, void* dest)
{
sendCommandi(TRXSBP,((unsigned int)src) & 0xffffff);
sendCommandi(TRXSBW,((((unsigned int)src) & 0xff000000) >> 8)|srcw);
sendCommandi(TRXPOS,(sy << 10)|sx);
sendCommandi(TRXDBP,((unsigned int)dest) & 0xffffff);
sendCommandi(TRXDBW,((((unsigned int)dest) & 0xff000000) >> 8)|destw);
sendCommandi(TRXDPOS,(dy << 10)|dx);
sendCommandi(TRXSIZE,((height-1) << 10)|(width-1));
sendCommandi(TRXKICK,(psm ^ 0x03) ? 0 : 1);
}
Everything should be implemented. But the TRXKICK doesn't seem to work quite well in this case.
void sceGuCopyImage(int psm, int sx, int sy, int width, int height, int srcw, void* src, int dx, int dy, int destw, void* dest)
{
sendCommandi(TRXSBP,((unsigned int)src) & 0xffffff);
sendCommandi(TRXSBW,((((unsigned int)src) & 0xff000000) >> 8)|srcw);
sendCommandi(TRXPOS,(sy << 10)|sx);
sendCommandi(TRXDBP,((unsigned int)dest) & 0xffffff);
sendCommandi(TRXDBW,((((unsigned int)dest) & 0xff000000) >> 8)|destw);
sendCommandi(TRXDPOS,(dy << 10)|dx);
sendCommandi(TRXSIZE,((height-1) << 10)|(width-1));
sendCommandi(TRXKICK,(psm ^ 0x03) ? 0 : 1);
}
Everything should be implemented. But the TRXKICK doesn't seem to work quite well in this case.