In the tests that I was doing, it did not detect the resolutions, nor did the 15Khz give me an error, this has happened to me since I deleted the configuration folder and started everything again. Could it be that I had a version that was not updated?
Now it detects all resolutions and dynamically switches between them, only activating the 31Khz. It’s too easy, even for me.
When I close the game it gives the synchronization error, the monitor turns off, but, as I am still in the recent menu, I press Enter, the game restarts and the signal is corrected. When I switch between games / cores without closing the game, it doesn’t give an error. When I close retroarch, sometimes it reverts to the native monitor, other times it stays at 2564x240
It seems to me that the problem is the menu, it may be taking the resolution of the monitor but maintaining 120.00Hz.
When I mess with CRT stuff, I typically use a small launch script that sets a standard modeline (1024x768 or whatever) on launch and after close.
To return to the native resolution after closing press “Alt + F2, r, enter”, it restores the x11.
To activate the resolutions I had this.
xrandr --newmode "2560x240_120.00" 99.75 2560 2632 2880 3200 240 243 253 261 -hsync +vsync; xrandr --addmode VGA-1 "2560x240_120.00"; xrandr --output VGA-1 --mode 2560x240_120.00
What script do you use?