Extending Old Games With Reverse Engineering And MAME

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.

Having Fun With Dumb Terminals

terminal

For a long time now, [Morgan] has been wanting an old serial terminal. In a stroke of luck, one of his pals at the Quelab hackerspace scored an awesome ADM-3A terminal from a collector. It’s a historically significant piece of computing and UNIX history, so obviously [Morgan] needed to get it working.

The ADM-3A terminal pre-dates the famous DEC VT-100 terminal, but since [Morgan]’s new acquisition speaks RS-232, he had a good shot at getting it to work with one of his more modern boxes. He’s using a Windows laptop loaded up with FreeBSD in a VM to talk to the terminal. Surprisingly, the only additional hardware required was a USB to serial cable and a DE9-DB25 serial adapter.

It may not be as cool (or as loud) as Quelab’s Teletype ASR-35 they have set up for Zork sessions, but it’s great to see ancient hardware have some
use. Right now, [Morgan] is editing files with vi and of course playing Zork. Seems like there’s plenty of life left in this old dumb terminal. After looking for an old VT-100 for a while now, I’ve got to say I’m pretty jealous.

Rate Gyroscope Circuitry Explained

rate-gyroscope-driver

Hackaday alum [Adam Munich] shot a tutorial video on using a rate gyroscope.

Here he’s showing off the really fancy piece of ancient (technologically speaking) hardware. It would have set you back about fifteen grand in the 1960’s (inflation adjusted) but can be had these days for around $30. What a deal! These are not small, or power efficient when compared to the components that go into smart phones or gaming controllers, but they’re a heck of a lot more accurate than the ubiquitous modern parts. That’s because a rate gyroscope — which is the gold cylinder on the left — actually incorporates a spinning motor and a way to monitor how it is affected by changes in gravity. The driver/interface circuitry for this gets hairy relatively fast, but [Adam] does a solid job of breaking down the concept into smaller parts that are easy to manage.

Wondering what is different about this compared to a MEMS accelerometer? We know they’re really not the same thing at all, but wanted a chance to mention [The Engineer Guy’s] video on how those parts are made.

Continue reading “Rate Gyroscope Circuitry Explained”

Atari 800 EPROM Cartridge Hack

atari-800-eeprom-hack

[FozzTexx] had an old Atari 800 collecting dust and decided to pull it out and get to work. The problem is that it’s seen some rough storage conditions over the years including what appears to be moisture damage. He’s read about a cartridge called SALT II which can run automatic diagnostics. Getting your hands on that original hardware can be almost impossible, but if he had a flashable cartridge he could just download an image. So he bought the cheapest cartridge he could find and modified it to use an EPROM.

When he cracked open his new purchase he was greeted with the what you see on the left. It’s a PCB with the edge connector and two 24-pin sockets. These are designed to take 4k ROMs. He dropped in an EPROM of the same size but the pin-out doesn’t match what the board layout had in mind. After following the traces he found that it is pretty much an exact match for an Intel 2764 chip. The one problem being that the chip has 28-pins, four too many for the footprint. The interesting thing is that the larger footprint (compared to the 2732) uses all the same pins, simply adding to the top and moving the power pins. A small amount of jumper wire soldering and [FozzTexx] is in business.

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”

Making A Commodore 64 Portable

making-a-c64-portable

This is [Wpqrek’s] Commodore 64 modified to go on the road with him. The elderly machine has a special place in his heart as it was what he learned to code on. He performed a series of hacks which house everything necessary to use the machine inside the original case.

Obviously the hack that has the most effect when it comes to portability was swapping a display for the small LCD mounted above the number keys. This was a pretty simple process because the screen, originally intended for a rear view camera in a vehicle, already had a composite video input. To emulate the floppy disc drive he’s using an SD card via an sd2iec board which he laid out himself. Rounding up the alterations is a stereo SID. The second channel uses the pre-amp circuit cut from a second C64. This audio hardware will let him do cool things like playing some classic Zeppelin.

You can get a video tour of these alterations after the break.

Continue reading “Making A Commodore 64 Portable”

Printed Machine Does Nothing Until The Heat Death Of The Universe

machine

A 2:1 gear reduction slows down a spinning shaft to half speed and doubles the torque. Repeat this a few times, and you’ve got a ludicrous amount of torque moving too slowly to see with even precision instruments. That’s the idea behind [Jeshua]’s project, a Printed Machine partially embedded in a block of concrete.

[Jeshua]’s build is a replica of one of [Arthur Ganson]’s kinetic sculptures. [Ganson]’s machine uses 50 sets of gears to reduce the rotation of 200 RPM motor more that 200  quintillion times. The final gear in the sculpture is embedded in a block of concrete, waiting to be freed by either erosion of the concrete block or the sun going nova.

Instead of metal gears, [Jeshua] used 3D printed gears in PLA. After assembling them on a stand, he cast concrete around the final, barely moving gear. It’s an impressively useless build that will turn to dust before the final gear makes even 1/10th of a revolution. This machine could have a longer life if it were printed with ABS instead of PLA, but with the time scales we’re talking about here it won’t make much difference.