That Game Cartridge Isn’t As Straightforward As You’d Think

Classic games consoles played their games from cartridges, plastic bricks that held a PCB with the game code on it ready to be run by the console hardware. You might therefore expect them to be an easy prospect for emulation, given that the code can be extracted from whatever ROM they contain. But as anyone with an interest in the subject will tell you, some cartridges included extra hardware to boost the capabilities of their games, and this makes the job of an emulator significantly more complex.

[Byuu] has penned an article exploring this topic across a variety of consoles, with in-depth analyses of special-case cartridges. We see the obvious examples such as the DSP coprocessors famously used on some SNES games, as well as Nintendo’s Super Game Boy that contained an entire Game Boy on a chip.

But perhaps more interesting are the edge-case cartridges which didn’t contain special hardware. Capcom’s Rockman X had a copy protection feature that sabotaged the game if it detected RAM at a frequently used save game address emulated by copiers. Unfortunately this could also be triggered accidentally, so every one of the first generation Rockman X cartridges had a manually attached bodge wire that a faithful emulator must replicate. There is also the case of the Sega Genesis F22 Interceptor, which contained an 8-bit ROM where most cartridges for this 68000-powered platform had a 16-bit part. Simple attempts to copy this cartridge result in the upper 8 bits having random values due to the floating data lines, which yet again an emulator must handle correctly.

It’s a subject with a variety as huge as the number of console developers and their games, and a field in which new quirks are constantly being unearthed. While most of us don’t spend our time peering into dusty cartridges, we’re grateful for this insight into that world.

We’ve visited the world of emulators a few times before, such as when we looked at combatting in-game lag.

Tiny ThinkPad Plays Tiny Games

[Paul Klinger] can’t seem to get enough of building tiny, amazing gaming rigs, and we love him for that. They combine two of our favorites: miniatures and portable gaming. His newest creation honors the form of the formidable ThinkPad.

Of course it has the red nipple and lid LED—wouldn’t be a ThinkPad without ’em. ThinkTiny’s nipple is a 5-way joystick that plays Snake, Tetris, Lunar Lander, and more on an OLED screen. Like its predecessor the Tiny PC, [Paul] used an ATtiny1614, which (FYI) has a new one-wire UDPI interface. He can easily reprogram it through pogo pin holes built into the case.

There are some nice stylistic details at play here, too. The lid LED is both delivered and diffused by a 2mm grain of fiber-optic cable. And [Paul] printed the cover with a color change to transparent filament to make the Think logo and the charging LEDs shine through. Maneuver your way past the break to see it in action.

If you haven’t leveled up to AVR programming yet, introduce yourself to Arduboy.

Continue reading “Tiny ThinkPad Plays Tiny Games”

Tiny Game System Is An Experiment In Minimalism

Many people assumed the smartphone revolution would kill the dedicated handheld game system, and really, it’s not hard to see why. What’s the point of buying the latest Nintendo or Sony handheld when the phone you’re already carrying around with you is capable of high-definition 3D graphics and online connectivity? Software developers got the hint quickly, and as predicted, mobile gaming has absolutely exploded over the last few years.

But at the same time, we’ve noticed something of a return to the simplistic handheld systems of yore. Perhaps it’s little more than nostalgia, but small bare-bones systems like the one [Mislav Breka] has entered into the 2019 Hackaday Prize show that not everyone is satisfied with the direction modern gaming has gone in. His system is specifically designed as an experiment to build the most minimal gaming system possible.

In terms of the overall design, this ATMega328 powered system is similar to a scaled-down Arduboy. But while the visual similarities are obvious, the BOM that [Mislav] has provided seems to indicate a considerably more spartan device. Currently there doesn’t seem to be any provision for audio, nor is there a battery and the associated circuitry to charge it. As promised, there’s little here other than the bare essentials.

Unfortunately, the project is off to something of a rocky start. As [Mislav] explains in his writeup on Hackaday.io, there’s a mistake somewhere in either the board design or the component selection that’s keeping the device from accepting a firmware. He won’t have the equipment to debug the device until he returns to school, and is actively looking for volunteers who might be interested in helping him get the kinks worked out on the design.

The Arduboy, Ported To Desktop And Back Again

A neat little hacker project that’s flying off the workbenches recently is the Arduboy. This tiny game console looks like a miniaturized version of the O.G. Game Boy, but it is explicitly designed to be hacked. It’s basically an Arduino board with a display and a few buttons, anyway.

[rv6502] got their hands on an Arduboy and realized that while there were some 3D games, there was nothing that had filled polygons, or really anything resembling a modern 3D engine. This had to be rectified, and the result is pretty close to Star Fox on a microcontroller.

This project began with a simple test on the Arduboy to see if it would be even possible to render 3D objects at any reasonable speed. This test was just a rotating cube, and everything looked good. Then began a long process of figuring out how fast the engine could go, what kind of display would suit the OLED best, and how to interact in a 3D world with limited controls.

Considering this is a fairly significant engineering project, the fastest way to produce code isn’t to debug code on a microcontroller. This project demanded a native PC port, so all the testing could happen on the PC without having to program the Flash every time. That allowed [rv] to throw out the Arduino IDE and USB library; if you’re writing everything on a PC and only uploading a hex file to a microcontroller at the end, you simply don’t need it.

One of the significant advances of the graphics capability of the Arduboy comes from exploring the addressing modes of the OLED. By default, the display is in a ‘horizontal mode’ which works for 2D blitting, but not for rasterizing polygons. The ‘vertical addressing mode’, on the other hand, allows for a block of memory, 8 x 128 bytes, that maps directly to the display. Shove those bytes over, and there’s no math necessary to display an image.

This is, simply, one of the best software development builds we’ve seen. It’s full of clever tricks (like simply not doing math if you’ll never need the result) and stuffing animations into far fewer bytes than you would expect. You can check out the demo video below.

Continue reading “The Arduboy, Ported To Desktop And Back Again”

Arduboy In A Dreamcast VMU

The Arduboy is a tiny, credit-card sized sized video game console that you can build yourself. The Dreamcast VMU was also a tiny, pocketable video game system, but really that’s just where we stored our saves for Crazy Taxi. What do you get when you combine the two? [sjm] did just that, giving us an Arduboy tucked into a Dreamcast VMU.

The guts of the Arduboy is simply an ATMega32u4, the same chip found in many Arduinos, an I2C OLED, and a few other various electronics for USB, power, and battery protection. In short, it’s an easy circuit, and something just about anyone with the skills can build themselves. Since just anyone can get a PCB fabbed, and the Dreamcast already has nice silicone buttons built into the enclosure, it was a simple matter for [sjm] to create a Dreamcast VMU-shaped PCB with all the guts of an Arduboy. The only real difference is the size of the OLED — this one uses a 0.96″ 128×64 OLED, where the original used one with the same resolution but with a significantly larger size.

Yes, we’ve seen this same project before, but now thanks to the magic of the Hackaday Prize, it’s now in the running for the greatest hardware competition on the planet. You can check out the entire build video and a short demo after the break. Of course, this isn’t the first repurposing of the Arduboy circuit, we’ve seen a flex circuit version, and a version with a crank like the Playdate developed by Teenage Engineering and Panic.

Continue reading “Arduboy In A Dreamcast VMU”

Handheld Game Console Puts Processing Power In The Cartridge

With the proliferation of cheap screens for use with microcontrollers, we’ve seen a matching proliferation in small handheld gaming projects. Pick your favourite chip, grab a screen off the usual suspects, add some buttons and you’re ready to go. [bobricius] has put a unique spin on this, with an unconventional cartridge-based build.

The main body of the handheld is constructed from attractive black and gold PCBs, and features a screen, some controls and an on/off switch. There’s also a microSD socket is on the board, which interfaces with cartridges which carry the microcontroller. Change the cart, and you can change the game.

[bobricius] has developed carts for a variety of common microcontroller platforms, from the Attiny85 to the venerable ATmega328. As the microSD slot is doing little more then sharing pins for the screen and controls, it’s possible to hook up almost any platform to the handheld. There’s even a design for a Raspberry Pi cart, just for fun.

It’s an entertaining take on the microcontroller handheld concept, and we can’t wait to see where it goes next. It reminds us of the Arduboy, which can even do 3D graphics if you really push it. Video after the break.

Continue reading “Handheld Game Console Puts Processing Power In The Cartridge”

Midiboy, The Portable Gaming Console With MIDI

The ArduBoy is a tiny little gaming console that’s also extremely simple. It’s only a small, cheap, monochrome OLED display, a microcontroller with Arduino-derived firmware, and a few buttons. That’s it, but with these simple ingredients the community around the ArduBoy has created a viable gaming platform. It has cartridges now, and one version has a crank. Now, the MIDIboy is bringing something like the ArduBoy to the world of electronic music.

Inside the MIDIboy is what you would expect from any review of the ArduBoy schematics. There are six buttons, a speaker, a USB port, and a SPI OLED display. In addition to all of this are two big chonkin’ DIN-5 ports for MIDI in and MIDI out, and yes, the MIDI in port has an optoisolator.

As for what you can do with a tiny little game console connected to MIDI, there are already a few choice apps — the MIDI Chords app creates chords, obviously, and the MIDImon sketch is a MIDI monitor. There are some controllers for MIDI synths, and of course this device is completely open source. If you’ve ever wanted a DIY controller for your favorite MIDI synth, this is what you need.

If an ArduBoy with MIDI doesn’t sound exciting, just check out Little Sound DJ. That’s a Game Boy cartridge that turns your old brick Game Boy into a music production workstation. Yes, it sounds great and there’s a lot of potential in a pocket game console with MIDI ports.