I have a 15 kHz CRT which has a maximum vertical resolution of 240p or 480i at 60Hz refresh rate (limitations of the 15kHz horizontal sync rate).
I’m using a set of “super resolution” modes of 1920x224p, 1920x240p, 1920x480i, etc, with the CRT. I’m using the Linux KMS video context driver in Retroarch, and I set the config like:
video_fullscreen_x = 1920 video_fullscreen_y = 240 video_aspect_ratio = 8 aspect_ratio_index = "19"
and this makes the 4:3 aspect ratio, horizontal, games display more or less properly on the horizontal orientation CRT. The video_aspect_ratio is calculated by just dividing video_fullscreen_x by video_fullscreen_y and this works OK.
Now I’m looking at the case of vertical arcade games, which had vertically oriented CRTs in the original cabinet, running at resolutions like 240x320, 224x384, etc. I want to display these using the 1920x480i mode as it’s the only mode that will fit 320 and 384 pixels vertically. But if I use the same config for these, the picture is displayed too wide on the CRT. I guess there’s a different formula for calculating video_aspect_ratio for vertical arcade games when displaying them using a “super resolution” mode, but what is the formula?