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

Scaler won't downscale #38

Open
thorr2 opened this issue Jun 28, 2021 · 6 comments
Open

Scaler won't downscale #38

thorr2 opened this issue Jun 28, 2021 · 6 comments

Comments

@thorr2
Copy link

thorr2 commented Jun 28, 2021

I noticed this several months ago when the scaler code changed. If you try to display something that has more vertical resolution than your display, it won't downscale it. Instead, you get the top rows of pixels and the bottom rows are cut off. Any chance this can be fixed? It used to downscale correctly. This affects at least most arcade cores and ao486. I know you would lose horizontal lines in your image but at least you can see the whole screen instead of the top half. Specifically, I am using a 240p mode on my CRT TV and can't see the bottom half of anything higher than 240 vertical resolution.

Also, since I am on the subject of the scaler, it would be amazing if 480i support was added. This would allow full vertical resolution of 480 lines on CRT TV's

Thanks for your consideration to whomever can implement these features.

@birdybro
Copy link
Member

If you are displaying 240p images from the analog io board or the direct video adapter to a CRT, than this doesn't really have anything to do with the scaler per se. 480i is also not output by the scaler because it's an analog video output format, there is no standard for 240p/480i in digital video formats afaik.

@thorr2
Copy link
Author

thorr2 commented Apr 24, 2022

@birdybro thanks for your feedback. 240p once worked with downscaling higher resolutions, and now it doesn't. It works with the DOS text mode in ao486 for some reason, but that is about it. It used to remove horizontal lines but show the full height of the screen, and now it shows all the lines but only the top half of the screen since it runs out of lines at 240. Some arcade cores still worked when rotating showing the full screen back when I created this, but they may not any longer. I want to rotate with the scaler, but it only shows the top half of the game.

480i via digital video works with the PSX core and also with my Game Cube's digital HDMI adapter that plugs into the back of it. There is no limitation with digital video preventing it from displaying 480i. If 480i was supported with the scaler, it would unlock higher vertical resolution and make 640x480 possible on TV's.

@birdybro
Copy link
Member

I've been using the MiSTer for only about 2.5 years so maybe the scaler was downscaling before then, but from what I understand, it doesn't. I'm confused by what you mean since you are saying you are using 240p mode on your CRT TV, which is 15kHz. ao486 has never officially supported 15kHz output and many arcade cores output the original signal, which in some cases is 24kHz or 31kHz (or 15kHz but at weird non-standard refresh rates).

@atrac17
Copy link

atrac17 commented Apr 24, 2022

I believe @thorr2 is talking about using vga_scaler=1 in the MiSTer.ini and passing off custom video timings that a 15khz monitor accepts. You can display ao486/minimig by enabling the scaler over vga since they don't have native support.

Sending 240p timings or "super resolutions"; the scaler handles 480i (or it did). I've used interlaced content before. The core builds may have been custom. This was at least a year or so ago. I know @flynnsbit has had a lot of success with using ao486 on a CRT.

@birdybro
Copy link
Member

birdybro commented Apr 24, 2022

Ah, thank you for clearing that up. Those still seem to work for people, I've helped people in the discord just a couple weeks ago with custom video_mode settings for ao486, I'll post a few that worked for them.

[ao486]
video_mode=1280,170,140,244,240,2,0,22,29020,0,0
;video_mode=640,6,56,66,224,14,8,18,12000,0,0

These are two I had someone try, the 2nd one worked for them @thorr2 . This just worked for someone about 1 month ago that I helped in chat.

https://misterfpga.org/viewtopic.php?t=2574 - There's a huge thread of everyone going over the woes of trying to get this system working on 240p, because it's not made for consumer CRT televisions.

@thorr2
Copy link
Author

thorr2 commented Apr 24, 2022

Thanks everyone. I am very familiar with the scaler from a user standpoint. I have provided a lot of custom modelines for ao486 that work with perfect resolution and vertical sync to prevent tearing on VGA monitors, and custom modelines for using ao486 on CRT TV's (in 240p, not 480i).
See here for VGA monitors: https://misterfpga.org/viewtopic.php?p=49023#p49023
See here for TV's: https://misterfpga.org/viewtopic.php?p=29497#p29497

If there is a way to turn on "interlaced" in the modeline, I am not aware of it. There is a thread on it here: https://misterfpga.org/viewtopic.php?p=37209#p37209

Hopefully the modeline can have the interlaced option added and the scaler could support it.

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

No branches or pull requests

3 participants