redraw only the things that actually change? That way, the scrolling effect could
be rendered more quickly. He imagined looking at a computer screen that showed a character
running to the right underneath a big blue sky. If that character ran far enough,
a white puffy cloud would eventually pass from off screen over his head. The computer
created this effect in a very crude way. It would redraw every little blue pixel on
the entire screen, starting at the top left corner and making its way over and down,
one pixel at a time, even though the only thing that was changing in the sky was the
white puffy cloud. The computer couldn’t intuit a shortcut to this drudgery just because
a shortcut made sense. So Carmack did the next best thing. He tricked it into performing
more efficiently. Carmack wrote some code that duped the computer into thinking that,
for example, the seventh tile from the left was in fact the first tile on the screen.
This way the computer would begin drawing right where Carmack wanted it to. Instead
of spitting out dozens of little blue pixels on the way over to the cloud, the computer
could
start
with the cloud itself. To make sure the player felt the effect of smooth movement,
Carmack added one other touch, instructing the computer to draw an extra strip of
blue tile outside the right edge of the screen and store it in its memory for when
the player moved in that direction. Because the tiles were in memory, they could be
quickly thrown up on the screen without having to be redrawn. Carmack called the process
“adaptive tile refresh.”
In lay terms, as Tom immediately understood, this meant one thing:
They could do Super Mario Brothers 3 on a PC!
Nobody, no one, nowhere had made the PC do this. And now they could do it, right
here, right now, take their all-time favorite video game and hack it together so it
could work on the computer. It was almost a revolutionary act of subversion, he thought,
especially considering Nintendo’s stronghold on its own platform. There was no way
to, say, copy a Nintendo game onto a PC as one would tape an album. But now they could
replicate it tile for tile, blip for blip. It was the ultimate hack.
“Let’s do it!” Tom said. “Let’s make the first level of Super Mario tonight!”
He fired up Super Mario on the TV in the Gamer’s Edge office and started to play.
Then he opened up the tile editor that they had running on their PCs. Like someone
copying a famous painting, he re-created every little tile of the first level of Super
Mario on the PC, hitting pause on the Nintendo machine to freeze the action. He included
everything—the gold coins, the puffy white clouds; the only thing he changed was the
character. Rather than re-create Mario, he used the stock graphics they had of Dangerous
Dave. Meanwhile, Carmack was optimizing his side-scrolling code, implementing the
features of the game that Tom barked out while he was pausing and playing. Dozens
of Diet Cokes later, they finished the first level. It was 5:30 a.m. Carmack and Tom
saved the level to a disk, set it on Romero’s desk, and went home to sleep.
Romero came in the next morning at ten and found the floppy disk on his keyboard with
a Post-it note that read merely, “Type DAVE2.” It was in Tom’s handwriting. Romero
popped the disk into his PC and typed in the file location. The screen went black.
Then it refreshed with the words
DANGEROUS
DAVE
IN
“COPYRIGHT INFRINGEMENT”
On one side of the words was a portrait of Dangerous Dave in his red baseball cap
and green T-shirt. On the other was a dour looking judge with a white wig, brandishing
a gavel. Romero hit the spacebar to see what would come next. There it was, the familiar
milieu of Super Mario Brothers 3: pale blue sky, the puffy white clouds, the bushy
green shrubs, the animated tiles with little question marks rolling over their sides
and, strangely, his