diff options
Diffstat (limited to 'apps/plugins/sdl/progs/duke3d/Engine/src')
-rw-r--r-- | apps/plugins/sdl/progs/duke3d/Engine/src/display.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/apps/plugins/sdl/progs/duke3d/Engine/src/display.c b/apps/plugins/sdl/progs/duke3d/Engine/src/display.c index 3883803bce..501ffa411c 100644 --- a/apps/plugins/sdl/progs/duke3d/Engine/src/display.c +++ b/apps/plugins/sdl/progs/duke3d/Engine/src/display.c | |||
@@ -1368,9 +1368,13 @@ int VBE_setPalette(uint8_t *palettebuffer) | |||
1368 | memcpy(lastPalette, palettebuffer, 768); | 1368 | memcpy(lastPalette, palettebuffer, 768); |
1369 | 1369 | ||
1370 | for (i = 0; i < 256; i++){ | 1370 | for (i = 0; i < 256; i++){ |
1371 | sdlp->b = (Uint8) ((((float) *p++) / 63.0) * 255.0); | 1371 | /* doesn't map perfectly */ |
1372 | sdlp->g = (Uint8) ((((float) *p++) / 63.0) * 255.0); | 1372 | sdlp->b = (Uint8) (*p << 2) | (*p >> 4); |
1373 | sdlp->r = (Uint8) ((((float) *p++) / 63.0) * 255.0); | 1373 | p++; |
1374 | sdlp->g = (Uint8) (*p << 2) | (*p >> 4); | ||
1375 | p++; | ||
1376 | sdlp->r = (Uint8) (*p << 2) | (*p >> 4); | ||
1377 | p++; | ||
1374 | sdlp->unused = *p++; /* This byte is unused in BUILD, too. */ | 1378 | sdlp->unused = *p++; /* This byte is unused in BUILD, too. */ |
1375 | sdlp++; | 1379 | sdlp++; |
1376 | } | 1380 | } |