Raspberry Pi and Retro Arcade Adventures – Part 4 – ROM COMS and happily ever afters …
So the in the previous three parts I took trip down memory lane of my past love affairs with retro gaming from the late 1980’s and through the 1990’s, chartered my progress of building a modern day arcade machine based around Raspberry Pi and then went through the same project in part 3 with my son at the helm of the build. You can catch up on those from the links below:
It has been all rather spiffing with lots of fun being had by all I have to say!
What we need now are some games – but before we get into that it’s probably worth covering off some concepts and legalities.
Historically, ROMS in the context of this series of blog posts were a collection of chips soldered onto the main PCBs of arcade machines that contained the BIOS and software that essentially made up the respective game.
These days many of these ROMS from yesteryear still exist on the Internet and can be downloaded. They are in effect soft images of the originals – however here inlies a problem!
ROMS are typically copyrighted software. Even from way back in 1989. Yes; it’s true the original company that wrote the software may have gone out of business – but typically the copyright will still belong to someone.
That is why in this post I will not be using any ROMS that I know to belong to someone else – nor – will I show you how you can get access to such software.
What I will do is go through what I understand to the legalities so you have an understanding of them and I will show you how you install legal ROMS so you have an idea of how the process actually works.
First things first – what are emulators?
So, in a word an emulator is exactly what it says on the tin – it’s a bit of software that pretends to be another bit of software in order to let other software run (got that?). In the case of RetroPie there are a number of emulators supplied pre-installed some of which are detailed below:
- Atari 2600
- Atari 7800
- Atari Lynx
- GCE Vectrex
- NEC TurboGrafx-16
- Nintendo 64
- Nintendo Entertainment System
- Nintendo Super NES
- Nintendo Game Boy
- Nintendo Game Boy Colour
- Nintendo Game Boy Advance
- Nintendo Virtual Boy
- Sega 32X
- Sega CD
- Sega Master System
- Sega Genesis
- Sega Game Gear
- Sega Saturn
- SNK Neo Geo
- SNK Neo Geo Pocket Colour
- Sony PlayStation
- Sony PSP
Multiple Arcade Machine Emulator (MAME) was an open source project started in 1996 by an Italian programmer called Nicola Salmoria.
Originally named “Multi-Pac” it was designed to preserve in history Pac-Man and it’s derivatives. However as time went on and more games were added the name was changed to MAME.
There are a vast number of ROMS out there on the Internet (legal and not so legal) – but MAME is potentially the emulator that you will use the most on RetroPie.
Are emulators legal?
In a word, yes. They are for the most part not the original systems – but merely retro-engineered software that is designed to (funnily enough) emulate the functionality of the original operating environments. There are perhaps some exceptions to this rule in the context of emulators which make use of proprietary BIOS which are no doubt covered by some copyright somewhere – but for the purposes of the question are they legal? – yes they are!
OK, but what about ROMS?
ROMS are a legal mine field – but generally I would say that if you have found your favourite game from many years ago online and you download it without paying via a legitimate means – you are breaking the law!
It’s not really different to downloading a film from many years ago from Orion pictures (Robocop for example). Just because Orion went defunct doesn’t mean that you can now download it or distribute it; as the copyright will belong to someone else – the same principal applies to older games.
There are, of course “grey areas” – for example; if you own a game that you actually bought for the NES which you now want to emulate on the piCADE you could argue that you have the right to do so – however the counter argument could be that the piCADE is a different platform – therefore the original copyright owner has lost out on revenue. Think of it this way – if you bought Call of Duty on the XBOX – that doesn’t mean that you get to use the PS4 version for free.
Now, I have said that – I mentioned that this is all a very grey area. For example; there isn’t a lot of case law that I am aware of where individuals have been prosecuted in the case of retro ROMs and indeed where there is case law – that tends to be on sites that are distributing large quantities of copyrighted material.
It is further complicated where you have industries such as music where shifting music between devices where you have paid for the original is acceptable (for example; where you have Spotify on an iPhone, Mac, PC or other smart device).
There is also the case of “Abandonware”. This is where the original company or author has gone out of business or cannot be located. These titles are almost always under copyright – but – it’s rarely enforced because there is no one around to do so!
However, for the purposes of my own site and integrity I can only recommend using ROMS with your piCADE that you have purchased from or acquired form a legitimate source.
I once did a lot of software development via this very site and I know what it is like to have your own work copied and passed off as someone else’s (and in one case having someone sell your efforts for profit) – so I do not condone theft of any kind.
If you are looking for legitimate sources – there is a list in the RetroPie forums.
I am sure that if you really wish to track down sites where you can download less than legal ROMS – you will find them via Google. But as a further word of warning aside from the legal issues – I have found that even with legitimate ROMS you sometimes need to persevere with looking as sometimes you may find some which are for different regions / video modes than what your emulator supports.
You will know when this happens as it will look like the games are loading – but you will be taken back to the relevant emulator selection screen in EmulationStation.
Right – so I have my Picade all set and RetroPie installed – but I can’t see any emulators – what the Feck!
Well, you won’t see anything aside from the settings menu when RetroPie first boots up – the is because the emulators only become active on the main screen when ROMS are found in their respective directories. In order to get access to these directories and populate them with ROMS you need to install an FTP client capable of SSH transfer to your local machine.
I personally use FileZilla – it’s free and provides most of the functions that you could possibly want in a transfer client.
Setting FileZilla up is a straight forward affair – I have provided some screen shots below of the process that you can follow when you start launch the application.
Configuring your piCADE as a host.
You may be prompted to trust the certificate of your piCADE – in order to do so before you connect to it – follow the instructions from the screen shot below.
When you have connected to your piCADE – within FileZilla two of the applications viewing planes are of the most interest:
- This pane is the local directory view of your computer. When you download ROMS – place them in a local directory and navigate to it here.
- This is the remote view of the Picade’s filesystem. You will need to navigate to:
Within this folder are the emulator directories that you will need to drag your local ROMS over to. Once they have been copied – you will need to restart Emulation Station for them to show up on the Picade.
EmulationStation is the defacto Graphica User Interface for RetroPie.
The name EmulationStation is slightly misleading as it’s not an emulator but is a graphical front end for the real emulators within RetroPie. EmulationStation provides a number key features that bring together the whole piCADE ecosystem which include:
- Controller and keyboard functionality
- Supplied and customised themes
- Internet search based game art and metadata
To restart EmulationStation – hit the start button on your piCADE. If you have been following this guide for the button layout the start button is highlighted in the image below:
From the Main Menu that appears choose the “Quit” option.
The select “Restart EmulationStation” option:
When EmulationStation has restarted you will see that the emulator for the game that you have selected is now on the home screen:
And your game will be available from within the emulator:
So now you know some of the legal considerations around ROMS when using your piCADE and how you can upload those ROMS and play them.
In the next part I will cover the following:
- Managing RetroPie updates on your piCADE.
- What is likely to break when you perform them (trust me, shit breaks).
- Some of the weird and wonderful configuration changes that you might need to make so it remains operatble after you have built it.