static void sdl_update(DisplayChangeListener *dcl, int x, int y, int w, int h) { SDL_Rect rec; rec.x = x; rec.y = y; rec.w = w; rec.h = h; #ifdef DEBUG_SDL printf("SDL: Updating x=%d y=%d w=%d h=%d (scaling: %d)\n", x, y, w, h, scaling_active); #endif if (guest_screen) { if (!scaling_active) { SDL_BlitSurface(guest_screen, &rec, real_screen, &rec); } else { if (sdl_zoom_blit(guest_screen, real_screen, SMOOTHING_ON, &rec) < 0) { fprintf(stderr, "Zoom blit failed\n"); exit(1); } } } SDL_UpdateRect(real_screen, rec.x, rec.y, rec.w, rec.h); }
static void sdl_update(DisplayState *ds, int x, int y, int w, int h) { // printf("updating x=%d y=%d w=%d h=%d\n", x, y, w, h); SDL_Rect rec; rec.x = x; rec.y = y; rec.w = w; rec.h = h; if (guest_screen) { if (!scaling_active) { SDL_BlitSurface(guest_screen, &rec, real_screen, &rec); } else { if (sdl_zoom_blit(guest_screen, real_screen, SMOOTHING_ON, &rec) < 0) { fprintf(stderr, "Zoom blit failed\n"); exit(1); } } } SDL_UpdateRect(real_screen, rec.x, rec.y, rec.w, rec.h); }