So I got sidetracked on MAME and have been building a frontend specifically for MAME as an Android App.
Currently calling it
andMAME.
Have it working and will try to make a demo video soon.
The Android App allows you to select from a list of roms that are defined in a list. The list could also be populated from contents of your roms folder.
I'm using wheel art (taken from Hyperspin) to list games and they're selected by scrolling through them in a list.
Marquees, game videos and background music are changed dynamically based on the currently selected game.
This content is simply placed into folders.
When launched, the App will check if bezel art is available to display on left/right of display.
App will need root permission.
I'm using a local Webview to drive the frontend and it interfaces with Tasker (using Javascript) to execute Android events (e.g. highlight game, launch game).
Webview code currently looks like this: - if you're interested in this stuff?
<!-- andMAME Frontend by Degenatrons, July 2013-->
<!-- Webview component to list roms and trigger "highlight" and "launch" events in Tasker -->
<style>
body {
background:url(file:///mnt/external_sd/andMAME/theme/window.jpg) no-repeat fixed top left;
background-size: 100%;
text-align: center;
font-size: 57px;
margin: 0px 0px 0px 0px;
}
img {
padding-top: 11px;
padding-left: 4px;
padding-right: 4px;
{
</style>
<script type="text/javascript">
function list(rom, show_bezel) {
var img_dir = "file:///mnt/external_sd/andMAME/wheel/";
document.write('<a href="#"');
document.write(' onfocus="performTask(' "'highlight',10,'" rom "'" ')" ');
document.write(' onclick="performTask(' "'launch',10,'" rom "'," show_bezel ')">');
document.write('<img height="42px" src="' img_dir rom '.png' '">');
document.write('</a>');
}
//======================================================
// List of roms to display in frontend view
// 1st parameter = rom name
// 2nd parameter = show bezel (0=False, 1=True)
//======================================================
list("arkanoid",0);
list("btime",1);
list("dkong",0);
list("dkongjr",1);
list("elevator",0);
list("frogger",0);
list("galaxian",1);
list("kungfum",1);
list("mspacman",1);
list("popeye",0);
list("rallyx",0);
list("scramble",0);
</script>
For test purposes I have 12 games which are specified directly in the webview. I plan to populate the list dynamically based on folder contents. No limit on number of games that can be listed.
Wheel art for games can be displayed 1 row per game or sized to fit into a grid (like above pics) based on image dimensions.
The theme needs some design tweaks.
I found the background image showing the arcade cab on the interwebs. It would be possible to swap this out with templates from other FE's like MALA.
I'm using Tasker to package the App and to generate an .apk installer. It relies on my modded version of RetroArch mentioned above.
I'll add the App to my MAME screen on the Android 2600 launcher.