Game Boy Plays Forever

For those of us old enough to experience it first hand, the original Game Boy was pretty incredible, but did have one major downside: battery consumption. In the 90s rechargeable batteries weren’t common, which led to most of us playing our handhelds beside power outlets. Some modern takes on the classic Game Boy address these concerns with modern hardware, but this group from the Delft University of Technology and Northwestern has created a Game Boy clone that doesn’t need any batteries at all, even though it can play games indefinitely.

This build was a proof-of-concept for something called “intermittent computing” which allows a computer to remain in a state of processing limbo until it gets enough energy to perform the next computation. The Game Boy clone, fully compatible with the original Game Boy hardware, is equipped with many tiny solar panels which can harvest energy and is able to halt itself and store its state in nonvolatile memory if it detects that there isn’t enough energy available to continue. This means that Super Mario Land isn’t exactly playable, but other games that aren’t as action-packed can be enjoyed with very little impact in gameplay.

The researchers note that it’ll be a long time before their energy-aware platform becomes commonplace in devices and replaces batteries, but they do think that internet-connected devices that don’t need to be constantly running or powered up would be a good start. There are already some low-powered options available that can keep their displays active when everything else is off, so hopefully we will see even more energy-efficient options in the near future.

Thanks to [Sascho] for the tip!

Continue reading “Game Boy Plays Forever”

Miniature Faux Floppy For 8-Bit Atari Looks The Part

There’s plenty of fun to be had with retrocomputers of yesteryear, but for modern users, it can be something of a culture shock. Going back to floppy disks after all these years is a reminder of just how far storage technology has come in terms of speed, reliability, and of course, capacity. Luckily, there are ways to combine the best of both worlds.

Floppy drive emulators for classic computers are of course nothing new, but we think this one [c0pperdragon] has put together is worthy of a closer look. Not only does the ATmega32U4 based emulator have an exceptionally low part count, but the code has been written in the Arduino IDE. Both features make it easy for new players to duplicate and revise the design should they feel so inclined. In a pinch you could even implement it on a breadboard with a garden variety Arduino.

The emulator is housed in a 3D printed enclosure designed to look like an era-appropriate Atari 1050 Disk Drive, except you’re using SD cards instead of floppies. The firmware can mimic two physical drives and supports up to 100 disk images on each SD card. The user interface is about as simple as it gets, with two push buttons and a pair of seven-segment LEDs to indicate which disk image is currently loaded up.

We’ve seen some very elaborate disk emulators over the years, but there’s something compelling about how straightforward this version is. If it helps a few more people experience the unique joys of retrocomputing, it’s a win in our book.

Arduino Plays NES Games

Watching the advancement of technology is interesting enough by looking at improved specifications for various components as the years go by. But clock speeds, memory size, and power consumption are all fairly intangible compared to actual implementation of modern technology when compared to days of yore. For example, this $40 microcontroller can do what a video game console was able to do in the 80s for a tenth of the (inflation adjusted) price.

The NESDUE is an emulator for NES games which runs completely on an Arduino Due. The Arduino does have some limitations that have to be worked around to get the Nintendo to work, though. For one, it needs to be overclocked to be playable and it also needs a workaround to get past the memory limit of 96 kB of RAM. From there, a small screen is wired up along with a controller (from a Super Nintendo) and the gaming can begin.

This is an impressive feat for an Arduino platform to accomplish, especially with the amount of memory tweaking that has to happen. This might be the most advanced gaming system available that runs everything on an Arduino, right up there with the Arduinocade which can provide an arcade-like experience straight from the Arduino as well.

Continue reading “Arduino Plays NES Games”

Breadboard Computer Plays Snake On Character Display; Also In A Browser!

If building a homebrew computer on a breadboard is your thing, you’re most certainly familiar with [Ben Eater], whose design of using nothing but logic gates has served as inspiration for many replicas over the years. [visrealm] took the concept and expanded upon it, even adding a 16×2 LCD that let’s you play Snake by moving a single pixel on the character display!

Making the most of tiny resolution is impressive — it’s a difficult constraint for the game field. But there are other tricks at work as well. [visrealm] uses different intensities to distinguish between the snake and its food which is kind of a dark pixel in the demo shown after the break. But what stands out most is that the breadboard build is really only half of the story. In addition, [visrealm] built an entire emulator that resembles his actual breadboard design, which can be programmed and used via browser, giving WebAssembly a whole new meaning. While that’s convenient for anyone interested to play around with these breadboard computers, but lacks the patience to build one themselves, it also functions as the real one’s programming environment. In addition, an ESP8266 is used to load a new program directly via WiFi.

All the code and some build notes are available on GitHub, and if you’re looking for a nifty LCD emulator for your web site, there’s a standalone repository for that as well. But in case you need a better display option for your own breadboard computer, how about adding a VGA connector? And if you don’t build your own yet, it’s never too late to start.

Continue reading “Breadboard Computer Plays Snake On Character Display; Also In A Browser!”

Snakes And Ladders: Game Boy Emulator In Python

If a Game Boy was a part of your childhood, you were probably more than once dreaming of spending your entire school day with it. Well, they had to wait a few more years for that, but eventually in 2015, [Asger], [baekalfen], and [troelsy] made that dream reality when they created a Game Boy emulator in Python for a university project. However, it didn’t stop there, and the emulator has since grown into a full-blown open source project, PyBoy, which just reached the version 1.0 release.

Since it started out as an academic project, the three of them had to do their research accordingly, so the background and theory about the Game Boy’s internal functionality and the emulator they wrote is summarized in a report published along with the source code. There is still some work to be done, and sadly there is no sound support implemented yet, but for the most part it’s fully functional and let’s you successfully play your own extracted cartridges, or any ROM file you happen to have in your possession.

Being an emulator, you can also inspect its inner life when run in debug mode, and watch the sprites, tiles, and data as you play, plus do cool things like play the emulation in reverse as shown in the clip below. Even more so, you can just load the instance in your own Python scripts, and start writing your own bots for your games — something’s we’ve seen in action for the NES before. And if you want to dive really deep into the world of the Game Boy, you should definitely watch the 33c3 talk about it.

Continue reading “Snakes And Ladders: Game Boy Emulator In Python”

Commodore Tape Drive Emulator On A Raspberry Pi

We imagine most of the people reading Hackaday have an old Raspberry Pi or two laying around. It’s somewhat less likely you’ve still got an 8-bit Commodore in working condition, but we’d wager there’s more than a few in the audience that can count themselves among both groups. So why not introduce them?

[RhinoDevel] writes in to tell us about CBM Tape Pi , an open source Commodore tape drive emulator for Raspberry Pi that needs only a handful of passive components to get wired up. Even better, the project targets the older Pis that are more likely to be languishing around in the parts bin. In the video after the break, a Commodore PET can be seen happily loading content from the original Raspberry Pi with its quaint little composite video connector.

Without any special software on the Commodore itself, the project allows the user to load and save PRGs on the Pi’s SD card, as well as traverse directories. Don’t expect stellar I/O, as [RhinoDevel] notes that no fast loader is currently implemented. Of course if you’re enough of a devotee to still be poking around a VIC-20 or C64 this far into 21st century, then we imagine you’ve got enough patience to get by.

Continue reading “Commodore Tape Drive Emulator On A Raspberry Pi”

Ambitious LED Cube Provides Endless Video Game Scrolling; Plays Castlevania

LED cubes are all the rage right now, and rightly so given the amount of work that goes into them and the interesting things people find to do with them. Not content to make yet another position-sensitive display or an abstract design, though, [Greig Stewart] opted for something a bit more ambitious: an LED cube with a playable game of Castlevania.

As ambitious projects often do, this one required leveraging the previous art, some of which we’ve featured before. [Greig] pulled inspiration and information from cube builders like [polyfloyd], [Greg Davill], and [kbob] to put the six 64-LED matrix panels to work. Getting the structural elements figured out was an early stumbling block, but [Greig] pulled it off with 3D-printed brackets and a hinge that’s a work of art in itself; the whole thing looks like something the Borg would have built. The Raspberry Pi inside made a Gameboy emulator possible, and his first stab at it was to have six different games running at once, one on each panel. He settled on just one game, the classic side-scroller Castlevania, played on just four of the panels. Some wizardry was required to de-scroll the game so that the character walks around the cube rather than having the background scroll; you can check out the results in the clip below.

Currently, the cube sits on a lazy susan with a small motor controlling the swiveling in response to a foot control. [Greig] wants to put the motor under control of the game so that physical scrolling is synced with gameplay; we heartily endorse that plan and look forward to the results.

Continue reading “Ambitious LED Cube Provides Endless Video Game Scrolling; Plays Castlevania”