I’ve got a homemade vertical arcade machine that currently runs Batocera and I’m trying to migrate to Emuelec (4.6). In Batocera under the system settings menu there’s a screen rotation option to rotate the display by 90, 180 and 270 degrees but I can’t find the same option in Emuelec. Is there a way to enable this in Emuelec or anyway of rotating the UI?
EmuELEC doesnt support it without hacks to the source. I might add this feature soon. Note that not all emulators will be able to rotate the display.
I’ve actually sort of got this working by editing the custom_start.ch and launching emulation station from there with the command line emulationstation --screenrotate 1
.
Whilst it works, I’m not sure its the right way of doing it! Is there a more appropriate place to edit the emulationstation command line or is this the correct way of doing it?
retroarch has a similar rotate config. However I was researching if you could rotate the linux frame buffer without the emulators having to do it. But it seems it needs rotate support in the kernel to do it:
linux kernel
fbcon=rotate:<n>
This option changes the orientation angle of the console display. The value ‘n’ accepts the following:
0 - normal orientation (0 degree)
1 - clockwise orientation (90 degrees)
2 - upside down orientation (180 degrees)
3 - counterclockwise orientation (270 degrees)
The angle can be changed anytime afterwards by ‘echoing’ the same numbers to any one of the 2 attributes found in /sys/class/graphics/fbcon:
rotate - rotate the display of the active console
rotate_all - rotate the display of all consoles
Console rotation will only become available if Framebuffer Console Rotation support is compiled in your kernel.
NOTE: This is purely console rotation. Any other applications that use the framebuffer will remain at their ‘normal’ orientation. Actually, the underlying fb driver is totally ignorant of console rotation.
ref:
https://www.kernel.org/doc/html/latest/fb/fbcon.html?highlight=rotate
update:
You have to add in linux kernel option to rotate the screen but not sure if it would work in EmuELEC.
CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y