From dc5f626683fef0c767180fefaee30eca3908b175 Mon Sep 17 00:00:00 2001 From: Vicki Pfau Date: Tue, 21 Mar 2017 17:55:25 -0700 Subject: [PATCH] DS GX: Remove unnecessary loop --- src/ds/gx/software.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/ds/gx/software.c b/src/ds/gx/software.c index 1b9009bfa..e22e62e54 100644 --- a/src/ds/gx/software.c +++ b/src/ds/gx/software.c @@ -378,11 +378,9 @@ static void _createStep(struct DSGXSoftwareSpan* span) { static void _stepEndpoint(struct DSGXSoftwareSpan* span) { int i = 28; int32_t nextX = (span->ep[0].coord[0] & ~0xFFF) + 0x1000; - span->ep[0].coord[0] += 0x80 * i; - while (span->ep[0].coord[0] < nextX) { - span->ep[0].coord[0] += 0x80; - ++i; - } + i = (nextX - span->ep[0].coord[0]) >> 7; + span->ep[0].coord[0] = nextX; + span->ep[0].wRecip += span->step.stepW * i; span->ep[0].coord[3] = (0x7FFFFFFFFFFFFFFF / span->ep[0].wRecip) + 1;