The humble beginning of id Software
Table of contents
This article is translated from the original Chinese edition.
If the founding story of Facebook could be turned into The Social Network, it’s only a matter of time before Hollywood makes a movie out of David Kushner’s Masters of Doom.
In fact, in 2019, someone did try to adapt Masters of Doom into a TV series. The Franco brothers, James and Dave, produced the first episode, but in the end, the USA Network decided not to invest, causing the series to fizzle out. However, someone on the internet found a few stills from the show, recreating the look of the Softdisk office back in the day.
Softdisk is precisely where the two Johns, John Romero and John Carmack, first met. Together with two other individuals, Tom Hall and Adrian Carmack, they co-founded id Software. They developed legendary games like Doom and Quake, pioneering the first-person shooter genre and forever revolutionizing the gaming industry.
Softdisk - Gamer’s Edge
John Carmack had no intention of taking the job at Softdisk initially. He had been freelancing for a while, enjoying the freedom, but freelancing only made ends meet. He needed a full-time job. So, after being invited repeatedly by Jay Wilbur and Tom Hall, 19-year-old Carmack drove from his home in Kansas City to Shreveport, Louisiana (an eight-hour drive), where the Softdisk office was located.
It was only when Carmack met John Romero and a group of experienced programmers at the Softdisk office that he decided to take the job. Back in school, Carmack was the smartest kid. There wasn’t much his teachers could teach him, so he had always been self-taught by reading library books. However, at Softdisk, for the first time, he encountered programmers who were better than him. He felt that he could learn from the veterans here things he couldn’t learn from books. So, he decisively moved to Shreveport to join Softdisk and Romero’s team.
Softdisk’s business model could be described as “software surprise bags delivered to your home every month”: for roughly $10 a month, you’d receive a 3.5-inch floppy disk, filled with various unselected applications or games. These programs could run on the mainstream platforms at the time: Apple II, Apple IIgs, IBM PC (or simply PC). Back then, the PC with Microsoft’s MS-DOS operating system was eating into Apple’s share, dominating the personal computer market.
In 1990, Softdisk went along with the PC trend and let Romero lead a new department called Gamer’s Edge, developing PC games. The boss gave Gamer’s Edge its first task: to produce two PC games within a month for Softdisk to ship to subscribers.
“Two games in one month? How is that possible?” Fortunately, Romero and Carmack had written many games before joining Softdisk. They thought they could port their previous Apple II games to the PC: Romero’s Dangerous Dave and Carmack’s Catacomb.
Smooth scrolling
Dangerous Dave and Catacomb were both 2D scrolling games. In Dangerous Dave, the background was basically static, with the background only changing after the player completed a level. Catacomb’s scene moved with the player, but it moved in “tiles,” which are made up of pixels (like 8x8 or 16x16), rather than pixel by pixel.
This limitation wasn’t accidental or due to laziness, but because personal computers at the time were slow. If the whole scene had to be redrawn for each pixel movement, the game would be choppy and unplayable. The holy grail of scrolling games at that time was the legendary Super Mario Bros, which. As early as 1985, Nintendo had achieved “smooth scrolling”—the background could move smoothly pixel by pixel with Mario on their game console. Mario was not only a part of countless childhood memories, but also a benchmark for many game developers. Romero’s creation of Dangerous Dave was an attempt to make a Mario-like game. And smooth scrolling was also a technical feat Carmack wanted to pull off.
After Gamer’s Edge released its first disk, Softdisk’s boss promised Romero and Carmack that they would “only” need to make one game of their own every two months. This gave Carmack time to start researching the technology for smooth scrolling.
The EGA video card standard at the time had some features that could accelerate smooth scrolling computation.
-
EGA had enough memory space to allow for double buffering—you put two buffers in the video card memory: one for drawing and one for displaying. After a buffer is drawn, it is then swapped to display on the screen, thereby solving the problem of screen flickering.
-
Another feature of EGA was that it allowed you to configure a buffer that was larger than the actual screen. Suppose the screen size was 320x200 pixels, you could configure a slightly larger buffer, like 384x224, and then move the camera within the buffer. As long as the camera is still within this buffer, apart from the tiles next to the game character, no pixels need to be redrawn.
Carmack asked, “So, what should happen if the camera moves outside the buffer?” He thought the whole buffer would have to be redrawn, combined with a method he called Adaptive Tile Refresh. He noticed that most scenes, like Mario’s blue sky and white clouds, were quite monotone. Imagine overlaying two identical backgrounds, one stationary and one shifting by a tile—you’d find that the colors of most tiles remain unchanged. Carmack coded this observation into his program, which saved a lot of CPU time, allowing the screen refresh rate to maintain 20-30 frames per second, ensuring smooth gameplay.
Adaptive Tile Refresh was a clever but also complex method. Later, Carmack found a simpler and faster way. He noticed that when the camera moves outside the buffer, EGA will wrap back to the beginning of the buffer. As such, he didn’t even have to worry about the colors of the scene. Whenever the camera moved outside the buffer, all he had to do was to ensure that a new row or column of tiles was drawn into the buffer, update the offset values in the registers, and EGA would correctly draw a part of the buffer onto the screen for him.
Carmack often gets the credit for being the first to pull off smooth scrolling on a PC. But in fact, others had done it even earlier. It’s just that a few people happened to achieve the same thing around the same time. IBM introduced the PC and the CGA video card architecture in 1981 and EGA in 1984. Five years later, SEGA’s game Golden Axe was released on the PC in 1989, and its scrolling method also took advantage of EGA’s wrap-around feature. The following year, in 1990, Carmack joined Softdisk, invented Adaptive Tile Refresh, and inspired the founding of id Software.
Dangerous Dave in Copyright Infringement
That day was September 20, 1990. John Romero strolled into the office at 10 am. No one else was there yet. When he arrived at his desk, he found a floppy disk on his keyboard with a sticky note attached that read “Type DAVE2.”
“Heheheh! John [Carmack] must have been up late doing cool stuff last night!” thought Romero. “And it looks like Tom was helping him!” He recognized Tom Hall’s handwriting on the note. He popped the floppy disk into his 386 computer (the best one in the company at the time), ran DAVE2.EXE, and “Dangerous Dave in Copyright Infringement” appeared on the screen.
The moment the game’s background moved smoothly along with the character, Romero was speechless. As a seasoned gamer who had played countless games, he had never seen a PC game with horizontal, smooth scrolling like Super Mario.
Gamer’s Edge was already using Carmack’s scrolling tech for game development, but initially, Carmack’s engine could only do vertical scrolling. So, seeing Carmack and Tom create a game where the character could run left, run right, jump up and down, with the background moving along, was truly exciting for Romero.
“Dangerous Dave in Copyright Infringement” was the fruit of Carmack and Tom’s late-night labor until 5:30 am. That night, while everyone else had left, Carmack showed his horizontal scrolling tech to Tom, sparking the idea to clone the first level of Super Mario Bros 3. Tom recreated the clouds, pipes, and coins from the Mario game, but replaced Mario himself with Dangerous Dave.
Romero, thrilled by the innovation, showed the demo to other Softdisk engineers, but their reactions were mostly just “Yeah? So what?”.
“Idiots, they don’t get it!” Romero thought. If you weren’t an experienced gamer, you probably wouldn’t know that this might be the first smooth horizontal-scrolling game on PC.
Even Carmack probably couldn’t grasp why Romero was so excited. After achieving vertical scrolling, horizontal scrolling was just a few steps away. But Romero, with his unique taste shaped by years of gaming, foresaw the potential of horizontal scrolling games on PC becoming as popular as Mario.
As soon as Carmack, Tom, Adrian, and the rest of the Gamer’s Edge crew arrived at the office, Romero couldn’t wait to tell them: “This is the coolest thing ever!” He continued, recalling the cold response from his colleagues, “We’re out of here! Softdisk doesn’t understand how valuable this tech is. It’s wasted here! We have got to start our own company!”
Just as Jay Wilbur walked by, intending to calm overly excited Romero, Romero cut him off: “I’m serious. We’re outta here!” Jay closed the office door behind him and let Romero lay out his plan.
Thus, a dream team was formed: John Carmack, the technical genius, in charge of game engine development; John Romero, the versatile programmer, skilled in game design, art, and even business negotiations; Adrian Carmack was the artist; Tom Hall was the game designer; and Jay Wilbur took care of the company’s operations, taxes, and keeping everyone fed.
They rented a house by the lake as their new base. Unprepared to quit just yet and without their own computers, they started to use the computers from Softdisk, taking them to the lake house after hours to work on their new project. By day, they were Gamer’s Edge and Softdisk employees; by night, they transformed into “Ideas from the Deep” (IFD). This was the precursor to id Software.
Jay suggested partnering with Nintendo to develop a PC version of Super Mario, as it could generate immediate profits if they became Nintendo’s partners. After their day jobs, the crew gathered at the lake house, working tirelessly on their project. A week later, they completed a PC demo of Super Mario Bros 3:
They sent the demo to Nintendo, proposing a partnership. Although Nintendo’s executives were reportedly impressed by the demo, they preferred to keep their games exclusive to their own consoles. Nintendo declined the offer from IFD, showing no interest or need to tap into the PC gaming market.
Disappointed but undeterred, IFD decided to create their own game, Commander Keen. At the time, they happened to meet Scott Miller, who helped them publish the game.
The Apogee model
Back when two Johns were still employees at Softdisk, Scott Miller was already running a successful shareware business in Dallas.
Shareware started with utility programs. This is how it worked: Developers distributed their tools. People can use it for free. And if users liked them, they could choose to pay the developers as a thank you.
At first, Scott tried to apply this model to his own games, but it didn’t really pan out. Gamers, it seemed, were a bit more thick-skinned; if they could play for free, no one wanted to fork over any cash.
Scott then tweaked his approach a bit. He split his games into different levels - the first one was free, but to get at the rest, you’d have to pay up. Scott promoted his games on various BBS sites, letting players download a small part for free. Once they’d finished, they’d see Scott’s address pop up on the screen, letting them know that if they wanted to play the rest of the game, they’d need to send a check his way, and then they’d get the full game.
Scott’s “Apogee business model” was a success, and before long, the checks coming in from gamers surpassed the income he was making as a writer during the day. So, Scott quit his day job, opened a company called Apogee, and focused on developing his gaming business.
One day, Scott reached out to Romero, looking to collaborate. He asked Romero about doing a sequel to his past game, Pyramids of Egypt, and then release it using the Apogee model. Romero responded, “Pyramids of Egypt is copyrighted by Softdisk, so we can’t use it. But don’t worry, we’ve got something even cooler on our hands right now.” A few days later, Scott received a package from IFD, with an introduction to Commander Keen and the Mario demo that IFD had previously sent to Nintendo.
Scott once shared this letter on Twitter. The letter mentioned the term “engine”, which might be the earliest written record of “game engine”.
As promised here's the historic letter sent to me in 1990 by Id Software (before they adopted that name) that kicked off Commander Keen development. I quickly sent Id a check and on Dec 10th Apogee released the shareware episode of Commander Keen to the world on BBS's. pic.twitter.com/dOOaHW3PFA
— Scott Miller - Apogee/3D Realms Founder ☢️ (@ScottApogee) November 14, 2022
Blown away by the Mario demo, Scott immediately got on the phone with John Carmack and they chatted for hours. “The guy’s a genius,” Scott thought, “He’s outthinking every other game coder on the planet, doing things no one else was doing.” Before he hung up the phone, Scott had already made up his mind to make a deal with the IFD crew.
Commander Keen
Scott and the IFD team struck a deal: IFD had to deliver Commander Keen to Apogee for release by Christmas. It was October 1990, which meant IFD had only two months to get the game done.
Commander Keen was Tom Hall’s baby. He wrote the game’s backstory and was behind most of its cartoonish elements. The game made full use of Carmack’s scrolling tech, smoothly moving pixel by pixel as Keen navigated the scene, just like in Mario.
Tom was in charge of design, with Carmack and Romero on the programming side. Carmack kept refining the game engine to make Keen move even more smoothly, while Romero developed a tilemap editor called “TED” that let Tom design levels. Adrian also joined in on the art design later on.
The IFD crew spent two months grinding away non-stop, ingesting who knows how much coke and pizza. Finally, on December 14, 1990, Scott put the first level of Commander Keen up for free download on various BBS sites. For $30, Apogee would mail you a floppy disk with the next two levels.
Commander Keen was a huge hit. Apogee’s monthly income had been around $7,000, but the month Commander Keen was released, it skyrocketed to $30,000. The game is now a piece of childhood nostalgia for countless Americans. That boy with the yellow helmet and magenta shirt is still a popular cosplay choice even today.
id begins
All of this happened in 1990: Carmack joining Softdisk, Carmack inventing smooth scrolling, Romero persuading everyone to start their own business, the Mario clone getting shown to Nintendo, and partnering with Scott to release Commander Keen.
In December 1990, after wrapping up Commander Keen, they simplified their company name from “Ideas from the Deep” or IFD to id.
In January 1991, the id crew received their first royalty from Commander Keen, about $10,000. At this rate, they figured they could earn $100,000 a year, more than enough to quit their day jobs at Softdisk.
While the id folks were pulling their secret stunts, Al Vekovius, the boss at Softdisk, had a feeling something fishy was going on. However, he really needed the Gamer’s Edge team, so he turned a blind eye to their peculiar activities. That is until a Softdisk employee snitched about the Gamer’s Edge team moonlighting, forcing Al to confront Carmack directly.
Carmack confessed to Al, “I admit, we’ve been using your computers and time to make our own games.” Later both Johns even offered their resignations, intending to take the whole team with them. While Al felt betrayed, he was a businessman first and foremost. He was more interested in making the most out of a bad situation than taking them to court. Instead, he proposed a collaboration, and in the end, id agreed to produce a game for Softdisk every two months.
On February 1, 1991, id Software was born. In the coming years, id Software would repeatedly lead the evolution of the gaming industry. They launched a series of influential games like Doom and Quake, showcasing innovative game design and cutting-edge technology. They were about to prove that video games weren’t just entertainment, but a demonstration of art and science.
To be continued in: id Software goes 3-D.
References
This article is largely based on Masters of Doom, a book that David Kushner spent six years researching and interviewing related parties to write. If it wasn’t for love, he wouldn’t have been able to create this masterpiece. The book was published in 2003 and since then, a lot of supplementary material has surfaced online, including gameplay videos, podcast interviews, and historical documents, which have helped me to enrich this article.
Complete references are listed below:
- Masters of Doom: How Two Guys Created an Empire and Transformed Pop Culture by David Kushner
- John Carmack: Doom, Quake, VR, AGI, Programming, Video Games, and Rockets - Lex Fridman Podcast
- “The Early Days of id Software: Programming Principles” by John Romero (Strange Loop 2022) - YouTube
- Dangerous Dave in “Copyright Infringement” - Planet Romero
- A Look Back at Commander Keen - 3D Realms
- A couple of technical questions about the Keen games - Public Commander Keen Forum
- How such smooth scrolling was achieved in games like Super Mario and Commander Keen? - Quora
- Super Mario Bros. 3 Demo (1990) - Vimeo