Build Advmame and Advmenu on a Beagle Bone Black

You must be running a Debian or Ubuntu distribution for these steps to work.
Install required packages
apt-get install apt-file build-essential zlib1g-dev libexpat1-dev x11proto-video-dev libxv-dev libsdl-gfx1.2-dev libsdl1.2-dev
Advmame
  1. wget http://sourceforge.net/projects/advancemame/files/advancemame/1.2/advancemame-1.2.tar.gz/download -O advancemame-1.2.tar.gz
  2. tar -xzvf  advancemame-1.2.tar.gz
  3. cd advancemame-1.2
  4. ./configure –enable-static
  5. make
  6. make install
 Advmenu
  1. wget http://prdownloads.sourceforge.net/advancemame/advancemenu-2.7.tar.gz?download -O advancemenu-2.7.tar.gz
  2. tar -xzvf  advancemenu-2.7.tar.gz
  3. cd advancemenu-2.7
  4. ./configure –enable-static
  5. make
  6. make install

16 thoughts on “Build Advmame and Advmenu on a Beagle Bone Black

  1. I tried this but I saw a bunch of error messages like:

    undefined reference to `driver_crystalg’

    Looking at the advancemame docs, it looks like I need to build mame first, then drop a some files into the advancemame tree. Is that what you did? Meanwhile, I’ve downloaded the mamebone image and it’s looking good. I don’t have a keyboard attached, so I’ve only tested as far as the initial menu. What display are you using? I’m using the 4D 7″ touch LCD from SparkFun, and the menu is cropped. I need to read up. I’m assuming there’s a way to adjust that layout for your resolution?

    • I’m in the process of updating the BBB image and was able to compile advmame without any problems this afternoon. Just make sure you install all the package dependencies first. You do not need to build mame first. Even if you are successful it will not work. You could always just take the advmame binary from my image if your really wanted.

      I have that same touch LCD. Great display. You can adjust the size of advmenu by editing the /home/mame/emulators/.advance/advmenu.rc file. Advmenu scaling is not real flexible so it may not be possible to get it fit the screen perfectly.

  2. Ahhh I totally get it now. I downloaded the 0.5 image from an older post that I found through the googles. I see you have newer images and I will try those tomorrow! I did manage to get wahcade to run with the 640×480 layout, but something with the retro_black version was causing errors. retro_white works fine. The new menu sounds great because I was just scratching my head about how to rebuild the list in wahcade. 🙂 Thanks.

  3. Yes, but its not as clean as I would like so I have not created a new post for it yet. I was able to remove all the X dependencies. You now have a lot more free space on the internal storage and marginally slow games should be playable now. The trade off is some ugly hacks required to make advmenu to play nice.

    If you have any problems or questions let me know. Grab it from here:
    http://gencarelle.com/public_files/mamebone/mamebone-1.2.rar

  4. I’m curious how you eliminated X from the picture. Mamebone is Debian, correct? I’ve been trying to get quite a few things to use the framebuffer on the LCD7 and haven’t had much luck. mplayer works great with the fbdev2 driver, but nothing else. I don’t know if it’s possible to use fbdev2 with SDL for emulators, etc. I’ve compiled SDL with fbcon and directfb enabled but I’m having all sorts of runtime errors and permission issues. Any pointers? If I can figure out how to back up my current work, I’ll download your image and take a look at what you’ve set up. Thanks!

  5. Correct, I started with a Debian image. Both advmame and advmenu work using SDL and you will need to install the SGX drivers (http://elinux.org/BeagleBoardDebian#SGX_Drivers) Also, you must run everything as root. Its supposed to be possible to use a normal user account but I couldn’t get it working.

    Besides all that what is really ugly with this image is running advmenu to start advmame games hangs the system. The workaround I came up with was to not run advmame directly from advmenu. Advmenu runs a script that kills the advmenu process and then runs the selected game. When you exit the game the script then start advmenu again.

  6. Thanks. I don’t think I’ve tried SGX but I definitely will. I’ll check out your latest image too. Did you leave the source and build configurations anywhere to look at? I’m looking at the .11 image and don’t see them.

    • Nope, I actually did all the builds on another SD memory module. I wanted to make the MAME image as small as possible to leave room for the most amount of games. The build was really straight forward.

  7. Eeek SGX looks heavy. I’m not set up to cross compile yet but maybe now’s a good time to start.

  8. Perfect. I will try that out tonight. I’m trying to get fceux and dgen to work. Fceux works ok under X. Dgen has some bugs, but I’m hopeful.

  9. Did you need to upgrade your kernel to 3.14+ in order to install the SGX drivers? I just tried that and found that capemgr is gone. Oops.

  10. I was playing around with the image this weekend and found what you already know… the capemgr is not built in to the ti kernel. I’ll try patching and rebuilding the kernel with the missing bits sometime this week.

Comments are closed.