gl_flip(shadow_fb, g_screen_width, g_screen_height);
}
else {
- // XXX: no locking, but should be fine with SDL_SWSURFACE?
+ if (SDL_MUSTLOCK(plat_sdl_screen))
+ SDL_UnlockSurface(plat_sdl_screen);
SDL_Flip(plat_sdl_screen);
g_screen_ptr = plat_sdl_screen->pixels;
+ PicoDrawSetOutBuf(g_screen_ptr, g_screen_width * 2);
}
}
g_menuscreen_ptr = shadow_fb;
}
else {
- SDL_LockSurface(plat_sdl_screen);
+ if (SDL_MUSTLOCK(plat_sdl_screen))
+ SDL_LockSurface(plat_sdl_screen);
g_menuscreen_ptr = plat_sdl_screen->pixels;
}
}
gl_flip(g_menuscreen_ptr, g_menuscreen_w, g_menuscreen_h);
}
else {
- SDL_UnlockSurface(plat_sdl_screen);
+ if (SDL_MUSTLOCK(plat_sdl_screen))
+ SDL_UnlockSurface(plat_sdl_screen);
SDL_Flip(plat_sdl_screen);
}
g_menuscreen_ptr = NULL;
g_screen_ptr = shadow_fb;
}
else {
- SDL_LockSurface(plat_sdl_screen);
+ if (SDL_MUSTLOCK(plat_sdl_screen))
+ SDL_LockSurface(plat_sdl_screen);
g_screen_ptr = plat_sdl_screen->pixels;
}
+ PicoDrawSetOutBuf(g_screen_ptr, g_screen_width * 2);
}
void plat_early_init(void)