diff --git a/config.def.h b/config.def.h index 34c55beafa..5d7f4909f9 100644 --- a/config.def.h +++ b/config.def.h @@ -428,6 +428,8 @@ static const bool aspect_ratio_auto = false; #if defined(__CELLOS_LV2) || defined(_XBOX360) static unsigned aspect_ratio_idx = ASPECT_RATIO_16_9; +#elif defined(PSP) +static unsigned aspect_ratio_idx = ASPECT_RATIO_CORE; #elif defined(RARCH_CONSOLE) static unsigned aspect_ratio_idx = ASPECT_RATIO_4_3; #else diff --git a/gfx/psp/psp1_gfx.c b/gfx/psp/psp1_gfx.c index c335f34638..47b027dd68 100644 --- a/gfx/psp/psp1_gfx.c +++ b/gfx/psp/psp1_gfx.c @@ -716,7 +716,7 @@ static void psp_update_viewport(psp1_video_t* psp) #endif { if ((fabsf(device_aspect - desired_aspect) < 0.0001f) - || (fabsf((16.0/9.0) - desired_aspect) < 0.0001f)) + || (fabsf((16.0/9.0) - desired_aspect) < 0.02f)) { /* If the aspect ratios of screen and desired aspect * ratio are sufficiently equal (floating point stuff), @@ -751,6 +751,9 @@ static void psp_update_viewport(psp1_video_t* psp) psp->vp.height = height; } + psp->vp.width += psp->vp.width&0x1; + psp->vp.height += psp->vp.height&0x1; + psp_set_screen_coords(psp->frame_coords, psp->vp.x, psp->vp.y, psp->vp.width, psp->vp.height, psp->rotation);