320x240 emulationstation and 2048x240 retroarch
-
Hey all
I thought I'd start this topic here to see if said resolution switching is possible.
My setup:
Raspberry Pi 3b+ - JPac - VGA-HDMI Converter going into a 15khz arcade monitor.I'm able to get 480i menus in emulationstation and 240p retroarch using the following:
Config.txt
hdmi_cvt=2048 240 60 1 1 0 0
hdmi_group=1
hdmi_mode=6runcommand-onstart.sh:
tvservice -e "DMT 87" ; sleep 3 ; fbset -depth 8 ; fbset -depth 32; tvservice -sruncommand-onend.sh
tvservice -e "CEA 6" ; sleep 3 ; fbset -depth 8 ; fbset -depth 32; tvservice -sWhat I want (if possible) 320x240 in emulationstation and 2048 in retroarch.
The CEA 240p Resolutions are 720x240 so I can't use those and I don't know if it's possible to use 2 CVT= lines of code.
Anyone know if it's doable?
-
It should be doable. You have the possibility of creating a resolution and switch to it at runtime, without being limited to 1 custom resolution + the rest of the standard ones.
The way to do that is to use thevcgencmd
command:vcgencmd hdmi_cvt 1680 1050 60 5 0 0 1 # or using hdmi_timings vcgencmd hdmi_timings 640 0 16 64 120 480 0 1 3 16 0 0 0 75 0 31500000 1 # switch to the new created resolution tvservice -e "DMT 87" fbset -depth 8 && fbset -depth 16
You can create your 'standard' (320x240) resolution via
hdmi_cvt
inconfig.txt
, this will be used by EmulationStation at start. Then, using the runcommand onstart and onend scripts, you can- switch to 2048x240 when starting a game (onstart)
- switch back to 320x240 when exiting a game (onend).
-
Thanks for the reply.
I've tested it out with hdmi_cvt and hdmi_timings. When using hdmi_cvt runcommand-onstart.sh says its using hdmi_timings but doeesn't change the resolution of retroarch. I tried using hdmi_timings instead and get the same message: hdmi_timings=1920 1 23 25 39 240 1 4 3 15 0 0 0 60 0 6400000 1 Powering on HDMI with explicit setings (DMT mode 87). Unfortunately it's still in 320x240 when i get to retroarch.
runcommand-onstart.sh using hdmi_timings
vcgencmd hdmi_timings 1920 1 23 25 39 240 1 4 3 15 0 0 0 60 0 6400000 1
tvservice -e "DMT 87"
fbset -depth 8 && fbset -depth 16runcommand-onstart.sh using hdmi_cvt
vcgencmd hdmi_cvt 1920 240 60 1 1 0 0
tvservice -e "DMT 87"
fbset -depth 8 && fbset -depth 16config.txt
hdmi_cvt=320 240 60 1 1 0 0
hdmi_group=2
hdmi_mode=87 -
Try adding a
fbset -g 1920 240 1920 240 32
after you switch the video mode via
tvservice
, this will tell framebuffer console to change it's size to the new video mode.
Sovcgencmd hdmi_timings 1920 1 23 25 39 240 1 4 3 15 0 0 0 60 0 6400000 1 tvservice -e "DMT 87" fbset -g 1920 240 1920 240 32 fbset -depth 8 && fbset -depth 32
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.