The guy didn't just "rewrite" the game, he ported it to a completely different hardware!
The rewrite takes advantage of a separate CPU (the SA-1), so while the original was rendered entirely in software, his version is hardware accelerated. That hardly counts as a "rewrite" (which would imply that his code changes led to the speed-up), but an actual port to a different platform.
So it wasn't his code changes that are responsible for the performance increase, it's the use of additional dedicated hardware...
A total of 34 SNES games used the SA-1 “Super Accelerator” chip, which features much faster clock speeds and RAM
Each conversion, Vilela says, takes over a hundred hours of work reverse-engineering existing code, remapping RAM, and adjusting the game to make sure it doesn’t run too quickly on the SA-1. In this case, Vilela estimates they touched some 90% of the game’s code.
The first games with an SA1 chip were released two years after Race Drivin' hit the shelves, so my point still stands and is factually correct. The original Race Drivin' cartridge doesn't contain any enhancement chips and the game runs entirely on the SNES' internal hardware.
"Rewriting" usually doesn't mean making it run on different hardware - that'd be porting. So a game using hardware acceleration runs way faster than its software rendered equivalent? What a shocker! :D
That's not to diminish the guy's efforts by any means - I specifically criticised the headline, not the work of the guy.
So, it wasn't ported to a different system architecture, completely. But it was ported to have a new coprocessor, effectively.
Right? (I'm underlining your point on cartridges having this chip two years later.)
A co-processor would be controlled by the CPU, the SA-1 was its own CPU and could use the 65C816 (the main CPU) to "do its bidding" (e.g. for access to the video chip, etc.). The SA-1 was 2.8x faster than the 65C816 and even had faster internal RAM.
Extra processors came in many varieties, but the SA-1 in particular was much more than your typical DSP(1-4) or data-decompression chip.
Edit: I guess what I'm trying to say is that an SNES + a cartridge with an SA-1 is effectively a different console with different capabilities than an SNES without an SA-1 attached. This concept is lost on so many people these days because they can't wrap their head around the idea that games sometimes used to ship with additional hardware built-in, turning the cartridge itself into a mini-console of sorts.
Yeah they had to touch 90% of the code. But only to make it work with the different hardware. Sure, hardware that was still found in the SNES, but what you're saying about these chips being added to cartridges effectively turning them into a different console is very interesting.
I wish I knew more about the inner workings of electronic circuits, processors and the like. It's at the top of my TODO list to learn. These 90's era SNES cartridges seem like an interesting era as far as that's concerned. The wiki the article links to in regards to the lineage of special chips many of these games contained is cool. https://en.wikipedia.org/wiki/List_of_Super_NES_enhancement_...
On this topic, another nostalgic memory I'll never forget (I'm 35) is walking into a K-mart as a boy and playing Starfox at a demo station for the first time. It was right up front as you walked in. There was a TV & SNES playing the game. It was surrounded by poster board marketing material with flashy pictures. It clearly emphasizied the brand new 'Super FX' chip that made the cutting edge polygon graphics possible.
As if anyone knew what the heck that meant, but a 'Super FX' chip sounds really cool to the layperson. But they were some of the best 3D graphics my young eyes had ever witnessed back in '93 :)
So your analogy doesn't hold - it's not a co-processor, it's a powerful second CPU with more horsepower than the main chip (~10MHz vs ~3.6MHz) and even features its own internal RAM (which also was faster than the RAM in the SNES), it had its own timers, DMA controllers, memory mapping, etc.
The SA-1 was basically an entire SoC in and of itself that could talk to the main console and use the console's resources. Just to put into perspective what we're talking about here. And yes, I would indeed consider that a port, rather than a "hack" to support some co-processor that adds faster maths.
For as great as the SNES was, it’s kind of disappointing Nintendo out of such a poor quality port. Cool to see folks still working on these old games.