Clyde Shaffer's Homemade 6502 GameTank Console Gets a New Cartridge with Battery-Backed SRAM
Inspired by boards built for games you can't complete in a single sitting, the GameTank now has a cleverer cartridge design.
Clyde Shaffer's homemade from-scratch MOS 6502-based games console, the GameTank, now has an upgraded design for its swappable game cartridges — now packing battery-backed RAM, which should retain its contents for a decade or more.
We last looked at Shaffer's GameTank a couple of years ago, when the project had just a single game: Cubicle Knight, loaded onto a simple cartridge with 2MB of NOR flash mapped into a 32kB address space using a shift register for the higher bits. This connected to the GameTank itself, a from-scratch console built around the MOS 6502-compatible WDC W65C02S CPU running at 3.5MHz — enough to drive a double 128×128 framebuffer with 200 colors and a blitter capable of running at 3.5 megapixels per second.
Shaffer's latest upgrade for the console, a redesign of the swappable games cartridge, which is as open source as the rest of the console, borrows a trick from more complex games of the 1980s onwards, where finishing the game in a single sitting wasn't going to be an option — by adding battery-backed static RAM (SRAM) to hold data even when the console itself is powered off.
"This design adds 32kB of SRAM that is powered by a coin cell battery when the system is powered down. The previously-unused eighth output bit of the shift register is now used to select between the flash and the SRAM," Shaffer explains. "As with the previous design, any accesses to the upper half of the cartridge address space will go to the top of the Flash memory. The lower half of the cartridge space is a sliding window controlled by the shift register. This ensures that the CPU can read the Reset Vector on a cold boot."
While there's a small amount of current leakage if the cartridge is left connected to the console, Shaffer has high hopes for the battery life stored separately — as high as 18.8 years, he estimates, based on the capacity of the coin cell and the 1µA standby current of the SRAM part chosen for the project.
"Adding the SRAM and associated parts only added $6 to the price of a cartridge," Shaffer explains of his reason to go with the technology in place of something more esoteric, "vs $12-13 for using an FRAM. I considered it for a 'memory card' type approach where one memory device is shared between games, but then I'd have to come up with some kind of filesystem.
More details on the cartridge, including a link to the schematic, are available on Shaffer's Reddit thread; full information on the GameTank itself can be found on the project's dedicated website, with hardware schematics and production files available on GitHub under an unspecified open source license.