...
|
...
|
@@ -82,9 +82,11 @@ ppu_clear(Ppu *p, Layer *layer)
|
82
|
82
|
void
|
83
|
83
|
ppu_redraw(Ppu *p, Uint32 *screen)
|
84
|
84
|
{
|
85
|
|
- Uint32 i, size = p->width * p->height;
|
|
85
|
+ Uint32 i, size = p->width * p->height, palette[16];
|
|
86
|
+ for(i = 0; i < 16; ++i)
|
|
87
|
+ palette[i] = p->palette[(i >> 2) ? (i >> 2) : (i & 3)];
|
86
|
88
|
for(i = 0; i < size; ++i)
|
87
|
|
- screen[i] = p->palette[p->fg.pixels[i] ? p->fg.pixels[i] : p->bg.pixels[i]];
|
|
89
|
+ screen[i] = palette[p->fg.pixels[i] << 2 | p->bg.pixels[i]];
|
88
|
90
|
p->fg.changed = p->bg.changed = 0;
|
89
|
91
|
}
|
90
|
92
|
|