{
unsigned short *src = (void *)g_menubg_src_ptr;
int w = g_screen_width, h = g_screen_height;
+ int pp = g_screen_ppitch;
short *dst;
int x, y;
d += (g_menuscreen_h / 2 - h * 2 / 2)
* g_menuscreen_w / 2;
d += (g_menuscreen_w / 2 - w * 2 / 2) / 2;
- for (y = 0; y < h; y++, src += w, d += g_menuscreen_w*2/2) {
+ for (y = 0; y < h; y++, src += pp, d += g_menuscreen_w*2/2) {
for (x = 0; x < w; x++) {
t = src[x];
t = ((t & 0xf79e)>>1) - ((t & 0xc618)>>3);
(g_menuscreen_w / 2 - w / 2);
// darken the active framebuffer
- for (; h > 0; dst += g_menuscreen_w, src += g_screen_ppitch, h--)
+ for (; h > 0; dst += g_menuscreen_w, src += pp, h--)
menu_darken_bg(dst, src, w, 1);
}
shadow_size = 320 * 480 * 2;
shadow_fb = malloc(shadow_size);
- g_menubg_ptr = malloc(shadow_size);
+ g_menubg_ptr = calloc(1, shadow_size);
if (shadow_fb == NULL || g_menubg_ptr == NULL) {
fprintf(stderr, "OOM\n");
exit(1);