When Brian Provinciano released Retro City Rampage last year, he managed to beautifully capture the retro look and feel of '80s-era NES games while adding a decidedly modern twist. But a lot of players no doubt wonder how much of the game would actually have been possible on real NES hardware and how much was only achievable by using modern computing technology to emulate that feeling. Well wonder no longer, because Provinciano is releasing ROM City Rampage, a prototype version of the game actually built to be "100% hardware-accurate" to the specifications of Nintendo's first home console.

ROM City Rampage actually takes Retro City Rampage back to its development roots in 2004, when Provinciano set out to create "a real 8-bit game that ran on the real thing." He eventually moved on to development on modern platforms in order to make a better game without so many hardware limitations, but he decided to dive back in and finish his old prototype once Retro City Rampage was finished. Provinciano discusses the intricate process of squeezing a modern (if retro-inspired) game into NES hardware in an entertaining video that manages to provide a lot of good technical detail without being completely baffling to non-programmers.

The biggest challenge in porting the game backward a few decades, it seems, was simply getting everything to fit inside the NES' 10KB of RAM, 32KB of program ROM, 256KB of background graphics ROM, and 4KB of sprite graphics ROM for each sprite that was available back in 1989. Provinciano had to scale down the world map a bit, get rid of some of the one-off joke signs seen on background buildings, and remove most of the cars and characters littering the streets just to pack everything in there.

The program code itself also needed to be rebuilt from the ground up. The NES' puny 1.78Mhz 6502 processor can't handle high-level languages like C++, so everything had to be rewritten in machine-level assembly language. To make this process a tad less painful, Provinciano wrote his own NES assembler that let him make use of some higher-level programming structures, and he built a makeshift emulator/debugger to test things out as he went (that assembler is available for free on SourceForge, by the way). Optimizing the code so it could fit into the NES' four 8KB blocks was also a challenge that Provinciano says was "not unlike a game of Tetris."

Surprisingly, getting the game's soundtrack into an NES-friendly form was one of the least painful parts of the process. Retro City Rampage's chiptune soundtrack was created with the Modplug Tracker software, meaning the songs could be easily converted to the NES' NSF sound format directly (with only a few tempo-related hiccups). Thanks to the lightweight nature of the chiptune format, this 2.5 hour soundtrack was squeezed down into an impressive 1.5MB for the Wii version of the game, which is good considering the system's tiny on-board storage.

The final ROM City Rampage is definitely missing a few key features, but it ends up looking surprisingly faithful to last year's release despite being fully compatible with hardware first released in 1985. Don't take our word for it, though; the ROM City Rampage prototype will be available to play through Retro City Rampage's in-game arcade on both the Wii version (which launches today) and the Steam version (which should get a free update sometime today).

We here at Ars give a hearty "bravo" to Provinciano for his relatively pointless yet technically incredible porting feat. Now, where can we buy an actual gray cartridge that lets us play ROM City Rampage on our aging NES hardware?