Back to the Table of Contents
View entry in Giant List
How did you react after first reading Hackers?
It took me almost a year from the time I received Hackers to when I actually read it. This is because a couple of friends told me ahead of time about some of the material it contained. Up to then, I had been excited about being in the book, but all of the sudden that changed to being worried about what the book actually said.
I thoroughly enjoyed the first sections of the book. I hadn't personally known many other hackers, and it was interesting to see so many opinions and actions of other people that closely matched my own feelings. I have read that many people like myself are often surprised to find others that share similar opinions, because we are used to thinking of ourselves as being different from other people.
Eventually, I got to the portion of the book that involved me, and it was met with mixed emotions. Most of it was not as bad as I had feared--many parts I enjoyed reminiscing over--and yet there were some things that were disturbing.
Was Levy's account of your game programming days accurate?
Most of the material relating to programming is actually fairly close. One exception is the way I felt about the Atari VCS. I really liked the machine, even though I made fun of some of its quirks. It was Ken Williams who really hated it. I once described to him how the machine worked, and he remarked, "What a piece of crap. How can anyone be expected to program for that machine?" I reminded him that he expected me to program for it, and so he said, "You're right. Make it good, John Harris."
Another issue that didn't come across well was the real reason why I despised the Apple computer so much. When comparing the hardware and operating system of the Atari 800 and Apple II computers, there is virtually nothing about the Apple that isn't done much better or faster on the Atari and yet it is the Apple II that got most of the respect and success. This is of course entirely the fault of Atari Corporation, who didn't have the slightest clue about marketing. They once told a company who wanted to convert their successful business programs to the Atari that their products were simply not wanted on the Atari computer. "It will ruin its game machine image," they said. Can you believe that?
Anyway, when I was nineteen years old, and knew possibly less about marketing than even Atari did, I did not understand the full reasons why the Atari 800 did not become as big a success as it should have. I had nothing but "that other machine" to blame, for taking the success away from the computer I loved so much.
There are some mild inaccuracies and exaggerations throughout the rest of the book, but not too many major things that change the basic story.
What about the material relating to your personal life?
Levy made it sound like I was a walking hormone, but I really had no desire for casual sex. My desires at the time were focused on finding a girlfriend to share life's experiences with, talk to, and just have fun. Perhaps it is this major difference from the norm that made it so difficult for Ken Williams and Steve Levy to understand me. Steve Levy knew the truth about all of this, and about how much it bothered me, but for some reason he either didn't believe it, or chose to ignore it, and decided to write his own version which he presumably felt had more journalistic appeal.
One of the biggest causes for the rift that formed between Ken Williams and me was his continuous attempts, and the broadcasts thereof, to try and get me "laid." I had to laugh when I read a quote from Ken Williams, claiming he was "an expert on John Harris and his emotional problems." The preceding sentence was, "John Harris wants you to go drinking with him, get on the phone, go to Club Med, get him laid." Well let's see, I don't drink, Club Med was Ken's idea, and I've already covered the getting laid part.
Levy mangled what was a very special event for me--the beginning of the relationship with my wife. We had been friends in a science fiction club in San Diego since we were fifteen, but had since both moved away. We were both visiting San Diego the same weekend, right between our birthdays, which are seventeen days apart, and we both showed up at a meeting of that science fiction club. I asked her out to what I thought at the time was a fairly innocent double birthday celebration and I found out later that I bore a striking resemblance to Steve Martin asking out Bernadette Peters in "The Jerk." We grew very close, very quickly, designed custom engagement rings for each of us--she gave me one too--and were married a year later.
And for the record, the largest stone on my wife's "large diamond engagement ring" is a sapphire weighing .08 carets. This fact produced an amusing remark from an unknown bystander who happened to overhear a conversation about these very aspects of Hackers. He took one look at her ring, and commented, "Lady, if you married him for his money, you got screwed."
What was the development system like that you used to write, say, Frogger?
I had an Atari 800 with 48K plus AXLON 128K, Dave Small's LE Systems high-speed floppy disk interface, and an Austin-80 80 column display board.
How did you end up programming "Jawbreaker" for the Atari 2600?
On-Line was approached by Tiger Electronic Toys with a proposal to convert some of On-Line's best computer games into 2600 versions. Tiger reverse engineered the 2600 and flew myself and two other programmers out to their company in Chicago to teach us how to program it.
Did you enjoy programming the 2600?
Absolutely! The way the machine had to be programmed was so obscure and so challenging that you had to write extremely optimal code. That's what I like to do anyway. The other programmers were content with just getting their jobs done in half the resolution and using the limited debugging resources of the hex keypad and LED display of a SYM 6502 board that served as the 2600 cartridge emulator. I wrote my own remote screen-oriented debugging tools that ran on the Atari 800 and strived to get the full possible resolution out of the game.
Why are the 2600 and Atari computer versions of "Jawbreaker" so different?
The 2600 version of "Jawbreaker" had to be written considerably differently from the original computer version, due to the 2600's limitation of only two player objects per line. The game was redefined into a format where I could maintain only one adversary per line and still keep the game enjoyable.
What's the connection between "Jawbreaker" for the 2600 and "Jawbreaker II" for the Atari 800?
"Jawbreaker II" came later, written by someone else. The programmer had never seen the 2600 version of "Jawbreaker," and so Ken Williams drew a quick sketch to show him what to do, but didn't explain it very well. This rough sketch had only five horizontal pathways on it, and so that is all that were programmed into the game. The happy faces were then made really big, so that they fit into the large pathways! The open passageways at the edges of each line weren't drawn in Ken's sketch, and so they didn't get included in the game. I considered a blunder like this to be quite funny, but it was also sad because the gameplay did not come out anywhere near what the 2600 version was like.
Were there any games you started work on, but never finished?
Sadly, there were many of these. Before "Jawbreaker," I had done versions of the "Starhawk" and "Head-on" arcade games, plus a kind of starbase assault game that was finished, but was lost on a damaged cassette tape before it could be given to the guy in San Diego who marketed my first BASIC games. There was a "Berzerk" inspired game in a scrolling layout that I started after "Mousekattack," which got sidelined when I started "Frogger." I'm not sure how this one would have come out, except that I think you would have been on a mission to rescue someone being held within one of the rooms.
After parting from On-Line, I planned to write games for Synapse. My first project there was an early draft of a game that eventually wound up as "Alley Cat," but at the time it was not that advanced. It had the first screen pretty much as is, but without the concept of jumping into the open windows. The object was simply to get to the top, and then you'd face a different screen. I wasn't happy with the way things were looking and Synapse was busy with other titles and didn't have the time to work on design improvements. I'm grateful for this, because when Bill Williams eventually took over the "Alley Cat" project he did a wonderful job with it.
Around the same time I became interested in an arcade game called "Bagman" and proposed to Synapse the possibility of licensing the conversion rights. They agreed and, when it looked like a deal would be signed, I started to work on the project. I had the screens and characters basically done when I found out that negotiations had fallen through, and that we were not going to be able to produce this game after all. Synapse and I decided to make graphic changes much like I had done with the "Pac-Man" to "Jawbreaker" transition, and the "Bankster" project was started.
There were several difficult concepts I was trying to incorporate at the same time, and this project coincided with the worst part of the lawsuit with On-Line. My energy levels were strained and progress was slow. I was watching the computer game industry turn from a friendly and freestyle expression into a cutthroat business of large companies. "Bankster" needed only collision detection and a few other game logic routines, but I was not comfortable in the game industry by that time and did not finish the project. It was then that I got into the educational and information display projects.
Why didn't you move on to newer machines when the 8-bit world started to fade?
I did look at the Amiga when it first came out, expecting to want the next generation of Jay Miner's machine designs. The operating system was so crash-prone and unprofessional looking, however, that I decided not to get one. I certainly didn't want an IBM, with its planned obsolescence approach and an Intel processor that the assembly programmer part of me would have hated. The Macintosh was too expensive and didn't have that much to offer.
"Pro/Guide" [an information display program] needed a fast machine with lots of hard drive space, plus solid reliability, and so I choose the Atari ST for this purpose. It worked well for "Pro/Guide," but the machine never captured my heart the way the Atari 8-bit did, since it didn't have the fancy graphic hardware. The OS was also designed to be programmed in C, and I found it very inefficient to interface with. It may have been a decent machine at a good price, but it was not years ahead of its time the way the Atari 800, or the Amiga was. I did use the ST for productivity applications, like word processing and telecommunications, but the 8-bit remained my choice for fun and programming.
How did you get involved with writing information display systems for Atari computers?
The educational products were not very successful, and the company's owner had a major medical disaster that caused them to go out of business. I called an old friend looking for new job opportunities and, he happened to be writing the first "Info/Gen" product at the time. He was busy with other things and was starting to realize that he would not be able to complete the project by its due date. We talked it over, and all parties concerned agreed that it would be best if I took over that project.
What makes the old Atari machines better suited to such uses than more advanced hardware?
Cost was a big factor. In many of these applications the hardware was provided for free, and we sold a programming service for the displayed information. Anything more expensive than Ataris would have come directly out of our pockets and not provided anything that we really needed. The Atari can provide a good quality NTSC or PAL signal with very little RF interference and without additional hardware, so it also makes a simple installation. It is true that newer hardware provides a higher resolution image, but this didn't turn out to be as important as one might think.
We lost very few contracts due to raw display quality, because the purpose of all of these products was to convey information. The latest products had carefully drawn fonts, all proportionally spaced and auto-kerned, and provided enough tricks in the way of DLI colors and graphic effects to create attractive and readable messages. Plus, the signal is generally sent down miles of cable and other equipment, input through RF to a TV set, and viewed from eight feet or more away. All of this tends to hide the limits of the resolution.
Throughout the projects, I formed my own impression of the term, "broadcast quality." To me, this means, "whatever the engineer is willing to plug into his system and broadcast." The Atari filled this definition just fine.
How was the information display business?
It was an unexplored field when I first got started. Not many people wrote applications like this for computers, and the dedicated machines for this purpose were thousands of dollars. It was fun to be able to outperform most of those machines, in terms of overall features and ease of use, at a fraction of the price. Products written for the Amiga eventually provided more flair than what I offered, but I don't think anyone ever matched the flexibility and ease of use. There were a few neat experiences I had with that industry. At one point, IBM's corporate headquarters purchased one of my "Info/Soft" character generators, for use in their meeting rooms I believe. I always thought that would make a nice advertising slogan: "Atari. What IBM uses when they get down to business."
Another unit was bought by the Defense Department for a similar purpose, and we received a strange customer service phone call from the person in charge of operating the system. There is one place in the program where it can accept a list of commands. Sometimes you will want to clear the previous contents of this list before typing new commands, and this is what the customer wanted to do. This is literally as easy as pressing Shift-Clear on the Atari keyboard, but the customer indicated that he was only getting "<" characters when he did this. He was instructed that he needed to hold the shift key down while pressing clear at the same time. My partner then heard on the other end of the phone:
Hey, you. Yeah, you. Come over here a minute. I'm going to hold this key down, and when I tell you to, press that one there. No, that one. Okay, ready? Go. Okay, Okay, we got it cleared.
After programming the same hardware for so long, do you still learn new tricks?
Well, programmers always learn new tricks. I can say, though, that having well-designed graphic hardware magnifies that process. It is amazing that new techniques can still be discovered over ten years after a machine's introduction, considering that present day computers only have a life expectancy of a few years. Products on machines like the Atari and Amiga showed huge improvements in capabilities. You would have needed to upgrade the hardware on an IBM-type machine two or three times to get that kind of performance increase.
Do you still program entirely in assembly language?
Definitely. It's a decision made not only because it's the fastest, but also because I like it. Faster machines and megabytes of memory don't change those issues, and I think I'd program in assembly even if I had a Cray.
Do you ever play your old games? What are your opinions of them now?
I actually do play "Mousekattack" and "Frogger" occasionally. I still consider "Frogger" to be pretty well done. Since the graphics and gameplay were pretty much set by the arcade game, I think the Atari version came out about as good as I could do at the time.
I do wish I had done a better job with the graphics on "Mousekattack" though. The characters and animation are poor and, with the exception of the falling hat, nothing really stands out in the game. I think that's why it never became a success, and that's a shame because it had a unique gameplay that I haven't seen in any other game. Without the fancy graphics to hold people's attention, few people played it long enough to discover the strategies that made it different from other maze games.
What prompted you to get back into game programming?
It's partly a business decision, because none of the other projects I have done were a financial success for me. It has also taken this long for someone to develop new hardware that got me excited about its potential. Until the 3DO and Atari Jaguar, nothing had been produced since the Amiga that looked to me to be ahead of its time. I am still a very active game player, and I miss being a part of the industry's development.
Is it a coincidence that the Jaguar is made by the same company whose computers you used to program?
It's mostly a coincidence. Of the reasons I chose the Jaguar, only one was company specific. Since it has been quite some time since I have been involved in games, I thought I would more likely be accepted by a company that might still be familiar with what I had done in the past. By far the deciding factor was the hardware itself. At the time I made the decision, only the Jaguar and 3DO existed as next-generation machines. Between the two, the Jaguar had far more power and was designed much closer to the style of machine I like. 3DO was designed to be programmed in C and with only OS-level access to the graphic chips. It was also way overpriced, and it didn't take long to eliminate it as a candidate. The Jaguar has a an unusual and exotic set of chips, but the disadvantage here is that it will be awhile before I or anyone else can find out what this machine can really do and how to make it do it. I hope the machine survives long enough to complete this development cycle, but if it does, you'll see huge improvements in the quality of games.
Is your approach to writing games different than it used to be?
Yes. Most of my customers in the information display business were not computer literate. It forced me to spend the majority of the development process learning how to make good user interfaces. I learned many techniques and realized that this is by far the most important aspect of any computer program. It's sad, because few other programmers have discovered this, so I am dissatisfied with the user interfaces of virtually every product on the market. I look forward to what I will be able to contribute.
Have any games in recent years impressed you?
"Descent" on the PC really impressed me. There isn't a lot of depth in plot, but the good games don't need this. The control routines are perfect and fully customizable and it has the extra little touches that mark an excellent product, such as making your laser shots into working light sources and having glass monitor screens shatter when they are hit. The other element that is shared by almost all of my favorite games over the years, is that frantic, almost desparation element of being surrounded. Being attacked from all sides in 3-D, coupled with the wonderful six axis control, is a great recipe for success. Kudos, Parallax and Interplay.
What are your all-time favorite Atari computer games?
"Star Raiders," "Robotron 2084," "Shamus" (although I wish you weren't killed when walking into walls, that was a terrible precedent that "Berzerk" set), Infocom adventures, "Marauder" stage 2 (only because my version has custom control routines), and "Mousekattack" in two player mode.
You've dealt with a lot of people in the game industry. What are the two most memorable things that have been said to you?
I had traveled to Kentucky on an unrelated matter and had taken my Atari 800 with me so that I could continue working. It was hand-carried through the airport and another passenger happened to recognize it and asked me whether I liked the machine. I replied that I indeed liked it very much and programmed the Atari for a living. He asked me my name, and after I told him, his reply was, "the John Harris?" It was the first time that I realized my work and my name were well known.
Another fellow once asked me what language I programmed in. I replied, "Well, there's really only one computer language." His eyes got really big, and he exclaimed, "You program in Pascal, too?!"