Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Classic Games (Games) Debian Emulation (Games) Hardware Hacking Games Build Linux

Retro Gaming With Raspberry Pi 106

coop0030 writes "Thanks to the affordable Raspberry Pi and some clever software, anyone can re-create the classic arcade experience at home. Adafruit brings the genuine 'clicky' arcade controls, you bring the game files and a little crafting skill to build it. Classic game emulation used to require a well-specced PC and specialized adapters for the controls, so it's exciting to see this trickle down to a $40 system. Also, a video of the game system is on YouTube."
This discussion has been archived. No new comments can be posted.

Retro Gaming With Raspberry Pi

Comments Filter:
  • by Anonymous Coward on Wednesday June 05, 2013 @02:17PM (#43917067)

    If folks want to continue using a hacked-to-hell version of MAME from over a decade ago, or some port of a crappy old version of SNES9x that lacks all of the improvements in emulation accuracy (and the corresponding increase in CPU load) that have been discovered in that same amount of time, that's fine.

    However, let's not be ignorant and claim that these old-ass emulators being ported to the Pi are in any way as accurate as modern versions of MAME, or bsnes, or Nestopia, yeah?

    • by Beardydog ( 716221 ) on Wednesday June 05, 2013 @02:25PM (#43917157)
      Additionally, the Raspberry Pi is about as powerful as the original Xbox which could, guess what, play emulated games a decade ago.
      • by gl4ss ( 559668 )

        Additionally, the Raspberry Pi is about as powerful as the original Xbox which could, guess what, play emulated games a decade ago.

        yep but that's like, expensive! nobody could afford that!

        anyhow, if you're building a cab then getting a 200 bucks netbook(or used pc) isn't that much. of course you'll need some interface doodads, but adafruit sells logics for those too.

        (raspberry is selling for 48euros here with VAT included, btw).

      • That says more about the original Xbox being crippled than it does about the Pi being up to the task :)

      • Additionally, the Raspberry Pi is about as powerful as the original Xbox which could, guess what, play emulated games a decade ago.

        As as did old PCs. But old PCs and old Xboxes don't run off of cell phone chargers and fit in a playing cards box.

      • by rephlex ( 96882 )

        The Pi is similar in power to the original Xbox GPU-wise but not CPU-wise. From the FAQ, here: http://www.raspberrypi.org/faqs [raspberrypi.org]

        Overall real world performance is something like a 300MHz Pentium 2

    • by Anonymous Coward
      Bsnes is now Higan, for the record.
    • Maybe they just want to play the game. If its not 100% accurate, who gives a shit?

      I built one for NES games and it works fine, even if there is an occasional glitch, but who cares..

      • I tried that with mine when I first got it. The performance was terrible. And the sound was horrid. Have things improved since then? I was using FCEU. Which emulator do you use?
      • Maybe they just want to play the game. If its not 100% accurate, who gives a shit?

        It wasn't us who gave the shit.

        From the TFS:

        Adafruit brings the genuine 'clicky' arcade controls...

        If you don't care if it's 100% accurate, you also don't care whether or not it has genuine 'clicky' arcade controls. Which I would then assert that if you either want a genuine experience or not. A genuine facade over inaccurate emulation is not a genuine experience, only the facade of one.

        That said, calling 'clicky' arcade controls genuine isn't quite accurate, as it depends on the game. FWIW, the majority of the classic arcade games that the Pi is powerful enoug

        • What's even funnier is that they seem to be showing either a Seimitsu or Sanwa pushbutton, which don't really "click".

    • by Anonymous Coward

      Because you absolutely have to have a 4Ghz quad code, eight thread CPU with 2048 stream processors and 8 GB ram to emulate a 1Mhz 6502 with 16K of RAM....

      • by tlhIngan ( 30335 ) <slashdot&worf,net> on Wednesday June 05, 2013 @03:39PM (#43917799)

        Because you absolutely have to have a 4Ghz quad code, eight thread CPU with 2048 stream processors and 8 GB ram to emulate a 1Mhz 6502 with 16K of RAM....

        Maybe not that powerful, but close.

        Because the weaker the console, the more performance it takes to do it accurately. The best way to do it is a cycle-accurate emulation because a lot of code written in those days took advantage of oddball features and oddball timings to work properly. For a "dumb" emulation like MAME, most of the time it works, but some games don't work requiring various patches and such in order to settle down the game.

        It's not just the CPU, but also the timing of the other chips, and often things happen within a clock cycle as well that gets taken advantage of.

        It's why emulators like bsnes require specs close to your PC, but run games basically perfectly with no hacks or patches required to get them to work.

        The need for cycle accurate simulations ended sometime in the PS2 era - before which things like the PSX often made such cycle timing tricks necessary. Especially since the modern processor is superscalar, has caches everywhere and is heavily pipelined, making cycle counting impossible (especially caches since it made memory access timing unpredictable).

        Heck, that still doesn't rule out the possibility some game took advantage of the way the system hardware glitched, requiring not just cycle accuracy, but behavior accuracy as well - perhaps some instruction caused some data line to glitch which caused RAM to gitch and it achieved the desired effect.

        • by Anonymous Coward

          > Because the weaker the console, the more performance it takes to do it accurately.

          This gets my vote for stupidest thing I've read all week. Everyone in this room is dumber for having read it. I award you no points, and may God have mercy on your soul.

        • by Half-pint HAL ( 718102 ) on Thursday June 06, 2013 @05:06AM (#43923053)

          p>Because the weaker the console, the more performance it takes to do it accurately.

          That's a misrepresentation of the truth.

          What you're referring to is the culture of "hacky" code that evolved to overcome the limitations of hardware. For example, sprite multiplexing. Early graphics devices with hardware sprites had a very limited number on-screen - on a business system, there might only be one for the mouse pointer. In order to overcome these limits, programmers would use raster interrupts to track the screen refresh and switch out the sprite banks so that they could draw the full limit of sprites in the top section of the screen, and then the full limit again below; doubling, tripling or quadrupling the number of available sprites. This means that the emulator has to do cycle-exact graphics, whereas a system with unlimited sprites (whether in hardware or software) doesn't need to have any notion of a moving cathode-ray beam to follow.

          The more advanced the hardware, the less likely that software interfaces with the hardware as bare metal, instead relying on APIs that abstract it out, making hardware-specific timing often unnecessary.

      • Because you absolutely have to have a 4Ghz quad code, eight thread CPU with 2048 stream processors and 8 GB ram to emulate a 1Mhz 6502 with 16K of RAM....

        Well no, but seeing as you've already got the 4GHz doo-dah, it's cheaper to just buy a clicky USB stick for that than to buy Pi + stick + box + USB keyboard. Projects like this may be fun for the maker, but it does kind of miss the point of general purpose computing and the general trend for convergence.

        This story might be newsworthy if it was a commercial kit that offered licensed MAME ROMs so that theme bars could set up retro arcades on 80s night. But as it is, it's just another "Pi-in-a-case" story, j

    • by cdrudge ( 68377 )

      What's wrong with some "crapy old version of SNES9x"? My three tweenage sons spend hours each week playing Minecraft on our laptops or XBox 360, and various games on their tablets. Many of those games appear inferior to some of my favorite SNES games and my boys agree based on them loving to play Super Metroid, Super Mario World, and other great classics.

      I remember playing Super Mario World on my Pentium-120 computer I got my freshman year of college in 1997. At that time there were a few games that were i

    • by slim ( 1652 )

      You need to be very fussy indeed, to find issues with the emulation of Galaga, Pac Man etc. on Raspberry Pi - class CPUs.

      Yes, some people demand stuff like the frame rate dropping at exactly the right moment, but the vast majority of people - even arcade enthusiasts - won't notice.

      The problem with putting a Raspberry Pi in an arcade cabinet is that AFAIK nobody's found a clean way to drive a 15Khz RGB monitor from a Pi.

      The closest I've seen is through two gadgets - an HDMI -> VGA convertor, then a 31KHz

  • very cool (Score:4, Interesting)

    by hodet ( 620484 ) on Wednesday June 05, 2013 @02:19PM (#43917087)
    I need to get off my duff and buy one of these things. So many cool things you can do. I found plans to use a Pi to monitor my sump pit water level which texts/emails you if your pump fails and the water rises past a certain level. And this here would make such a cool video game enclosure for a rec room. Imagine all the games we used to pump quarters into. I could buy a boat load of Pi's with the ones I spent when i was a kid.
    • You can do the same thing, easier, with an Arduino.

      As for the quarters in the arcade experience ... you didn't just play the game for the quarters you pumped in, you socialized as well. Which you wont' be doing nearly as much of in your rec room. Not to mention that the quarters add an actual value to a loss. When you play on MAME or whatever, you lose nothing by losing. When you played in an arcade, you had a limited supply of quarters, which made game play more important.

      • You can always make yourself a credit coin box and limit yourself to X tokens per day/week/whatever.

        • I would love to get one of those change machines, rig it up so I can push a button to simulate a dollar but includes a timer that it will only work once a day. The "out of change" indicator would be pretty useful for indicating that no more can be had that day.

          Now to find a good used change machine that doesn't cost more than the cabinet I built. :(

          • Still easier to just make yourself a box around a real coin door [suzohapp.com] and put an HID USB Keyboard interface on it. Hopefully your arcade cabinet is built well enough that it doesn't need a frikin' keyboard to operate otherwise you'll be able to bypass the coin door by pressing "5".

        • by mjwx ( 966435 )

          You can always make yourself a credit coin box and limit yourself to X tokens per day/week/whatever.

          He would also need a smelly, dishevelled man to come around every week and empty it.

      • Not to mention that the quarters add an actual value to a loss. When you play on MAME or whatever, you lose nothing by losing. When you played in an arcade, you had a limited supply of quarters, which made game play more important.

        1. Build arcade machine
        2. Install a coin door and coin mechanism for quarters
        3. Install plastic bucket under coin mechanism, fill with fuming nitric acid

        Optional step 4. try not to breathe

      • by hodet ( 620484 )
        I guess what you are trying to say is that you can't recapture your youth. Yes it would not be the same, running to the arcade with friends on a hot summer evening to play asteroids and avenger. Then watching in total awe as some older kid had like a 100 free ships and was killing the high score, his eyes bloodshot, ship scrolling up and down the screen with one tiny rock left and him annihilating any little ship that dare peak out. It was just as fun to watch a master as it was to play the game yourself
  • by coop0030 ( 263345 ) on Wednesday June 05, 2013 @02:23PM (#43917135) Homepage
    Not mentioned in the summary is a useful open source library to convert GPIO button presses to USB keyboard commands for the emulators. It uses minimal system resources, which is always good when working with the Raspberry Pi. You should be able to easily modify it to support more than the joystick and two buttons. https://github.com/adafruit/Adafruit-Retrogame [github.com]
    • by wbav ( 223901 )
      Or you can use something like: http://www.powerfulboard.com/ [powerfulboard.com] and the example USB keyboard drivers. It allows you to swap in and out via USB your controller. I did something very similar myself.
  • by antdude ( 79039 ) on Wednesday June 05, 2013 @02:26PM (#43917171) Homepage Journal

    https://github.com/MisterTea/MAMEHub/issues/3 [github.com]

    We need help on this! We are having problems getting it to work on slow rPis so we can play online!

  • Emulators that can do this in a tiny form factor have been around since the 90's.

    • by jedidiah ( 1196 )

      Tiny form factor anything would have set you back a pretty penny in the 90s. Even now a lot of small form factor stuff is ridiculously overpriced.

      That's one area where stuff like the PI wipes the floor with other stuff.

    • by trdrstv ( 986999 )

      Emulators that can do this in a tiny form factor have been around since the 90's.

      Maybe the last time he used MAME he was on a Pentium Pro or Pentium II.

  • Is anyone seriously using their Raspberry Pi as a primary emulation device? I've got an RPi and I've been very disappointed in its responsiveness. I get better NES emulation out of my first-generation Motorola Droid, probably related to the fact that up until recently there were no available accelerated graphics drivers for the video chipset that the RPi has onboard.
  • I completed this project:
    http://fullfrontalgaming.blogspot.com/2013/03/building-arcade-cabinet.html [blogspot.com]

    It doesn't use Mame as I'm collecting money, but does use SDL. Fully functional and good to go. Used parts from Sparkfun mainly.
  • I installed MAME and a bunch of other emulators a month ago ... From packages ... With apt-get ...

    Why do we have a story on slashdot about something accomplished by running built in tools on the default repositories?

    • by Reapman ( 740286 )

      My impression from RTFA is that this is more on the hardware side of things. Which I found very interesting.

    • Re:So what? (Score:4, Insightful)

      by lemur3 ( 997863 ) on Wednesday June 05, 2013 @02:55PM (#43917379)

      I dont see the reason for all of the hate that people seem to spew whenever a Pi article pops up here.

      this seems just the right spot for these articles..

      especially this one..

      not everyone on slashdot is an old hand at this type of thing.. some might even be inexperienced with linux and messing about with electronics.

      this project is an excellent way for people to get involved in the types of things that the more snooty among us really enjoy..

      baby steps, yo.

      this project doesnt require any soldering! and you can accomplish something.. whats wrong with that?

      if you, and others, cant see the value in this im not sure what to say..

      it seems like the editors are damned if they do, damned if they dont..

      something is either determined not newsworthy enough for nerds..

      or, like this, it seems like, while very much for nerds, its not quite complex enough to make them care? .....

      well i am here to say i do care, and this type of thing is encouraging me, and others to get involved in electronics..

      if you cannot deal with simple interesting projects that get people involved in the world of electronics being posted on on slashdot... im not sure what to say...

      perhaps reddit is the place for those people!

      • by D1G1T ( 1136467 )
        I love embedded linux/bsd, and use it both at home at at work to solve problems. People are tired about hearing about Raspberry Pi everyday because the posts simply aren't interesting. "Oh, look! Someone made a plastic box for their Pi! Someone "ported" some app that already runs on linux to Pi by typing make!" Linux on homebrew embedded projects was interesting 10 years ago on gumstix. Now it's a normal everyday thing.
      • You see

        hate for

        the raspberry pi

        because

        we keep seeing articles about

        shit that any of us

        who have owned one

        did last fucking year

        or that you can find

        on any raspberry pi related

        web site.

        Do you think

        we should have

        articles about how someone

        put gasoline into their

        1970's pickup? That is as

        newsworthy as this is.

        Do something I didn't do last year

        with the raspberry pi or any other

        basic linux computer and I'll care,
        until then,

        I'll just make fun of these retarded posts.

        also

        do you talk

        like this in real life?

        • by Anonymous Coward

          do you talk

          like this in real life?

          Yes, lemur3 is William Shatner.

      • Re:So what? (Score:5, Insightful)

        by bill_mcgonigle ( 4333 ) * on Wednesday June 05, 2013 @09:59PM (#43921013) Homepage Journal

        People are annoyed because RPi failed to live up to its hype or promises.

        The h.264 decoder is buggy and locks the hardware.
        The USB controller is buggy and stuff doesn't work right. See the infamous LKML post ripping it.
        The SD controller is buggy and regularly corrupts SD cards.

        From what I can tell, I should've bought Beaglebone Blacks instead. For some reason RPi still gets lots of attention. If it worked right, people would just complain that it was underpowered, but, eh, it's cheap. But promising and not delivering gets peoples' hackles up.

      • by gl4ss ( 559668 )

        if someone who is already interested in electronics reads slashdot and reads this he is going to get the same feeling like a car guy would get from reading a hot rod magazine that has an article for installing a stick on scoop. no welding necessary!

        the reason this is boring is because people have already done this and you knew it could be done beforehand anyhow. all it takes is money to buy the parts. so a cheap project that needs money, money money.

        it's an adafruit advertisement tbh.

  • $20, been around for 5 years or so...

    http://uncrate.com/stuff/commodore-64-joystick-with-30-games/

    • by hodet ( 620484 )
      Ah yes Impossible Mission. Staaay Awhile.....Staaaaaaaaaaaaay Foreeeeeeeeeeeeeeeeeeeeever!
    • by Megane ( 129182 )
      That's not an emulator, it has a real (or at least ASIC/FPGA) 6502 in it. And it only runs C64 games, even if you hack it to run more games.
    • Amazon Price: $134.93 & FREE Shipping. Only 1 left in stock.

      I think I'll pass.

  • by Striikerr ( 798526 ) on Wednesday June 05, 2013 @02:59PM (#43917407)

    I built a MAME cabinet from a pre-fab unit from Rec Room Masters https://www.recroommasters.com/ [recroommasters.com] for my wife as a Christmas present. It was very easy to assemble (just bolts which are provided) To this shell, you add a controller (Tankstick) from X-Arcade http://www.xgaming.com/ [xgaming.com] . Lastly you add a monitor, computer, drive space for ROMS and speakers. I spent some extra for side arcade art and illuminated Marquee. As a front end for selecting games, I use Hyperspin http://hyperspin-fe.com/ [hyperspin-fe.com] . It's an amazing machine and is pretty affordable, especially if the Raspberry Pi can run the games.. My wife and I have spent countless hours on this. I also grabbed ROMS for almost every older home console ever made and play them on this as well..

    I don't have the tools, space and skills required to build a cabinet from scratch. The hardest part is finding the ROMS which work with the MAME version that you use.

    • The hardest part is finding the ROMS which work with the MAME version that you use.

      The newsgroup alt.binaries.emulators.mame is a good source, any missing ROM(S) just post a request; you'll get em.

      Turn off/down your sound before going to http://mameinfo.mameworld.info/ [mameworld.info] for the latest stats on the newest version.

    • by antdude ( 79039 )

      Just get them from binary newsgroups (alt.binaries.emulators.mame and alt.binaries.emulators.mame.chd) or http://www.pleasuredome.org.uk/ [pleasuredome.org.uk] (Torrents). They always have the latest versions. If you use a good usenet server, then you should be able to get the older MAME ROMs.

  • by kriston ( 7886 ) on Wednesday June 05, 2013 @03:02PM (#43917431) Homepage Journal

    Skip all the Raspbian instructions. Instead, use the RPI Chameleon distribution for retro gaming on the Pi. Users are presented with a nice console-style menu screen after the system powers on with a ton of different emulators for not just consoles and arcade games but computers, too.

    Check it out here: http://chameleon.enging.com/ [enging.com]

  • Sorry but as an Arcade Nerd I have to point out that an 8-way joystick as used in the article is the wrong joystick to use. Most classic arcade games from the 80s used 4 or 2 way joysticks... If you want an authentic Pac Man or Donkey Kong experience you need a 4-way joystick, not an 8 way. Heck even the example game in the article (Joust) used a 2-way in the original arcade cabinet... It wasn't until the late 80s/ early 90s that most games started to use 8-way sticks... Games like Street Fighter 2, Mortal
    • Looks like a sanwa JLF knockoff. Proper sanwa JLF sticks have 4/8 way selectors and there are 2 way restrictor plates available.

    • by dj245 ( 732906 )

      If you want an authentic Pac Man or Donkey Kong experience you need a 4-way joystick, not an 8 way. Heck even the example game in the article (Joust) used a 2-way in the original arcade cabinet...

      Interesting fact, in Brazil, Joust was known as "Bird ass"

  • Computer runs software. Film at 11.
  • I critically need it to rune the European Sega Mega Drive version of Zero Wing.
    • by Anonymous Coward

      What you say?

      • by Anonymous Coward

        you have no chance to survive make your time.

  • Given that the original video game CPUs were in the 1-2 MEGA hertz range, and modern CPUs (including Arduino) run in the GIGA hertz range (500-1000 times the clock speed), I would be surprised if you couldn't emulate the old video game hardware, even with sloppily written code.

    Hell, you should just about be able to emulate that hardware with Java and CLR interpreters on modern CPUs.

  • really guys emulator and joysticks?

    I have a SNES pad wired to a printer port for use with a pentium 1 laptop for around 15 years now, neither of which are neither well specced or specialized. What is with these lame ass PI ad's popping up here, used to be news now is "DURH I CAN RUN MIMBIMBOO ON MI PI!"

  • the classic arcade experience involved being in public, with spectators around, lots of noise, and an undefined number of quarters. it involved a new game, or an unknown game, or a popular game. It was loud. In every way, it was loud. It was a machine bigger than the player. And it dragged you into a place that you otherwise wouldn't have gone that day -- like a mall or a convenience store.

C'est magnifique, mais ce n'est pas l'Informatique. -- Bosquet [on seeing the IBM 4341]

Working...