Episode Transcript
Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Speaker 1 (00:04):
Welcome to tech Stuff, a production from iHeartRadio. Hey there,
and welcome to tech Stuff. I'm your host, Jonathan Strickland.
I'm an executive producer with iHeartRadio, and how the tech
are you? It's time for a tech Stuff classic episode.
This episode originally published March first, twenty seventeen. It is
(00:27):
titled how Video Game Emulators Work. And I've often thought
about getting like an Arcade setup running a video game emulator.
Never done it because while most of those titles that
I would want to play are not really available through
any legitimate means, I can't reconcile the fact that a
(00:52):
lot of video game emulator solutions involve essentially just kind
of stealing intellectual property. But let's listen to this classic episode.
Just letting you guys know, in case you're wondering, like,
whys Jonathan sound so weird, or rather more weird than
he normally sounds, is because I am recovering from said cold,
(01:14):
and my voice is probably somewhere between eighty and ninety
percent back.
Speaker 2 (01:18):
So got that out of the way.
Speaker 1 (01:20):
Today's episode is actually coming to us courtesy of a
little listener male or actually it's from a listener tweet Now,
remember the tech stuff Twitter handle is tech Stuff HSW
so if you tweet me there, I will see it.
And this one comes from Dan who says I'd love
to hear a show on how video game emulators work.
(01:43):
So today we're going to explore what an emulator is,
why they're necessary, in how they work. Now, first of all,
I should say there are a lot of different types
of emulators. It's not just for the video game world,
but I'm going to focus specifically on video games. And
you might wonder our, right, So what is an emulator? Well,
it does what it sounds like. It emulates some other technology,
(02:06):
which means it's attempting to replicate how another technology works
or what it does. Now, sometimes the emulator does this
in a very different way than the original technology did.
And more often than not, an emulator relies on software
at least partly to replicate a particular piece of a
hardware's functionality. So you can think of emulators as being
(02:27):
at least partly a virtual machine. Some of the components
may actually be physical parts that are original to whatever
the technology you're trying to emulate was. Other components are
going to be purely software, and it's helpful to use
a little analogy here to understand what an emulator tries
(02:48):
to do.
Speaker 2 (02:49):
So let's say you got two people.
Speaker 1 (02:51):
And you know what, let's give them some random name. So,
just picking out of the air, I'm going to go
with Josh and Chuck. Now, both Josh and Chuck are
in a jungle, but they are separated, so they're each
individually in a jungle. Both are running from something. Let's
say they're being chased by aggressive badgers. So both of
them have managed to put some distance between themselves and
(03:13):
the fur balls of fury chasing them. And then each
of them individually comes to the edge of a pit
two different pits. So Josh is at one pit, Chuck
is at a different pit. There's no way around the pits.
There's too much overgrowth on either side, so you have
to go over it somehow, but you can't go around.
They each have a short amount of time to figure
out a way around, or rather over.
Speaker 2 (03:35):
Their respective pits.
Speaker 1 (03:37):
So Josh decides what he's going to do is fashion
a makeshift bridge out of some branches on the ground
and some vines, and so he binds them together and
he lays the bridge across the pit he crosses gingerly across,
because we know that Josh's sense of balance is somewhat
precarious under the best of circumstances. He gets to the
other side and then he kicks the bridge back into
(03:58):
the pit so that the badgers can't just follow him across,
and then he continues on his merry way. Meanwhile, Chuck,
on the other hand, uses a vine to tie it
to a branch and use that as kind of a
grappling hook. He tosses it up into the limbs overhead
and it catches, and so then he swings Tarzan like,
bellowing the whole time, and he gets to the other side.
(04:20):
Then he jerks the vine and dislodges the branch so
that it falls down and throws that into the pit
just in case. Badgers can also swing across pits. But
that's because he has not yet read how badgers work
on HowStuffWorks dot com. So both Josh and Chuck got
across their respective pits, but they both did so in
(04:41):
very different ways. The end result was the same, but
the pathway was different. That's sort of what emulators do.
They're meant to produce a result that's identical to another technology,
even if the pathway to get there is very different.
A video game emulator is really meant to replicate how
a specific machine works so that you can play the
(05:01):
games that were designed for that machine, typically on a
computer a PC. So an emulator could be a specific
arcade game emulator, like for a very specific title, or
it could be a video game console emulator, which means
it could act like a video game console virtually and
you could play the games made for that console on
(05:23):
your computer. The end result is that you can play
those games meant for one device on a totally different device,
and as I said before, typically we're talking about a
personal computer. Now, emulators are not the same thing as ports.
A ported game is one that developers originally created for
one architecture system and then they adapt that game for
(05:44):
a totally different system. So the easiest example is a
game that originally comes out on the PlayStation might get
ported to the Xbox. These are totally different architectures. The
video game consoles work in very different ways, so you
can't just reformat and put it on an Xbox one
(06:05):
disk and expect it to work. You actually have to
redesign parts of the game that's what porting is all
about now. Because each system, whether it's Xbox or PlayStation
or mac os or Windows, works in a very specific way.
Speaker 2 (06:17):
Those programs are.
Speaker 1 (06:18):
Not compatible, but a port can be reworked so that
it will operate on those new systems. Now, an emulator
is different. An emulator can run a game meant for
one system on a totally different system because the emulator
is doing the work.
Speaker 2 (06:33):
So instead of.
Speaker 1 (06:34):
Giving a game to a new group of developers and
saying I need you to make this version of the
game playable for this other system, you have a piece
of software that pretends that it is the other system,
and that way you don't have to have developers change
the code of the of the original game. You do
(06:55):
have to have developers create the emulator. So it really
just shifts the world from adapting a game to a
different system to adapting an emulator to be able to
work on whatever target machine you're talking about. Like I said,
typically a PC, more often than not it's a Windows
based PC, but you also see them for Unix and
mac os, so it's not like it's exclusive to Windows machines.
(07:20):
Now it's necessary because video game consoles and even arcade
games like the old arcade game cabinets, they have specific
hardware and software architecture to them. So some of those
old arcade machines don't really even have much software at all.
It's like the lightest level of software. It's mostly circuitry,
like hard coded circuitry. The game itself is represented in
(07:45):
the circuits that are on the board within the arcade cabinet.
It's kind of like the old cartridge based systems if
you had one of those, like the old Nintendo Entertainment
System or Super Nintendo or the Atari. Those are video
games that would be programmed onto a circuit board that's
housed inside of a cartridge, and you insert the cartridge
(08:07):
into the video game console and some contacts between the
console and the cartridge allow the console to read that
information and then you're able to play the game. Obviously,
you don't have, for most PCs, a cartridge based system
that can accept these games in this way. Now, in
(08:29):
the olden days, arcade games contained a circuit board unique
to that particular game. So in other words, an Asteroid's
machine was an Asteroids machine. That's all there was to it,
because the circuit board had the Asteroids game on it.
If you opened up a pac Man machine and you
opened up a Donkey Kong machine, you'd find two different
(08:50):
circuit boards. The pac Man one and the Donkey Kong
one would be unique to those arcade games.
Speaker 2 (08:56):
They did have a very.
Speaker 1 (08:57):
Low level of software on the machines, on the circuit
boards called BIOS now that stands for Basic Input Output System,
and really it's just a foundational software layer. It's really
just meant to be responsible for managing the relationship between
input devices like a push button or a joystick or
(09:19):
that sort of stuff, and the output devices like the monitor,
or even just what the game is supposed to do
whenever you enact on those input devices. So the input
could be a jump button, for example, you press the
button and the output is you see your character jumping
(09:40):
on the display. But keep in mind, the actual output
is really the code for jumping and a signal to
the arcade machine's display. Right, the display is not making
your character jump. That's being controlled by the code of
the arcade machine itself. It's reflected on the monitor in
a way that you can see by having the little
(10:00):
character jump up.
Speaker 2 (10:01):
In the air.
Speaker 1 (10:03):
Now, the game's circuit board handled everything else in those
old machines, Besides that input output, the hardware was handling everything.
It was just programmed directly onto the circuit board, and
that included the game's sound, its graphics engine, its logic.
If you had an Arcade cabinet and you wanted to
switch out games. Let's say you've got a Pacmand cabinet
(10:24):
and you think I'm gonna put Donkey Kong in this cabinet,
I'm gonna I want to switch out the games. What
you had to do was gut the machine. You had
to take all that circuitry and those connections out of
the machine, the Pacman machine, and replace them with the
ones from a Donkey Kong machine. You couldn't just swap
out a certain element. You had to do pretty extensive surgery.
(10:47):
It took some time, usually, you know, half hour an
hour easy to switch these things out. Later on, it
got a little simplified. First, it got simplified in the
the adoption of some more standardized connectors. So that meant
that you could start to disconnect a circuit board from
the rest of a system, and assuming that the control
(11:08):
scheme is similar from the old game to the new game,
you could plug the new circuit board into a cabinet
and it would work pretty well. Now, obviously, that only
works if your control scheme is the same. So, for example,
if you're playing pac Man, there's no jump button, right,
there's a player one, a player two, and then there's
the joystick that has for motion control, and you just
(11:32):
control the pac Man character that way. But let's say
you want to play Centipede. Centipede is a very different
type of game. It has a rollerball controller, so you
have a ball that you swipe and you can move
your character that way, and it has a fire button
where you shoot whenever you press the button. So if
you were to switch out the pac Man to the
(11:56):
Centipede boards, assuming that they had these universal connectors, you
still would have to switch out the control system as well,
or else you wouldn't really be able to control the
game Centipede the way it was meant to be played,
Particularly since you wouldn't have a fire button, that would
be a problem. Later on, arcade manufacturers would create machines
(12:16):
that had the basic hardware set up so that different
games could be plugged into the system more like a
video game console. So this was even simpler than the
universal kind of standardized controls. This was more about like
a set structure where you plug in a chip essentially
that has the game on it and everything else remains
(12:38):
the same. So kind of like a video game console
where if you're playing a Nintendo and you wanted to
stop playing Super Mario Brothers instead play Gumshoe, then you
could turn off the console, pull one cartridge out, put
the other cartridge in, turn it on, and there you go.
Same sort of thing with these old arcade machines. Once
they got to this level of sophistication, it was still
(13:01):
a bit of a pain in the butt because he
still had to open everything up and get in among
all the wires and stuff, but it was still way
faster than the old days where you had to replace
everything essentially. Now the games themselves are called ROMs.
Speaker 2 (13:17):
MS.
Speaker 1 (13:18):
Now ROM is an acronym. It stands for read only memory.
That meant the player or anyone else couldn't write anything
to the game. Now, they might have something on the
circuit board, some temporary memory in the arcade machine that
would allow players to put in initials next to high score,
and that would be stored in that memory CHEP, but
(13:39):
the game itself was immutable. You could not change the game.
It was the computer equivalent of being set in stone.
So in the emulator world, we generally refer to game
files as in the software that represents that game as
a ROM. If you've ever used an emulator, you're probably
familiar with ROM. And there's a big legality question people
(14:03):
have when it comes to ROMs, and I'll get to
that later in the episode. At the end, I'm going
to spend time talking about the legality of read only
memory files and whether or not it is legal to
download them, But for now, let's just focus on the
technical side of things. We'll get to the legal stuff
at the end. So you got various types of games,
each designed to run on specific hardware. And there are
(14:26):
the standalone arcade machines that each had their own peculiar architecture.
They're the later arcade machines that could accept different chips,
with each chip containing a different game. And then there
are the video game consoles and their proprietary game technologies.
You even got old computer games that were designed to
run on slower machines with much less computing power than
today's PCs. A lot of those are impossible to play
(14:48):
on later machines because they just they can't handle the
fact that they've got access to all that processing power.
So you might even need an emulator for a PC
based game on a PC.
Speaker 2 (15:01):
If it's old enough.
Speaker 1 (15:02):
If it's an old game, you may need an emulator
in order to run it a virtual machine of some sort.
Emulators are what let you run those games designed for
those older or other devices on a modern machine. So
I've got more to say about this, but before I
get into it, let's take a quick break to thank
our sponsor.
Speaker 2 (15:32):
All right, we're back now.
Speaker 1 (15:33):
There are two big categories for emulators, and this doesn't
depend upon the type of console or game you're trying
to emulate. It's universal. These two big categories are universal
no matter what system you're trying to emulate, so all
different systems, all different arcade games, emulators can fall into
one of two categories. There's low level emulation and there's
(15:57):
high level emulation. And it might be a little counterintuitive
what these mean, but with low level emulation, programmers are
trying to create software and or hardware that can pretend
to be the emulated hardware. In other words, you're trying
to replicate the actual mechanics, although it's not mechanical, it's electronic,
(16:22):
but the actual physical process I guess physical process doesn't
really work either, right, the actual logical process of the
original game system or arcade machine. So you want your
system to look from a high level as close to
that original system as you possibly can get it. Sometimes
(16:43):
that actually means including original hardware from the target machine
with the emulator, so that means you're not just replicating
the target machine, you're using some of its actual parts.
You're in part rebuilding the actual original machine. In fact,
the first couple of models of the PlayStation three actually
contained elements of the PlayStation two inside it in order
(17:07):
to provide some backwards capability. So if you wanted to
play a PlayStation two game on one of those early
PS three models, instead of it using the typical PS
three equipment inside the console, it would actually hand that
off to the PS two elements. So it was almost
like having two different video game consoles in the same box.
Speaker 2 (17:28):
You didn't know it.
Speaker 1 (17:29):
As a consumer, like, you don't see any of that happening.
It's all happening inside the console. But it wasn't a
PS three system reading the information and then playing it
on your screen. It was actually a PS two system
housed inside that PS three, So the PS three's core
system was acting as the emulator, but it was using
(17:53):
PS two hardware to actually read the information off of discs. Now,
if you're using something like an sixty four emulator, the
emulator's trying to replicate the way the N sixty four
is hardware worked, and the more sophisticated that target system is,
the more difficult this is to do.
Speaker 2 (18:10):
So.
Speaker 1 (18:11):
With low level emulation, the amount of processing power you
need on your computer to run the emulator so that
you can play those games the way they were meant
to be played. That processing power demand increases as the
complexity of the video game system you're emulating increases, which
makes sense, right. The more complicated the system, the greater
(18:32):
the demands are in processing power, particularly if the system
you're trying to emulate is remarkably different from PC architecture,
because your processors having to handle all of those differences
and it ends up creating a bigger drain on the
processor's ability. So if you've ever played a video game emulator,
(18:57):
and you've run a game and you're thinking, this thing
as slow as molasses, I'm barely able to get this
character moving. It's probably because you're experiencing that problem that
the emulator is probably a low level emulator. It's trying
to replicate that original system as closely as possible, and
as a result, your processor is having to work super
(19:19):
hard to keep up, even though the game might be
fairly simple. It can be very frustrating because you might
be playing a game that came out in like the
late eighties, and you're thinking, it's twenty seventeen. My computer
should be able to run this with no problem. But
the truth is the processor is trying to handle a
system so different from itself that that's what's causing the
(19:43):
slow down. I experienced this with a friend who had
an Arcade emulator, and he's had Ghosts and Goblins on there.
And I love that game. I loved it when it
came out, but as I started to play it, I thought,
this game is way slower than and I remember it
am I just remember getting incorrectly.
Speaker 2 (20:03):
Nope.
Speaker 1 (20:03):
Turned out it was because the emulator was putting too
great a demand on his system's processor, and as a result,
the game I was playing was much slower than what
it was supposed to be, and it's really hard to
make low level emulators efficient. Some games and systems require
multiple synchronization processes to make sure all the emulated components
(20:28):
are working together properly. So the more frequently that happens,
the more times that an emulator has to say, hey,
is everything all right and send that message out to
all the different components and wait for a response, the
more demands it places on that processor. So if you
want to have a really good low level emulator, you
need a computer with like a screaming fast processor. And
(20:53):
that could be again a little counterintuitive. You might think, well,
this game can run the latest computer games with no
frame rate issues at the highest graphic setting, everything's awesome,
But when I try to run this emulated game, everything
slows down. Why is that? It's because of this. Now,
then you have high level emulation. This is very different.
(21:15):
High level emulation simulates the functions of hardware, but doesn't
try to replicate those functions. So, in other words, all
it wants to do is get to that end result.
It doesn't care if it follows the same path as
the hardware. So this gets back to that Josh and
Chuck example I gave at the top of the show.
(21:35):
Both the vine and the bridge will get Chuck and
Josh across the pit, but they do it in different ways.
The end result is the same. That's what high level
emulation aims to do, so we call this abstraction. We
are able to create an environment in which a game
will work even if you're using totally different hardware because
(21:57):
of this level of abstraction. This is particularly handy for
game developers, not just people who want to play games,
but people who are making games, because you can develop
a game for a specific system using a level of abstraction,
and you can use whatever system you prefer to develop on.
(22:19):
So let's say you're a developer and that you use
a Mac as you're a computer, but you're developing a
game for the Xbox. A level of abstraction allows you
to do this on a virtual level, so that you're
developing an Xbox game in a Mac environment and you
don't have to have special equipment or anything like that.
(22:41):
You've abstracted all of the elements into a virtual realm.
So high level emulation uses shorthand for basic operations instead
of a specific pathway. So a low level emulator would
try to replicate the exact way a game saves information.
For example, a high level emulator would just say save
(23:03):
this data to the storage drive, and firmware would actually
handle the transaction. So the software hands it off to
the firmware that says, all right, what's the most efficient
way for me to do the task I've been asked
to do? That puts the least demand on the processor.
It's kind of like a voice activated assistant in a way.
As these systems get more robust, you can ask for
(23:25):
the same information in many different ways. So for example,
if I had an iPhone, I could ask Siri what
is the weather like outside? Or I could ask Siri
is it raining?
Speaker 2 (23:35):
Now? Both of those questions.
Speaker 1 (23:37):
Will get me a weather answer from Siri because the
system can actually handle the different ways to request essentially
the same information. Hardware abstraction does something similar. It interprets
a request and then it does the leg work to
fulfill that request. Now, there are three main ways that
high level emulators simulate hardware functions. The first is called interpreting.
(24:02):
The emulator will go through the code of the game
line by line in chunks and replicate what the instructions
are supposed to do, so, interpreting makes sense right like you,
It's kind of like if you were to read a
story and then tell somebody what does the story say?
Like what are the basic points of the story. Or
(24:22):
you're trying to tell someone about a movie you've seen
and you're giving them kind of a high level, bullet
point rundown of what the plot was all about. That's
what interpreting does, except it does it with code. Next
is a strategy called dynamic recompiling. Now that method actually
looks at blocks of code, looks at the instructions that
(24:46):
are the processor is supposed to carry out according to
that code, and then it starts looking for a more
efficient or optimized way to run those same instructions on
the actual computer you are using. So, in other words,
it's recom hiling the code for a different piece of hardware.
It's kind of like saying, all right, this was written
(25:06):
for an Atari twenty six hundred, I want to rewrite
it so that the same result will happen on the
PC that is running the software. Very interesting that this
can be done on an abstract level. And finally, there's
a strategy called list interception. Now this is relevant for
(25:28):
computers that use coprocessors, and for systems that you're trying
to emulate that also had coprocessors. Most PCs these days
have a coprocessor. The graphics processing unit is a coprocessor. Now,
those chips are meant to handle graphics, but they're also
really handy for parallel processing. You might have heard that
a lot of hackers use GPUs in order to do
(25:51):
brute force attacks against secure systems. This is because GPUs
can process stuff in parallel, which means you can have
a bunch of parallel processors all tackling the same problem,
going through different potential solutions, and that cuts down on
the amount of time it takes for you to find
the real answer. So with list interception, an emulator interrupts
(26:14):
a command list sent to the original device's coprocessor and
turns that into instructions that the actual host computer's graphics
processing unit can handle. So it's kind of like translating
text from one language to another. It intercepts the message
says okay, well, the GPU can't understand this the way
it's written, but I can take these instructions rewrite it
(26:36):
in a way that the GPU understands. And send it along,
And that's how that works. The big advantage of high
level emulators over low level emulators is that they require
less processing power to run games. So a well designed
high level emulator can run titles smoothly on a modest PC.
You don't need to have a killer gaming rig, but
(26:58):
a low level emulator would require that bf yeer processor
to handle demands. Now, the flip side is a low
level emulator tends to be more accurate when replicating a game,
and a high level emulator might not be able to
replicate all the things the game does because it's not
as specific to that system, like, it's not replicating the
(27:20):
system as faithfully.
Speaker 2 (27:21):
As a low level emulator would. So there are trade offs.
Speaker 1 (27:25):
So let's say you want to invest in an emulator
and some games, and just for argument's sake, let's say
that there's a legal way for you to buy the
games rather than just download them willy nilly. Like I
said before, I'm going to talk more about the legality
of all of this at the end of the show.
So what system should you go for if you want
an emulator? Well, that really depends on several factors. For one,
(27:47):
are you missed their money bags or miss money bags,
because if money's not an object, you might as well
go bonkers and trick out a nice low level emulator
system with a really really good gaming rig PC to
get the most authentic experience when you PLoP down to
a rousing game of Burger Time or Gauntlet two. Low
(28:08):
level emulators, particularly ones that include actual hardware used by
the system you're trying to emulate, get pretty pricy, and
remember you got to have that powerful processor to run
those emulators.
Speaker 2 (28:21):
And as opposed to.
Speaker 1 (28:22):
The high level emulator types, high level emulators don't require
as much horsepower from the host computer, which brings the
cost down. You don't need to buy a super fast computer.
In fact, you may already have a machine more than
capable of running a high level emulator program, so you
won't have to spring for that screaming gaming rig with
(28:42):
you would like for a low level emulator. But sometimes
those high level emulators cannot perfectly replicate whatever the target
system is the emulated system, so you might find certain
games don't have all the bells and whistles that they should,
and if you might even be unplayable, like you might
get a title a rom for a game you love,
(29:04):
and you have an emulator, a high level emulator for
that system or for that machine, and then you find
out you still can't play the game. Well, it might
not be that the file you got is corrupt.
Speaker 2 (29:13):
It may be that the.
Speaker 1 (29:14):
Emulator just isn't capable of replicating that game the way
it should. Now, mostly that depends upon the way the
original game developers programmed the original game. If they use
a lot of weird shortcuts and hacks to create the
game that would work on the target system, it may
not work on an emulated system. So in other words,
(29:35):
like let's say I've developed a game for the original Nintendo,
and the original Nintendo could totally handle these sort of
cludgy hacked processes I've created because I wanted to do
it to make a bunch of shortcuts. Like the code
looks messy as heck. If you look at the code,
but the gameplay doesn't reflect that, it's just fine. But
(29:58):
then you pull it over onto an emulaid system that's
more designed to handle games that are written to the
standard of Nintendo as opposed to just getting it done,
and you may find out that that game isn't really
playable on the EMULAID system. It's really frustrating if in
fact that was your goal from the start. So the
(30:22):
more standard of games code is, the better the chances
are that a high level emulator will be able to
handle it. Now, arguably one of the most popular types
of emulators is the multiple arcade machine emulator or MAN.
That's an open source emulator. An open source essentially means
the code is open for anyone to look at, to alter,
(30:45):
and even to re upload and distribute. So that means
as people find better ways to emulate a particular machine,
they can make adjustments to the code, and a new
version of the emulator can incorporate those changes. So if
it's a multiple arcade machine emulator, then you may have
a specific arcade cabinet that has not been emulated yet.
(31:08):
You might figure out how to do that, and you
add that code into a already existing MAME emulator, which
I understand is repetitive. See also my tire rate about
atm machines and pen numbers. But because you're able to
actually take that code and change it, then you can
(31:30):
increase the functionality for the community as a whole.
Speaker 2 (31:35):
Now, the stated purpose of.
Speaker 1 (31:37):
MAIME is to preserve games as an historical effort because
these old arcade machines relied on physical hardware, and a
lot of them are no longer in production. In fact,
most of them aren't in production anymore. So creating the
software that could run those games is a way to
preserve the games indefinitely instead of just have them get
(32:01):
older and older and older and eventually they just don't
work anymore. They break down to the point where it
doesn't matter if you have an original arcade machine, the
circuit board just won't play the game. This way, they
could be preserved indefinitely.
Speaker 2 (32:17):
Now it just so happens that the.
Speaker 1 (32:18):
Software also allows you to play those games, because that's
how the games work, right, Like, if the software didn't
allow the games to run, all you really would need
to do is find a way to preserve that random
or rather the read only memory the ROMs. If you
could just preserve the ROMs period, you could have a
(32:39):
library of unreadable files. It would be pretty unusual to
do that, Like, what's the point.
Speaker 2 (32:47):
It'd be kind of like going into.
Speaker 1 (32:49):
A library that is filled with books written in an
ancient language that no one understands anymore. So, yeah, they're historical.
They have some historical significant but there's no way to
understand what is there. So you start asking the question,
does it really make sense to keep them if there's
no way to read them. So Maine can read these
(33:10):
files that can play those games. But the stated purpose
for Maine isn't to play the games, it's just to
preserve them. Now you might find that that purpose is
a little do not peak behind the curtain esk, and
that you could easily imagine mame's design is meant to
give you the chance to play those old games and
(33:32):
not just keep them for posterity. I mean, if you
can't play the video game, is it really worth keeping?
But never mind that it doesn't really matter for the
purposes of this discussion. I just find it amusing. So
the main software evolves over time, and part of that
is just to keep up with technology. As operating systems evolve,
(33:55):
we have to adjust the software, the MAME software to
run on new systems. So you know, if Microsoft releases
a new version of Windows that's remarkably different from previous versions,
you may have to tweak the code for MAME to
be able to run on the new Windows platform. So
(34:16):
it is necessary for this to be open source for
the software to remain relevant, and there are lots of
different versions of MAIME on operating systems like Windows, on
Unix mac os. There are versions for both thirty two
bit and sixty four bit Windows versions. You can find
people selling MAME machines inside either classic arcade cabinets or
(34:38):
new cabinets designed to look like old ones, complete with
special controls. So if you wanted to, you could create
a computer like You could build a computer on your own,
a decent one, not like again, not a super fast
one necessarily, but a decent computer.
Speaker 2 (34:55):
With a lot of storage.
Speaker 1 (34:56):
You could mount a display inside a cabinet to look
like in arcade monitor. You could have the computer inside
the cabinet. That's essentially the case for your computer, and
you could hook up arcade controls, including ones that are
more unusual like the roller balls or some of the
(35:19):
other yoke versions for flight games like the old Star
Wars game, that kind of stuff. You could have all
those sort of controls available. You can even have ones
that detach from the system so that you can swap
them out whenever you need to for whatever game you
want to play, and you could have that in your
house and you would essentially have access to all the
(35:42):
arcade games supported by that emulator. That doesn't necessarily mean
every arcade game ever invented, but it could be hundreds
and hundreds of different titles. On the inside's just a
PC running that mame software and a collection of ROMs.
So it's getting to time for me to talk about
(36:03):
the legality of this. Like, if you wanted to do this,
if you wanted to have an emulator, whether it was
a main emulator or a video game console emulator or whatever,
what are the legal considerations you should make. I'm going
to tell you more about that in just a second,
but first let's take another quick break to thank our sponsor.
Speaker 2 (36:32):
All Right, we're back.
Speaker 1 (36:33):
So you could technically build or buy a machine capable
of providing an entire arcade's worth of gaming on one device.
But is that legal? So this brings us to the
legal discussion or law stuff, don't dun.
Speaker 2 (36:51):
Interesting.
Speaker 1 (36:51):
Note there are a lot of questions about ROMs and
their legality. So our ROM files illegal? Is it ever
legal to download one? Are emulators illegal? It's good to
finally kind of tackle these questions now. First, emulators in
general are legal. You can own an emulator. There is
(37:12):
nothing inherently illegal about emulators. They're software meant to emulate
another technology, but in general they don't contain any proprietary code,
So that means emulators more often than not, don't have
any code in them that is protected by copyright. Since
(37:33):
there's no copyright violation, there's no illegal nature to these emulators.
Developers haven't stolen any intellectual property from the companies that
made the original equipment. They're just creating new software to
run programs that relied on older original equipment. So it's
a fine line. But emulators on their own are totally legal.
(37:57):
As for ROMs, that's where it gets messy. For one thing,
we do not have global laws guiding our choices about
legality or illegality when it comes to ROMs, so the
rules in one country can be significantly different from those
of other countries. Now, I'm gonna be looking at this
(38:20):
from the viewpoint of someone in the United States because
that's where I live. Longtime listeners of text stuff. No,
this is my mo I will take a view from
the US because that's where I'm from and it's way
easier for me to talk about this. But if I
wanted to tackle the legality from every country, I'd have
to do a whole series of podcasts because it's different
(38:42):
for different places. In fact, even just the length of
copyright protection is different in different countries. The US has
a lengthy period of copyright protection, Like we're talking decades
and decades of protection even after the death of whomever
held the copyright. So something to keep in mind, all right, So,
(39:05):
downloading a rom of a game you do not own
is violating copyright and is illegal pretty much anywhere.
Speaker 2 (39:12):
So if you wanted.
Speaker 1 (39:14):
To get hold of a RAM for a game, but
you don't own that game, you have no legal copy
of that game, Downloading it is against the law. It's
no different from downloading a song you don't own, or
a movie you don't own, or a television show. If
you do not own a copy, you're essentially stealing. Now,
(39:34):
in the case of arcade games, it's pretty darn common
for people to steal them. Not many people actually own
arcade machines. There are people who do, there are a
lot of them who do, but most people do not.
The average person does not own an arcade machine in
their home. So unless you own a legit copy of
an arcade machine, downloading the ROM for that game is
(39:56):
pretty much illegal.
Speaker 2 (39:59):
But let's say you.
Speaker 1 (39:59):
Go go to an auction right and you buy an
old Spy Hunter cabinet for your rec room at home.
First of all, good job, Spy Hunter, awesome arcade game,
one of my favorites from the arcade era. You get
the machine home and you realize that the circuit board
is damaged a little bit. It's kind of fried, and
(40:20):
the game isn't really working properly. It's not stable, like
you can get it running every now and then, but
it doesn't necessarily run flawlessly or it might crash at
random intervals.
Speaker 2 (40:33):
So the question is, could.
Speaker 1 (40:34):
You then download a ROM for Spy Hunter and replace
the guts of the cabinet you've bought with a PC
running an emulated copy of the game. So instead of
having the actual Spy Hunter elements inside this cabinet, you
remove those, you put a PC in there.
Speaker 2 (40:53):
The PC is.
Speaker 1 (40:54):
Running Maime, and the only ROM you have on it
is Spy Hunter, because that's the game you bought.
Speaker 2 (41:00):
Would that be legal? Well, if you were to rip the.
Speaker 1 (41:06):
Game off the circuit board yourself, you could probably argue
that as being totally legit. So in other words, you'd
have to make a digital copy of a hard coded game,
which isn't exactly easy for the average person to do,
but it would be a necessary step to use a
digital ROM on another type of device.
Speaker 2 (41:26):
In the United States, this.
Speaker 1 (41:27):
Would likely be seen as making a legal backup copy,
as in a lawful it is perfectly fine to make
a backup copy of media you have purchased. It's similar
to making a backup of a CD or a cassette
tape or a vinyl album, either through putting it onto
another medium or ripping it and making it an MP three.
Speaker 2 (41:51):
That's perfectly legal.
Speaker 1 (41:52):
As long as you're doing it for your own personal
use without the intent to distribute, you're pretty much okay.
You are legally al oued to make backup copies of
stuff you purchased, as long as it's for the purpose
of a backup. But what about downloading a ROM from
another source rather than ripping it from the circuit board
(42:14):
you physically own. Let's say that you don't have the
equipment necessary to pull the code off a hard coded
circuit board and convert it into something digital that a
PC could read, so instead you're just going to download
a copy from the internet. Now, arguably you could say
that downloading the ROM in this instance is a case
of fair use. So the argument you would make is
(42:37):
that you already own the game. You purchased a legit
copy of Spy Hunter, and you're not distributing the ROM
to anyone.
Speaker 2 (42:45):
You're not trying to.
Speaker 1 (42:47):
Create a marketplace for the Spy Hunter game. All you
want to be able to do is play the game
you bought on the arcade console you purchased. So you
could argue, I'm not causing harm to the market, right,
I'm not denying a sale. I'm just trying to get
access to the thing I have already purchased. Well, that
(43:09):
could be a legit fair use argument, but you got
to remember fair use is an argument you have to
make in a legal case. In other words, it doesn't
protect you from getting sued. You can't say at the forefront,
this is fair use, don't sue me. Instead, fair use
is an argument you make once you have been sued,
(43:31):
so fair use doesn't matter until you get to court.
Speaker 2 (43:35):
Chances are, though, no one would sue.
Speaker 1 (43:37):
You in the first place unless you were distributing games,
particularly for some of these old ROMs because in some
of these cases, the companies that made the games have
been out of business for years, or they were acquired
and sold and acquired so many times, then no one
really knows what the ownership rights are for some of
these games. So, in other words, there's no one to
give your money to because no one knows who owns
(43:59):
the copyright. And not only are no copies being sold,
but there's no one who's authorized to sell them, right,
no one knows who owns it. So in those cases,
you're probably okay to download the ROMs, not that it's legal,
but that you're probably not gonna get punished for it
because there's no one to lay a claim against you.
(44:23):
That doesn't stop companies from doing that even when they
don't necessarily have a legal claim to the content. If
they think they can get away with it, they could
totally go that route. You would have to prove in
a court of law that the company suing you does
not have a legal claim to the property they are
arguing is theirs. So you know, if video game Company
(44:46):
A says, hey, you know, back in nineteen eighty eight,
we purchased video game Company B, which means we own
the video game you have downloaded illegally and you say,
well no because of X, Y and Z. Maybe it
turns out you're perfectly fine, but it means you have
to go through the whole court experience, which isn't great. Now.
(45:08):
You may have also heard that there's a special rule
that allows you to download any video game ROM and
keep it for twenty four hours without it being illegal,
as long as you delete the realm after twenty four hours.
So generally people say, oh, yeah, you can download the game,
give it a whirl, and delete it a day later,
and there's no fear of someone coming after you. I
(45:29):
am here to tell you that is not based on
any actual legal grounding. From what I can tell, there
is no legal foundation for this argument. It's probably just
wishful thinking that's been passed along as gospel among a
lot of realm sharing communities. The truth is, if you're
downloading something that doesn't belong to you and you're not
(45:49):
purchasing it, you're just downloading it, you are stealing. It.
Doesn't matter if you're keeping it forever or for twenty
four hours, it's still stolen.
Speaker 2 (45:58):
Now. Complicating matters in this.
Speaker 1 (45:59):
Case is that we're talking about digital information, not a
physical copy of something. I mean, if I walked into
a video game store and I pocketed a copy of
an actual video game that was stored on physical media
like a CD or a DVD, there's no question that
I stole something. Right If I walk into a game
stop and I grab a box and I shove it
(46:21):
under my jacket and I walk out, I stole that.
There is a physical copy of the game that I
have taken, and that means the store can't sell that
physical copy because it's in my possession and I didn't
buy it. But downloading a file doesn't feel like stealing, right.
Speaker 2 (46:40):
Because the original file still exists.
Speaker 1 (46:42):
On some server somewhere, So you didn't. You didn't take
the one and only existing copy. You made a copy
of another file, and now you have that copy, so
other legitimate customers could still purchase the game that you've taken,
because it's not like it doesn't exist anymore. And so
because of this, a lot of people justify their actions
(47:03):
as being okay, because it's not like they actually took
something that physically exists, except that at the end of
the day, you are accessing something without paying for it.
When there's an entire business based off of making games
for money. If game developers didn't make money, there wouldn't
(47:23):
be games. No one would make games, or at least
not on the level that we are used to. People
might make games as an expression of art and they're
not trying to make any money, But there wouldn't be
a video game business if we all just stole stuff, right,
because there's no money in that, you would spend your
time doing something else where you'd actually be able to
make a living. But we get even more complicated because
(47:48):
many of the games that are in raw form are
now on obsolete systems or which you cannot purchase at
least not from a primary company, Like you're not gonna
be like be able to buy a classic Nintendo system
from Nintendo. You could buy the little ones that replicate,
you know, a dozen or two dozen games on one system,
(48:11):
but you can't just go out and buy an Anys.
They don't make them anymore. Or some of those video
game systems are in limbo as far as ownership goes.
And that also makes it easier for people to justify
downloading the files, but it doesn't make it any more legal.
Speaker 2 (48:26):
Now I'll admit.
Speaker 1 (48:27):
It's really frustrating to be in a position in which
you would happily pay for something if you could, but
you have no legal way to do it. That is
really frustrating. I found myself in that same position with
a lot of British television series that I love but
are not available for purchase in the United States.
Speaker 2 (48:45):
So I do the.
Speaker 1 (48:48):
Legal, grown up lame thing, which is that I don't
I don't access it like I don't. I don't get
it means I don't pirate the stuff I love in
the hopes that one day I'll have a legal means
to access it.
Speaker 2 (49:04):
Instead.
Speaker 1 (49:04):
I'll, you know, I'll post about it, I'll write to people,
I'll ask questions, but I have to wait until there's
a legal way to purchase it.
Speaker 2 (49:14):
I do think this is a muddy area.
Speaker 1 (49:16):
If a game exists and there's no way to buy
it and the company that made it doesn't even exist anymore,
are you really causing harm to the market by downloading
a ROM I'd say it probably not, because there's no
way to purchase it legally. But someone in court might
say you undermined their attempt to make a legitimate commercial
(49:36):
copy of the game. Further down the road, and because
we can't see into the future and see if someone
is really telling the truth in those cases, that's problematic.
So if I download a bunch of ROMs from a
previous publisher that no longer exists, but their intellectual property
belongs to another company, and that other company says, hey,
(49:58):
in five years, we're going to release a best of
compilation little console that you can connect to your TV,
and if you distribute these ROMs, then you devalue that system,
even if they have no plan of doing that. I
don't know the case right, so it's complicated.
Speaker 2 (50:17):
At the end of the day.
Speaker 1 (50:18):
It is illegal to download ROMs for any games you
do not own, and you could technically get in trouble
for it. And as for games you do own, it's
a gray area and you could still technically get in
trouble for it. So tread carefully, and if there is
a legal way to buy or access the stuff you love,
I urge you to do that first. It helps cut
(50:41):
down on reactionary laws and digital rights management strategies, and
it helps prevent companies from making these these.
Speaker 2 (50:49):
These new systems that hurt everybody.
Speaker 1 (50:54):
So if there's a way to get it legally, do that,
and if there's not, think really hard before you go
down this pathway, because you could be causing yourself more
frustration in the long term. And that's it for that
classic episode about how video game emulators work. As I
said at the beginning, I've thought about getting like a
(51:14):
mame machine. But the issue I have is that a
lot of the content you find with those, I mean again,
it's like pirated content. That doesn't mean that emulators themselves
are bad, as I've said many times, they're not. Emulators
are a way of preserving work that otherwise could just
go forgotten. It. I don't have an issue with that
(51:36):
at all. It's just the issue where I balk is
I really do believe in paying to have access to
work that other people have made, and so that's why
I haven't taken the plunge on getting a mame machine.
It's not that I think Maime itself or any other
video game emulator for that matter, is inherently bad. That
(52:02):
I believe in paying people for their work. And I
don't just mean the people who make the emulators. I
mean the people who made the original games that are
running on those emulators. It's a it's a it's complicated
because in many cases you literally cannot purchase the content
any other way, and then you're left with the question of, well,
(52:23):
if you can't do that, doesn't it just get forgotten?
And honestly, I don't. I don't know how to reconcile that.
So as I struggle with this, I hope you all
are well and stay well.
Speaker 2 (52:36):
Don't worry about me.
Speaker 1 (52:37):
I'm sure I can come to some sort of decision
about Maine at some point, and I will talk to
you again, really soon. Tech Stuff is an iHeart Radio production.
For more podcasts from iHeartRadio, visit the iHeartRadio app Apple
(52:59):
Podcasts wherever you listen to your favorite shows.