X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fdfxvideo%2Fprim.c;h=7a71d4c813508fef30675cab615cb0248ad7b30d;hp=b36d55633e9fff2bbbeacfadbb749c4b649462f7;hb=68602482156d907f9c51eb196e98f0f70b5510f8;hpb=a96a5eb2d6a6720cc7bba6a30d1c25473f345a89 diff --git a/plugins/dfxvideo/prim.c b/plugins/dfxvideo/prim.c index b36d5563..7a71d4c8 100644 --- a/plugins/dfxvideo/prim.c +++ b/plugins/dfxvideo/prim.c @@ -348,7 +348,6 @@ static void cmdTexturePage(unsigned char * baseAddr) usMirror=gdata&0x3000; UpdateGlobalTP((unsigned short)gdata); - GlobalTextREST = (gdata&0x00ffffff)>>9; } //////////////////////////////////////////////////////////////////////// @@ -375,6 +374,7 @@ static void cmdTextureWindow(unsigned char *baseAddr) TWin.Position.y1 = 128; // 10000 else TWin.Position.y1 = 256; // 00000 + TWin.ymask = TWin.Position.y1 - 1; // Texture window size is determined by the least bit set of the relevant 5 bits @@ -390,6 +390,7 @@ static void cmdTextureWindow(unsigned char *baseAddr) TWin.Position.x1 = 128; // 10000 else TWin.Position.x1 = 256; // 00000 + TWin.xmask = TWin.Position.x1 - 1; // Re-calculate the bit field, because we can't trust what is passed in the data @@ -574,7 +575,7 @@ static void primMoveImage(unsigned char * baseAddr) return; } - if(imageSX&1) // not dword aligned? slower func + if((imageSX|imageX0|imageX1)&1) // not dword aligned? slower func { unsigned short *SRCPtr, *DSTPtr; unsigned short LineOffset;