Published , by David Craddock
Published , by David Craddock
ON DECEMBER 10, 1993, ID Software's developers uploaded Doom to a high-speed file-sharing server maintained by an IT administrator who oversaw University of Wisconsin's network. The shareware episode arrived to great fanfare. So great, in fact, that the admin had to ask hundreds of users eager to download Doom to log off so id could transfer the game. Instantly the chat rooms became ghost towns.
At two o'clock that afternoon, the gamers at id uploaded Doom, and all hell broke loose.
Grown adults in businesses suits clogged office networks to frag one another in deathmatch. College students flunked out, and didn't care. Doom's virtual world of demons and rocket launchers was better than real life.
Two years later, in the early months of 1995, a package showed up at id's office in Dallas, Texas, with zero fanfare. Inside was a prototype cartridge for the Super Nintendo. The guys locked it into place and powered on the console.
"Oh, my God," John Romero, co-founder of id Software, remembered saying. "Doom is on the Super Nintendo."
The package's return address listed Sculptured Software, a developer based in Salt Lake City, Utah. "They reverse-engineered it and sent it to us," Romero explained, "and we said, 'Um. Okay. We'll get this published.'
To Romero's recollection, Sculptured Software embarked on their self-appointed mission with no expectation of an advance payment. "That was probably one of the rare times when a company decided to do a port and then just did it for free," Romero continued. "We didn't even think to do a Super Nintendo version of Doom. That hardware was absolutely not made for 3D. Super Nintendo was good for horizontal scrolling, parallax effects, all that stuff, but Mode 7 was as crazy as it got."
Doom's port to Super Nintendo was the brainchild of Randy Linden, a programmer who loved Doom almost as much as he loved a challenge. Nintendo's 16-bit hardware was on its way into the sunset. Sega and Sony's 32-bit consoles had arrived, and Nintendo had begun whispering about its next platform, codenamed Ultra 64.
Super Nintendo was hardly the ideal platform for Doom, but Linden was confident he could make it work. All he needed was the MacGyver-esque skills all programmers called upon to write games. In those days, developers lacked an industry-approved set of tools to facilitate projects. There was no Unreal engine, no Unity, no library of programming routines for common tasks such as blasting pixels and polygons onto screens.
To complicate matters, console manufacturers like Sega and Nintendo were notorious for throwing developers into the deep end of their pools. They allowed outside studios to write games for their platforms, but those games would technically compete with their own software. Therefore, it didn't behoove manufacturers to give studios a leg up by providing detailed documentation and toolsets. Most developers had to figure out how to reverse-engineer the Super Nintendo to build their own development kit.
There were other limitations. In the days before "half-step" consoles like the PS4 Pro and Xbox One X, manufacturers could not upgrade console hardware. As a workaround, Nintendo introduced optional chips developers could add to their cartridges to allow more features. One such, the Super FX chip, was a graphics processor that opened the SNES up to advanced 2D and 3D visuals. Linden knew there was no way Doom would run on SNES without the Super FX. He also knew he'd have to build a development environment for it himself.
Linden worked at the right company. "The games we were doing were reaching the top of the charts,” Jeff Peters, a project director at Sculptured Software from May 1992 until September 1997, told me in an interview for Arcade Perfect, my 2019 book about converting coin-op games to home systems. “We were known as the Mode 7 studio, and were quickly gaining a reputation for being able to get the most out of the hardware."
Sculptured Software garnered a reputation for building games as cutting-edge as they were a blast to play. In addition to the Super Star Wars trilogy of action titles, one of its team had created 1992's NCAA Basketball, one of the first b-ball games to render action from an overhead, isometric view by harnessing the power of Mode 7. Perhaps most notably up to that point, the studio had been responsible for ports of Mortal Kombat and Mortal Kombat 2 on the Super Nintendo.
Sculptured Software created another revenue stream by selling dev kits for the Super Nintendo, saving developers the trouble and expense of learning how to make one themselves. "Our tools were sold, assemblers and compilers in a physical box that allowed access," Peters said. "They became the industry standard for a while. If you were going to do NES or Super Nintendo development, you bought a hardware kit and the tools to do it from us."
Linden started by hacking a Star Fox cartridge, since it was the first SNES game to use the Super FX Chip. Linden programmed on a Commodore Amiga. His environment consisted of a homemade assembler, an interface to write and process assembly language; and a debugger to weed errors out of his code. Using a connection between his Amiga and a Super NES, he could copy code onto his hacked Star Fox cartridge's ROM, or read-only memory chip. To test code, he modified a pair of controllers that had to be plugged into each SNES port, as well as connected to the Amiga's parallel port.
Once he had a prototype up and running, he showed it to his bosses. They were impressed, and assigned other developers to help him get the game ready in time for Christmas.
Before that, they had to convince id Software, Doom's owners, that the port should exist.
Linden shipped his prototype to id and received an enthusiastic response. To speed things along, Sandy Petersen, a level designer at id who created dozens of maps for Doom and Doom 2, would convert levels from the PC version of Doom to SNES. "I was told to do it by John Carmack," Petersen recalled. "He and I were the only people who worked on Super Nintendo Doom at id. I was basically the only level designer."
Petersen was the only level designer because he was the only designer available to help. Id was experiencing growing pains during the transition from 1994's Doom 2 to Quake, the direction of which was still in flux. Until Quake's direction coalesced, shepherding Doom's levels onto Super NES would keep him busy.
Easier said than done. Although Doom was a "2.5D" game rather than true 3D, each map featured walls, staircases, lifts, corridors, windows and cavernous rooms--easy enough to render on a PC, but not an aging console. He decided he could complete the assignment by completing three general tasks. The first was to strip out unnecessary textures. Walls could keep them; ceilings and floors, such as bubbling lava and pools of toxic slime, would be reduced to single-color planes: green for ooze, red for lava, and so on.
"The second task was to reduce the overall number of polygons, so I simplified stairways, door openings, and any little architectural detail would be smoothed out," Petersen continued.
Petersen's third task was the most laborious. Super NES's processor was slow and weak relative to PCs of the time. To lessen the burden of running Doom, he had to go through each map and make tough choices. "I do remember that the levels with windows that looked outside were a massive pain, because you could always see too many polys."
Consequently, outdoor regions were dialed back or removed entirely.
Another problematic occurrence arose in levels where a large room contained a door that opened on to another big room. "Showing two giant rooms at once was impossible," Petersen admitted. "So I put 'vision traps' into the halls. If I had two big rooms next to each other, the hall between them made a little crookneck, like a sink trap, so you could never see both rooms at once."
Crates had to go, too. Broken down to its fundamentals, a crate is a solid object, like a wall that players can see over. Anything they can see, the SNES's processor and Super FX Chip must draw. "A room full of crates just has tons and tons of these extra polygons," he said.
The second mission of episode two (known in Doom's shorthand as E2M2), a warehouse full of crates, was dropped. So was E2M7, a sprawling laboratory with lots of windows looking into larger areas. "We also cut E3M5 because of the gigantic central cathedral, for example," Petersen added.
Many removals seemed minor on the surface. In the starting area of episode one, a room off to the left contains two pillars hiding zombie shotgunners on higher difficulties, and a narrow set of stairs leading up to a platform where players find their first suit of armor. Petersen deleted the pillars and platform, leaving a plain room.
Every cutback was Petersen's call. Some were harder to make than others, but had major consequences on Doom's personality. Reducing the room with pillars and a staircase up to a broad platform in the starting area, for instance: In 2020, that geometry seems laughably simple. But that room had been the point at which players who had played on PC had realized Doom was unlike any game they had played before. Actions such as walking up and down stairs in a first-person view, and the concept of levels made up of multiple floors, had been virtually unheard of. John Romero, the level's architect, had designed that room to make jaws drop right out of the gate. Similar architecture would be left intact in later levels, but players on SNES would never know that they were missing out on one of gaming's biggest yet simplest thrills.
Other limitations, such as reducing monster sprites from multi-sided to single-sided, were Sculptured Software's decisions to make. Each affected the game in assorted ways. Single-sided enemies could only face forward; that meant players couldn't do things like sneak up behind monsters, or trick monsters into fighting each other, since one monster would have to face sideways or turn around to attack another.
Those choices led to technical quirks many players may not pick up on, but would stick out to anyone familiar with Doom's nuts and bolts. Petersen noticed, for example, that although monsters always faced forward, Sculptured Software had left their internal logic--their behavioral patterns--intact. That may have been intentional. If monsters were programmed to know that players were always in their line of sight, they may have attacked relentlessly, making the game overly difficult.
Petersen didn't have access to playable builds of the game. Those were produced over in Salt Lake City. All he could do was edit maps, walk around them without any other actions available, send them over to Sculptured Software, and hope the port turned out well enough. "I feel sorry for Sculptured Software to have to do all that work with literally no one from id helping out. I mean, I would have helped if I could but once I did the levels, I had to go back to making Doom and Quake levels. We were a tiny little company after all, with limited personnel."
Doom arrived in stores in a unique red cartridge on September 1, 1995. While the final product was marred by visual and gameplay issues such as low frame rates and graphics pixelated to the point that many objects were unrecognizable until players were close enough to trip over them, the fact that Doom ran on SNES at all was a major technical achievement, especially for Petersen and Linden, who went on to other auspicious projects such as the groundbreaking bleem! emulator that ran PlayStation games on PC.
"We were really surprised," said John Romero. "We didn't think the Super Nintendo could do it, but incredibly, that was so many people's first exposure to Doom."
Author's note: Information pertaining to Randy Linden's efforts on Doom for SNES came from an interview posted on Gaming Reinvented in 2017. Comments from John Romero and Sandy Petersen came from my interviews with the developers.
Hyped for Doom Eternal? Check out Countdown to Doomsday for even more Doom-related features, videos, and more.