The first article I ever wrote for Gamasutra was entitled, "A Brief History of Videogame Development." That article had a brief look into a story about a group of early game developers. That short story of mine piqued interest in a number of people who asked me to pursue this fascinating tale further. And so I did, and here you have it. I hope you enjoy this look into some of our video game history that was pretty much unknown, until now. - Matt Powers.
A number of computers were created in the 1970's. They included the IBM PC and Apple. Microsoft was just a startup company. The hobbyists were using soldering irons and circuit boards and working out of garages. Computers intrigued a number of young people who went on to be the founders of both the computer and video game industry. This is a story about one of these early computers and the group of people that made it. The computer they created was all but lost to memory though the people went on to make their mark in the computer industry.
This story is true.
The names have not been changed.
And no one is innocent.
It had been raining all day and the stormy weather continued into the evening. The phone rang. Insistently the ringing continued throughout the house. Janey answered the phone and after a brief exchange with her husband she hung up. "Strange conversation," she thought; "What are those guys up to?" Her husband John and his friend Joe had gone out earlier on an errand. John had just called to tell her that he probably wouldn't be coming home tonight. He and Joe were going to pull an all-nighter. As he put it, "We have an operating system we need to write."
John and Joe were driving John's recently purchased used car, a 1968 VW Westfalia Camper. It was a nice car, didn't have many miles on it, and had enough room for the family. While used, some new paint had been added to the van - Janey had recently painted a peace sign on the spare wheel cover and balanced off the peace sign with bright yellow smiley faces on all four hubcaps.
John and Joe were driving in downtown Columbus, Ohio, and their errand was to purchase a CompuColor 8001, a microcomputer with color display and built-in BASIC language. They had recently started their own business and had a contract with Warner Cable in Columbus to develop a real-time network monitoring display system. They had called various shops around Columbus and found a dealer for the CompuColor 8001. They were on their way to pick it up.
The VW camper parked in front of the small electronics shop. This was not the best area of town; there were vacant lots all round - the shop looked quiet, but appeared to be open for business. It had been raining all night and the pair of men were glad to finally find their destination.
They approached the store and went in the front door. The shop looked empty, but the jingling from the bell on the door must have alerted someone. They told the clerk what they were looking for. After inquiring about what they were going to use the CompuColor 8001 for, the clerk asked them if they were programmers. Joe and John said they were. Without saying anything, just a gesture to wait there, the clerk walked to the back of the shop. He came back after a few minutes and asked John and Joe to follow him. They went to the back of the store and up a flight of narrow stairs to the 2nd floor. They entered a small, shadowy room containing a table strewn with electrical components. At a bench near the door was Jim, the owner of the store, hunched over a circuit board with a soldering gun in his hand. Three other men were hovering around a table in the middle of the room, obviously anxious and distracted. There was a aura of urgency and tension in the room.
Joe and John cautiously moved forward until they were able to make out what everyone's attention was focused on. There were blue prints containing circuit diagrams, circuit boards, wires, and various other electrical components strewn about the table. One of the men looked up, eyes unfocused, clearly just becoming aware there were strangers in the room. After adjusting his glasses, the man straightened, looked at John and Joe and asked, "Do you know anything about computer programming?"
John and Joe looked at each other - what have they stumbled into? The men around the table explained that they were working on a prototype of a home computer to demonstrate to a conference of Montgomery Ward buyers. If the buyers liked what they saw, Montgomery Ward would sell the home computer in their stores and put it in their store catalog. It was a multi-million-dollar opportunity. The prototype was working, but the designer/engineer had only written a crude demonstration program. They needed a full-blown software suite if they were going to win the contract. Joe and John asked when they needed to do the demonstration. After furtive glances to each other, one responded, "Monday, two days from now." After some brief negotiation on what they would charge, John asked for a phone. He needed to call his wife - he and Joe would not be coming home that night.
This occurred in 1977. In 1977, microwave ovens were just becoming available - the biggest wattage was 625 watts, all the controls were analog. There were no cell phones; telephone answering machines used cassette tapes. The largest TV available was 25 inches (diagonally). People were buying 8-track tape players. A component stereo system was a record player with two 5 inch speakers.
In early 1977, Steve Wozniak, Steve Jobs, and Mike Markkula filed for incorporation of Apple Computer. The corporation purchased the Apple Computer partnership for $5,308.96. That same year, Bill Gates and Paul Allen signed a partnership agreement to officially create the Microsoft company. Also, in 1977, A working model of the first Radio Shack computer was demonstrated to company president, Charles Tandy. That same year Commodore showed a prototype PET computer at the Winter Consumer Electronics Show.
That evening in 1977 John and Joe created the operating system for the computer which would become the CyberVision, a computer that eventually was sold by Montgomery Ward. This computer, while one of the first groundbreaking computers, and the first truly multi-media computer, is barely known today.
And, John and Joe did buy that CompuColor 8001 they were looking for. And, they finished their project for QUBE (the world's first "two-way" cable system). But, significantly, that night also started John, Joe, and their company down the path of video game software development.
The first task for John and Joe was to write a rudimentary Operating System (or "OS") for this new machine. They needed to design and write - basically create - the fundamental functions which would operate this piece of hardware.
Operating systems perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as disk drives and printers. http://www.webopedia.com/TERM/O/operating_system.html
This needed to be done in machine language and entered all together, without error, in hexadecimal. Hexadecimal is a numbering system used by computers which is a base 16 system(going from zero to F which is 15) versus our common numbering system which is base 10(zero though 9). For example, in hexadecimal the number 14 would be E. The number 23 would be 17. To get a program into this early computer the instructions needed to be entered one hex number at a time. It took multiple tries to get this 2K block of binary data debugged and entered flawlessly so it could then be burned into a ROM.
Read-only memory (ROM) is a class of storage medium used in computers and other electronic devices. Data stored in ROM can only be modified slowly or with difficulty, so it is mainly used to distribute firmware (software that is very closely tied to specific hardware, and unlikely to need frequent updates). (From Wikipedia.)
To help ensure the code would work, John and Joe wrote out the code on paper and then John read out the numbers as Joe entered them using the keypad. As Joe recalls:
The first "bench" prototype of what become the CyberVision didn't have a ROM image, but it did have RAM at the address the ROM would eventually be.
RAM (pronounced ramm) is an acronym for random access memory, a type of computer memory that can be accessed randomly; that is, any byte of memory can be accessed without touching the preceding bytes. RAM is the most common type of memory found in computers and other devices, such as printers. (From Webopedia.)
So, John and Joe had to load the control logic for CyberVision (i.e. the OS) by hand into that address range and debug it, hoping that no one kicked the power plug out and wiped out the system. If the power was lost while entering the code they would have to start over from the beginning. If a wrong number was entered or any mistake at all, they would have to start over.
Once the team had that system code debugged, they were able to burn it into ROM and the system would run that on power-up. After that point, they didn't need to manually enter long byte strings. They could then load data from tape.
Joe and John completed the OS and demonstration software in time to show to the Montgomery Ward buyers. The contract was secured and a home computer business was launched.
The offices of the company John and Joe founded, Authorship Resource Inc. (ARI), were located in The Atrium on Doubletree Avenue in Columbus, Ohio. Entering the front door of The Atrium, one was presented with a small indoor forest of plants and paths. Each company's front office faced out into the "jungle." Visitors to ARI strolled through this indoor forest to their office.
ARI had just moved into their offices and had the latest in office furniture that could be found at used office furniture resale shops. Janey and Joe did the shopping. The best furniture was reserved for the front office. They wanted to give a good impression to the outside world.
Real wood was out of the price range, so a tasteful desk laminated in brown fake teak wood faced the window looking out at the atrium. Janey spent many hours at that desk typing letters, reports, and announcements on a gently-used IBM Selectric (or "golfball") typewriter. This wonder of the age came with a box of golfball type heads so you could print using italics, bold, and various fonts. An IBM ad at the time for the Selectric reads:
A wooden love seat with open arms and imitation brown leather cushions, a matching coffee table with a chrome table lamp, and a huge potted plant completed the look. Later on, a hanging philodendron in a macramé basket was added to complement the outside atrium plants.
ARI was a no-tie office. The employees dressed in what today we would call business casual. This included high-waisted jeans and trousers with wide, flared legs. As Janey recalls,
"We wore these pants with wide bottoms called 'bells.' There were also pants with even wider bottoms called 'big bells.' When you wore these bells you had to watch out for the furniture. If you walked too closely to a table leg, the bell bottoms could grab the leg and then get wrapped around the furniture."
One of the perks of the location of the ARI offices was that it was located across the street from a Anheuser-Busch brewery. And that brewery had a tasting room for visitors and tour groups.
ARI acquired the contract to create all the software for the CyberVision. One of the first business meetings ARI had regarding the CyberVision was held at the Anheuser-Busch tasting room. It seemed like a good idea at the time, free beer along with their meeting. This was a time where most business was a coat and tie affair. But John, Joe, and their associates were part of a new era of business - the software business. No ties required.
After the meeting adjourned, the software developers were leaving the tasting room when one of the staff from Anheuser-Busch stopped John.
"Excuse me sir, it appears you were having a business meeting in our tour group tasting room?"
"Yes," John replied, "Thank you so much; the beer was excellent; the meeting went very well."
The employees response was short and to the point, "In the future, could you please not have your business meetings in our tasting room."
Everything was moving quickly around this time. The hardware was being finalized and manufacturing was to begin soon. With the Operating System completed, the team at ARI was off and running to actually develop the first packages of software to be sold with the new machine. And it was exactly that, just a machine - it needed a name. Montgomery Ward's needed the name finalized for the catalog and the team at ARI needed the name to finish packaging design for the cassettes, ROM startup screen, etc.
It was Joe who finally came up with the name, "CyberVision." As Joe recalls:
In November of 1978, television audiences were able to watch the Star Wars Holiday Special which aired on CBS. 1978 was quite a year for computers and technology. Some other notable achievements included:
The cover of TIME magazine in February of 1978 featured a collage of images featuring a digital calculator, a digital watch, C3-PO, and a PDP-11/34. The editor of Time wrote in that issue about the new addition to the Time staff, the PDP-11/34:
That Christmas in 1978 the CyberVision 2001 first became available to Christmas shoppers at Montgomery Ward.
For the rollout of the CyberVision, ARI needed to develop a suite of software. The demos to Montgomery Ward were successful, and they were ready to stock the CyberVision 2001 in their stores. Now the rush was on to create the content, the games for the system.
One of the first games they developed was called Sub Chase. John developed the game but at this time everything still needed to be entered into the computer via keypad by hexadecimal, a long and tedious process that involved many, many hours hunched over "the Cosmac."
New processes had to be developed for the creation of the software on the CyberVision. ARI was blazing a path that few, if any, had gone down before. And because of the limited nature of the system they were creating software for, they found that more preproduction made for better development.
From the beginning, ARI developed a set of tools and a process that made it easier to develop apps for the system. They made a practice of developing storyboards of all the titles on special templates they had printed. ARI also had templates that made it easy to convert bitmap artwork into strings for the app, and they built a library of "special effects" that was reused across apps to allow an author to request a range of graphic effects (wipes, animations, etc.) And, because ARI used studio-recorded audio in most of their apps, they pre-scripted everything, including sound effects, so they could get in and out of the studio efficiently.
ARI had a staff of people now working to create the games needed for the CyberVision. The backgrounds of these people were varied as "software developer" wasn't something you could actually advertise for at the time. Previous experiences varied from educator, writer, actress, to radio disc jockey.
One of these early employees at ARI, Jeff Schwamberger, recalls some of the tricks they learned while developing the software:
The first CyberVision units contained:
The software development system for the CyberVision:
One of the other earlier games was a version of the traditional game, Hangman. As one of the early employees of ARI, Brenda Laurel, recalls from a talk she gave in 1979:
In the ARI offices the most used equipment was the development system.
It is important to remember that at this time there were no PC's, no laptops, no desktop computers, no text editors, no debuggers, and so forth that are so common today. The developers wrote everything in assembly language. And there was no sophisticated tools for debugging. Today coders use sophisticated debuggers with which you can watch the code execute in real-time, pause execution, examine code in memory, etc... None of that existed at this time.
The first step after storyboarding the application was to map out the code with code diagrams. This was done by hand with pencil and paper. There were plastic templates that you could use to draw the various logic symbols. Next they would write the 1802 assembly language that would do what the code design said. The code was written by typing it on a DecWriter Keyboard connected to the COSMAC.
As Ken Balthaser helps explain:
As for the non-programmer coders at ARI, they used the MICAL system, mapping out their graphics screens and sprites (even though they weren't technically sprites) using the special coding forms. MICAL was a binary interpreter invented by John and Joe to make it easier to program the CyberVision. It simplified certain things like erase the screen, put a graphic image (sprite) at a certain X and Y on the screen, display a full screen of a graphic, erase a graphic and so forth. With these primitive instructions they were able to create graphics and animations. If MICAL would not do what was needed, Joe or John to write a special subroutine that could be called. A subroutine library system was created - there were binders of printouts of special subroutines and a master list of their names and what they did. Included in the binder were floppies containing these routines. As new ones were created, they were added to the library and the MICAL coders could use this library to enhance their applications.
When writing code for the CyberVision the code size was a very important factor. The CyberVision had just 2K of RAM for code and 2K of RAM for the display (which was 128 x 96 pixels). So, the team always had to be careful to keep their chunks of code under 2K. This was all being done at a time when there were no monitors much less development environments or debuggers. Anything that was needed to create software had to be generated from scratch - including all the tools and processes.
The CyberVision used an audio cassette to store its data. It had a stereo head for playback; the left track was for audio and the right track was for data. It was common back then to encode data on a cassette, but the CyberVision's data rate was significantly faster than any other computer of its time - 2,000 baud (bits per second). The applications that ARI developed for the CyberVision used both channels. While the audio was playing from the left track, data was loaded from the right track. Some applications used the audio to tell a story and the data to synchronize the animation. A string of "A5" hexadecimal bytes was recorded as a marker to signal that the program could go to the next step.
The ROM image was duplicated by RCA in New Jersey. At that time in the industry, a customer for a ROM had to physically sign off on a number of forms that represented steps in the manufacturing process. It sped up the process by several days to weeks for someone to be there at the plant so sign off on these steps could occur immediately. As Joe recalls:
The manufacturing of the audio cassettes was done in St. Louis. Initially the duplication of the cassettes was not straightforward due to the unique nature of the 2000 baud circuit in the CyberVision and how it read the tape. Again, Joe Miller recalls:
During those early presentations things didn't always go as planned. The technology was new and not perfect. When there would be a software glitch, Joe's usual response would be to remove the cassette tape, bend over and blow on the recorder heads. For some unknown reason, this almost always solved the problem.
If you liked this article or have any questions about it please leave a comment. Keep a look out for Part 2 which should be available within the next week. For more articles written by Matt Powers you can visit: