Retroarch + CRTemudriver vsync problem

Hi,

I’m using CRTemudriver on windows 7, with the latest version of retroarch. I beleive everything is set up right, with the proper super resolutions and vsync enabled. The games look great and run smoothly but there is a slight problem that I’ve noticed recently. It seems like vsync doesn’t affect a small part of the screen, near the top. All the other parts of the screen scroll smoothly without any tearing. I’ve made a video that shows the problem :

I’ve tried 1.7.6 and 1.7.5 and the problem is sill there. It does that with all the cores I’m using (Nestopia UE, Snes9x and Genesis Plus GX). I’m also using Groovymame on the same PC and it does not have this problem. How can I fix this ?

This seem odd. You would expect that tear to cover the whole horizontal scan!

Have you tries a different super res like 1920 or 3840?

I just tried with 1920 and the problem was the same. But with 3840 the tear was extended to the totality of the upper third of the screen (instead of the thin line in the other ones).

Depending on your video card, your graphic driver settings could have different Vsync settings. As a means of troubleshooting, you could try disabling Vsync in RetroArch, and then forcing Vsync on your card. That, ideally would let you try double and triple buffering to see if it resolves the issue at all. If it does, that should help to begin narrowing down where/why it’s happening. If it doesn’t… iunno lol I’m just brainstorming here.

I don’t think I have the option to force vsync on the video card since I’m using CRTemudriver. With mame vsync is enabled in the emulator settings and everything runs smoothly.

Bump. I am also having this issue on Windows 7 with crt_emudriver 2.0 and the latest Retroarch 1.7.8

I’m not using a CRT nor any 3rd party tool, but noticed the same issue on my regular laptop screen and also when hooking the laptop to my FullHD TV via HDMI. I assume in my case, the issue is related to my old Intel IGP (HD graphics 4000), since I haven’t found any other reports of this issue apart from this thread.

Observations & Notes

  • It occurs only with the D3D10/11 video renderer
  • in fullscreen and window mode
  • on all cores that use D3D (I tested Beetle PSX HW, Gambatte, mGBA, SNES9x, Nestopia, Genesis Plus GX)
  • constant tear-line at the top part of the image (fixed position, slightly wobbling) during scrolling/movement
  • apart from that, the frame pacing is perfect (super smooth scrolling, constant frame times)
  • using a performance intensive shader causes the tear line to move down (e.g. crt-easymode = tear-line sits in middle; crt-royale-intel = tear-line sits at bottom)
  • the tear-line is not fixed relative to the rendered image, but to the size of the active window/fullscreen; e.g. in window mode, making the window bigger moves the tear-line down; or making the window small enough makes the tear-line invisible (since it’s above the rendered image)
  • pressing ALT+ENTER (while in fullscreen) strangely switches to another fullscreen mode: the tear-line is gone, frame pacing is perfect, but input latency increases by ~33ms (so 2 frames)
  • maby there is a way to specifically move the tear-line to completely hide it, similar to how the Scanline Sync option of RTSS works?

Specs

  • RetroArch 1.8.5
  • OS: Windows 7 - 64-bit
  • CPU: Intel Core i5-3230M
  • IGP: Intel HD Graphics 4000
  • RAM: 4GB, DDR3-1600

update: I just figured out that the issue is related to Windows 7 Aero. If Aero is enabled (with the windows setting “Enable Desktop Composition” on), there is no tear-line anymore. The downside of this is that it adds 33ms input latency. This option actually behaves the same as the “ALT+ENTER” mode when Aero is off, as described above.

1 Like

@Ortega

Thanks for the tip, entering ALT+ENTER in game worked. How did you find about that ? And what does that command really do ?

I found it by accident! While running a game, I wanted to switch it to window mode via ALT+ENTER instead of the RetroArch Hotkey “F”. I realised it didn’t work but instead a black screen just flashed. After a short while I noticed the tear-line was gone.

I guess ALT+ENTER switches to “exclusive fullscreen” in RetroArch (like in many windows programs and games), which means the default fullscreen mode with the tear-line is “windowed fullscreen”. I described it here a bit more in detail:

1 Like