\r
#define _IN_TEXTURE\r
\r
-#ifdef _WINDOWS\r
-#include "stdafx.h"\r
-\r
-#include "externals.h"\r
-#include "texture.h"\r
-#include "gpu.h"\r
-#include "prim.h"\r
-#else\r
#include "gpuStdafx.h"\r
-#ifdef __NANOGL__\r
-#include <gl/gl.h>\r
-#include <gl/gl.h>\r
-#else\r
-#ifdef SOFT_LINKAGE\r
-#pragma softfp_linkage\r
-#endif\r
-#ifdef MAEMO_CHANGES\r
- #include <GLES/glplatform.h>\r
- #include <GLES/gl.h>\r
- #include <GLES/glext.h>\r
- #include <EGL/egl.h>\r
-#else\r
- #include <gles/gl.h> // for opengl es types \r
- #include <gles/egltypes.h>\r
-#endif\r
-#ifdef SOFT_LINKAGE\r
-#pragma no_softfp_linkage\r
-#endif\r
-#endif\r
+\r
#include "gpuDraw.h"\r
//#include "plugins.h"\r
#include "gpuExternals.h"\r
#include "gpuTexture.h"\r
#include "gpuPlugin.h"\r
#include "gpuPrim.h"\r
-#endif\r
+\r
#define CLUTCHK 0x00060000\r
#define CLUTSHIFT 17\r
\r
int iTexGarbageCollection=1;\r
unsigned long dwTexPageComp=0;\r
int iVRamSize=0;\r
-#ifdef _WINDOWS\r
-int iClampType=GL_CLAMP;\r
-#else\r
int iClampType=GL_CLAMP_TO_EDGE;\r
-#endif\r
int iFilter = GL_LINEAR;\r
void (*LoadSubTexFn) (int,int,short,short);\r
unsigned long (*PalTexturedColourFn) (unsigned long);\r
\r
////////////////////////////////////////////////////////////////////////\r
\r
-u8 * CheckTextureInSubSCache(long TextureMode,unsigned long GivenClutId,unsigned short * pCache);\r
+unsigned char * CheckTextureInSubSCache(long TextureMode,unsigned long 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
// texture cache implementation\r
////////////////////////////////////////////////////////////////////////\r
\r
-#ifdef _WINDOWS\r
-#pragma pack(1)\r
-#endif\r
-\r
// "texture window" cache entry\r
\r
typedef struct textureWndCacheEntryTag\r
{\r
unsigned long ClutID;\r
EXLong pos;\r
- u8 posTX;\r
- u8 posTY;\r
- u8 cTexID;\r
- u8 Opaque;\r
+ unsigned char posTX;\r
+ unsigned char posTY;\r
+ unsigned char cTexID;\r
+ unsigned char Opaque;\r
} textureSubCacheEntryS;\r
\r
-#ifdef _WINDOWS\r
-#pragma pack()\r
-#endif\r
\r
//---------------------------------------------\r
\r
GLubyte * texturepart=NULL;\r
GLubyte * texturebuffer=NULL;\r
unsigned long g_x1,g_y1,g_x2,g_y2;\r
-u8 ubOpaqueDraw=0;\r
+unsigned char ubOpaqueDraw=0;\r
\r
unsigned short MAXTPAGES = 32;\r
unsigned short CLUTMASK = 0x7fff;\r
{\r
GLboolean b;GLboolean * bDetail;\r
int i,iCnt,iRam=iVRamSize*1024*1024;\r
- int iTSize;s8 * p;\r
+ int iTSize;char * p;\r
\r
\r
if(iVRamSize)\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=(s8 *)malloc(iTSize*iTSize*4);\r
+ p=(char *)malloc(iTSize*iTSize*4);\r
\r
iCnt=0;\r
glGenTextures(MAXSORTTEX,uiStexturePage);\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
int i,j;textureWndCacheEntry * tsx;\r
//----------------------------------------------------//\r
glBindTexture(GL_TEXTURE_2D,0);\r
+ glError();\r
//----------------------------------------------------//\r
free(texturepart); // free tex part\r
texturepart=0;\r
{\r
if(tsx->texname) // -> some tex?\r
glDeleteTextures(1,&tsx->texname); // --> delete it\r
+ glError();\r
}\r
iMaxTexWnds=0; // no more tex wnds\r
//----------------------------------------------------//\r
if(gTexMovieName!=0) // some movie tex?\r
glDeleteTextures(1, &gTexMovieName); // -> delete it\r
+ glError();\r
gTexMovieName=0; // no more movie tex\r
//----------------------------------------------------//\r
if(gTexFrameName!=0) // some 15bit framebuffer tex?\r
glDeleteTextures(1, &gTexFrameName); // -> delete it\r
+ glError();\r
gTexFrameName=0; // no more movie tex\r
//----------------------------------------------------//\r
if(gTexBlurName!=0) // some 15bit framebuffer tex?\r
glDeleteTextures(1, &gTexBlurName); // -> delete it\r
+ glError();\r
gTexBlurName=0; // no more movie tex\r
//----------------------------------------------------//\r
for(i=0;i<3;i++) // -> loop\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
if(uiStexturePage[i]) // --> tex used ?\r
{\r
glDeleteTextures(1,&uiStexturePage[i]);\r
+ glError();\r
uiStexturePage[i]=0; // --> delete it\r
}\r
free(pxSsubtexLeft[i]); // -> clean mem\r
+ pxSsubtexLeft[i]=0;\r
}\r
//----------------------------------------------------//\r
}\r
dwTexPageComp=0;\r
\r
//----------------------------------------------------//\r
- if(bDelTex) {glBindTexture(GL_TEXTURE_2D,0);gTexName=0;}\r
+ if(bDelTex) {glBindTexture(GL_TEXTURE_2D,0); glError();gTexName=0;}\r
//----------------------------------------------------//\r
tsx=wcWndtexStore;\r
for(i=0;i<MAXWNDTEXCACHE;i++,tsx++)\r
tsx->used=0;\r
if(bDelTex && tsx->texname)\r
{\r
- glDeleteTextures(1,&tsx->texname);\r
+ glDeleteTextures(1,&tsx->texname); glError();\r
tsx->texname=0;\r
}\r
}\r
lu=pxSsubtexLeft[i];\r
lu->l=0;\r
if(bDelTex && uiStexturePage[i])\r
- {glDeleteTextures(1,&uiStexturePage[i]);uiStexturePage[i]=0;}\r
+ {glDeleteTextures(1,&uiStexturePage[i]); glError();uiStexturePage[i]=0;}\r
}\r
}\r
\r
void MarkFree(textureSubCacheEntryS * tsx)\r
{\r
EXLong * ul, * uls;\r
- int j,iMax;u8 x1,y1,dx,dy;\r
+ int j,iMax;unsigned char x1,y1,dx,dy;\r
\r
uls=pxSsubtexLeft[tsx->cTexID];\r
iMax=uls->l;ul=uls+1;\r
{\r
if(gTexName==0)\r
glGenTextures(1, &gTexName);\r
-\r
+ glError();\r
glBindTexture(GL_TEXTURE_2D, gTexName);\r
-\r
+ glError();\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);\r
- \r
+ glError(); \r
{\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glError();\r
}\r
\r
glTexImage2D(GL_TEXTURE_2D, 0,GL_RGBA, \r
TWin.Position.x1, \r
TWin.Position.y1, \r
0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ glError();\r
+ //LOGE("DefineTextureWnd x:%d y:%d",TWin.Position.x1,TWin.Position.y1);\r
+\r
}\r
\r
////////////////////////////////////////////////////////////////////////\r
unsigned long start,row,column,j,sxh,sxm,ldx,ldy,ldxo;\r
unsigned int palstart;\r
unsigned short *px,*pa,*ta;\r
- u8 *cSRCPtr,*cOSRCPtr;\r
+ unsigned char *cSRCPtr,*cOSRCPtr;\r
unsigned short *wSRCPtr,*wOSRCPtr;\r
unsigned long LineOffset;unsigned short s;\r
int pmult=pageid/16;\r
unsigned long start,row,column,j,sxh,sxm,ldx,ldy,ldxo,s;\r
unsigned int palstart;\r
unsigned long *px,*pa,*ta;\r
- u8 *cSRCPtr,*cOSRCPtr;\r
+ unsigned char *cSRCPtr,*cOSRCPtr;\r
unsigned short *wSRCPtr,*wOSRCPtr;\r
unsigned long LineOffset;\r
int pmult=pageid/16;\r
unsigned long start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
unsigned short *px,*pa,*ta;\r
- u8 *cSRCPtr;\r
+ unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
unsigned long LineOffset;\r
int pmult=pageid/16;\r
unsigned long start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
unsigned long *px,*pa,*ta;\r
- u8 *cSRCPtr;\r
+ unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
unsigned long LineOffset;\r
int pmult=pageid/16;\r
{\r
if(gTexName==0)\r
glGenTextures(1, &gTexName);\r
-\r
+ glError();\r
glBindTexture(GL_TEXTURE_2D, gTexName);\r
-\r
+ glError();\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);\r
- \r
+ glError();\r
{\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
}\r
-\r
+ glError();\r
glTexImage2D(GL_TEXTURE_2D, 0,GL_RGBA, \r
TWin.Position.x1, \r
TWin.Position.y1, \r
0, GL_RGBA, GL_UNSIGNED_BYTE,texturepart);\r
+ glError();\r
+ //LOGE("DefinePalTextureWnd x:%d y:%d",TWin.Position.x1,TWin.Position.y1);\r
}\r
\r
///////////////////////////////////////////////////////\r
void LoadPalWndTexturePage(int pageid, int mode, short cx, short cy)\r
{\r
unsigned long start,row,column,j,sxh,sxm;\r
- u8 *ta;\r
- u8 *cSRCPtr;\r
+ unsigned char *ta;\r
+ unsigned char *cSRCPtr;\r
unsigned long LineOffset;\r
int pmult=pageid/16;\r
\r
- ta=(u8 *)texturepart;\r
+ ta=(unsigned char *)texturepart;\r
\r
switch(mode)\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
- u8 *ta,s;\r
- u8 *cSRCPtr,*cOSRCPtr;\r
+ unsigned char *ta,s;\r
+ unsigned char *cSRCPtr,*cOSRCPtr;\r
unsigned long LineOffset;\r
int pmult=pageid/16;\r
\r
ldxo=TWin.Position.x1-TWin.OPosition.x1;\r
ldy =TWin.Position.y1-TWin.OPosition.y1;\r
\r
- ta=(u8 *)texturepart;\r
+ ta=(unsigned char *)texturepart;\r
\r
switch(mode)\r
{\r
{\r
if(gTexMovieName==0)\r
{\r
- glGenTextures(1, &gTexMovieName);\r
+ glEnable(GL_TEXTURE_2D);\r
+ glGenTextures(1, &gTexMovieName); glError();\r
gTexName=gTexMovieName;\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType); glError();\r
\r
if(!bUseFastMdec) \r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
}\r
else\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
}\r
\r
glTexImage2D(GL_TEXTURE_2D, 0, //giWantedRGBA, \r
GL_RGBA,\r
- 256, 256, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ 256, 256, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart); glError();\r
}\r
else \r
{\r
- gTexName=gTexMovieName;glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ gTexName=gTexMovieName;glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
}\r
\r
glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0,\r
(xrMovieArea.y1-xrMovieArea.y0), \r
GL_RGBA,\r
GL_UNSIGNED_SHORT,\r
- texturepart);\r
+ texturepart); glError();\r
+ //LOGE("DefinePackedTextureMovie x:%d y:%d",(xrMovieArea.x1-xrMovieArea.x0),(xrMovieArea.y1-xrMovieArea.y0));\r
+\r
}\r
\r
////////////////////////////////////////////////////////////////////////\r
{\r
if(gTexMovieName==0)\r
{\r
- glGenTextures(1, &gTexMovieName);\r
+ glGenTextures(1, &gTexMovieName); glError();\r
gTexName=gTexMovieName;\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType); glError();\r
\r
if(!bUseFastMdec) \r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
}\r
else\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
}\r
\r
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 256, 256, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 256, 256, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart); glError();\r
}\r
else \r
{\r
- gTexName=gTexMovieName;glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ gTexName=gTexMovieName;glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
}\r
\r
glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0,\r
(xrMovieArea.x1-xrMovieArea.x0), \r
(xrMovieArea.y1-xrMovieArea.y0), \r
- GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ GL_RGBA, GL_UNSIGNED_BYTE, texturepart); glError();\r
+ //LOGE("DefineTextureMovie x:%d y:%d",(xrMovieArea.x1-xrMovieArea.x0),(xrMovieArea.y1-xrMovieArea.y0));\r
}\r
\r
////////////////////////////////////////////////////////////////////////\r
// movie texture: load\r
////////////////////////////////////////////////////////////////////////\r
\r
-u8 * LoadDirectMovieFast(void)\r
+unsigned char * LoadDirectMovieFast(void)\r
{\r
long row,column;\r
unsigned int startxy;\r
\r
if(PSXDisplay.RGB24)\r
{\r
- u8 * pD;\r
+ unsigned char * pD;\r
\r
startxy=((1024)*xrMovieArea.y0)+xrMovieArea.x0;\r
\r
for(column=xrMovieArea.y0;column<xrMovieArea.y1;column++,startxy+=1024)\r
{\r
- pD=(u8 *)&psxVuw[startxy];\r
+ pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
*ta++=*((unsigned long *)pD)|0xff000000;\r
{\r
if(PSXDisplay.RGB24)\r
{\r
- u8 * pD;\r
+ unsigned char * pD;\r
unsigned long * ta=(unsigned long *)texturepart;\r
\r
startxy=((1024)*xrMovieArea.y0)+xrMovieArea.x0;\r
for(column=xrMovieArea.y0;column<xrMovieArea.y1;column++,startxy+=1024)\r
{\r
//startxy=((1024)*column)+xrMovieArea.x0;\r
- pD=(u8 *)&psxVuw[startxy];\r
+ pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
*ta++=*((unsigned long *)pD)|0xff000000;\r
{\r
if(PSXDisplay.RGB24)\r
{\r
- u8 * pD;\r
+ unsigned char * pD;\r
unsigned long * ta=(unsigned long *)texturepart;\r
\r
if(b_X)\r
for(column=xrMovieArea.y0;column<xrMovieArea.y1;column++)\r
{\r
startxy=((1024)*column)+xrMovieArea.x0;\r
- pD=(u8 *)&psxVuw[startxy];\r
+ pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
*ta++=*((unsigned long *)pD)|0xff000000;\r
for(column=xrMovieArea.y0;column<xrMovieArea.y1;column++)\r
{\r
startxy=((1024)*column)+xrMovieArea.x0;\r
- pD=(u8 *)&psxVuw[startxy];\r
+ pD=(unsigned char *)&psxVuw[startxy];\r
for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)\r
{\r
*ta++=*((unsigned long *)pD)|0xff000000;\r
{\r
if(!gTexFrameName)\r
{\r
- glGenTextures(1, &gTexFrameName);\r
+ glGenTextures(1, &gTexFrameName); glError();\r
gTexName=gTexFrameName;\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
\r
{\r
unsigned long * ta=(unsigned long *)texturepart;\r
for(x1=0;x1<=4;x1++)\r
*ta++=0xff000000;\r
}\r
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 4, 4, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 4, 4, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturepart); glError();\r
+\r
}\r
else\r
{\r
gTexName=gTexFrameName;\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
}\r
-\r
+ //LOGE("BlackFake15BitTexture x:%d y:%d",4,4);\r
ubOpaqueDraw=0;\r
\r
return (GLuint)gTexName;\r
\r
if(!gTexFrameName)\r
{\r
- s8 * p;\r
+ char * p;\r
\r
if(iResX>1280 || iResY>1024) iFTex=2048;\r
else\r
if(iResX>640 || iResY>480) iFTex=1024;\r
else iFTex=512; \r
\r
- glGenTextures(1, &gTexFrameName);\r
+ glGenTextures(1, &gTexFrameName); glError();\r
gTexName=gTexFrameName;\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
\r
- p=(s8 *)malloc(iFTex*iFTex*4);\r
+ p=(char *)malloc(iFTex*iFTex*4);\r
memset(p,0,iFTex*iFTex*4);\r
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, iFTex, iFTex, 0, GL_RGBA, GL_UNSIGNED_BYTE, p);\r
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, iFTex, iFTex, 0, GL_RGBA, GL_UNSIGNED_BYTE, p); glError();\r
free(p);\r
\r
glGetError();\r
else \r
{\r
gTexName=gTexFrameName;\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
}\r
-\r
+ //LOGE("Fake15BitTexture x:%d y:%d",iFTex,iFTex);\r
x1+=PreviousPSXDisplay.Range.x0;\r
y1+=PreviousPSXDisplay.Range.y0;\r
\r
iYAdjust,\r
rSrc.left+rRatioRect.left,\r
iResY-rSrc.bottom-rRatioRect.top,\r
- x1,y1);\r
+ x1,y1); glError();\r
\r
if(glGetError()) \r
{\r
- s8 * p=(s8 *)malloc(iFTex*iFTex*4);\r
+ char * p=(char *)malloc(iFTex*iFTex*4);\r
memset(p,0,iFTex*iFTex*4);\r
glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, iFTex, iFTex,\r
- GL_RGBA, GL_UNSIGNED_BYTE, p);\r
+ GL_RGBA, GL_UNSIGNED_BYTE, p); glError();\r
free(p);\r
}\r
\r
unsigned long start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
unsigned long *px,*pa,*ta;\r
- u8 *cSRCPtr;\r
+ unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
unsigned long LineOffset;\r
unsigned long x2a,xalign=0;\r
unsigned long start,row,column,j,sxh,sxm;\r
unsigned int palstart;\r
unsigned short *px,*pa,*ta;\r
- u8 *cSRCPtr;\r
+ unsigned char *cSRCPtr;\r
unsigned short *wSRCPtr;\r
unsigned long LineOffset;\r
unsigned long x2a,xalign=0;\r
\r
#define Q_INTERPOLATE8(A, B, C, D) (((((A & qcolorMask8) >> 2) + ((B & qcolorMask8) >> 2) + ((C & qcolorMask8) >> 2) + ((D & qcolorMask8) >> 2) + ((((A & qlowpixelMask8) + (B & qlowpixelMask8) + (C & qlowpixelMask8) + (D & qlowpixelMask8)) >> 2) & qlowpixelMask8))|((((A&0xFF000000)==0x50000000)?0x50000000:(((B&0xFF000000)==0x50000000)?0x50000000:(((C&0xFF000000)==0x50000000)?0x50000000:(((D&0xFF000000)==0x50000000)?0x50000000:(((A&0xFF000000)==0x00000000)?0x00000000:(((B&0xFF000000)==0x00000000)?0x00000000:(((C&0xFF000000)==0x00000000)?0x00000000:(((D&0xFF000000)==0x00000000)?0x00000000:0xFF000000)))))))))))\r
\r
-void Super2xSaI_ex8_Ex(u8 *srcPtr, DWORD srcPitch,\r
- u8 *dstBitmap, int width, int height)\r
+void Super2xSaI_ex8_Ex(unsigned char *srcPtr, DWORD srcPitch,\r
+ unsigned char *dstBitmap, int width, int height)\r
{\r
DWORD dstPitch = srcPitch * 2;\r
DWORD line;\r
}\r
\r
\r
-void Super2xSaI_ex8(u8 *srcPtr, DWORD srcPitch,\r
- u8 *dstBitmap, int width, int height)\r
+void Super2xSaI_ex8(unsigned char *srcPtr, DWORD srcPitch,\r
+ unsigned char *dstBitmap, int width, int height)\r
{\r
DWORD dstPitch = srcPitch * 2;\r
DWORD line;\r
\r
if(!gTexName) \r
{\r
- glGenTextures(1, &gTexName);\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glGenTextures(1, &gTexName); glError();\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType); glError();\r
\r
if(iFilterType)\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
}\r
else\r
{ \r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
} \r
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 512, 512, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturebuffer);\r
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 512, 512, 0, GL_RGBA, GL_UNSIGNED_BYTE, texturebuffer); glError();\r
}\r
- else glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ else glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
glTexSubImage2D(GL_TEXTURE_2D, 0, XTexS<<1, YTexS<<1,\r
DXTexS<<1, DYTexS<<1,\r
- GL_RGBA, GL_UNSIGNED_BYTE, texturebuffer);\r
+ GL_RGBA, GL_UNSIGNED_BYTE, texturebuffer); glError();\r
+ //LOGE("DefineSubTextureSortHiRes x:%d y:%d",XTexS<<1,YTexS<<1);\r
}\r
\r
/////////////////////////////////////////////////////////////////////////////\r
\r
if(!gTexName)\r
{\r
- glGenTextures(1, &gTexName);\r
- glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ glGenTextures(1, &gTexName); glError();\r
+ glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, iClampType); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, iClampType); glError();\r
\r
if(iFilterType)\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glError();\r
}\r
else\r
{\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter);\r
- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter);\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, iFilter); glError();\r
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, iFilter); glError();\r
}\r
- glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 256, 256, 0,GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 256, 256, 0,GL_RGBA, GL_UNSIGNED_BYTE, texturepart); glError();\r
}\r
- else glBindTexture(GL_TEXTURE_2D, gTexName);\r
+ else glBindTexture(GL_TEXTURE_2D, gTexName); glError();\r
\r
glTexSubImage2D(GL_TEXTURE_2D, 0, XTexS, YTexS,\r
DXTexS, DYTexS,\r
- GL_RGBA, GL_UNSIGNED_BYTE, texturepart);\r
+ GL_RGBA, GL_UNSIGNED_BYTE, texturepart); glError();\r
+ //LOGE("DefineSubTextureSort x:%d y:%d w:%d h:%d",XTexS,YTexS,DXTexS,DYTexS);\r
}\r
\r
/////////////////////////////////////////////////////////////////////////////\r
/////////////////////////////////////////////////////////////////////////////\r
/////////////////////////////////////////////////////////////////////////////\r
\r
-u8 * CheckTextureInSubSCache(long TextureMode,unsigned long GivenClutId,unsigned short * pCache)\r
+unsigned char * CheckTextureInSubSCache(long TextureMode,unsigned long GivenClutId,unsigned short * pCache)\r
{\r
textureSubCacheEntryS * tsx, * tsb, *tsg;//, *tse=NULL;\r
int i,iMax;EXLong npos;\r
- u8 cx,cy;\r
+ unsigned char cx,cy;\r
int iC,j,k;unsigned long rx,ry,mx,my;\r
EXLong * ul=0, * uls;\r
EXLong rfree;\r
- u8 cXAdj,cYAdj;\r
+ unsigned char cXAdj,cYAdj;\r
\r
npos.l=*((unsigned long *)&gl_ux[4]);\r
\r
{\r
int i,j,k,iMax,iC;unsigned long rx,ry,mx,my;\r
EXLong * ul=0, * uls, rfree;\r
- u8 cXAdj=1,cYAdj=1;\r
+ unsigned char cXAdj=1,cYAdj=1;\r
\r
rx=(int)tsx->pos.c[2]-(int)tsx->pos.c[3];\r
ry=(int)tsx->pos.c[0]-(int)tsx->pos.c[1];\r
\r
GLuint SelectSubTextureS(long TextureMode, unsigned long GivenClutId) \r
{\r
- u8 * OPtr;unsigned short iCache;short cx,cy;\r
+ unsigned char * OPtr;unsigned short iCache;short cx,cy;\r
\r
// sort sow/tow infos for fast access\r
\r
- u8 ma1,ma2,mi1,mi2;\r
+ unsigned char ma1,ma2,mi1,mi2;\r
if(gl_ux[0]>gl_ux[1]) {mi1=gl_ux[1];ma1=gl_ux[0];}\r
else {mi1=gl_ux[0];ma1=gl_ux[1];}\r
if(gl_ux[2]>gl_ux[3]) {mi2=gl_ux[3];ma2=gl_ux[2];}\r