Page 1 of 1

PSX Screenmodes and Cropping

Posted: Sat Apr 02, 2022 4:41 pm
by cursedverses
I've been looking at the best screen resolution for running PSX games (I have a lot of PAL region stuff). Currently, that is 640x480, 60Hz (as looking for a 50Hz mode for PAL is completely bamboozling me). I also attempted a 640x512 mode with little luck.

However, a few modes like to trip me up in terms of the scaler cropping lines in the scale, or displaying as a portal in the box. I was wondering if these few edge cases could do with a little cropping to allow them to fit into the 640x480 window (seemingly without any real loss of image).

These are the modes, that I'm currently using the AO486 screen mode functionality to change mode for a clean picture:

Code: Select all

PSX Mode		MiSTer Mode	Equivalent Modeline	Crop?			Better Mode	Modeline
368x240, 50.2Hz 	800x600, 60Hz	5			48px Horizontally	640x480, 60Hz	6
320x256, 50.2Hz 	800x600, 60Hz	5			16px Vertical		640x480, 60Hz	6
640x510i, 50.2Hz	800x600, 60Hz	5			30px Vertical		640x480, 60Hz	6
320x255, 50.2Hz 	800x600, 60Hz	5			15px Vertical		640x480, 60Hz	6
Is this something (or something similar) that would be considered for the core? And do similar issues happen on the NTSC equivalents (which I'm seriously considering switching to)?

Edit: These modes were found on Final Fantasy 7 and KISS Pinball/London Racer, all PAL versions.

Re: PSX Screenmodes and Cropping

Posted: Sat Apr 02, 2022 5:05 pm
by Insert Disk Two
Does it having cropping option? I can't find it.

Re: PSX Screenmodes and Cropping

Posted: Sat Apr 02, 2022 5:39 pm
by cursedverses
It doesn't - this is more of a question/suggestion than anything - I was playing FF7 and the screen switching was driving me nuts. I had the thought with a little cropping it'd run more like having the PSX plugged into the TV, but with the quality of a proper CRT monitor...

Re: PSX Screenmodes and Cropping

Posted: Thu Apr 07, 2022 2:07 am
by FoxbatStargazer
The few crop stuff we have in other cores is fairly specific to 1080p. So its probably challenging to support less common resolutions like 480p.

If this is a VGA CRT, can't we just make custom modelines tuned to each resolution? Though I realize this hassle is mostly about having the scaler on hand for de-interlacing...

Re: PSX Screenmodes and Cropping

Posted: Thu Apr 07, 2022 2:31 am
by SuperBabyHix
If you are only scaling up to something like 480p you might be better served by just using the scandoubler instead of the full scaler.
Not sure how it handles interlaced content though.

Re: PSX Screenmodes and Cropping

Posted: Thu Apr 07, 2022 2:49 am
by FoxbatStargazer
SuperBabyHix wrote: Thu Apr 07, 2022 2:31 am If you are only scaling up to something like 480p you might be better served by just using the scandoubler instead of the full scaler.
Not sure how it handles interlaced content though.
It doesn't, the analog drops to 15khz. So its really problematic to use this core with scandoubler. The bios bootup is interlaced (although skippable), many games have interlaced menus, movies, or startup logos.

What I'm implying is that it might be easier for the scandoubler to address interlacing than creating a cut... although it may be out of FPGASpazum's wheelhouse. But like in theory, you'd think bob de-interlacing would be fairly viable for a scandoubler.

Re: PSX Screenmodes and Cropping

Posted: Thu Apr 07, 2022 7:11 am
by FPGAzumSpass
The core has no scandoubler, so you cannot use it.

It's deactivated, because it only really works with a fixed clock/clock enable ratio with 4:1, while the psx/core has various clock ratios.

Re: PSX Screenmodes and Cropping

Posted: Fri Apr 08, 2022 10:18 am
by Milspex
what INI settings are people using for [PSX]

Re: PSX Screenmodes and Cropping

Posted: Fri Apr 08, 2022 9:05 pm
by cursedverses
FoxbatStargazer wrote: Thu Apr 07, 2022 2:07 am The few crop stuff we have in other cores is fairly specific to 1080p. So its probably challenging to support less common resolutions like 480p.

If this is a VGA CRT, can't we just make custom modelines tuned to each resolution? Though I realize this hassle is mostly about having the scaler on hand for de-interlacing...
I have been attempting something along the lines of this. What I get is a mode switch every time you reach the battle outcome screen or go into a menu (which is just over 640x480). This leads to my CRT taking a couple of seconds to switch each time which gets a bit frustrating. Maybe I'll look at 800x600 again and if I can use a mode not used by my Pentium 2 233MHz :D

Re: PSX Screenmodes and Cropping

Posted: Fri Apr 08, 2022 10:36 pm
by FoxbatStargazer
Actually what I would try with a VGA CRT is a fixed superwide resolution. Something like 2048 x 488 and use aspect ratio = wide. For PAL you can use video_mode_pal and 2048 x 576 or so. And of course Integer-V scaling.

Original PS1 games varied in height but that would just show up as black bars on a CRT TV, so it should be true to the original. The superwide horizontal resolution should cover any scaling artifacts especially with sharp interpolation.

Re: PSX Screenmodes and Cropping

Posted: Sat Apr 09, 2022 10:54 pm
by cursedverses
FoxbatStargazer wrote: Fri Apr 08, 2022 10:36 pm Actually what I would try with a VGA CRT is a fixed superwide resolution. Something like 2048 x 488 and use aspect ratio = wide. For PAL you can use video_mode_pal and 2048 x 576 or so. And of course Integer-V scaling.

Original PS1 games varied in height but that would just show up as black bars on a CRT TV, so it should be true to the original. The superwide horizontal resolution should cover any scaling artifacts especially with sharp interpolation.
Oh, I was unaware of 2048xNNN resolutions, I'll have to give this a go. Though I'm aware some of the modes on here are way outside my monitor's pixel clock (max 65MHz!) so I'll see what I can come up with... Thanks!

Re: PSX Screenmodes and Cropping

Posted: Sun Apr 10, 2022 4:34 pm
by FoxbatStargazer
Well CRTs are generally agnostic about horizontal resolution. You might not be able to practically see the added resolution past a certain point but it should accept and display the signal. (And if we are getting past the visibly discernable resolution, all the better for avoiding scaling artifacts.) You just have to be careful that your horizontal blanking is appropriate. So I don't know if I would trust pixel clock readings there, they are probably thinking about standard resolutions.

Re: PSX Screenmodes and Cropping

Posted: Sun Apr 10, 2022 9:25 pm
by cursedverses
Well, I don't know how well this will work for other people, but...

Code: Select all

[PSX]
video_mode=736,16,112,56,512,20,4,39,26565;  736x512, 50Hz
Seems to be working (initially) for me (anyone else, use at your own risk!)

Thanks for your help in the thread here FoxbatStargazer!

EDIT: 3:2 PAL with

Code: Select all

video_mode=768,18,96,78,512,16,4,43,27711; 768x512, 50Hz
and a relative NTSC modeline:

Code: Select all

video_mode=768,36,96,60,480,8,2,35,30140; 768x480, 60Hz

Re: PSX Screenmodes and Cropping

Posted: Thu Apr 21, 2022 12:40 pm
by cursedverses
So...

Those modelines work well until you play Tony Hawk Skateboarding, which uses a 512px screen width and looks very... slender?!
Having taken FoxbatStargazer's advice on superwide resolutions, this is easily resolvable on my monitor at least. Below I've doubled the clock and the horizontal resolution, leaving a 1536px width (divisible by 512)

PAL, double X resolution

Code: Select all

video_mode=1536,36,192,156,512,16,4,43,55422; 1536x512, 50Hz
NTSC, double X resolution

Code: Select all

video_mode=1536,72,192,120,480,8,2,35,60280; 1536x480, 60Hz
If anyone tries this and comes across anything weird, I'm willing to experiment further here.