From: notaz Date: Tue, 21 Dec 2010 11:53:31 +0000 (+0200) Subject: hack: use simple GTE division X-Git-Tag: r1~15 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=commitdiff_plain;h=a2544c926e9f382d57614ba2594ede0f56f4a108;ds=sidebyside hack: use simple GTE division that large table was slow, probably because of dcache trashing. --- diff --git a/libpcsxcore/gte.c b/libpcsxcore/gte.c index 72210d34..00e79544 100644 --- a/libpcsxcore/gte.c +++ b/libpcsxcore/gte.c @@ -348,6 +348,16 @@ void gteSWC2() { psxMemWrite32(_oB_, MFC2(_Rt_)); } +#define DIVIDE DIVIDE_ +static u32 DIVIDE_(s16 n, u16 d) { + if (n >= 0 && n < d * 2) { + s32 n_ = n; + return ((n_ << 16) + d / 2) / d; + //return (u32)((float)(n_ << 16) / (float)d + (float)0.5); + } + return 0xffffffff; +} + void gteRTPS() { int quotient;