X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=frontend%2Flibretro.c;h=a26d4662639ab428e8f7d08c568db5b6a3963332;hb=ab88daca6f1367543d88b35e04a7999f3e36a0ff;hp=8d6b5cc7ea0ba030db37fe0efe40391cb923d65f;hpb=2db412ade2b09ca04da81d91b75bbf6475dbde5a;p=pcsx_rearmed.git diff --git a/frontend/libretro.c b/frontend/libretro.c index 8d6b5cc7..a26d4662 100644 --- a/frontend/libretro.c +++ b/frontend/libretro.c @@ -80,6 +80,7 @@ static void *vout_buf; static void *vout_buf_ptr; static int vout_width, vout_height; static int vout_fb_dirty; +static int psx_w, psx_h; static bool vout_can_dupe; static bool duping_enable; static bool found_bios; @@ -239,6 +240,8 @@ static void vout_set_mode(int w, int h, int raw_w, int raw_h, int bpp) { vout_width = w; vout_height = h; + psx_w = raw_w; + psx_h = raw_h; if (previous_width != vout_width || previous_height != vout_height) { @@ -2475,13 +2478,13 @@ static void update_input_guncon(int port, int ret) //Offscreen value is chosen to be well out of range of any possible scaling done via core options if (input_state_cb(port, RETRO_DEVICE_LIGHTGUN, 0, RETRO_DEVICE_ID_LIGHTGUN_IS_OFFSCREEN) || input_state_cb(port, RETRO_DEVICE_LIGHTGUN, 0, RETRO_DEVICE_ID_LIGHTGUN_RELOAD)) { - in_analog_left[port][0] = (65536 - 512) * 64; - in_analog_left[port][1] = (65536 - 512) * 64; + in_analog_left[port][0] = 65536; + in_analog_left[port][1] = 65536; } else { - in_analog_left[port][0] = (gunx * GunconAdjustRatioX) + (GunconAdjustX * 655); - in_analog_left[port][1] = (guny * GunconAdjustRatioY) + (GunconAdjustY * 655); + in_analog_left[port][0] = ((gunx * GunconAdjustRatioX) + (GunconAdjustX * 655)) / 64 + 512; + in_analog_left[port][1] = ((guny * GunconAdjustRatioY) + (GunconAdjustY * 655)) / 64 + 512; } //GUNCON has 3 controls, Trigger,A,B which equal Circle,Start,Cross