Weird issue with lr_flycast and setting aspect ratio
-
So it's a pretty simple issue but it's confusing me a lot. I want to play in 4:3 (obviously), but to do so, I have to set the settings to a 16:9 ratio - then the game will actually PLAY in 4:3.
For example, I want to launch Akatsuki for Sega NAOMI through lr-flycast:
- I press launch on the game.
- When the command line pops up, I go into the config menu, and set the resolution to the lowest (for best performance) 4:3 640x480
- The game starts but the image is stretched to widescreen 16:9 ratio
- I exit the game, start it again, go to the config again, and set to one of the 16:9 resolutions, say 1280×720.
- The game now starts in the correct 4:3 aspect ratio
I have no idea why this is happening, I'm sure it's something simple, but I've checked the retroarch configs, the retropie configs, the lr-flycast configs. I can't figure it out. Anyone know the answer?
Pi Model or other hardware: Pi 4 B
Power Supply used: Official Raspberry Pi PSU DC 5.1V 3A output
RetroPie Version Used: retropie-buster-4.7.1-rpi4_400.img
Built From: Pre made SD Image on RetroPie website - retropie-buster-4.7.1-rpi4_400.img -
My mistake, this is a global thing, not just limited to flycast.
Every emulation when I change the video settings, 4:3 ratio = stretched 16:9 display, and 16:9 = a not quite 4:3.
I'm kind of confused about all this.
-
When the command line pops up, I go into the config menu, and set the resolution to the lowest (for best performance) 4:3 640x48
it's possible your TV is stretching the image to fit. the tv configuration instructions may help here. also ensure you have tv in 'game mode'
-
Unfortunately it's not the monitor.
I've done some more testing. It seems like it's something in the default retropie config. I'm just not sure what it is yet.
When you go into the retroarch config through the retropie gui menu, then just do nothing but save a retroarch cfg file (not changing anything), I believe this sets it so that retropie then uses the retroarch.cfg you just saved instead of whatever the retropie default is (from reading I believe there are two different directories for cfg files, and the retroarch one is blank on a new install, but if you create a retroarch.cfg file it takes precedent over the retropie default.
Anyway, when you do that, the display changes completely. So I'm putting 2+2 together and thinking this is a retroarch video config issue.
-
Ok figured out a little more.
Basically, if you use the runcommand script and set the "default video mode for emulator" to any true 16:9 aspect ratio (such as 1920x1080, or 852×480, or 1280x720) the game will actually display in 4:3.
if you use the runcommand script and set the "default video mode for emulator" to any true 4:3 aspect ratio (such as 640×480, 800×600, 960×720, 1024×768, 1280×960, 1400×1050, 1440×1080) the game will actually display in 16:9
Again, I'm guessing that this is something in retropie so make games look correct by default as it assumes most people are using a 16:9 monitor but would want their games displayed in 4:3.
I guess the fix is to set the runcommand script to a 16:9 aspect ratio like 852×480
Thinking further, perhaps I've been dumb and changing the display resolution my monitor is receiving, and not the rendering resolution. I don't know... all I know is that running games at 852×480 as opposed to 1920x1080 makes a lot of the trickier Saturn and Dreamcast games much more playable.
-
@rva-818x-laystar said in Weird issue with lr_flycast and setting aspect ratio:
Unfortunately it's not the monitor.
I've done some more testing. It seems like it's something in the default retropie config. I'm just not sure what it is yet.
When you go into the retroarch config through the retropie gui menu, then just do nothing but save a retroarch cfg file (not changing anything), I believe this sets it so that retropie then uses the retroarch.cfg you just saved instead of whatever the retropie default is (from reading I believe there are two different directories for cfg files, and the retroarch one is blank on a new install, but if you create a retroarch.cfg file it takes precedent over the retropie default.
i don't believe this is the case. it should just save over the normal /opt/retropie/configs/all/retroarch.cfg
-
if you use the runcommand script and set the "default video mode for emulator" to any true 4:3 aspect ratio (such as 640×480, 800×600, 960×720, 1024×768, 1280×960, 1400×1050, 1440×1080) the game will actually display in 16:9
i'll tag @mitu in this as i don't have a retropie installation to hand to check this, but AFAIK it's a drm modeset that contains no aspect ratio specification - that's up to your TV to decide whether it wants to stretch the provided image (or put borders around it).
-
Looks like a monitor issue to me.
@RVA-818X-LAYstar get a verbose log from a situation with this problem, then post it to pastebin.com and link it here. Are you running RetroPie from the desktop ? -
Turns out I'm a complete dope.
I figured out what I've been doing.
I thought I had been setting the rendering resolution of the game.
What I had actually been setting was the Pi video output resolution over HDMI to the monitor.
So in the end I now have my games running properly. They are being rendered at 640x480 in the emulator as they should, and I'm outputting dreamcast games at 720p to get a bit more performance. Every other system I left at the default output of 1080p.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.