diff --git a/src/base.cpp b/src/base.cpp index 3e75006..c7cd16d 100644 --- a/src/base.cpp +++ b/src/base.cpp @@ -194,7 +194,7 @@ void RawMatrix::mult(RawMatrix *dst, RawMatrix *src1, RawMatrix *src2) { #ifdef PSP2 - matmul4_neon((float*)&dst->right.x, (float*)&src1->right.x, (float*)&src2->right.x); + matmul4_neon((float*)&src1->right.x, (float*)&src2->right.x, (float*)&dst->right.x); #else dst->right.x = src1->right.x*src2->right.x + src1->right.y*src2->up.x + src1->right.z*src2->at.x + src1->rightw*src2->pos.x; dst->right.y = src1->right.x*src2->right.y + src1->right.y*src2->up.y + src1->right.z*src2->at.y + src1->rightw*src2->pos.y; diff --git a/src/gl/gl3device.cpp b/src/gl/gl3device.cpp index 303aecf..3fa98c5 100644 --- a/src/gl/gl3device.cpp +++ b/src/gl/gl3device.cpp @@ -1103,7 +1103,9 @@ beginUpdate(Camera *cam) } setFrameBuffer(cam); +#ifndef MIAMI_SUPPORT vglStartRendering(); +#endif ImIdx = (ImIdx + 1) % 2; gVertexBufferIm2D = gVertexBufferIm2DPtr[ImIdx]; gVertexBufferIm3D = gVertexBufferIm3DPtr[ImIdx]; @@ -1134,7 +1136,9 @@ static void endUpdate(Camera *cam) { +#ifndef MIAMI_SUPPORT vglStopRendering(); +#endif } void log2file(const char *format, ...) { @@ -1184,7 +1188,10 @@ showRaster(Raster *raster, uint32 flags) vglWaitVblankStart(GL_FALSE); #endif //log2file("showRaster called"); - +#ifdef MIAMI_SUPPORT + vglStopRendering(); + vglStartRendering(); +#endif } static bool32 @@ -1379,7 +1386,9 @@ openGLFW(EngineOpenParams *openparams) #endif vglInitExtended(0x10000, 960, 544, 0x100000, SCE_GXM_MULTISAMPLE_4X); vglUseVram(GL_TRUE); - +#ifdef MIAMI_SUPPORT + vglStartRendering(); +#endif makeVideoModeList(); return 1;