Extending old games with reverse engineering and MAME

HEX

For last year’s Toorcamp, the folks over at DorkbotPDX helped out with the Church of Robotron installation. A religion founded on the prophesy of a cybernetic uprising in the year 2084 is a little esoteric even for us, so the Dorkbot crew wanted a way to make playing Robotron: 2084 a little more visceral. Using MAME and a few debugging tools, they were able to read the memory of a machine playing Robotron to extend the game into the physical world. When the player dies, lights go off, alarms sound, and the prophet of the Church of Robotron is pleased.

The setup at the Church of Robotron included a machine running MAME with a Robotron ROM. When events happened in the game, such as lasers firing or a player death, physical events would be triggered. To do this, the Dorkbot team read the memory locations of a game of Robotron at different times and found memory locations tied to in-game events. On their blog they go over using the MAME debug tool to detect a player’s death which can then be translated into physical apparitions for the Church of Robotron.

It’s a very cool hack, and one we wish we had a video of. Having a plastic ghost hit a player while playing Pac-Man seems like an awesome idea, and with the Dorkbot tutorial, it looks fairly easy.

Playing MAME Games on a RGB Laser Projector

MAME Laser Projector

Vector based displays were used for arcade games in the ’70s and ’80s. A typical CRT uses raster graphics, which are displayed by deflecting a beam in a grid pattern onto a phosphor. A vector display deflects the beam in lines rather than a full grid, drawing only the needed vectors. Perhaps the best known vector game is the original Asteroids.

[Jeremy] built up a RGB laser projector, and wanted to run some classic arcade titles on it. He started off by using the XMAME emulator, but had to modify it to communicate with the laser and reduce flicker on the display.

To control the laser, a modified version of OpenLase was used. This had to be enhanced to support RGB color. The modified sources for both the MAME emulator and OpenLase are available on Github.

[Jeremy]‘s friend, [Steve], even got a vector based game that he wrote working on the system. “World War vi” is a shoot-em-up battle about the vi and emacs text editors.

The results of the build are shown in a series of videos after the break.

Continue reading “Playing MAME Games on a RGB Laser Projector”

Coffee table arcade cabinet

ikea-arcade-gaming

Get some Pac-Man fever while sitting on this couch thanks to the arcade rig built inside of the coffee table. The controls are a bit more sparse than more dedicated MAME rigs, but you should still be able to play most of the classics with four buttons and a joystick. After all, you need to reserve some room to put your feet up when you’re not gaming.

[Manny Flores] started the project with a Lack table from Ikea. The top is anything but solid. After tracing the outline of his LCD screen and cutting through the surface he discovered this is more of a beefed of cardboard than it is wood. The honeycomb of paperboard inside the surface of the table makes it really easy to clear out some space. In fact, when it came time to add the arcade buttons he just used a utility knife to cut the openings. Inside you’ll find a Raspberry Pi which interfaces with the buttons and joystick via an iPac USB controller board. A set of powered speakers mounted on the underside complete the design.

[via Adafruit]

Star Wars themed MAME cabinet is perfect in this basement bar

star-wars-themed-mame-cabinet

Fans of the Star Wars series will immediately recognize these illuminated vertical bars as a piece of the style from the original movie. They decorate the MAME cabinet recently installed in this home bar. You’ve got to admit, it looks amazing. But we’re always on the prowl for the build log and this annotated 46 image set has no shortage of goodies.

The project started off as a very ordinary looking plywood frame. But it takes shape quickly as the rounded-over grills were added to the box. Holes were cut behind them to accept the acrylic that serves as a diffuser and to allow the LEDs to shine through from the inside. There are several shelves which will be used to store additional gaming systems in the future. For now all that’s inside is a pretty beefy computer that runs the emulators, allowing games to be played via the arcade buttons or using wireless Xbox controllers.

Make sure you get all the way to the end of the build images. We were delighted by the custom icons in the arcade buttons. Instead of the common player one and player two images there are silhouettes of Star Wars characters and objects. This attention to detail really makes the build something special!

[Thanks Jason]

Using arcade monitors with the Raspberry Pi

mame

Along with the growing popularity of the Raspberry Pi, we’ve also seen a related uptick in MAME arcade cabinet builds. Putting this $35 computer in an arcade cabinet makes a lot of sense, but connecting it to one of the monitors found in old arcade cabinets is a bit of a pain. Luckily, [Celso] figured out how to connect a Raspi to one of these 15kHz RGB monitors, making for a much more accurate emulation of old arcade classics.

The Raspi only has two video outputs – an HDMI port and an RCA composite jack. The old arcade CRTs have an RGB input, so directly connecting a Raspi to one of these CRTs is a no-go.

The solution comes from two converters: one to convert the HDMI output to VGA, and another video downscaler that takes the 31kHz VGA signal and translates it into a 15kHz RGB signal. [Celso] settled on the GBS-8100 video converter, a rather uncommon piece of kit that can fortunately be found on a few Chinese eBay auctions.

After connecting the old arcade cabinet power supply to the Pi, hooking up an audio amp, and converting the controls to USB, [Celso] has a very accurate MAME machine.

Tiny MAME cabinet built from Raspberry Pi

It’s been a while since we’ve seen [Sprite_tm] pull a project from thin air, and we haven’t seen him do anything with a Raspberry Pi yet. All things must pass, and finally [Sprite] has unleashed his tiny, pocket-sized MAME machine to the world.

The build uses a Raspi for all the Linux-ey and MAME goodness, but [Sprite_tm] didn’t want to fiddle around with the HDMI or analog video output. Instead, he chose to use an SPI-controlled TFT display that is only 2.4 inches across. This isn’t a new hack for [Sprite] – he figured out how to connect this display over GPIO pins with a Carambola earlier this year.

To make his cabinet portable, [Sprite] opted for using old cell phone batteries with a cleverly designed charging circuit. When the power supply is connected to +5V, the batteries charge. When this power is removed, an ATtiny85 provides 5V of power to the Raspi and display.

No arcade cabinet is complete without a marquee of some sort, so [Sprite] used an extremely tiny 128×32 white OLED to display the logo of the game currently being played. Everything in the Raspi is set up to be completely seamless when switching between games, automatically configuring the controls and marquee for the currently selected game.

You  can check out [Sprite]‘s mini MAME booting straight into Bubble Bobble after the break along with some gameplay footage and finally switching it over to Nemesis. A very awesome build from an exceedingly awesome maker.

Continue reading “Tiny MAME cabinet built from Raspberry Pi”

Turning the Raspberry Pi into a cocktail MAME coffee table

Ah, the cocktail arcade cabinet. With the right design, its able to blend right in to any living room decor, much more than any traditional stand-up cabinet, at least. [graham] over on Instructables didn’t tear apart a 30-year-old arcade cabinet for his new coffee table. Instead, he built one from scratch, connected it to a Rasberry Pi, and brought hundreds of arcade classics right in front of his couch.

The build began by cutting up some wood to house the 24″ LCD screen, Raspi, and arcade controls. The LCD screen is supported with a rather clever system of cross braces screwed into the VESA mount, and of course a piece of perspex protects the screen from the inevitable spills and scratches.

The joystick two blue ‘player’ buttons and the player 1 and player two buttons are wired directly to the GPIO pins of the Raspberry Pi. The Raspi boots up into a selection of MAME games, but there’s also an option for opening up the window manager and browsing the web.

It’s a very neat build that’s a lot smaller (and easier to build) than a traditional cocktail cabinet. As [graham] is using it for a coffee table, it might get more use than a regular MAME build, to boot.