X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fgamescr.c;h=30ae38018af87097834445341c051c7ed3e546dc;hb=bbe2ec049a812155c75da5ecc303bf3793c9cca8;hp=70991e8ef128c76fbd75e1e8f382e885cb82fd5c;hpb=f6d4c2f2ee940cadff5c5792c789ba86b9df7d4d;p=gbajam21 diff --git a/src/gamescr.c b/src/gamescr.c index 70991e8..30ae380 100644 --- a/src/gamescr.c +++ b/src/gamescr.c @@ -52,12 +52,13 @@ void gamescr(void) __attribute__((noinline, target("arm"), section(".iwram"))) static void draw_tunnel(void) { - int i, j, tx, ty, angle, depth, zoffs; + int i, j, tx, ty, angle, depth, zoffs, uoffs; uint16_t pptop, ppbot; uint16_t *top, *bot; uint32_t tun, *tunptr; zoffs = nframes; + uoffs = 0; top = vram[backbuf]; bot = vram[backbuf] + 159 * 240 / 2; @@ -71,18 +72,18 @@ static void draw_tunnel(void) angle = tun & 0xff; depth = (tun >> 8) & 0xff; - tx = ((angle >> 1) + zoffs) & 0x1f; + tx = ((angle >> 1) + uoffs) & 0x1f; ty = ((depth >> 1) + zoffs) & 0x1f; pptop = tex[(ty << 5) + tx]; - tx = ((angle >> 1) - zoffs) & 0x1f; + tx = ((angle >> 1) - uoffs) & 0x1f; ppbot = tex[(ty << 5) + tx]; angle = (tun >> 16) & 0xff; depth = (tun >> 24) & 0xff; - tx = ((angle >> 1) + zoffs) & 0x1f; + tx = ((angle >> 1) + uoffs) & 0x1f; ty = ((depth >> 1) + zoffs) & 0x1f; pptop |= (uint16_t)tex[(ty << 5) + tx] << 8; - tx = ((angle >> 1) - zoffs) & 0x1f; + tx = ((angle >> 1) - uoffs) & 0x1f; ppbot |= (uint16_t)tex[(ty << 5) + tx] << 8; *top++ = pptop;