MiSTer-devel / Template_MiSTer

Template with latest framework for MiSTer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Adding a framedoubler for 240p@120hz support

mathieulh opened this issue · comments

Adding a framedoubler option would allow to output a 240p@120hz image (for native 240p on VGA monitors or on some supported hdmi monitors).

It could also eventually be designed to allow an optional BFI implementation to insert a black frame every 60 images per second and improve motion with no additional input lag.

There won't be support for 120Hz, sorry. You may use it as long as current code supports it at some extent, but there won't be special support for this very specific feature used by couple people.

At the risk of sounding obnoxious, people using VGA monitors aren't just a "couple people". I know of at least 5 people in the MiSTer discord alone who would be willing to use this feature.

Could you explain the benefit of this option? We would just be dumping the same frame twice. Why is that good?

This would allow to sync a monitor with a 30khz signal at native 240p (instead of 480p) (anything made in the years 1990s and later does not work at 15khz) as well as allow to run with a proper 60hz Black Frame Insertion (both for LCD and CRT) to allow for improved motion (assuming there is a BFI feature enabled in mister cores).

In a nutshell this allows native 240p on VGA (or any high resolution) monitors though.

You are contradicting yourself. In one issue you don't want to use scaler because of "lag", but here you explicitly want to use scaler.
Besides specific case when scaler is absolutely necessary, using it as a main output method on VGA isn't a good idea.

How would doubling frames involve using the scaler? We aren't changing the resolution or rescaling/changing the image, we are simply outputting one additional frame (basically doubling frame).

while it won't need a scaling, it still needs a frame buffer and at least 1 frame output delay. Basically what scaler doing when output resolution is the same as input.

Since it's very specific feature i suggest to make an external device which will double the frame rate. Functionally it will be the same as you want, but won't occupy resources on MiSTer. And it will work basically with any core.

Since it's very specific feature i suggest to make an external device which will double the frame rate. Functionally it will be the same as you want, but won't occupy resources on MiSTer. And it will work basically with any core.

Do you have any device in mind or do you mean to design one from scratch?

I should add that since we are dealing with analog signals, any devices introduced in the chain would induce some slight signal degradation.

I mean device from scratch. It's quite specific request. I don't think there is such device.
As for degradation - it depends if you want to make a device compatible with any analog input or specific to MiSTer. If just MiSTer, then you can hook it to 40pin connector, directly to logic signals before Video DAC. So you will get video in digital form.

I understand your point about having a 30kHz horizontal signal without doubling lines. It implies doubling the frame rate. But I do not think many monitors will tolerate 120Hz.

Pros
-Avoid doubling lines
-Natural interlaced lines
-Can insert a black frame

Cons
-one frame lag
-poor compatibility
-requires frame buffer (memory)

I think the cons overweight the pros in this case. As Alexey says, maybe it's better to showcase this using an external device such as the OSSC. It may already support this option. Don't worry about the analog signal quality, the ADC/DAC needed for this is not a problem for these speeds/bit resolutions.

Ah, yeah.. completely forgot about OSSC. So this option is exactly for OSSC.