The Untold Story Of The Bug That Almost Sank The Dreamcast’s North American Launch

Dreamcast© Nintendo Life

Sega may now be an ally to Nintendo, but at the turn of the millennium, it was still very much a rival, with its final games console – the Dreamcast – joining the N64 in a marketplace that was ultimately dominated by the Sony PlayStation.

The Dreamcast might have been Sega’s last throw of the dice in the hardware sector, but before the company pulled the plug and became a third-party publisher, the console enjoyed a pretty successful launch in North America – although, according to former Sega tech staffer John Byrd, the release itself almost didn’t go according to plan.

Speaking to the Retro Hour Podcast, Byrd discusses a bug which, he claims, has never been spoken about before now. Days before the machine’s North American launch in September 1999, he was getting feedback from journalists that certain games were causing their Dreamcast consoles to crash randomly, and that the games in question were all created by the publisher Midway.

Byrd was swiftly sent to Midway’s San Diego office to find out what the issue was, and, because he suspected it had something to do with the “Audio 64” driver developed specifically for the North American market and included in Midway’s games, he took with him the developer of said driver – who, after a few days, decided to flee the scene and take a holiday, leaving Byrd to fix the issue alone. In his own words, he realised that if the bug went unsolved, the blame would fall solely on his shoulders.

While only Midway’s games were encountering the crash, if Byrd couldn’t find out exactly what was causing it, there was the danger that it could potentially be present in other launch games – or future ones. Until the cause was discovered, there was always the looming risk of the Dreamcast being branded as buggy and faulty – something Sega naturally wanted to avoid with such a high-profile release.

Ready 2 Rumble Boxing was one of the Midway titles which caused the Dreamcast to crash
Ready 2 Rumble Boxing was one of the Midway titles which caused the Dreamcast to crash (Image: Midway)

As Byrd recounts to the Retro Hour team, the millions being spent on the North American launch of the Dreamcast would be at risk if he didn’t work with the Midway team to resolve the bug – which, it should be noted, was a true heisenbug in that it appeared to be totally random and impossible to properly debug and fix. It was only when Byrd removed the console’s modem in a fit of frustration that he hit upon a vital hint – it caused the game to crash.

Byrd knew that the modem was connected to the G2 bus – as was the Yamaha AICA sound chip. The sound chip had a MIDI input pin which, on the Japanese model, was tied to ground. On the North American model, the pin in question was left ‘floating’, and it turned out that this was what was causing the system to crash.

However, the crash was caused by a whole bunch of unpredictable elements – anything from the thermal noise in the room to the height of the sun or the position of the moon, according to Byrd. When one of these random elements caused the chip to think the pin was picking up MIDI information, the Audio 64 driver would fall over the cause the entire system to crash.

The solution? A revised version of the Audio 64 driver was quickly created and included in remastered editions of Midway’s games, and disaster was largely averted. The games impacted were recalled and replaced by corrected discs (with a “Hot!” and “New!” logo on the cover), but around ten to fifteen thousand copies made it out into the wild, and these could potentially become collector’s items over time.

While the Dreamcast wasn’t the success Sega had hoped for – it certainly didn’t prevent the firm was exiting the hardware sector – Byrd’s story proves that it could have been a lot, lot worse; if the bug hadn’t been discovered and fixed, the Dreamcast launch would have been something of a disaster.

Products You May Like

Leave a Reply

Your email address will not be published. Required fields are marked *