XBMC – ROM Collection Browser – retroarch: problem with screen

When trying to setup ROM Collection Browser2.0.0  plugin in XBMC 2:12.0-1 under Raspbian 7.0, kernel 3.6.11, I had problems related to screen display.

At first, emulator was launched correctly, but xbmc stayed at the top left corner, on top of the game. After searching in forums and trying several things  I tried Solo mode, but the situation was worse, the emulator display didn’t even show up.

Digging in the Python and shell script code, I found this solution: launcher.py, when solo mode is selected, runs applaunch.sh script, but this script tries to kill xbmc.bin process. This does not seem to work, at least in my configuration, XBMC continues being displayed even it retroarch is launched.

My modified applaunch.sh script does a sudo /etc/init.d/xbmc stop (I have set up sudoers file) instead of killing the xbmc.bin process. In the first version this did not remove XBMC last displayed screen, and the emulator didn’t appear on screen. The trick is to deactivate the HDMI output and activate again, like this:

#!/bin/bash

# Check for arguments
if [ -z "$*" ]; then
echo "No arguments provided."
echo "Usage:"
echo "launcher.sh [/path/to/]executable [arguments]"
exit
fi

echo "Trying to stop xbmc "
sudo /etc/init.d/xbmc stop
# Deactivates HDMI output
sudo /opt/vc/bin/tvservice -o
# Activates HDMI output again
sudo /opt/vc/bin/tvservice -p

# Wait for the kill
sleep 1

echo "$@"

# Launch app - escaped!
"$@"

echo "Emulator terminated"

# Done? Restart XBMC
sudo /etc/init.d/xbmc start

This way xbmc disapears and the emulator appears. Not very fast, but it works. If someone finds another better way, I would like to know…

Leave a comment