summaryrefslogtreecommitdiff
path: root/render_sdl.c
diff options
context:
space:
mode:
authorMike Pavone <pavone@retrodev.com>2013-04-22 19:39:38 -0700
committerMike Pavone <pavone@retrodev.com>2013-04-22 19:39:38 -0700
commit36806a6d81dac87836542b3793be491d05b6c85c (patch)
treeb61395b2c3adede84e520f402584714aa99cb60d /render_sdl.c
parent343579c0fa45a83b23f8d4cda54b309283046ef1 (diff)
Implemented shadow hilight mode.
Diffstat (limited to 'render_sdl.c')
-rw-r--r--render_sdl.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/render_sdl.c b/render_sdl.c
index da6fc02..8c75b46 100644
--- a/render_sdl.c
+++ b/render_sdl.c
@@ -34,9 +34,19 @@ void render_init(int width, int height)
}
uint8_t b,g,r;
for (uint16_t color = 0; color < (1 << 12); color++) {
- b = levels[(color >> 8) & 0xE];
- g = levels[(color >> 4) & 0xE];
- r = levels[color & 0xE];
+ if (color & FBUF_SHADOW) {
+ b = levels[(color >> 9) & 0x7];
+ g = levels[(color >> 5) & 0x7];
+ r = levels[(color >> 1) & 0x7];
+ } else if(color & FBUF_HILIGHT) {
+ b = levels[((color >> 9) & 0x7) + 7];
+ g = levels[((color >> 5) & 0x7) + 7];
+ r = levels[((color >> 1) & 0x7) + 7];
+ } else {
+ b = levels[(color >> 8) & 0xE];
+ g = levels[(color >> 4) & 0xE];
+ r = levels[color & 0xE];
+ }
color_map[color] = SDL_MapRGB(screen->format, r, g, b);
}
min_delay = 0;