summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjiangzhengwenjz <jiangzhengwenjzw@qq.com>2020-04-28 07:29:15 +0800
committerjiangzhengwenjz <jiangzhengwenjzw@qq.com>2020-04-28 07:29:15 +0800
commitbc0d0caec350d5ac66d5a1efd5056c72cf49c2d9 (patch)
tree2070dc75f91fa057df4981475c4b2d3168a6e816
parentc7d8d5dae213ffe0e05e419171d926c1a3c05d26 (diff)
CopyTileMapEntry
-rw-r--r--gflib/bg.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gflib/bg.c b/gflib/bg.c
index ab4e8b60d..66dd81a25 100644
--- a/gflib/bg.c
+++ b/gflib/bg.c
@@ -1,3 +1,4 @@
+#include <limits.h>
#include "global.h"
#include "bg.h"
#include "dma3.h"
@@ -1178,20 +1179,19 @@ void CopyTileMapEntry(const u16 *src, u16 *dest, s32 palette1, s32 tileOffset, s
{
u16 var;
- if (palette1 == 16)
- goto CASE_16;
switch (palette1)
{
- case 0 ... 16:
+ case 0 ... 15:
var = ((*src + tileOffset) & 0xFFF) + ((palette1 + palette2) << 12);
break;
- CASE_16:
+ case 16:
var = *dest;
var &= 0xFC00;
var += palette2 << 12;
var |= (*src + tileOffset) & 0x3FF;
break;
default:
+ case 17 ... INT_MAX:
var = *src + tileOffset + (palette2 << 12);
break;
}