Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void rsxSetTransferScaleSurface(gcmContextData *context,const gcmTransferScale *scale,const gcmTransferSurface *surface)
- {
- RSX_CONTEXT_CURRENT_BEGIN(20);
- RSX_CONTEXT_CURRENTP[0] = RSX_SUBCHANNEL_METHOD(3,NV04_CONTEXT_SURFACES_2D_FORMAT,4);
- RSX_CONTEXT_CURRENTP[1] = surface->format;
- RSX_CONTEXT_CURRENTP[2] = ((surface->pitch << 16) | 0x40); // or'ing with 64 - why?
- RSX_CONTEXT_CURRENTP[3] = 0;
- RSX_CONTEXT_CURRENTP[4] = surface->offset;
- RSX_CONTEXT_CURRENTP[5] = RSX_SUBCHANNEL_METHOD(6,NV03_STRETCHED_IMAGE_FROM_CPU_OPERATION,9);
- RSX_CONTEXT_CURRENTP[6] = scale->conversion; // TRUNCATE
- RSX_CONTEXT_CURRENTP[7] = scale->format;
- RSX_CONTEXT_CURRENTP[8] = scale->operation; // SRCCOPY
- RSX_CONTEXT_CURRENTP[9] = ((scale->clipY << 16) | scale->clipX);
- RSX_CONTEXT_CURRENTP[10] = ((scale->clipH << 16) | scale->clipW);
- RSX_CONTEXT_CURRENTP[11] = ((scale->outY << 16) | scale->outX);
- RSX_CONTEXT_CURRENTP[12] = ((scale->outH << 16) | scale->outW);
- RSX_CONTEXT_CURRENTP[13] = scale->ratioX;
- RSX_CONTEXT_CURRENTP[14] = scale->ratioY;
- RSX_CONTEXT_CURRENTP[15] = RSX_SUBCHANNEL_METHOD(6,NV03_SCALED_IMAGE_FROM_MEMORY_IMAGE_IN_SIZE,4);
- RSX_CONTEXT_CURRENTP[16] = ((scale->inH << 16) | scale->inW);
- RSX_CONTEXT_CURRENTP[17] = ((scale->pitch) | (scale->origin << 16) | (scale->interp << 24));
- RSX_CONTEXT_CURRENTP[18] = scale->offset;
- RSX_CONTEXT_CURRENTP[19] = ((scale->inY << 16) | scale->inX);
- RSX_CONTEXT_CURRENT_END(20);
- }
Add Comment
Please, Sign In to add comment