‹ rotational

On MiSTer

July 04, 2021 ・ Blog

Opening page illustration: an abstract representation of a microchip

A couple of months ago, Edge published a feature I wrote about the MiSTer project. I’d been wanting to write about MiSTer for a while, because it’s such an exciting platform for retrogaming – I’ve been spending many happy hours exploring shooters on the PC Engine, messing around with a 486 PC, and revisiting the SNES classics, all in fantastic fidelity and feeling just how I remember them.

I talked to various members of its dev community, including Sorgelig, its slightly enigmatic but stalwart founder, and Jotego, a hotshot arcade core maker. I wanted to dig into its culture and origins in the MiST project, as well as simply describe what MiSTer is, which is what most articles have tended to do.

(What MiSTer is: A semi-self-built board which looks like a Raspberry Pi and incredibly accurately simulates pretty much any arcade and home computer and console hardware from computing’s origins up to 1994 or so, all on modern HDMI screens and with USB controllers, keyboard, mouse, and so on. There are many platforms that are highly accurate, and many that hook easily into modern TVs and peripherals, but MiSTer is one of the very few that do both.)

Here’s the introduction, in which I tried to portray the process and incredible attention to technical detail that goes into creating cores for something like MiSTer:

Last Christmas, José Tejada encountered a weird issue in Contra. A player of his recreation of Konami’s original arcade PCB had reported that the music was playing too slowly if you compared it with the genuine 1987 hardware. The pitch was right, but the pacing wasn’t – and that, to Tejada, was very odd.

You’d be hard-pressed to find someone in the world with a better understanding of Contra’s PCB and its Yamaha YM2151 sound chip than Tejada, known as Jotego in retrogaming circles. A microelectronics engineer with a love of classic videogames, he’d become interested in reverse-engineering the chips that defined the sound of many arcade games, computers such as the MSX range, and consoles such as Sega’s Mega Drive, so that he could simulate them perfectly on his PC. He’d painstakingly measured the voltages and timings of the original chips, figuring out exactly how they directed flows of data around them. To find his recreation not performing exactly as it should, then, was a surprise.

So Jotego dug once again into the minute architectures of Contra’s PCB and the YM2151, following connections between components until he found an anomaly in the way the real Yamaha uses the PCB’s power-distribution unit as a timer for its music. Jotego’s recreation had made a logical assumption about how the chip’s timer operates, and it didn’t match: the Yamaha timer was failing to properly reset itself as it looped. “So the Yamaha design was actually wrong, because the counter was out of control!” Jotego says. This tiny error, made decades ago when the chip was designed, was inserting random values into the timer which has meant that, ever since its release in 1987, Contra’s music has been running just a little faster than it was meant to.