Tom Hall talks Apple II, Softdisk magazine, and the origins of id.
(Originally published in Episodic Content on 17 March 2015)
Tom Hall is a game development sage. Since 2013, he’s been designing social games at PlayFirst Studio. A few years prior, he set the creative direction for an MMO in development at KingsIsle Entertainment, a studio based in Austin, Texas. A few years before that, he co-founded another popular Texas-based studio, id Software.
Maybe you’ve heard of it?
Although he’s working around the clock to launch new game projects, Hall was gracious enough to set aside time and talk with us about the first steps he took on his journey in the games industry.
I understand you wrote your first games on the Apple II. That computer sent so many designers on their maiden voyage into game programming. How did you discover it?
We were going to get a family computer, and I was actually lobbying for a TRS-80. But luckily, Dad was smarter and got an Apple II+. We got it on June 9th, 1980. So I was 15, and had the whole summer to learn this new computer. It was an amazing time of learning, fun, and empowerment.
What were some of the Apple II games that got you excited about playing, and then making, your own games?
One of the first games we got was Scott Adams’ [The Adventure Sampler]. (The Apple II coder/designer, not the cartoonist.) They came on cassette tapes, so you’d read them in with the arcade commands that I still remember:
]CALL -151 (to get into the computer’s machine language area)
]800.5777R (read in from tape into those memory locations)
]800G (800 “Go” or run code starting at 0x800)
I loved those games–they really lit up my imagination, even though you just control them [by entering combinations of] VERB NOUN and they were in terse text. The puzzles were fun and the subjects exotic. Early interactive fiction.
So all my first experiences were buying cassette-tape programs in little baggies with labels from THE BYTE SHOP in Milwaukee. And some came in cardboard with Styrofoam holding the tape, like the adventures.
The first game I wrote on the Apple II that I can remember is TANK. You entered speed and angle to fire at a tank that moves every turn, and then it plots dots (on the HI-RES screen) until your “mortar” lands and either misses (try again, tank moves) or hits the tank (draws a graphic X on tank, exits game). Just that little inkling of playability, learning, and visual reward was the first little baby step in learning game design.
What was it about that experience that caused you to catch the game-development bug?
The Apple II+ made it so easy to start learning to code, as it came with Applesoft BASIC. It was really easy to get an idea going from nothing. You thought of it, then you did it. Learn more, and go a bit further down the rabbit hole. And as I started to do little adventures, they were actually really close in quality to the ones I was buying.
I thought, I can actually do this for a living. My other passion at the time was making little short effects films–being a Trekkie as a kid, and a sci-fi reader, and Star Wars came out when I was 13–but I knew I’d eventually need a crew and others to do stuff. I could do near commercial-quality from the get-go all by myself.
What aspect of game programming gave you the most trouble when you were starting out?
Actually, the programming came easy; it was the finishing all the ideas I had that was hard! I’d do a ton of little demos, but it was so wide open, I was doing a bit of everything. I finished 50 games, but made probably 100 more little demos.
That’s still a problem: so many ideas, so little time. But you incorporate things to enhance larger ideas, and of course, when it doesn’t fit, you have to kill your darlings. Maybe when I retire, I will do a bunch of little games again.
Since I loved adventures, I made, like, 15 text adventures, each getting better and more elaborate. I had started with code from a book called Strategic Simulations (still have it!) for my first little forays into that idea, but once I started doing my own, I just kept going. My mom and I would play the adventures together, so she would play mine–a built-in audience!
Then I got into graphics, made arcade games, mostly shoot-em-ups, like Gunner, Space Peepers, Superzot, Madvoober, Mass Poopage, Death Ships from the Ninth Galaxy, and on and on. I also did a really horrible three-vine, get-to-the-top-as-stuff-came-down-the-screen Donkey Kong Jr. game. Later, I did an Ultima-style engine in machine language, for a game called The Silver Cow. It wasn’t quite Ultima, so I called it Penultima. Heh.
John Romero talked to me about getting many of his early games published in magazines. Did you copy the code listings provided in those magazines as well?
I read those religiously, entered most of the game programs. I actually got a letter published in Softline magazine. I actually [submitting games for publication] a number of times and got rejected for [submitting] similar games. A coder/designer that later became a friend scooped me like three times; then I wrote The Silver Cow, and it was rejected for being too big!
Eventually most of those got published on Softdisk [magazine], so they got their day.
You have a reputation for caring about story and character development in games. Was this true during your formative game-programming years?
The adventures were definitely tales of, well, adventure. And a lot of the early graphic games had characters–I really loved Donkey Kong Jr. in college–they had [a coin-op version] at the cafeteria near my dorm at UW-Madison. So as soon as there were characters to latch onto in games, that’s the way I went.
You got your start in the games industry as a programmer, but you are known as the creative mind behind many of id Software’s early hits, most notably Commander Keen. Did you find yourself more drawn to designing games than coding them? Was programming more a means to the end of making your own games?
Ha-ha, yeah, exactly. My dad was a professional engineer and my mom was a writer, so I got both sides of the brain. So to me, programming games was just a way to express myself in another medium, like writing fiction or poetry, or doing photography.
How often do you get to write code these days?
Rarely, but I want to get back into it. It’s another resource for ideas. Probably will poop around with some iOS apps.
How did you discover Softdisk magazine, and how’d you land a job there?
Well, I graduated from college with a BS in computer science and prepared to get a “real job.” I did a bunch of interviews, they liked me, then I did plant trips, as they were called back then; now it’s just “flying you out for a second in-person interview”. They all went well: IBM, Gould, and such, but they all said at the end of the interview, “We like your resume, we like your skills, we like you. Just one last question: is this what you really want to do?”
And I flew home and thought. And the answer was, “No, this is boring, I want to make games, however I can.”
So I applied to like 30 game companies, and got rejected. I waited a few months until the next hiring phase, and mailed out another set. I got a great letter from Softdisk, saying they were looking for someone “with exactly my qualifications”: 30,000 lines of Applesoft [and] assembly language experience. My mom said it was the most positive response letter she’d ever seen. So I interviewed, got the job, and started working for a third the pay of “real jobs,” but infinite times the happiness.
What stories can you share from your early years at Softdisk, before other future id Software developers showed up?
I started working at Softdisk as an assistant editor, working for Jim Weiler. He was a great boss. It was super hard work for little pay, but boy, was it a great training ground. Basically, Softdisk was an Apple II “magazine on disk” or a “monthly software collection.” So we’d write 8 to 10 little utilities, games, applications a month, often just sprucing up submitted programs. We worked like hell to blast out that much content every month.
The product was on one 5.25-inch disk, eventually two, then at last, a 3.5-inch disk. Eventually, I became Editor of the Disk and the Apple IIgs disk, Softdisk GS. They both still kept going beyond when we left for a while, probably the last things professionally written for the Apple II and IIgs.
I remember awesomely spiffing up a game called The Seven Keys soon after I got there–basically a kind of Monopoly game. I made it pretty snazzy. Anagram Challenge, an anagram game, and Magic Boxes, which was kinda like Sudoku, come to think of it.
I also spruced up a game I’d made for my first semi-real programming gig. I had made a game called Changemaker for a teacher-friend’s class of learning-disabled kids. It had a kid named Eddie and his piggy bank. Eddie’s arm could stretch all the way up to the top of the screen, where there were the different coins: penny, nickel, dime, quarter. You had to move Eddie left and right, then press space to get coins to add up to the goal amount, to teach the kids how to make change. I spiffed up a number of games he’d done as well, which was a good training for Softdisk later.
What was the Special Projects division at Softdisk? What type of software did its developers create?
Our competitor, UpTime, went out of business, so we hired good folks from there. Jay Wilbur came over, and a coder named John Romero, who’d done a number of cool games for them. He said he’d come over if he could work on the IBM PC because he wanted to learn it. Special Projects, if I recall correctly, did one-off disks, like a business app, a game collection, or something like that. I didn’t work on it.
SIDE QUEST: “Dangerous Dave in Magazine Publishing”
Like Softdisk, UpTime published software on diskettes. UpTime’s disk featured some of John Romero’s earliest games, including Dangerous Dave, a platformer that had players collect treasures on single screens. Dangerous Dave did not scroll smoothly as the player moved to the right, similar to Super Mario Bros. Instead, Romero redrew the entire screen when players exited an area, presenting a new environment to explore.
How and when did you meet John Romero?
When he came to work [at Softdisk], we kind of bonded over Apple games. We were both avid fans of all the classic games. He had Coke-bottle glasses, and liked hair metal [a mix of heavy metal and hard rock] and classic music. I did the Softdisk newsletter for a while, and took his photo for it holding a Great White CD and a classical CD.
How did you meet John Carmack?
He was a submitter to Softdisk. He did a cool tennis game. After about three great little games (ones we didn’t have to clean up like others’ games), we said, hey, maybe we should hire this guy.
How did the magazine’s gaming disk, Gamer’s Edge, get started?
Romero pitched it with Carmack, I believe. We got in a room to name it with the senior staff. I came with a bunch of names, everyone liked that one the best. It was supposed to be two games a month; eventually it became one game [every two months]. I was buds with Romero and a bit with Carmack, and they were doing the fun project at Softdisk. [I became involved with Gamer’s Edge] soon after it started.
What was the schedule like, working on Gamer’s Edge on top of your other magazine duties?
I snuck in at night after working all day, offered to do levels, graphics, and sounds. I was excited to work on games, so I worked sort of a second job on that product at night. It was fun. Carmack said, “You like doing the stuff we don’t like to do.” Romero was tools and game code, and Carmack was game engine code. I was design and some art. Eventually we got Adrian Carmack (no relation), and the art obviously got tons better!
What were some of the projects you guys worked on for Gamer’s Edge?
John did a PC update to his Dangerous Dave, which is crazy popular because it runs on really old computers. Romero gets mails once in a while from [gamers in] developing countries who love the game. John did all the graphics for the VGA game. I had planned to do a port to the Apple IIgs, but that never got done.
The first games were Dangerous Dave and Catacomb, a 2D, action-RPG shooter. We did a sequel to that, and later a 3D version, as our second 3D title, the first with texture-mapped walls. We did two puzzle games, Rescue Rover and Rescue Rover II; a shoot-em-up called Slordax. Shadow Knights, which was a fantasy platformer; and Hovertank One, our first FPS. We were trying all kinds of games and getting loads of experience.
Could you share some anecdotes from those days?
This is way easier now, but we were getting to make games. We had salaries and could make games. That was just unimaginably cool.
We had a multi-disc CD player, so each person would get a turn to play their music. And we were all doing discretely separate tasks, so we could just go. We’d ask for various things we needed, but we were just blazing on our own stuff, then playing, occasionally tossing about ideas. We all played games together on the NES and PC, and we all loved Apple II games, so we were always talking about what was cool. We watched Carmack finish Sonic the Hedgehog on the Genesis. I helped Romero get through the maze before the boss in Super Mario World. It was games, games, games.
In the science of happiness (one version at least), there are three things that make you happy. Pleasure-seeking is short-term. But experiencing flow, where you love what you are doing for work so much, you lose track of time’ and creating meaning for others, people enjoying games, are the things that make people happy long-term. And that’s exactly where we were. The time working on games just flew by.
You and Carmack famously whipped up a demo that recreated the first level of Super Mario Bros 3. That was a big deal because, at the time, sidescrollers were virtually non-existent on the PC. People believe the hardware was incapable of rendering scrolling graphics smoothly. What was your motivation to make that demo?
Carmack had just finished the smooth-scrolling-tile trick and had a sample sprite of Dangerous Dave bouncing around over it–first time there was cool scrolling that we’d seen on a PC. That was like his first amazing hack I remember, one that let technology jump forward. Seeing that, then I looked over in the corner to the NES, which had Super Mario 3 on it. I smiled, and said, “What if we did the first level of Super Mario 3… TONIGHT?!?” Carmack smiled and said, “YEAH!”
So we got to it. I started/paused, started/paused the NES, copying all the tile graphics, then grabbing them with a tool, getting them in Romero’s editor, setting tile attributes, Carmack and I agreed on what meant “solid,” what meant “death,” what meant “coin block,” and so on. Carmack made the little character behave [correctly]. So I painfully made the whole first level, did some sounds, did the coin graphics, made the title screen, animated the Dave character. I don’t think we got any enemies in.
So we did that from the evening to about 3:00 a.m., finished it, put it on Romero’s desk, crashed. It was made for fun as a joke, out of pure joy and love of games. We came in the next day. Romero closed the door and said, “I’ve been playing this all day. We’re so out of here.”
That demo was your golden ticket. How did you plan to cash it in?
Jay knew someone who knew someone at Nintendo. They said, “Make us a demo.” We took two weeks to do it, I think, really doing the first level up right. It got all the way to the head table, but [Nintendo] decided they didn’t want to enter the PC market.
So, like Homer from The Simpsons: if they “didn’t want it, we know someone that does…”
When “The Science of Happiness” continues next month, Tom Hall dishes on the formation of id Software and the making of the seminal Commander Keen trilogy.