The SNES Seems To Be Getting Faster Over Time

Every Super Nintendo console should run at the same speed. They were all built in factories with the same components so they should all operate at the steady clip mandated by Nintendo all those years ago. Except, apparently, the SNES is speeding up as it gets older.

The matter was brought to the public’s attention by the [TASBot] team, a group within the speedrunning community. If anyone was going to notice vintage consoles suddenly running a hair faster, you could bet it would be the speedrunners. Soon enough, a call was put out to crowdsource some data. Submitters were asked to run a set piece of code to test the DSP sample rate on consoles when cold and warm, to get the best idea of what was going on.

As reported by Ars Technica, the group seems to have pinned down the problem to the SNES’s Audio Processing Unit. It’s supposed to run at 24.576 MHz, with a sample rate of 32,000 Hz. However, over the years, emulator developers and speedrunners had noticed that 32,040 Hz seemed to be a more realistic figure for what real consoles were actually running the DSP sample rate at. Developers found that building emulators to run the DSP at this rate was important to run commercial games as expected, suggesting the hardware might have always been a little faster than expected.

However, more recently, it seems that the average speed of the DSP sample rate has increased further. The average result collected by [TASBot] from modern consoles is 32,076 Hz. What’s more interesting is the range of submitted figures—from 31,976 Hz to 32,349 Hz. It seems that the DSP’s ceramic resonator—used instead of a quartz crystal—might degrade over time, causing the speedup. [TASBot] team members also tested temperature changes, but only found a 32 Hz variation from a frozen SNES to one at room temperature.

The fact that console components degrade over time isn’t exactly news; we’ve featured plenty of articles on leaky batteries and corroded traces. Still, for speedrunners, the idea that the hardware standard itself can shift over time? It’s like feeling quicksand under your feet. What even is reality anymore?

[Thanks to s7726 for the tip!]

What Happens If You Speedrun Making A CPU?

Usually, designing a CPU is a lengthy process, especially so if you’re making a new ISA too. This is something that can take months or even years before you first get code to run. But what if it wasn’t? What if one were to try to make a CPU as fast as humanly possible? That’s what I asked myself a couple weeks ago.

Left-to-right: Green, orange and red rectangle with 1:2 aspect ratio. Each rectangle further right has 4x the area of its neighbor on the left.
Relative ROM size. Left: Stovepipe, center: [Ben Eater]’s, right: GR8CPU Rev. 2
Enter the “Stovepipe” CPU (I don’t have an explanation for that name other than that I “needed” one). Stovepipe’s hardware was made in under 4 hours, excluding a couple small bugfixes. I started by designing the ISA, which is the simplest ISA I ever made. Instead of continuously adding things to make it more useful, I removed things that weren’t strictly necessary until I was satisfied. Eventually, all that was left were 8 major opcodes and a mere 512 bits to represent it all. That is far less than GR8CPU (8192 bit), my previous in this class of CPU, and still less than [Ben Eater]’s breadboard CPU (2048 bit), which is actually less flexible than Stovepipe. All that while taking orders of magnitude less time to create than either larger CPU. How does that compare to other CPUs? And: How is that possible?
Continue reading “What Happens If You Speedrun Making A CPU?”

Cosmic Ray Flips Bit, Assists Mario 64 Speedrunner

We’ve all heard about cosmic rays flipping bits here and there, but by and large, it occurs rarely enough that we don’t worry too much about it on a day-to-day basis. However, it seems just such a ray happened to flip a crucial bit that assisted a speedrunner in the middle of a competition.

The flip happened to [DOTA_Teabag], who suddenly found Mario flying upward to a higher part of a level, completely unexpectedly. Testing by [pannenkoek12] seems to indicate that this may have been due to a single-bit change to Mario’s height value, from C5837800 to C4837800, leading to the plucky Italian plumber warping upwards through the level. The leading theory is that this bit flip was caused by a cosmic ray event, though the likelihood of such an event is exceedingly rare.

It’s possible that there remains another cause for the flip, though after much work from the community replicating the situation in emulation, none has been found. Other suggestions involve electrical noise or other malfunctions causing the flip, though one would rarely expect such an occurrence to change just one bit of RAM. For now, the jury remains out, but who knows – maybe in the future we’ll find out it was a hidden, undiscovered exploit all along. Of course, if Nintendo doesn’t get you going, try speedrunning Windows 95.  Video after the break.

Continue reading “Cosmic Ray Flips Bit, Assists Mario 64 Speedrunner”

Speedrunning Windows 95

Speedrunning is the practice of attempting to beat a videogame in as short a time as possible. There are a huge variety of methods and styles. There are 100% completion speedruns, tool-assisted speedruns, and speedruns that just focus on getting to the game over screen as quickly as possible by hook or by crook. Now, there’s a world record speedrun, installing Windows 95B in just 1 minute 10.9 seconds.

The current best attempts are collected in a Google Sheets document. So far, there have been few competitors but we expect to see more activity in future. The current rules for world record competition require original floppy and CD-ROM images to be used, but there are no limits on hardware, so records should tumble as time goes on. All the top times have been completed in virtual machines, but we’d love to see an attempt made on raw hardware.

It all kicked off when [oscareczek] grew tired of trying to compete in traditional gaming speedruns, so invented a new category instead. Competition has already come a long way from that original 4 minute time, and competitors are now considering advanced techniques such as RAM disks to speed their runs. All keystrokes are by hand at the moment, but we could see a tool-assisted competition starting up in future.

We’ve seen speedrunning techniques pushed to impressive limits before – like running Pong within Super Mario World, just for fun. Video after the break.

Continue reading “Speedrunning Windows 95”