diff options
author | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2020-04-28 05:33:49 +0800 |
---|---|---|
committer | jiangzhengwenjz <jiangzhengwenjzw@qq.com> | 2020-04-28 05:46:52 +0800 |
commit | 57d561cd8ffa3b4898220142f96e32586177f3e5 (patch) | |
tree | c050fc00c1ad301f37f2874b2c0477177476cba3 /src | |
parent | 834b0dd8c6b127c311309396512322d04b1e4dc3 (diff) |
CopyTileMapEntry
Diffstat (limited to 'src')
-rw-r--r-- | src/bg.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -1,3 +1,4 @@ +#include <limits.h> #include "global.h" #include "bg.h" #include "dma3.h" @@ -1136,20 +1137,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; } |