From 7402690c0824f993a72c447c44e73a3de84b0cf5 Mon Sep 17 00:00:00 2001 From: zsknight <> Date: Thu, 26 Apr 2001 06:13:55 +0000 Subject: [PATCH] Fixed a mode7 problem when center coordinates are negative. --- zsnes/src/video/mode7.mac | 6 ++++-- zsnes/src/video/mode716.mac | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/zsnes/src/video/mode7.mac b/zsnes/src/video/mode7.mac index bb1fa27f..19562b23 100644 --- a/zsnes/src/video/mode7.mac +++ b/zsnes/src/video/mode7.mac @@ -20,8 +20,6 @@ - - %macro Mode7Calculate 0 ; mode 7, ax = curyposition, dx = curxposition (left side) ; draw center map coordinates at (X0-bg1scrolx,Y0-bg1scroly) on screen @@ -33,6 +31,7 @@ test bx,0001000000000000b jz .nonega or bx,1110000000000000b + or word[mode7X0],1110000000000000b .nonega mov [.cxloc],bx mov bx,dx @@ -54,6 +53,7 @@ test bx,0001000000000000b jz .nonegd or bx,1110000000000000b + or word[mode7Y0],1110000000000000b .nonegd sub word[.cyloc],bx @@ -113,6 +113,7 @@ test bx,0001000000000000b jz .nonega or bx,1110000000000000b + or word[mode7X0],1110000000000000b .nonega mov [.cxloc],bx mov bx,dx @@ -134,6 +135,7 @@ test bx,0001000000000000b jz .nonegd or bx,1110000000000000b + or word[mode7Y0],1110000000000000b .nonegd add bx,bx sub word[.cyloc],bx diff --git a/zsnes/src/video/mode716.mac b/zsnes/src/video/mode716.mac index 17d18f4f..865494a1 100644 --- a/zsnes/src/video/mode716.mac +++ b/zsnes/src/video/mode716.mac @@ -109,6 +109,7 @@ EXTSYM pesimpng test bx,0001000000000000b jz .nonega or bx,1110000000000000b + or word[mode7X0],1110000000000000b .nonega mov [mcxloc],bx mov bx,dx @@ -130,6 +131,7 @@ EXTSYM pesimpng test bx,0001000000000000b jz .nonegd or bx,1110000000000000b + or word[mode7Y0],1110000000000000b .nonegd sub word[mcyloc],bx