GLuint gTexBlurName=0;\r
GLuint gTexFrameName=0;\r
int iTexGarbageCollection=1;\r
-unsigned long dwTexPageComp=0;\r
+unsigned int dwTexPageComp=0;\r
int iVRamSize=0;\r
int iClampType=GL_CLAMP_TO_EDGE;\r
int iFilter = GL_LINEAR;\r
void (*LoadSubTexFn) (int,int,short,short);\r
-unsigned long (*PalTexturedColourFn) (unsigned long);\r
+unsigned int (*PalTexturedColourFn) (unsigned int);\r
\r
////////////////////////////////////////////////////////////////////////\r
// defines\r
\r
////////////////////////////////////////////////////////////////////////\r
\r
-unsigned char * CheckTextureInSubSCache(long TextureMode,unsigned long GivenClutId,unsigned short * pCache);\r
+unsigned char * CheckTextureInSubSCache(int TextureMode,unsigned int GivenClutId,unsigned short * pCache);\r
void LoadSubTexturePageSort(int pageid, int mode, short cx, short cy);\r
void LoadPackedSubTexturePageSort(int pageid, int mode, short cx, short cy);\r
void DefineSubTextureSort(void);\r
// some globals\r
////////////////////////////////////////////////////////////////////////\r
\r
-long GlobalTexturePage;\r
+int GlobalTexturePage;\r
GLint XTexS;\r
GLint YTexS;\r
GLint DXTexS;\r
int iFrameTexType=0;\r
int iFrameReadType=0;\r
\r
-unsigned long (*TCF[2]) (unsigned long);\r
+unsigned int (*TCF[2]) (unsigned int);\r
unsigned short (*PTCF[2]) (unsigned short);\r
\r
////////////////////////////////////////////////////////////////////////\r
\r
typedef struct textureWndCacheEntryTag\r
{\r
- unsigned long ClutID;\r
+ unsigned int ClutID;\r
short pageid;\r
short textureMode;\r
short Opaque;\r
\r
typedef struct textureSubCacheEntryTagS \r
{\r
- unsigned long ClutID;\r
+ unsigned int ClutID;\r
EXLong pos;\r
unsigned char posTX;\r
unsigned char posTY;\r
\r
GLubyte * texturepart=NULL;\r
GLubyte * texturebuffer=NULL;\r
-unsigned long g_x1,g_y1,g_x2,g_y2;\r
+unsigned int g_x1,g_y1,g_x2,g_y2;\r
unsigned char ubOpaqueDraw=0;\r
\r
unsigned short MAXTPAGES = 32;\r
// porting... and honestly: nowadays the speed gain would be pointless \r
////////////////////////////////////////////////////////////////////////\r
\r
-unsigned long XP8RGBA(unsigned long BGR)\r
+unsigned int XP8RGBA(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x50000000;\r
if(DrawSemiTrans && !(BGR&0x8000)) \r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8RGBAEx(unsigned long BGR)\r
+unsigned int XP8RGBAEx(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x03000000;\r
if(DrawSemiTrans && !(BGR&0x8000)) \r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long CP8RGBA(unsigned long BGR)\r
+unsigned int CP8RGBA(unsigned int BGR)\r
{\r
- unsigned long l;\r
+ unsigned int l;\r
if(!(BGR&0xffff)) return 0x50000000;\r
if(DrawSemiTrans && !(BGR&0x8000)) \r
{ubOpaqueDraw=1;return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff);}\r
return l;\r
}\r
\r
-unsigned long CP8RGBAEx(unsigned long BGR)\r
+unsigned int CP8RGBAEx(unsigned int BGR)\r
{\r
- unsigned long l;\r
+ unsigned int l;\r
if(!(BGR&0xffff)) return 0x03000000;\r
if(DrawSemiTrans && !(BGR&0x8000)) \r
{ubOpaqueDraw=1;return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff);}\r
return l;\r
}\r
\r
-unsigned long XP8RGBA_0(unsigned long BGR)\r
+unsigned int XP8RGBA_0(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x50000000;\r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8RGBAEx_0(unsigned long BGR)\r
+unsigned int XP8RGBAEx_0(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x03000000;\r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8BGRA_0(unsigned long BGR)\r
+unsigned int XP8BGRA_0(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x50000000;\r
return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8BGRAEx_0(unsigned long BGR)\r
+unsigned int XP8BGRAEx_0(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x03000000;\r
return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long CP8RGBA_0(unsigned long BGR)\r
+unsigned int CP8RGBA_0(unsigned int BGR)\r
{\r
- unsigned long l;\r
+ unsigned int l;\r
\r
if(!(BGR&0xffff)) return 0x50000000;\r
l=((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
return l;\r
}\r
\r
-unsigned long CP8RGBAEx_0(unsigned long BGR)\r
+unsigned int CP8RGBAEx_0(unsigned int BGR)\r
{\r
- unsigned long l;\r
+ unsigned int l;\r
\r
if(!(BGR&0xffff)) return 0x03000000;\r
l=((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
return l;\r
}\r
\r
-unsigned long CP8BGRA_0(unsigned long BGR)\r
+unsigned int CP8BGRA_0(unsigned int BGR)\r
{\r
- unsigned long l;\r
+ unsigned int l;\r
\r
if(!(BGR&0xffff)) return 0x50000000;\r
l=((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
return l;\r
}\r
\r
-unsigned long CP8BGRAEx_0(unsigned long BGR)\r
+unsigned int CP8BGRAEx_0(unsigned int BGR)\r
{\r
- unsigned long l;\r
+ unsigned int l;\r
\r
if(!(BGR&0xffff)) return 0x03000000;\r
l=((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
return l;\r
}\r
\r
-unsigned long XP8RGBA_1(unsigned long BGR)\r
+unsigned int XP8RGBA_1(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x50000000;\r
if(!(BGR&0x8000)) {ubOpaqueDraw=1;return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff);}\r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8RGBAEx_1(unsigned long BGR)\r
+unsigned int XP8RGBAEx_1(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x03000000;\r
if(!(BGR&0x8000)) {ubOpaqueDraw=1;return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff);}\r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8BGRA_1(unsigned long BGR)\r
+unsigned int XP8BGRA_1(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x50000000;\r
if(!(BGR&0x8000)) {ubOpaqueDraw=1;return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff);}\r
return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long XP8BGRAEx_1(unsigned long BGR)\r
+unsigned int XP8BGRAEx_1(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0x03000000;\r
if(!(BGR&0x8000)) {ubOpaqueDraw=1;return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff);}\r
return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long P8RGBA(unsigned long BGR)\r
+unsigned int P8RGBA(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0;\r
return ((((BGR<<3)&0xf8)|((BGR<<6)&0xf800)|((BGR<<9)&0xf80000))&0xffffff)|0xff000000;\r
}\r
\r
-unsigned long P8BGRA(unsigned long BGR)\r
+unsigned int P8BGRA(unsigned int BGR)\r
{\r
if(!(BGR&0xffff)) return 0;\r
return ((((BGR>>7)&0xf8)|((BGR<<6)&0xf800)|((BGR<<19)&0xf80000))&0xffffff)|0xff000000;\r
return;\r
}\r
\r
+#if 1\r
+ iSortTexCnt=MAXSORTTEX;\r
+#else // below vram detector supposedly crashes some drivers\r
\r
iTSize=256;\r
p=(char *)malloc(iTSize*iTSize*4);\r
else iSortTexCnt=iCnt-3+min(1,0); // place for menu&texwnd\r
\r
if(iSortTexCnt<8) iSortTexCnt=8;\r
+#endif\r
} \r
\r
////////////////////////////////////////////////////////////////////////\r
for(j=0;j<MAXTPAGES;j++) // loop tex pages\r
{\r
free(pscSubtexStore[i][j]); // -> clean mem\r
+ pscSubtexStore[i][j]=0;\r
}\r
for(i=0;i<MAXSORTTEX;i++)\r
{\r
uiStexturePage[i]=0; // --> delete it\r
}\r
free(pxSsubtexLeft[i]); // -> clean mem\r
+ pxSsubtexLeft[i]=0;\r
}\r
//----------------------------------------------------//\r
}\r
// Invalidate tex windows\r
////////////////////////////////////////////////////////////////////////\r
\r
-void InvalidateWndTextureArea(long X,long Y,long W, long H)\r
+void InvalidateWndTextureArea(int X,int Y,int W, int H)\r
{\r
int i,px1,px2,py1,py2,iYM=1;\r
textureWndCacheEntry * tsw=wcWndtexStore;\r
}\r
}\r
\r
-void InvalidateSubSTextureArea(long X,long Y,long W, long H)\r
+void InvalidateSubSTextureArea(int X,int Y,int W, int H)\r
{\r
int i,j,k,iMax,px,py,px1,px2,py1,py2,iYM=1;\r
EXLong npos;textureSubCacheEntryS * tsb;\r
- long x1,x2,y1,y2,xa,sw;\r
+ int x1,x2,y1,y2,xa,sw;\r
\r
W+=X-1; \r
H+=Y-1;\r
\r
////////////////////////////////////////////////////////////////////////\r
\r
-void InvalidateTextureArea(long X,long Y,long W, long H)\r
+void InvalidateTextureArea(int X,int Y,int W, int H)\r
{\r
if(W==0 && H==0) return;\r
\r
\r
void LoadStretchPackedWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm,ldx,ldy,ldxo;\r
+ unsigned int start,row,column,j,sxh,sxm,ldx,ldy,ldxo;\r
unsigned int palstart;\r
unsigned short *px,*pa,*ta;\r
unsigned char *cSRCPtr,*cOSRCPtr;\r
unsigned short *wSRCPtr,*wOSRCPtr;\r
- unsigned long LineOffset;unsigned short s;\r
+ unsigned int LineOffset;unsigned short s;\r
int pmult=pageid/16;\r
unsigned short (*LPTCOL)(unsigned short);\r
\r
\r
void LoadStretchWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm,ldx,ldy,ldxo,s;\r
+ unsigned int start,row,column,j,sxh,sxm,ldx,ldy,ldxo,s;\r
unsigned int palstart;\r
- unsigned long *px,*pa,*ta;\r
+ unsigned int *px,*pa,*ta;\r
unsigned char *cSRCPtr,*cOSRCPtr;\r
unsigned short *wSRCPtr,*wOSRCPtr;\r
- unsigned long LineOffset;\r
+ unsigned int LineOffset;\r
int pmult=pageid/16;\r
- unsigned long (*LTCOL)(unsigned long);\r
+ unsigned int (*LTCOL)(unsigned int);\r
\r
LTCOL=TCF[DrawSemiTrans];\r
\r
ldxo=TWin.Position.x1-TWin.OPosition.x1;\r
ldy =TWin.Position.y1-TWin.OPosition.y1;\r
\r
- pa=px=(unsigned long *)ubPaletteBuffer;\r
- ta=(unsigned long *)texturepart;\r
+ pa=px=(unsigned int *)ubPaletteBuffer;\r
+ ta=(unsigned int *)texturepart;\r
palstart=cx+(cy*1024);\r
\r
ubOpaqueDraw=0;\r
\r
void LoadPackedWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm;\r
+ unsigned int start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
unsigned short *px,*pa,*ta;\r
unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
- unsigned long LineOffset;\r
+ unsigned int LineOffset;\r
int pmult=pageid/16;\r
unsigned short (*LPTCOL)(unsigned short);\r
\r
\r
void LoadWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm;\r
+ unsigned int start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
- unsigned long *px,*pa,*ta;\r
+ unsigned int *px,*pa,*ta;\r
unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
- unsigned long LineOffset;\r
+ unsigned int LineOffset;\r
int pmult=pageid/16;\r
- unsigned long (*LTCOL)(unsigned long);\r
+ unsigned int (*LTCOL)(unsigned int);\r
\r
LTCOL=TCF[DrawSemiTrans];\r
\r
- pa=px=(unsigned long *)ubPaletteBuffer;\r
- ta=(unsigned long *)texturepart;\r
+ pa=px=(unsigned int *)ubPaletteBuffer;\r
+ ta=(unsigned int *)texturepart;\r
palstart=cx+(cy*1024);\r
\r
ubOpaqueDraw=0;\r
{\r
unsigned int i,iSize;\r
unsigned short * wSrcPtr;\r
- unsigned long * ta=(unsigned long *)texturepart;\r
+ unsigned int * ta=(unsigned int *)texturepart;\r
\r
wSrcPtr=psxVuw+cx+(cy*1024);\r
if(mode==0) i=4; else i=64;\r
\r
void LoadPalWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm;\r
+ unsigned int start,row,column,j,sxh,sxm;\r
unsigned char *ta;\r
unsigned char *cSRCPtr;\r
- unsigned long LineOffset;\r
+ unsigned int LineOffset;\r
int pmult=pageid/16;\r
\r
ta=(unsigned char *)texturepart;\r
\r
void LoadStretchPalWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm,ldx,ldy,ldxo;\r
+ unsigned int start,row,column,j,sxh,sxm,ldx,ldy,ldxo;\r
unsigned char *ta,s;\r
unsigned char *cSRCPtr,*cOSRCPtr;\r
- unsigned long LineOffset;\r
+ unsigned int LineOffset;\r
int pmult=pageid/16;\r
\r
ldxo=TWin.Position.x1-TWin.OPosition.x1;\r
// tex window: main selecting, cache handler included\r
////////////////////////////////////////////////////////////////////////\r
\r
-GLuint LoadTextureWnd(long pageid,long TextureMode,unsigned long GivenClutId)\r
+GLuint LoadTextureWnd(int pageid,int TextureMode,unsigned int GivenClutId)\r
{\r
textureWndCacheEntry * ts, * tsx=NULL;\r
int i;short cx,cy;\r
\r
// palette check sum\r
{\r
- unsigned long l=0,row;\r
- unsigned long * lSRCPtr=(unsigned long *)(psxVuw+cx+(cy*1024));\r
+ unsigned int l=0,row;\r
+ unsigned int * lSRCPtr=(unsigned int *)(psxVuw+cx+(cy*1024));\r
if(TextureMode==1) for(row=1;row<129;row++) l+=((*lSRCPtr++)-1)*row;\r
else for(row=1;row<9;row++) l+=((*lSRCPtr++)-1)<<row;\r
l=(l+HIWORD(l))&0x3fffL;\r
\r
unsigned char * LoadDirectMovieFast(void)\r
{\r
- long row,column;\r
+ int row,column;\r
unsigned int startxy;\r
\r
- unsigned long * ta=(unsigned long *)texturepart;\r
+ unsigned int * ta=(unsigned int *)texturepart;\r
\r
if(PSXDisplay.RGB24)\r
{\r
pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
- *ta++=*((unsigned long *)pD)|0xff000000;\r
+ *ta++=*((unsigned int *)pD)|0xff000000;\r
pD+=3;\r
}\r
}\r
}\r
else\r
{\r
- unsigned long (*LTCOL)(unsigned long);\r
+ unsigned int (*LTCOL)(unsigned int);\r
\r
LTCOL=XP8RGBA_0;//TCF[0];\r
\r
\r
GLuint LoadTextureMovieFast(void)\r
{\r
- long row,column;\r
+ int row,column;\r
unsigned int start,startxy;\r
\r
{\r
if(PSXDisplay.RGB24)\r
{\r
unsigned char * pD;\r
- unsigned long * ta=(unsigned long *)texturepart;\r
+ unsigned int * ta=(unsigned int *)texturepart;\r
\r
startxy=((1024)*xrMovieArea.y0)+xrMovieArea.x0;\r
\r
pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
- *ta++=*((unsigned long *)pD)|0xff000000;\r
+ *ta++=*((unsigned int *)pD)|0xff000000;\r
pD+=3;\r
}\r
}\r
}\r
else\r
{\r
- unsigned long (*LTCOL)(unsigned long);\r
- unsigned long *ta;\r
+ unsigned int (*LTCOL)(unsigned int);\r
+ unsigned int *ta;\r
\r
LTCOL=XP8RGBA_0;//TCF[0];\r
\r
ubOpaqueDraw=0;\r
- ta=(unsigned long *)texturepart;\r
+ ta=(unsigned int *)texturepart;\r
\r
for(column=xrMovieArea.y0;column<xrMovieArea.y1;column++)\r
{\r
if(PSXDisplay.RGB24)\r
{\r
unsigned char * pD;\r
- unsigned long * ta=(unsigned long *)texturepart;\r
+ unsigned int * ta=(unsigned int *)texturepart;\r
\r
if(b_X)\r
{\r
pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
- *ta++=*((unsigned long *)pD)|0xff000000;\r
+ *ta++=*((unsigned int *)pD)|0xff000000;\r
pD+=3;\r
}\r
*ta++=*(ta-1);\r
pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
- *ta++=*((unsigned long *)pD)|0xff000000;\r
+ *ta++=*((unsigned int *)pD)|0xff000000;\r
pD+=3;\r
}\r
}\r
}\r
else\r
{\r
- unsigned long (*LTCOL)(unsigned long);\r
- unsigned long *ta;\r
+ unsigned int (*LTCOL)(unsigned int);\r
+ unsigned int *ta;\r
\r
LTCOL=XP8RGBA_0;//TCF[0];\r
\r
ubOpaqueDraw=0;\r
- ta=(unsigned long *)texturepart;\r
+ ta=(unsigned int *)texturepart;\r
\r
if(b_X)\r
{\r
\r
GLuint BlackFake15BitTexture(void)\r
{\r
- long pmult;short x1,x2,y1,y2;\r
+ int pmult;short x1,x2,y1,y2;\r
\r
if(PSXDisplay.InterlacedTest) return 0;\r
\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
\r
{\r
- unsigned long * ta=(unsigned long *)texturepart;\r
+ unsigned int * ta=(unsigned int *)texturepart;\r
for(y1=0;y1<=4;y1++)\r
for(x1=0;x1<=4;x1++)\r
*ta++=0xff000000;\r
\r
GLuint Fake15BitTexture(void)\r
{\r
- long pmult;short x1,x2,y1,y2;int iYAdjust;\r
+ int pmult;short x1,x2,y1,y2;int iYAdjust;\r
float ScaleX,ScaleY;RECT rSrc;\r
\r
if(iFrameTexType==1) return BlackFake15BitTexture();\r
\r
void LoadSubTexturePageSort(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm;\r
+ unsigned int start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
- unsigned long *px,*pa,*ta;\r
+ unsigned int *px,*pa,*ta;\r
unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
- unsigned long LineOffset;\r
- unsigned long x2a,xalign=0;\r
- unsigned long x1=gl_ux[7];\r
- unsigned long x2=gl_ux[6];\r
- unsigned long y1=gl_ux[5];\r
- unsigned long y2=gl_ux[4];\r
- unsigned long dx=x2-x1+1;\r
- unsigned long dy=y2-y1+1;\r
+ unsigned int LineOffset;\r
+ unsigned int x2a,xalign=0;\r
+ unsigned int x1=gl_ux[7];\r
+ unsigned int x2=gl_ux[6];\r
+ unsigned int y1=gl_ux[5];\r
+ unsigned int y2=gl_ux[4];\r
+ unsigned int dx=x2-x1+1;\r
+ unsigned int dy=y2-y1+1;\r
int pmult=pageid/16;\r
- unsigned long (*LTCOL)(unsigned long);\r
+ unsigned int (*LTCOL)(unsigned int);\r
unsigned int a,r,g,b,cnt,h;\r
- unsigned long scol[8];\r
+ unsigned int scol[8];\r
\r
LTCOL=TCF[DrawSemiTrans];\r
\r
- pa=px=(unsigned long *)ubPaletteBuffer;\r
- ta=(unsigned long *)texturepart;\r
+ pa=px=(unsigned int *)ubPaletteBuffer;\r
+ ta=(unsigned int *)texturepart;\r
palstart=cx+(cy<<10);\r
\r
ubOpaqueDraw=0;\r
\r
if(YTexS)\r
{\r
- ta=(unsigned long *)texturepart;\r
- pa=(unsigned long *)texturepart+x2a;\r
+ ta=(unsigned int *)texturepart;\r
+ pa=(unsigned int *)texturepart+x2a;\r
row=x2a;do {*ta++=*pa++;row--;} while(row); \r
- pa=(unsigned long *)texturepart+dy*x2a;\r
+ pa=(unsigned int *)texturepart+dy*x2a;\r
ta=pa+x2a;\r
row=x2a;do {*ta++=*pa++;row--;} while(row);\r
YTexS--;\r
\r
if(XTexS)\r
{\r
- ta=(unsigned long *)texturepart;\r
+ ta=(unsigned int *)texturepart;\r
pa=ta+1;\r
row=dy;do {*ta=*pa;ta+=x2a;pa+=x2a;row--;} while(row);\r
- pa=(unsigned long *)texturepart+dx;\r
+ pa=(unsigned int *)texturepart+dx;\r
ta=pa+1;\r
row=dy;do {*ta=*pa;ta+=x2a;pa+=x2a;row--;} while(row);\r
XTexS--;\r
if((iFilterType==4 || iFilterType==6) && ly0==ly1 && ly2==ly3 && lx0==lx3 && lx1==lx2)\r
{DefineSubTextureSort();return;}\r
\r
- ta=(unsigned long *)texturepart;\r
+ ta=(unsigned int *)texturepart;\r
x1=dx-1;\r
y1=dy-1;\r
\r
\r
void LoadPackedSubTexturePageSort(int pageid, int mode, short cx, short cy)\r
{\r
- unsigned long start,row,column,j,sxh,sxm;\r
+ unsigned int start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
unsigned short *px,*pa,*ta;\r
unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
- unsigned long LineOffset;\r
- unsigned long x2a,xalign=0;\r
- unsigned long x1=gl_ux[7];\r
- unsigned long x2=gl_ux[6];\r
- unsigned long y1=gl_ux[5];\r
- unsigned long y2=gl_ux[4];\r
- unsigned long dx=x2-x1+1;\r
- unsigned long dy=y2-y1+1;\r
+ unsigned int LineOffset;\r
+ unsigned int x2a,xalign=0;\r
+ unsigned int x1=gl_ux[7];\r
+ unsigned int x2=gl_ux[6];\r
+ unsigned int y1=gl_ux[5];\r
+ unsigned int y2=gl_ux[4];\r
+ unsigned int dx=x2-x1+1;\r
+ unsigned int dy=y2-y1+1;\r
int pmult=pageid/16;\r
unsigned short (*LPTCOL)(unsigned short);\r
unsigned int a,r,g,b,cnt,h;\r
/////////////////////////////////////////////////////////////////////////////\r
/////////////////////////////////////////////////////////////////////////////\r
\r
-unsigned char * CheckTextureInSubSCache(long TextureMode,unsigned long GivenClutId,unsigned short * pCache)\r
+unsigned char * CheckTextureInSubSCache(int TextureMode,unsigned int GivenClutId,unsigned short * pCache)\r
{\r
textureSubCacheEntryS * tsx, * tsb, *tsg;//, *tse=NULL;\r
int i,iMax;EXLong npos;\r
unsigned char cx,cy;\r
- int iC,j,k;unsigned long rx,ry,mx,my;\r
+ int iC,j,k;unsigned int rx,ry,mx,my;\r
EXLong * ul=0, * uls;\r
EXLong rfree;\r
unsigned char cXAdj,cYAdj;\r
\r
- npos.l=*((unsigned long *)&gl_ux[4]);\r
+ npos.l=*((unsigned int *)&gl_ux[4]);\r
\r
//--------------------------------------------------------------//\r
// find matching texturepart first... speed up...\r
\r
if(tsx) // 3. if one or more found, create a new rect with bigger size\r
{\r
- *((unsigned long *)&gl_ux[4])=npos.l=rfree.l;\r
+ *((unsigned int *)&gl_ux[4])=npos.l=rfree.l;\r
rx=(int)rfree.c[2]-(int)rfree.c[3];\r
ry=(int)rfree.c[0]-(int)rfree.c[1];\r
DoTexGarbageCollection();\r
\r
BOOL GetCompressTexturePlace(textureSubCacheEntryS * tsx)\r
{\r
- int i,j,k,iMax,iC;unsigned long rx,ry,mx,my;\r
+ int i,j,k,iMax,iC;unsigned int rx,ry,mx,my;\r
EXLong * ul=0, * uls, rfree;\r
unsigned char cXAdj=1,cYAdj=1;\r
\r
textureSubCacheEntryS * tsx, * tsg, * tsb;\r
int i,j,k,m,n,iMax;EXLong * ul, r,opos;\r
short sOldDST=DrawSemiTrans,cx,cy;\r
- long lOGTP=GlobalTexturePage;\r
- unsigned long l,row;\r
- unsigned long * lSRCPtr;\r
+ int lOGTP=GlobalTexturePage;\r
+ unsigned int l,row;\r
+ unsigned int * lSRCPtr;\r
\r
- opos.l=*((unsigned long *)&gl_ux[4]);\r
+ opos.l=*((unsigned int *)&gl_ux[4]);\r
\r
// 1. mark all textures as free\r
for(i=0;i<iSortTexCnt;i++)\r
if(j!=2)\r
{\r
// palette check sum\r
- l=0;lSRCPtr=(unsigned long *)(psxVuw+cx+(cy*1024));\r
+ l=0;lSRCPtr=(unsigned int *)(psxVuw+cx+(cy*1024));\r
if(j==1) for(row=1;row<129;row++) l+=((*lSRCPtr++)-1)*row;\r
else for(row=1;row<9;row++) l+=((*lSRCPtr++)-1)<<row;\r
l=((l+HIWORD(l))&0x3fffL)<<16;\r
usLRUTexPage=0;\r
DrawSemiTrans=sOldDST;\r
GlobalTexturePage=lOGTP;\r
- *((unsigned long *)&gl_ux[4])=opos.l;\r
+ *((unsigned int *)&gl_ux[4])=opos.l;\r
dwTexPageComp=0;\r
\r
return;\r
\r
if(tsx->ClutID&(1<<30)) DrawSemiTrans=1;\r
else DrawSemiTrans=0;\r
- *((unsigned long *)&gl_ux[4])=r.l;\r
+ *((unsigned int *)&gl_ux[4])=r.l;\r
\r
gTexName=uiStexturePage[tsx->cTexID];\r
LoadSubTexFn(k,j,cx,cy);\r
\r
if(dwTexPageComp==0xffffffff) dwTexPageComp=0;\r
\r
- *((unsigned long *)&gl_ux[4])=opos.l;\r
+ *((unsigned int *)&gl_ux[4])=opos.l;\r
GlobalTexturePage=lOGTP;\r
DrawSemiTrans=sOldDST;\r
}\r
/////////////////////////////////////////////////////////////////////////////\r
/////////////////////////////////////////////////////////////////////////////\r
\r
-GLuint SelectSubTextureS(long TextureMode, unsigned long GivenClutId) \r
+GLuint SelectSubTextureS(int TextureMode, unsigned int GivenClutId) \r
{\r
unsigned char * OPtr;unsigned short iCache;short cx,cy;\r
\r
\r
// palette check sum.. removed MMX asm, this easy func works as well\r
{\r
- unsigned long l=0,row;\r
+ unsigned int l=0,row;\r
\r
- unsigned long * lSRCPtr=(unsigned long *)(psxVuw+cx+(cy*1024));\r
+ unsigned int * lSRCPtr=(unsigned int *)(psxVuw+cx+(cy*1024));\r
if(TextureMode==1) for(row=1;row<129;row++) l+=((*lSRCPtr++)-1)*row;\r
else for(row=1;row<9;row++) l+=((*lSRCPtr++)-1)<<row;\r
l=(l+HIWORD(l))&0x3fffL;\r