Monthly Archives: July 2013

Software: Installing ROMs

This may sound a bit obvious, but the default location to install ROMs is:

/usr/local/bin/indiecity/InstalledApps/mame4all_pi/Full/roms

…and there’s no need to un-zip them.

Also, there’s a lot of sites that have ROMs, but here’s where I’m starting out:

http://www.romnation.net/srv/roms/mame103.html

Right now, I’m just going with MAME4ALL as my emulator. Eventually, I’d like to get some NES games going as well, but that requires another emulator so I’m getting all the other kinks worked out first.

Joysticks are back out-of-stock

Wow, that was fast. I got an email yesterday afternoon from Adafruit saying the joysticks were back in stock. I ordered yesterday evening (and they’re in the mail today…woohoo). I just checked today, they’re out of stock already (less than 24 hours in-stock).  Glad I didn’t wait. 🙂  Even though the note on the Adafruit website says restocking takes 5-10 days, this last restock took closer to a month (which is about how long it takes to get a container from China).

Hardware: Purchasing Arcade Controls

The joysticks are finally back in stock at Adafruit. To make two controllers, I bought two joysticks; 6 buttons two each of red, white, and blue; and a batch of female-female jumpers (way more than I need though). The plans here only call for two buttons, and the original NES only has two game buttons (excluding the start and reset)…but since a RJ45 has enough wires in it for 3 buttons, I thought I’d go ahead and do 3. Total was $69.63 for enough parts (and some leftovers) to make two controllers.

Hardware: Raspberry Pi configuration

So the joysticks are out of stock and it looks like it’ll be a few weeks before they’re back in. Things are kind of on hold as those are a bit of a gating item. Until I get joysticks, I’ll just look for 2-player games where both players can play at the same time (not have to take turns). I’ve debated a couple times about just looking for two old game controllers online, but the more I think about it the more I’d like to just build my own controllers as the physical building process is what I want to expose my son to. The software stuff is still over is head (we had a rather lengthy discussion of what a “file” is), but he understands a simple circuit and older controllers (pretty much everything before the NES, so like 1st and 2nd generation consoles) are basically just a group of simple circuits.

Here’s the rest of my setup:

  • 512MB Model B Raspberry Pi overclocked to 900Mhz.
  • 42″ TV for my monitor with an HDMI connection. I know, I know it’s “only” a 42″ TV, but it fits the location.
  • Logitech k400 Keyboard – I have a few keyboards already, but I’ve been wanting this one for awhile. My current wireless keyboard is full-sized and between that and the mouse it’s more than a bit cumbersome when you’re on the couch. I got it on sale for $30 even though I think that’s a bit crazy as the computer cost less than $50 including tax and shipping. There’s a lot of forum posts that say they’ve had issues with this keyboard. My only issue was some of the shift-symbols on the numbers would revert to UK settings (like ” instead of @). This only happened when I’d swap between a traditional keyboard and the wireless keyboard. An extra reboot would straighten it out though. Also, I haven’t used the USB dongle or the keyboard on any other computers (which causes some people problems). I figured if I had issues with it on the Raspberry Pi, I’d either return it or just use it for my desktop, but I haven’t had any problems at all since I’ve stopped swapping keyboards.
  • Lego case similar to this one – My colors aren’t all red as we just used what we had. When I did the base, I just made something that’s 9×13 and built up from there.
  • Blackberry charger for my power source (5v, 700mA).
  • SanDisk 32GB Ultra UHS-1 Micro SD card with Noobs installed on it. — and from this post, it looks like I could have just went with a much cheaper and better performing card.
  • I’m using the traditional Ethernet port, not Wifi.

I’m going to keep track of how much this rig costs me at the end of the day. I’m not going to count the wireless keyboard as it was really unnecessary. I’m also not counting anything that I didn’t have to purchase (stuff laying around the house).

So far I’m at $43.93 for the Pi from Element14 and $28.73 for the SD card from Staples (thought I had an extra one laying around, but can’t seem to find one that’s not in a camera). $72.66

Games: What I’m looking for and reviewing

I’ve had a chance to mess with a few arcade games. The MAME list seems to be a bit hit-or-miss (e.g. can’t play Donkey Kong, but can play Donkey Kong Jr.).  I’ve decided to focus on these types of games:

  • Two-player games where both players can play at the same time.
  • Games that only require a joystick and only two buttons (so pretty much everything NES and before).
  • My kid is 5 so nothing that’s too “I’m playing a person and he’s killing stuff with guns and knives”…like Contra or River City Ransom (although saying that I did play the heck out of those games, but I was about twice his age).

I’ll document each game in a separate post under the “Games” category. If anyone is reading this and has a recommendation, it’d be greatly appreciated.

Some off the top of my head:

  • Mario Brothers
  • Super Mario Brothers
  • Teenage Mutant Ninja Turtles (debating if this falls into the “kid too young” category, its not like he doesn’t have plenty of other options)
  • Donkey Kong Jr. Math
  • Robotron
  • Spy vs Spy
  • Gauntlet
  • Bubble Bobble
  • Chip n Dale

Software: Overclocking the Raspberry Pi

At this point I decided to overclock the Raspberry Pi…not really because of MAME, but more because surfing the Internet was a rather slow process.  I chose the medium 900Mhz setting and I do believe I notice an improvement, especially when opening applications. I suppose I could try the 950 or 1000 Mhz settings, but I’d like to get everything running smoothly before I start messing with higher clock settings.

There’s a very good overclocking tutorial in Issue 7 of MagPi.

Software: Installing Emulator – MAME4ALL

This is mostly from this post. Of the four emulators listed, MAME4ALL, PisNES, pcsx_reARMed, and Atari800, I chose MAME (no real reason other than it just seemed like there was a large selection of games).

Installing MAME was as easy as the the article notes…just click on the Pi Store icon, select the Games category, go down to MAME4ALL, and select “Free Download”.

The problem I had from here is that when Mame installed, I didn’t get an icon on the desktop, and I don’t see one in any of the directories under the “Start” button. I don’t like going to the Pi Store every time I want to launch an application, so I created a desktop shortcut to MAME by doing this:

Right click on the Desktop and select Create New -> Blank File

I called mine “Arcade.desktop” (you need to have the “.desktop” extension but you can name it whatever you want)

Right click on the newly created file and open it with Leafpad by selecting “Leafpad”

I then pasted in the following:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Arcade
Comment=Mame
Icon=/usr/share/pixmaps/leafpad.xpm
Exec=/usr/local/bin/indiecity/InstalledApps/mame4all_pi/Full/mame
Terminal=false
Categories=Games

This has the leafpad icon as an option. You can put in whatever you wish and I would guess putting your own icon off the Internet would be pretty easy, but I haven’t bothered yet. I just went into the  listed directory at “/usr/share/pixmaps” and selected an icon that was a bit more attractive (so now this line says “Icon=/usr/share/pixmaps/cmake.xpm”).

So far, everything works pretty well when I test it out (although for some games I have to just mash keys around until I figure out which one starts the game — usually the 6 or 7 key).

Starting Off

I bought a Raspberry Pi a few weeks ago for my 5yr old son and I to tinker around with. After some initial fumbling and giving some games a go, I found this article on Adafruit. I have a very small bit of Arduino experience and my only Linux experience was a good 15 years ago, but the whole project looks really doable. I thought it was a great idea, but after thinking about it a bit, I decided I don’t want the Rasberry Pi in the control box (I’d still like it to feel like a regular computer). I thought of somehow setting things up so that one or two controllers can be connected by cable to the Raspberry Pi…turning it into a sort of console gaming machine when the mood hits us.

I’m calling the idea my PixBox.