Building the Picade Mini Part V, final touches

In Part I I put together the cabinet, in Part II I got the main electronics installed, in Part III I created a custom rear jack panel, and in Part IV I got everything up and running 95% how I wanted.

After that last post, I took the machine to work to show off. Got lots of people to try it out, and the biggest bit of feedback was people wanted their MAME games. I also really wanted to play six-button Sega Genesis games. So I spent some time updating my secondary RetroPie build to the latest version, which gave me a much more functional Genesis emulator, including save state support and six-button controls. Then I switched to mame4all-pi, and put the correct MAME roms on the box, which finally gave me working MAME games.

Once I was sure the update would improve things without breaking my Picade, I went ahead and switched back to that build. I updated the Picade, and when that was done, it turns out I was using the wrong resolution before. The Picade Mini has a 4:3 screen, and I was outputting widescreen before. Once I fixed that, I changed the splashscreen to use the official Picade art from the Kickstarter.

The last bit of work was getting MAME working. It involved making all of the requisite folders mame4all-pi needs to save configs and high scores. Once that was done, I spent the time to go into MAME and reconfigure all of the controls to use what I have on my joystick. Everything I’ve done is in the updated configs file I’ve attached at the bottom of this post.

Here’s an updated video of the build in action:

And the original video if you missed it:



My Picade Configs [184k ZIP] Updated 02-JUL-2014

I’ve configured my build to use as much screen real estate as possible without compromising on aspect ratios. The buttons are set up such 1-6 on the top map to playing buttons (Y X L B A R), the front are for Start and Select, and the side buttons are Escape and Control. Holding the right side button while I hit another button performs various emulator commands:

  • Left side – exit the emulator and return to the menu
  • B (bottom row, first button) – lower volume
  • A (bottom row, 2nd button) – raise volume
  • R (bottom row, last button) – hits Ctrl+C to forcefully exit any game
  • Y (top row, first button) – load state
  • X (top row, 2nd button) – save state
  • Select – bring up emulator menu

Includes configs for all of the RetroArch emulators, and for mame4all-pi. Feel free to change the configs to support your own needs.

9 thoughts on “Building the Picade Mini Part V, final touches

  1. Hi John
    Great write up…don’t suppose you could post or email me your arduino script for the picade pcb. I’d like to use your retropie configs and want to Mke sure the key mapping are the same..

    Cheers in advance


    1. All of the configs I used, including the PCB code, are in the zip file at the end of the post. The only issue that I’ve found is the default RetroPie config I have config auto-save on, which messes up the keys when you launch the genesis emulator and it auto-saves the genesis keys over the defaults.

  2. Thanks Jon, found the file. I have reprogrammed the picade now with your settings and uploaded all your configs. Everything seems to be working other than that I can’t start any games? i.e. in Mame I can add coins etc but player 1 start isn’t working. Nothing happens. Same in NES too. When I connect the picade to my mac as keyboard the player 1 start button correctly works as ‘q’ though. Weird. Did you come across this at all? Sorry for pestering you…

    1. What game won’t start in MAME? Some games use 1P Start, some just use a fire button. Did you see my note about disabling the config auto-save? I’ll double-check the files I uploaded, it’s possible I’m missing something.

      1. Hi Jon
        I got it working thanks, I had to override the player 1 start input for each emulator for some reason (with the same value) in the cfg file for each which got it working. Not sure why the global value didn’t work.
        Im all working now, thanks a lot for your help and files, great to have!

  3. Hi Jon,
    thanks for the great write-up(s).
    I’ve downloaded and installed your config.
    While MAME works great, I’m unable to get SNES to work. It can not open the input driver …

    RetroArch [WARN] :: system_directory is not set in config. Assuming system directory is same folder as game: “”.
    No ROM file header found.
    “…” [checksum ok] HiROM, 32Mbits, Type: ROM only, Mode: 21, TV: PAL, S-RAM: 0Kb, ROMId: B??\ Company: ??
    RetroArch [WARN] :: [GL]: Stock GLSL shaders will be used.
    RetroArch [ERROR] :: Cannot init input driver. Exiting …
    RetroArch [ERROR] :: Fatal error received in: “init_video_input()”

    I’m using:
    RetroArch: Frontend for libretro — v1.0.0.2 — b109b9b —

    Any ideas?

  4. FWIW, I’ve updated the config link to the “latest” config I’m using. I had accidentally left “auto save config on exit” on – which meant as I switched between emulators, the button configs would overwrite one another, so the configs were all messed up.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.