It’s Not A Computer If It Doesn’t Have A Cartridge Slot

For viewers of sci-fi TV and films from the 1960s onwards, the miniaturisation of computer hardware has been something of a disappointment. Yes, it’s amazing that we can get 1.21 Jigabytes onto a memory card that fits comfortably under a postage stamp, but we were promised a different future. One of satisfyingly chunky data modules that activated everything from starships to handheld data recorders to malevolent rogue supercomputers, and one that has so far only materialised in the form of cartridges for game consoles.

Our colleague [Tom Nardi] has the solution for his cyberdeck though, in the form of 3D-printed cartridge shells that hide regular USB hardware and mate with a concealed USB socket in the slot. So far he’s designed cartridges for Flash drives, WiFi and Bluetooth adapters, a Wemos D1 Mini, a receptacle, and a parametric reference design.

It’s a bit of pleasing retro fun, but behind it all could be a surprisingly practical and useful expansion system. Each cartridge contains enough space for a lot of extra electronics, so it’s almost the ideal format for building a USB-driven project inside. Best of all since the interface is USB, it still works with conventional USB plugs and sockets. We like the idea, and it’s one that would be a good addition to any cyberdeck project.

We’re far more used to seeing home-made cartridges on game consoles.

Continue reading “It’s Not A Computer If It Doesn’t Have A Cartridge Slot”

RetroArch Open Hardware Aims For Plug-and-Play

At its core, the RetroArch project exists to make it easier to play classic games on more modern hardware. The streamlined front-end with its tailored collection of emulators helps take the confusion out of getting your favorite game from decades past running on whatever gadget you please, from your smartphone to the venerable Raspberry Pi. But there’s always room for improvement.

In a recent blog post, the folks behind RetroArch took the wraps off of an exciting hardware project that’s been in the works for about a year now. Referred to simply as “RetroArch Open Hardware”, the goal is to develop a fully open source cartridge adapter that will integrate seamlessly with the RetroArch software. Just plug in your original cartridge, and the game fires right up like back in the good old days.

Now to be clear, this isn’t exactly a new idea. But the team at RetroArch explain that previous devices that blurred the line between hardware and emulation have been expensive, hard to find, and worst of all, proprietary. By creating an open hardware project, they hope to truly unleash this capability on the community. Instead of having to deal with one vendor, multiple companies will be free to spin up their own clones and potentially even improve the core design. Should none of the ones on the market fit your particular needs, you’d even be free to build your own version,

What’s more, the gadget will also make it easier to create your own ROMs from cartridges you own. By appearing to the operating system as a USB Mass Storage device, users can literally drag and drop a game ROM to their computer’s desktop. No arcane software fired off from the command line; as much as we might enjoy such things, it’s not exactly intuitive for the gaming community at large. The same technique will also allow users to backup their saved progress before it’s inevitably lost to the ravages of time. The device demonstrated by the team currently only works on Nintendo 64 games, but presumably compatibility with be expanded to other cartridges in the future.

Over the years, we’ve seen a number of hombrew devices designed to read and copy game cartridges. We’ve even seen some rather polished examples that were released as open hardware. But those devices never had the public backing of such a well known group in the emulation scene, and we’re excited to see what kind of development and adoption can be spurred on by this level of legitimacy.

[Thanks to Nick for the tip.]

All The Games In One Cartridge

The original Game Boy was a smash success for Nintendo and has an amazing collection of games. You might relive some childhood nostalgia by booting up a Game Boy emulator, but to really get the full experience you’ll need the battery-draining green-tinted original hardware. Thanks to modern technology you can also load all of the games at one time on the original hardware with this STM32 cartridge that fits right in.

The device can load any Game Boy game (and homebrews) and ROMs can be sent to the cartridge via USB. There were are a lot of hurdles to getting this working properly, the largest of which is power management. A normal cartridge has a battery backup for save data, but using a small coin cell to run an STM32 would kill the battery quickly. To get around that, the cartridge writes the states to nonvolatile memory and then shuts itself off, although this has the side effect of crashing the Game Boy.

The creator of this project, [Emeryth], noted that we featured a similar project from [Dhole] a few years ago, also involving an STM32. [Emeryth] decided that it would be fun to build his own project anyway, and it’s certainly an interesting take on GameBoy hacking. He also has the files for this project available on his Git Hub page.

How To Play Doom – And More – On An NES

Doom was a breakthrough game for its time, and became so popular that now it’s essentially the “Banana For Scale” of hardware hacking. Doom has been ported to countless devices, most of which have enough processing ability to run the game natively. Recently, this lineup of Doom-compatible devices expanded to include the NES even though the system definitely doesn’t have enough capability to run it without special help. And if you want your own Doom NES cartridge, this video will show you how to build it.

We featured the original build from [TheRasteri] a while back which goes into details about how it’s possible to run such a resource-intensive game on a comparatively weak system. You just have to enter the cheat code “RASPI”. After all the heavy lifting is done, it’s time to put it into a realistic-looking cartridge.

To get everything to fit in the donor cartridge, first the ICs in the cartridge were removed (except the lockout IC) and replaced with custom ROM chips. Some modifications to the original board have to be soldered together as well, since the new chips’ pinouts don’t match perfectly. Then, most of the pin headers on the Raspberry Pi and the supporting hardware have to be removed and soldered together. Then, [TheRasteri] checks to make sure that all this extra hardware doesn’t draw too much power from the NES and overheat it.

The original project was impressive on its own, but with the Doom cartridge completed this really makes it the perfect NES hack, and also opens up the door for a lot of other custom games, including things like Mario64.

Continue reading “How To Play Doom – And More – On An NES”

The ArduBoy Community Rolled Their Own Cartridge

The Arduboy, as you might have guessed from the name, was designed as a love letter to the Nintendo Game Boy that many a hacker spent their formative years squinting at. While the open source handheld is far smaller than the classic DMG-01, it retains the same general form factor, monochromatic display, and even the iconic red LED to the left of the screen. But one thing it didn’t inherit from the original was the concept of removable game cartridges. That is, until now.

Over the last year, [Mr.Blinky] and a group of dedicated Arduboy owners have been working on adding a removable cartridge to the diminutive handheld. On paper it seemed easy enough, just hang an external SPI flash chip off of the test pads that were already present on the Arduboy PCB, but to turn that idea into a practical cartridge required an immense amount of work and discussion. The thread on the Arduboy community forums covers everything from the ergonomics of the physical cartridge design to the development of a new bootloader that could handle loading multiple games.

Early cartridge prototypes.

The first problem the group had to address was how small the Arduboy is: there’s simply no room in the back to add in a cartridge slot. So a large amount of time is spent proposing different ways of actually getting the theoretical cartridge attached to the system. There was some talk of entirely redesigning the case so it could take the cartridge internally (like the real Game Boy), but this eventually lost out for a less invasive approach that simply replaced the rear of the Arduboy with a 3D printed plate that gave the modders enough room to add a male header along the top edge of the system.

As an added bonus, the cartridge connector doubles as an expansion port for the Arduboy. While perfecting the design, various forum users have chimed in with different gadgets that make use of the new port, from WS2812B LEDs to additional input devices like joysticks or a full QWERTY keyboard. Even if you aren’t interested in expanding the storage space on your Arduboy, being able to plug in new hardware modules certainly opens up some interesting possibilities.

In fact, the project so impressed Arduboy creator [Kevin Bates] that he chimed in on the topic last month to announce he would start looking into integrating the community’s cartridge modification into the production hardware. If all goes well, pretty soon there might be an official upgrade path for those who want to expand what this tiny nostalgia machine is capable of.

Continue reading “The ArduBoy Community Rolled Their Own Cartridge”

Dual-Port Memory And Raspberry Pi Team Up For Retro Console Multicart

There’s something powerful about reliving the experience of using a game console from our personal good old days, especially the tactile memories stored up from hundreds of hours handling a chintzy joystick or the sound and feel of inserting a game cartridge. Emulators have their place, but they fall far short of period-correct hardware in the nostalgia department.

That’s not to say that the retro gear can’t use a little help in terms of usability, which is why [Scott M. Baker] built this Raspberry Pi multi-cartridge for his Atari 5200. The idea is to maintain the experience of the cartridge interface without having to keep stacks of cartridges around for all the games he wants to play. [Scott] leveraged the approach he used when he built a virtual floppy drive for a homebrew PC/XT: dual-port memory. The IDT7007 is a 32k chip that lives between the Atari 5200 and a Raspberry Pi Zero and can be addressed by both systems; the Pi to write ROM images to the memory, and the console to read them. He had to deal with some fussy details like chip select logic and dealing with the cartridge interlock signals, not to mention the difference in voltage between the memory chip’s logic levels and that of the Pi. Retro game-play occupies the first part of the video below; skip to 6:45 for build details.

The one quibble we have is trying to jam everything into an old cartridge. It’s critical to replicating the tactile experience, and while we don’t think we’d have gone so far as to injection mold a custom cartridge to house everything without any protrusions, we might have 3D-printed a custom cartridge instead. In the end it doesn’t detract much from the finished project, though, and we appreciate the mix of old and new tech.

Continue reading “Dual-Port Memory And Raspberry Pi Team Up For Retro Console Multicart”

Adding Character To The C64

The venerable Commodore 64, is there anything it can’t do? Like many 1980s computer platforms, direct access to memory and peripherals makes hacking easy and fun. In particular, you’ll find serial & parallel ports are ripe for experimentation, but the Commodore has its expansion/cartridge port, too, and [Frank Buss] decided to hook it up to a two-line character LCD.

Using the expansion port for this duty is a little unconventional. Unlike the parallel port, the expansion port doesn’t have a stable output, as such. The port contains the data lines of the 6510 CPU and thus updates whenever RAM is read or written to, rather then updating in a controlled fashion like a parallel port does. However, [Frank] found a way around this – the IO1 and IO2 lines go low when certain areas of memory are written to. By combining these with latch circuitry, it’s possible to gain up to 16 parallel output lines – more than enough to drive a simple HD44780 display! It’s a testament to the flexibility of 74-series logic.
It’s all built on a C64 cartridge proto-board of [Frank]’s own design, and effort was made to ensure the LCD works with BASIC for easy experimentation. It’s a tidy mod that could easily be built into a nice enclosure and perhaps used as the basis for an 8-bit automation project. Someone’s gotta top that Amiga 2000 running the school district HVAC, after all!