gbs-control icon indicating copy to clipboard operation
gbs-control copied to clipboard

Force PAL 50hz to 60hz doesn't do anything

Open Joshimuz opened this issue 3 years ago • 20 comments

Title says it all really, am I missing something?

I'm not the only one with this problem, after a quick search through the issues I found #155 which, while quite long winded, is basically the same problem I'm having. The GBS-C just continues to output at 50hz with this setting on even post restart as confirmed by both my TV and my OSSC. Just nothing changes when I toggle this setting on. Is there some kind of detection for PAL sources that isn't working? Not sure I can be bothered to post images and logs and stuff when #155 did the same thing and just got told "lol buy a display that works with 50hz".

If the setting doesn't work that's fine, it's free open source software I can't complain, but why have the setting? :D

Joshimuz avatar May 26 '21 19:05 Joshimuz

Which version of the GBS-C are you using?

gingerbeardman avatar May 28 '21 09:05 gingerbeardman

Do you have the clock generator board? I have it installed and the setting is ignored for me also. Not sure if it's intentional or not but I do think it's the culprit.

YoImLee avatar Jun 01 '21 11:06 YoImLee

Any luck with solving this? Trying to get 1080p PAL PS2 output (which apparently can only be done with the 50 - 60hz toggle on) but doesn't seem to do anything. Passing GBS to OSSC reads 50hz still.

I also have clock gen.

TimbleThimble avatar Jul 12 '21 11:07 TimbleThimble

I have the exact same issue. Without external clock generator everything works fine, as soon as I enable the external clock generator the ForcePal60Hz Option doesn't work anymore. I can't get any mode to output 60Hz.

kimmesantana avatar Sep 13 '21 04:09 kimmesantana

I'm no expert but as far as I am aware when you install the clockgen mod, it simply outputs what it has coming in via input. So it it's receiving a 50hz signal it can only output a 50hz signal and the same would be if receiving a 60hz it can only output what it is given.

rabidgerry avatar Sep 24 '21 15:09 rabidgerry

I have the same issue.

I am trying to output a PAL 50 Hz signal to VGA 60 Hz. Force PAL 50hz to 60hz works without the Si5351 installed but it's been ignored since I installed it.

(I like the old VGA monitor because it's 4:3 format) BTW the project is great, I am just wondering if the fix is doable or not.

fabbrimichele avatar May 29 '22 11:05 fabbrimichele

Perhaps it wouldn't be too complicated to have a setting to disable the external clock generator from the UI.

fabbrimichele avatar May 29 '22 11:05 fabbrimichele

I modified externalClockGenDetectPresence() to always set rto->extClockGenDetected = 0 regardless of the presence of the external clock generator and Force PAL 50hz to 60hz works again. It would be great to make it configurable.

fabbrimichele avatar May 29 '22 12:05 fabbrimichele

I created a simple GIT patch that disable the External Clock Generator when Force PAL 50hz to 60hz is enabled:

From 35efd62e1675023c4324ca42ef4f78f0d3a49b83 Mon Sep 17 00:00:00 2001
From: Michele Fabbri <[email protected]>
Date: Sun, 29 May 2022 20:44:30 +0200
Subject: [PATCH] [ISSUE-237] ignore ext clock generator when force PAL to 60
 is set

---
 gbs-control.ino | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gbs-control.ino b/gbs-control.ino
index f3ab4a1..3c27e6b 100644
--- a/gbs-control.ino
+++ b/gbs-control.ino
@@ -469,6 +469,12 @@ void externalClockGenInitialize() {
 }
 
 void externalClockGenDetectPresence() {
+  // When externalClockGen is present forcing to 60 Hz does not work.
+  // So if the setting is enable ignore externalClockGen.
+  if (uopt->PalForce60 == 1) {
+    return;
+  }
+  
   const uint8_t siAddress = 0x60; // default Si5351 address 
   uint8_t retVal = 0;
 
-- 
2.25.1

fabbrimichele avatar May 29 '22 19:05 fabbrimichele

Hey, that's all great, but maybe you can step it up and try to make it an option in the UI? Is that doable for you? :)

ramapcsx2 avatar May 30 '22 23:05 ramapcsx2

@ramapcsx2 sure. I will try to make an option to disable the the external clock generator regardless of the PAL force to 60Hz option. It will take a bit because I am not familiar with the UI part.

fabbrimichele avatar May 31 '22 12:05 fabbrimichele

Of course. If it's too hard to add an extra option, you can still add the clock gen disable code to an existing one. Good luck! :)

ramapcsx2 avatar May 31 '22 13:05 ramapcsx2

I'm gonna try adding a new property :)

fabbrimichele avatar May 31 '22 21:05 fabbrimichele

Hi @ramapcsx2 I implemented the new option for disabling the external clock generator on both side: UI and back end. I have local branch with the changes, should I create a git patch or should I create a pull request?

image

fabbrimichele avatar Jun 06 '22 14:06 fabbrimichele

Pull request would be great, thanks :)

ramapcsx2 avatar Jun 06 '22 14:06 ramapcsx2

@ramapcsx2 could you please give me the permission to push my branch?

fabbrimichele avatar Jun 06 '22 20:06 fabbrimichele

Ususally this goes via pull requests. You can do everything from the Github page. Does it work for you?

ramapcsx2 avatar Jun 06 '22 23:06 ramapcsx2

@fabbrimichele you should do like this:

  1. fork the project
  2. put your changes on the fork
  3. commit to your fork
  4. create Pull Request

gingerbeardman avatar Jun 07 '22 08:06 gingerbeardman

I'm gonna try. Thank you @gingerbeardman

fabbrimichele avatar Jun 07 '22 10:06 fabbrimichele

Hi @ramapcsx2 and @gingerbeardman I created the pull request: https://github.com/ramapcsx2/gbs-control/pull/334

fabbrimichele avatar Jun 07 '22 22:06 fabbrimichele