Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvement: Generate permanent HDMI sync to prevent "flashing" when sync is regained #392

Open
G4DDS opened this issue Jul 27, 2024 · 1 comment

Comments

@G4DDS
Copy link

G4DDS commented Jul 27, 2024

I don't know whether this is possible, but the idea comes from using the interface with my ZX81 which as you will be aware switches the TV/composite output off when loading, saving and performing other various operations. When the ZX81 enables the output again there can be a delay and/or multiple "flashing" as the RGBtoHDMI interface and monitor re-syncs.

Is it possible for the RGBtoHDMI interface to generate a permanent (sync) signal and just display a blank screen (or perhaps hold the last display frame with an overlayed message?) when the ZX81 output is disabled so that when the output is re-enabled the monitor does not need to re-sync and hopefully it would mean there would be no "flashing".

As I say, I don't know whether this is possible.

@IanSB
Copy link
Collaborator

IanSB commented Jul 27, 2024

@G4DDS
The HDMI output is already permanently enabled and generating syncs. However, when the source sync is stopped and then restarted the HDMI output has to be re-genlocked to that new sync position. This is done by varying the HDMI clock until the syncs are aligned again and some monitors see that as a loss of sync or a mode change and blank the screen so the results will vary from monitor to monitor.

There are already some options that can mitigate or eliminate this problem but using them does have compromises:

  1. Try changing the "Genlock Speed" option in the settings menu to "Medium" or "Slow".
    This controls the speed that the HDMI clock is changed and reducing the rate of change can sometimes stop the monitor from blanking.

  2. Change the "Genlock Mode" option in the settings menu to "Off".
    This will disable the genlock completely and should stop all blanking but the output will not be locked to the input and will usually be 60Hz.
    This will potentially cause quality issues with the video as smooth scrolling will be juddery and you will get video tears in any motion. This is unlikely to be an issue with the ZX81 but would be more visible on something like the BBC micro or Commodore 64.
    You can eliminate any tearing by increasing the "Num Buffers" also in the settings menu but that adds a frame of Lag to the video for each increase in value.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants