Page 1 of 1

Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 5:53 am
by eightbit
I have been scouring the net and these forums for an answer. Some cores "roll" while connected to a 60Hz NTSC Sony Trinitron due to outputting at 50Hz. The Genesis core does this each time I launch a game as the core always defaults to EU setting regardless of it being changed previously to US and the settings saved. That issue with this core has been there for a long time....but I can "fix" it by changing to US after launching a game. Still a PITA to see the setting when it is rolling to change ;)

Many arcade cores "roll" due to the frequency. Surely there must be a line that can be added to the ini to force 60Hz always regardless of the outcome. Or no? Is it completely dependant on the core?

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 11:40 am
by LeftEmpty
In this case, it really should depend on the ROM file: the autoswitch switches settings based on the header info that it provides, if any. If no header, no switchie. If you want to force 60Hz, you can simply force JP or US region. Region lock might be an issue for some later games, or the language.

Now I have zero idea why it defaults to 50hz everytime on your setup, unless all the games you are trying to launch are European only ones. Here I have the occasional such case, but 60hz is the rule.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 1:06 pm
by eightbit
The Genesis core has always defaulted to EU. Lon (Lon.tv) did a youtube review of the MiSTer and cores and his did the same thing.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 1:34 pm
by SuperBabyHix
vsync_adjust=0 will force 60Hz output, but you will get a bit more lag and more importantly, to me at least, judder due to frame rate conversion. Not sure if that applies to direct video or just things that go through the scaler though?

That being said, I'm not sure why the Genesis core defaults to EU for some people, mine defaults to US. Some ideas, do you have auto region detection on. An idea, you could try putting a game rom in the root of the /games/Genesis/ folder named boot.rom to have a rom auto boot. Try something that is NTSC only and see if that makes it default to NTSC.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 2:12 pm
by LeftEmpty
vsync_adjust settings only impact things going through the scaler.

I have a boot.rom set to an NTSC game, if that may somehow be linked.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 2:30 pm
by SuperBabyHix
Ahh, if that's the case then there is nothing to be done about the arcade cores that produce a rolling screen. They may just be outside the capabilities of that particular TV.

Not sure about the boot rom honestly. I never had a boot rom setup for Genesis and it still boots to US.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 4:46 pm
by eightbit
You would think it would detect ROMs correctly, but that does not happen for me. Funny think is that it is set to JP when I start the core, but then launch any USA game rom and it reverts to EU immediately and I have to change it US while the screen is rolling :)

I'll try the boot.rom method and see if that does anything.

What about those max/min refresh settings? I saw someone post this in the forums but it is not a part of the default mister.ini:

Code: Select all

; If you monitor doesn't support either very low (NTSC monitors may not support PAL) or
; very high (PAL monitors may not support NTSC) then you can set refresh_min and/or refresh_max
; parameters, so vsync_adjust won't be applied for refreshes outside specified.
; These parameters are valid only when vsync_adjust is non-zero.
refresh_min=0
refresh_max=0

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 4:53 pm
by SuperBabyHix
Maybe set the range to be something like 59-61?

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 9:33 pm
by LeftEmpty
Those settings are not for direct video output either.
The detection is based on ROM headers. If the rom doesn't provide such info, the core can't make it up. Why it defaults to 50hz for some people and 60hz for others is a mystery though.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 10:41 pm
by eightbit
LeftEmpty wrote: Wed Jul 22, 2020 9:33 pm Those settings are not for direct video output either.
The detection is based on ROM headers. If the rom doesn't provide such info, the core can't make it up. Why it defaults to 50hz for some people and 60hz for others is a mystery though.
A mystery indeed. I added a boot.rom (Altered Beast) and upon launching the core it is 60Hz. But, if I choose to load the exact same rom again, 50Hz (EU) setting and I have to change it back through the rolling. A bit annoying but I have no clue why this happens. I deleted the cfg and started fresh...same deal.

As for the force settings, you are correct...they are not for direct video. Oh well.

Re: Is there a way to force (globally) 60Hz?

Posted: Wed Jul 22, 2020 10:54 pm
by LeftEmpty
I've tried fiddling around the core's setting trying to figure something, using Altered Beast mostly, but to no available.
The only situation where it will default to EU here is if choose Auto region detection through file extension. It then will load almost every game at 50hz, for some (equally mysterious, if you ask me) reason.
Disabling autodetection or setting it to header with priority to US or JP defaults to 60hz.
Maybe indeed the solution is somewhere in the Mister.ini. here pretty much everything is set to default, excepting I ask to see the display frequencies, I disable fb_update and direct_video and I set composite_sync on.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 12:50 am
by eightbit
I have almost everything working fine on the CRT. I can live with the fact that I can only run at 60Hz (it is afterall working properly by function) but the only other thing that bugs me other than the Genesis core continually wanting to launch EU is the fact that you cannot modify other core config files outside of MiSTer itself.

For example, when launching the C64 core the screen was rolling. While it was rolling I had to poke and prod settings blindly until I hit the magic PAL->NTSC setting and the screen of course became normal and then I can save the config. I tried reading the config on a PC to adjust this, but it seems it is not readable like the mister.ini file. So, I have been able to do this with the C64 and Vic-20 core (poking around blindly to "find" NTSC)....but still can't find it on the C16 core.

I suppose the easier method would be to hook up an HDMI TV to the HDMI and adjust the setting and then save and go back to the CRT, but the only HDMI TV I have is in another room mounted to a wall. If I have to do it that way I will....but there is no way to adjust .cfg settings for cores outside of the MiSTer interface?

As for the Genesis, the region priority option is greyed out for some reason.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 2:45 am
by rhester72
Auto Region defaults to File Ext, which is not what is desired in nearly all cases.

Set Auto Region to Header, Priority to US>JP>EU and Region to US, then Save settings. Alternatively, set Auto Region to Disabled and Region to US, then Save settings.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 3:34 am
by LeftEmpty
If the region priority is greyed out while using autodetect through ROM headers (it should be grayed out for the other options), something is definitely wrong, and that explains you experience issues. It might be worth reporting on github.

You might want a PAL compatible TV for the Commodore 64 though, as most games require it.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 4:13 am
by eightbit
I lived with my C64 in NTSC land so I am OK with that ;) I was involved in two US based demo groups back then and our demos only run properly on NTSC machines ;) Now isn't that a rare thing? ;)

I am going to try changing ROM extensions tomorrow. I think that is the culprit. I bet that changing the .md roms to .bin will correct this issue. We shall see.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 8:17 am
by akeley
I get it the other way: C64 and Atari 800 (and perhaps more machines) default to NTSC, which is slightly annoying since I want them in PAL. My CRT TV can handle NTSC though so it's not a problem to change it (no rolling here). But I thought Save Settings in the OSD would save a permanent config? Haven't messed around enough with it yet.

Also C16 core does not work on my CRT, it just does not sync at all (black screen), I suspect it might be outputting >15 Khz for some reason.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 11:41 am
by LeftEmpty
eightbit wrote: Thu Jul 23, 2020 4:13 am I am going to try changing ROM extensions tomorrow. I think that is the culprit. I bet that changing the .md roms to .bin will correct this issue. We shall see.
From the readme

Code: Select all

    File name extension:

    BIN -> JP
    GEN -> US
    MD -> EU
-___-;

Anyway you shouldn't use this system, as rhester72 pointed out.

So basically, there was no issue!

akeley wrote: Thu Jul 23, 2020 8:17 am Also C16 core does not work on my CRT, it just does not sync at all (black screen), I suspect it might be outputting >15 Khz for some reason.
Same here, and indeed it does. I noticed this for a bunch of older computers (and probably cores).

The C64 core should save it if you set it to PAL. It does here.

Re: Is there a way to force (globally) 60Hz?

Posted: Thu Jul 23, 2020 1:24 pm
by eightbit
I completely missed that part of the readme! My fault entirely. What a strange method of detection....by extension. First I have ever seen that on anything.

Thanks for the info on the auto header settings. Problem solved. So simple....I was overthinking it. It was a struggle getting this TV to work with this to begin with and not because of the MiSTer but because of an invalid setting in service mode (probably set wrong by the Sony technician during QC)

As for the C16, it indeed does display on this TV, but rolling as it is default set to PAL. Can anyone set the C16 core to NTSC, save the settings and then upload the .cfg here? I'd do it....but I can't see the setting due to the rolling!

EDIT: Nevermind, I finally "found" the force NTSC option for the C16. All good. Thanks everyone for the assistance!