- Ahoy there, mateys.
I am a pirate!
It's true!
I recently bought a copy of Super Mario RPG for SNES
so that I could legally play it on my handheld PC.
But I made one fatal mistake
that could bring Nintendo's lawyers to my door.
I downloaded the rom off the internet!
By gosh, that's piracy!
But it didn't have to be.
Oracle of all people sponsored this video
where we're gonna answer the question once and for all,
is there a way to 100% legally emulate games?
Can you liberate the delicious gamey bits
trapped inside these plastic shells?
And for that matter, why would you want to do such a thing?
So come along and join me on the seven seas!
(laughing)
(upbeat music)
♪ You are a pirate ♪
Super Mario RPG Legend of the Seven Stars
is one of those games that despite being available
on the SNES Classic and both the Wii
and WiiU virtual consoles is not available to buy
on any platform right now
given that they're all discontinued.
That means that even if you own
a physical copy of the game like I do,
there's no way to legally play it
without something that can read the cartridge, and worse,
every time you slot it into the original console,
you are wearing down the contacts on both sides bit by bit.
So even with a modern console like the Super NT,
the condition of the cartridge will degrade over time
as you swap it in and out.
And what about your saves?
Cartridges from the 16 bit era and earlier
almost always used a small amount
of battery backed up SRAM for saving progress.
And those batteries are at least 25 years old now.
Well past their service life.
And once they die, your save games die with them,
and you will never be able to save again
unless you replace the battery,
an act that will erase your save games
unless you go out of your way
to keep it powered while you solder.
(laughing)
Not sure if I'd recommend that for novices.
(yelling)
That's where projects like the Sanni Cart Reader come in.
There have been other cartridge readers over the years,
like the Retrode, but they were expensive,
and have largely been discontinued.
This, on the other hand,
is an open source project that began in 2014,
and today, you can actually build your very own
using an Arduino Mega and custom PCBs that allow you to read
practically any cartridge from the major consoles,
from the Nintendo Entertainment System era
through to the GBA era,
and copy them onto a micro SD card, including the save data.
This Save the Hero version from Builders
is named for that very feature, and functionally,
it's just a Sanni V3, but with more premium materials
including an acrylic top plate
and a wooden underside for about a hundred dollars.
You could build your own for about half of that,
but it might not be worth the hassle to you.
The newest Sanni V4 has more intuitive controls
and an easier build for about $80 worth of parts.
And there's a simpler, even cheaper version
that you can build if you just wanna get your feet wet.
Let's take it for a spin, shall we?
I'm gonna be honest with you guys,
I bought this complete in box at a local store,
and in the interest of not doing any further damage to it,
I have not actually opened it yet.
So for all I know, it might not even be in there.
Anthony, did you check?
Anthony picked it up for me.
- [Anthony] It's not a box of rocks.
I don't know if there's not rocks
inside the cartridge though. (laughing)
- [Linus] That's fair.
(sniffing)
Doesn't smell like new electronics,
more like old electronics.
We've got four different cartridge slots for the SNES,
Sega Genesis, N64, and which side is it on,
ah yes, this is for the Game Boy Advance
as well as Game Boy and Game Boy Color.
So I'm gonna go ahead and meh.
These four switches here allow us
to select between three and five volts.
Five is what we want for the Super Nintendo.
EPROM off or on.
We want that off.
And then both of our clock gens, zero and one,
are gonna go to the on position.
Next, we're gonna put this adorable little micro SD card
featuring Bart Simpson into our Save the Hero.
This contains the database files that we need
which can be downloaded off of GitHub.
And now I get to power it up.
Not quite!
The controls for this thing (laughing)
are actually handled through an N64 controller.
That kinda interferes with the SNES slot a little.
Is that the most adorable
little power indication LED or not?
Open source cart reader.
So wait, I do need this or I don't?
- [Anthony] You do not. - Wait, what?
- [Anthony] I was gonna correct you,
but I figured it'd be funnier.
- It's just with these buttons?
- [Anthony] The left button moves the cursor,
the right button selects.
- [Linus] What does this do?
- [Anthony] That is for reading N64 memory packs.
- That makes sense
- [Anthony] Again, I thought it was funny,
so I let you do it.
- Wow, you can test it.
You can cycle it, I don't even know what cycling it does.
You can even take save files
that were created in an emulator
and load them onto a cartridge
if you wanna reform your filthy pirate ways.
How neat is that, right?
- [Anthony] You don't think of this stuff
as a storage medium, but it is.
- Yeah, it's just weird, proprietary, ugly storage.
So now...
- [Anthony] It's on there as a fully functional rom.
- It's so easy!
You could dump a huge collection in like no time.
So what, I can just pull this off,
and then I could just totally...
Oops, read save, whoop, bleh.
Nope, nope, go back.
- [Anthony] You'll probably wanna hit cycle cart.
- Read rom, here we, oh.
- [Anthony] Or you could, okay.
- Okay, no, it's gonna overwrite my Super Mario RPG rom...
- [Anthony] No, it doesn't overwrite.
- With the Doom data, oh, it'll just make a second?
- [Anthony] It creates a new folder, it keeps a tally of it,
so it creates a new numbered folder each time.
- Okay, I'll just rename it on the computer.
If it calculates the check sum,
will it say no you did a bad job?
- [Anthony] It'll probably say check sum fail
or something like that. - Ooh, let's see.
Check sum error!
So let's do the cycle cartridge thing.
- [Anthony] Boom!
- You're gonna wanna be careful.
This is the kind of thing that's like read the manual, okay?
What the, where does NES go?
- [Anthony] NES goes into the SNES slot.
- What?
- [Anthony] With the help of a handy adapter
- Shut up, oh, it needs an adapter, that makes sense.
(laughing)
(yelling)
How do I tell which way it goes in?
It's probably, it's gotta be keyed, right?
Is it not keyed?
- [Anthony] What you need to do
is just match up the silkscreen side with the front label,
and then, you know, plug it in the same way
you plugged in the Super Nintendo game.
- [Linus] Uh huh.
(yelling) (laughing)
Ooh, ooh, do not like, okay!
Current setting, okay.
- [Anthony] So it remembers the last settings you used.
The thing with NES games is that they lack header data
with any information about the game or the rom layout,
so there's no information on the chips
or anything like that.
You need to tell the reader
how to talk to it at all manually.
You can find this by looking it up on nescartdb.com.
The mapper which is one of the things
you're gonna need to pay attention to,
is kinda the way of describing the layout of the cartridge.
Each mapper corresponds
to a different layout of chips on a cartridge.
The PRG is the program rom chip,
the CHR is the character rom chip,
and RAM mostly refers to SRAM for saving,
but some games do have work RAM like Super Mario Brothers 3.
(laughing) - Okay.
How obtuse.
What's this adapter for?
- [Anthony] That adapter is for Sega Master System.
Master System games are another 8-bit console.
They do have headers,
but they don't identify what the game is,
so they'll always read as TMR Sega
which is what the header actually says.
- Now, conceivably, if I wanted to be a total asshat,
I could dump this and put it on your Dragon Warrior cart
and vice versa?
- [Anthony] They are not writeable.
- [Linus] They are read only, God.
- [Anthony] They are roms.
- Oh, that makes sense, that's why we call them roms.
- Now, thanks to the community efforts,
we know what each of these roms
should actually come out to be.
So we have check sums to be able to check
whether or not our dump is good.
If the check sum doesn't match,
you should check other variants of the game
because they can be slightly different.
If the check sum still doesn't match, you should power off,
make sure all the contacts are clean,
reseed it, and try again.
Make sure the switches are set correctly as well.
If the check sum still doesn't match,
you might have a unicorn.
(laughing)
Or a bad cartridge or reader.
- Okay.
Well, that's it!
Was the point of this video
just for me to buy a bunch of adapters and readers
for your retro collection
so that you can borrow them from work?
- [Anthony] Yes. - Well played.
(laughing) - [Anthony] Okay.
Now that Linus has dumped
all of his difficult to dump cartridges,
we can talk about CD and DVD based games
which can usually be backed up with a typical DVD rom drive.
Although newer consoles are a little bit trickier,
which sucks because those
will deteriorate naturally over time,
and some consoles like to actually chew them up.
Like there's an Xbox variant that scratches discs.
Unfortunately, you'll usually need to mod your consoles
to back up games from the Dreamcast onwards
thanks to the copy protection strategies
that companies used for them.
That's a little beyond the scope of today's video though,
so are our new Waffle long sleeve shirts,
but I won't judge if you're distracted by their greatness.
Regardless of how you get them backed up,
a great bonus is that you can apply patches to them.
There are countless Super Mario World rom hacks out there,
there are translation patches for games
that were never released in English or other languages,
and the 32X version of Doom in particular
was widely considered a flop,
but recent developments have turned it into
one of the finest ports of the original Doom
available for a 90s console,
complete with a newly composed chip tune soundtrack
and CD audio support.
By dumping your own roms,
you're legally able to use these hacks.
The question of whether they create a derivative work
is for the authors of those hacks to worry about.
So far, we've dumped 24 games across multiple platforms,
and while we could use something
like the Mega Ever drive to run these on original hardware
without swapping cartridges all the time,
we're going to set up some emulators.
You can use anything for this,
but a Raspberry Pi is inexpensive, efficient,
and has several options for setting up
an easy to use retro gaming boss like Retro Pie.
Unfortunately, they're also in short supply right now,
but the Raspberry Pi 400 here
is as powerful as a Pi 4 and still available.
Bonus points for having an integrated keyboard
so you can game without a controller if you need to
or emulate computers.
All we need to do is write the image
to an SD card on a computer,
then insert it into the Pie and follow the prompts.
It's a lot easier to transfer rom images
and save files via USB stick
if you installed a pixel desktop environment
after completing setup.
Just make sure that the save files match the game's name
and end with .srm, then copy the files
to the system appropriate folders here
and you're good to go.
Just remember to change the auto start option
back to emulation station
unless you want the desktop by default.
Let's play some games.
- [Linus] Woo! - Oh ho!
Emulation station picked up everything
pretty much right away.
Now it doesn't pick up the album art
or anything like, album art...
The game cover art or anything like that right away.
You do need to use a scraper for that
which can be done automatically
as long as you have internet connection.
So these are the games we dumped.
We got After Burner for 32X, Doom for 32X
which I could patch, Battle OutRun,
which is a game that was only ever released
in Europe and Brazil.
And I didn't realize this, but this game actually,
like they cut out a UPC and stuck it to the back of the box.
So this is running too fast,
but it's the way that I've always known it.
What else do we have here?
Mega Drive Fantasy Star 2, Road Rash 3,
Sonic and Knuckles, Castlevania 64,
which is, we won't talk about that too much.
Diddy Kong Racing, Golden Eye 007,
Perfect Dark, Resident Evil 2, and Star Fox 64.
Let's play Super Mario RPG, why not?
So these are the actual saves
that were pulled off of this cartridge
running on this emulator.
We don't need to run the original console anymore.
We don't need to worry
about wearing out the cartridge or anything like that.
We don't need to worry
about the save data being corrupted
thanks to a failing battery.
Carlo level 30 was the last saved Mario,
so let's go ahead and see what Carlo was up to.
I never really got this as a kid,
but Yo'ster Isle is a play on Easter Island.
Input lag seems okay.
I mean, this TV might be adding some, it is in game mode.
It's probably not as good as original, but for a game,
well, actually Super Mario RPG has timed hits.
Wow, Pink still won even after I tried to stop it.
Let's try something else, I guess.
Fantasy Star is kinda interesting.
It's the beginning of a series that I really like.
It's not a super great game,
but it is impressive for its time.
- [Linus] Beans!
- [Anthony] Let's go to Beans.
This is very Dragon Quest-y.
So like you got the first person battles.
Yeah, it all basically looks like this.
The neatest thing is that I'm playing it on a Raspberry Pi
even though like I didn't download it from the internet.
I grabbed it off of the cartridge itself.
Now a couple of my games, sadly, their saves are dead.
So Fantasy Star 2 here, there was no save on that.
I don't know if the battery is still good or not.
I think it tested okay with a multimeter,
but I'm not a hundred percent on that.
So they might have just wiped the saves.
But Sonic 3 though, the FRAM chip on that is dead.
It just blows my mind that like these games,
I didn't download 'em.
They're in a bin right over there.
Linus only really provided this.
- [David] It's a pretty valuable game, though.
- [Anthony] It is a valuable game.
It's valued at $299 Canadian.
Can it detect fake cartridges?
- [David] Like counterfeits?
- If the cartridge is a fake
in that it's like been a flashed EPROM, then yes,
because if you try to read it
in a traditional sense, it'll be weird.
Like it's not reading the original chips.
- [David] I see.
- One of the things that it can actually do is write EPROMs.
So if you've got one of those reproductions,
you can actually change what game is on it.
And that reminds me,
this has a function to write save data.
I can't just ignore that, can I?
We've already got the save files backed up anyway,
so there's no big loss if, for example,
I were to overwrite the saves on this cartridge.
Here we go, supermariorpg.srm, SRAM writing finished.
(inhaling)
That's a lot of bites that did not verify.
Oh no.
When I was testing this,
I happened to notice that the battery inside tested okay.
I took apart the cartridge, Linus doesn't know about this.
The idea being that if it was like bad,
then I would replace it.
However, it looks like the SRAM chips in this cartridge
may actually be bad.
(sighing)
The save data I put on there
were just a bunch of games that said lttstore.com.
But unfortunately, it looks like this cartridge
needs more love than I can give it right now.
At first, when I was loading the saves up on this to test,
there were like six or seven bites that didn't verify,
and I was gonna be like, oh, look,
this is one of the reasons
why you need to make sure that you, you know,
to take care of your cartridges,
but it looks like the SRAM chip
has mostly failed at this point, which is sad.
I was gonna power it up
and we'd see lttstore.com and we'd all laugh.
Now it's just a sad tale
of a game that's really valuable, but needs repairs.
And this is why backing up your games is important.
Having the ability to take the information
that you have on here, whether it's the information
that was originally on the rom,
because the roms themselves can die too,
or the information that you put on the SRAM.
It's just for the sake of preservation of either your effort
or somebody else's that you paid for
dumping your cartridges just makes sense.
Now here's a huge disclaimer.
I am not a lawyer.
So when I say that we're doing all of this legally,
I'm talking about the precedents we've seen so far.
Nintendo likes to argue that the games you purchase
are not licensed for use without the original hardware,
but the harsh reality for them is that format shifting,
that is the active taking content from one piece of media
like a game cartridge and transferring it to another
like an SD card is provided for
by most countries' copyright laws.
(upbeat music)
There are specific exemptions in the DMCA
for bypassing copy protection for these exact purposes.
Now just because this is technically legal
isn't to say that Nintendo
has no valid concerns about piracy.
From the NES all the way to the N64,
game copiers have existed on the gray market
and were often used by piracy groups
looking to either to release games onto the early internet
or sell them in emerging markets
where Nintendo had less of a foothold.
If you've ever seen one of those
million in one cartridges floating around,
then that's the kind of thing that I'm talking about.
These devices became so popular that some copiers
like this Special Partner here for the SNES
even included extra features
like crude save states and onboard memory
that kept up to seven games ready to play
so you didn't have to swap
the diskettes they relied on every time.
Because these devices themselves weren't illegal,
Nintendo couldn't do much to stop their sale,
but they and many developers
created clever copy protection schemes
that used these extra features
to detect when they were being played
on something other than the original cartridges.
In mild cases, they would simply throw up an error,
but some games altered gameplay
to make it impossible to progress,
including deleting your saves.
Earthbound famously does this at the last boss.
Game freezes, reset, all your saves are gone.
Thankfully technology has advanced a lot since the 90s
which is why Linus actually rebuilt his Game Gear
with modern parts, so go over and watch it after this one.
And thanks to massive efforts
like those throughout the retro gaming community,
we not only have reliable ways
to read games from cartridges,
but we also have those databases
of known good check sums to match games
so we can verify the data.
Big thanks to them for making all of this possible,
and for everyone in the future
who will inevitably make it possible
for people to save their Nintendo Switch games and beyond.
Oh, and big thanks again to Oracle
for sponsoring this video.
We were sort of supposed to have this up for Pi day, but...
(laughing)
So instead, I'll talk to you
about their Oracle Cloud infrastructure,
which makes deploying and managing
infrastructure as code easier than ever.
For example, the OCI Resource Manager
simplifies control of your Terraform configuration
and you can use the visual OCI designer toolkit
to make them from scratch.
If you prefer to write IAC
with a more familiar language, Pulumi for OCI
allows you to code in TypeScript, Python, Go, or C#.
Looking for IAC and configuration management
in a single tool?
With OCI modules for Ansible,
you're able to create playbooks
that can build infrastructure
and apply configurations seamlessly from the same tool.
And if you're looking to integrate
infrastructure management capabilities
into your application ecosystem,
check out any one of the available OCI SDKs.
You can choose from Java, Python, TypeScript and JavaScript,
Go, .NET, and Ruby.
Learn more and get started today using the links below.
Thanks for watching guys.
This one was a bit different, so go check out our video
on how gaming on a Mac isn't crazy anymore.
You can totally get your roms going on a Mac
and they'll run great too.
Or the Game Gear video that's already up.