Infocom Marathon: Cornerstone (1985)

From The Adventure Gamer


Written by Joe Pranevich

One of the sad truths about our beloved genre is that nothing is forever. Some of the greatest names in adventure games– Sierra, Adventure International, and even LucasArts– saw their day in the sun only to fall leaving behind unfinished games and frustrated fans. By 1992, where we are in the main-line reviews, many of our big players are still in their heyday. But for the rollercoaster that is the “Zork Marathon” and Infocom, we are approaching the top of the hill. You can argue when the descent started, but there is no doubt that the story of Cornerstone is the story of the beginning of the end for Infocom. There are more games ahead of us than behind, but we cannot continue on to Wishbringer without looking at the product that would change everything.

This post is dedicated to the memory of Stu Galley who passed away in August. You can read his obituary here. Stu was many things to Infocom: one of the founders, designer of three games (The Witness, Seastalker, and Moonmist), and jack-of-all-trades around the office. Perhaps most importantly, he was the writer of the “Implementors Creed”, the mission statement that guided Infocom in its later years. I used to have a copy of this printed out on my desk. In his memory, let’s recount it in full:

I create fictional worlds. I create experiences. 

I am exploring a new medium for telling stories.

My readers should become immersed in the story and forget where they are. They should forget about the keyboard and the screen, forget everything but the experience. My goal is to make the computer invisible.

I want as many people as possible to share these experiences. I want a broad range of fictional worlds, and a broad range of “reading levels”. I can categorize our past works and discover where the range needs filling in. I should also seek to expand the categories to reach every popular taste.

In each of my works, I share a vision with the reader. Only I know exactly what the vision is, so only I can make the final decisions about content and style. But I must seriously consider comments and suggestions from any source, in the hope that they will make the sharing better.

I know what an artist means by saying, “I hope I can finish this work before I ruin it.” Each work-in-progress reaches a point of diminishing returns, where any change is as likely to make it worse as to make it better. My goal is to nurture each work to that point. And to make my best estimate of when it will reach that point.

I can’t create quality work by myself. I rely on other implementors to help me both with technical wizardry and with overcoming the limitations of the medium. I rely on testers to tell me both how to communicate my vision better and where the rough edges of the work need polishing. I rely on marketers and salespeople to help me share my vision with more readers. I rely on others to handle administrative details so I can concentrate on the vision.

None of my goals is easy. But all are worth hard work. Let no one doubt my dedication to my art.

Stuart was one of the men at Infocom that I have most come to admire since starting this project. I had hoped to interview him someday and maybe even meet him– he lived just one town over from me. Realizing that he is gone is a big blow. He will be missed. His family has asked for donations to be made in his name to Mass Audubon. I’ve made one already and I hope you will consider one as well.

I’ll have a lot more to say about Stu when I come to Moonmist in a few months. For now, let me wipe away the tear running down my cheek and get back to your regularly scheduled business software review.

Brian Berkowitz, probably during the January 1985 Winter CES in Las Vegas.

The story of Cornerstone doesn’t start in 1985, or even 1984, rather the seeds were planted at the very beginning of Infocom’s journey. As we discussed way back in the post on Dungeon, the founders of Infocom, and especially Al Vezza, were interested primarily in keeping a group of talented engineers together. They formed Infocom in 1979, ostensibly without a product or a business plan, just the recognition that a bunch of brilliant (mostly) ex-MIT executives could do great things in the industry. Marc Blank and Dave Lebling (as well as Tim Anderson and Bruce Daniels) had already created mainframe Zork while completing their studies; this became a natural initial focus for the company. Joel Berez and Marc worked out the magic behind the Z-machine that would allow their creation to be distributed across a wide range of platforms. Even in this early stage, some of the team members expressed regret. Tim Anderson has been quoted as saying that he wanted the company to “do something serious”, something beyond games.

And so the wheels of time turned. Infocom launched Zork I to acclaim, then Starcross, and the two Zork sequels. No sooner was Zork III out the door (in 1982), the last game developed based on the original mainframe Zork code, than attention returned to developing more serious software. To that end, in October 1982, the “Business Products” division was created with the mandate to develop and bring to market a more “serious” alternative to the games the company was known for. Consumer interests change and having a diversified product base could ensure the long-term stability of the company. Additionally, they had seen firsthand how VisiCalc changed “Personal Software”, their first distributor. The first two employees of this new division were Brian Berkowitz and Richard Ilson, two programmers that had already been tinkering with building database software and who had approached Infocom with their ideas. Like most of the rest of the team, Berkowitz and Ilson were former MIT people. I have struggled to find what they had been up to prior to their time at Infocom, but on arrival they dedicated themselves to their task. They produced Cornerstone (originally called InfoBase) in the same style as the games, using a sophisticated virtual machine to ensure maximum compatibility with future platforms. Just as Zork could easily be made available on more than a dozen types of computers, Cornerstone could be ported to new environments just by updating the engine rather than the code itself.

John Brackett, after his time with Infocom.

One of the advantages of business software was that it was more expensive and could command higher margins than the consumer-targeted games ever could, but they needed a leader with experience in that market to make it happen. Berkowitz and Illson worked for a year and a half before another key player joined the team: John Brackett, the new General Manager of the business division. Mr. Brackett was a titan of Boston-area technology companies. Like many of the other Infocom founders, he was a MIT guy, having graduated in 1959– a generation before Lebling and the others attended. In 1969, he was one of the founders of SofTech, one of the first software consultancy firms. As VP of Software Development and later CEO, SofTech grew into a multinational corporation with over 700 employees. He was a powerhouse for Infocom to bring on board with an array of technical, business, and executive experience. Under his leadership, the nascent Business Products division swelled with importance and staff. If anyone could propel Infocom into the business world, he seemed a great choice.

Unfortunately, the bifurcation of the company caused stresses both with investors and team members. Employees that had been used to the laid back culture of video game development bristled under the more corporate values of their business products peers. Investors seemed reluctant to invest as generously as they once did and there were calls to segment the company into two separate ones, none of which could be done safely or profitably. The entertainment team members especially struggled under the leadership of newly appointed CEO Al Vezzo who appeared to favor the business direction of the company. Could Infocom someday be known as a business software company that once did games?

I love 80s fashion.

As 1984 ended and 1985 began, the cracks that would break Infocom were still under the surface. The Hitchhiker’s Guide to the Galaxy was a tremendous success, and the multi-year partnership they forged with Douglas Adams could bear even more fruit. 1984 had seen a record-breaking 10 million in sales (and 1.4 million in profit) with titles like Zork I still regularly on the best seller lists years after they had been released. Cornerstone was announced in New York in November 1984, finally bringing to light a product that had been created in relative secrecy. The following January, Infocom was riding high with a massive promotion for Suspect at the Las Vegas Consumer Electronics Show; more than five thousand party invitees acted out a mock murder mystery in a nearby mansion. (The promo materials from this party remain some of the most valuable Infocom collectors memorabilia.) By the end of the month, Cornerstone had launched! Operators were figuratively standing by and it was time to see if Infocom could emerge from its cocoon with a new business-oriented face.

Before I get into the results, it’s only fair that I take a look at the product. For all that I am barely qualified to review video games, I am even less qualified to look at 1980s business software. I have no experience with dBase or VisiCalc, Infocom’s primary competitors. Both already nearly six years old, they were being pressured by new products like Lotus 1-2-3. On the higher end, there were early versions of products like Oracle (launched 1977) and Progress (launched 1981). (When I was a much younger man, I interned for two summers writing software for the Progress database.) I can tell you all this, but can’t tell you that I am qualified to rate Cornerstone against any of them. This is not “The Business Software User”, a blog about chronologically using every piece of business productivity software ever written! So take everything I am about to write with a grain of salt. I can tell you how I feel about Cornerstone, but I cannot tell you how it ranks against its competitors. Got it? Good.

The Cornerstone startup screen.

Running Cornerstone

The most difficult thing about Cornerstone is getting it installed from archival software sites on a modern computer with no manual. The latter is going to affect me over and over again in this review as not a single copy of the (200 page?) manual appears to have survived to present day. (Neither the Digital Antiquarian nor the fine people at Internet Archive have one which may speak to its rarity.) Treating it like a game, I was able to install it into Dosbox/Boxer and was presented with an array of .EXE and .BAT files and no idea how even to start the thing. It took a bit of trial and error, but I soon realized that the default was not to run on a hard disk, rather it seems to have defaulted to use two floppy disks for the program and a third for the actual database. If I am mistaken, I apologize. I eventually found that there are “setuphd” and “newdb” commands that you can run and I was able to create a sample database named “joe”. I then ran “corner joe” to get the screen above. I was off to the races! From here, I had a lot of learning to do. Fortunately, the interface is pretty intuitive and there is a fairly extensive online help system that you access by pressing F1.

Help for the main Cornerstone screen
And even help for the help screen!

From here, I wanted to start a new project so I went to “define” and selected to “define new file”. I named my new file “infocom” and then add to create a bunch of new attributes. I decided that I’m going to store some basic information about each of the early Infocom games in a database written by Infocom. What could be better? I start to build my schema by adding attributes to my file.

Fortunately, I know what a “string” is.

From there, I can do some initial data entry. To add records for the first couple of games. I realized as I go that I needed to add some attributes. I end up doing “author1” and “author2” because I’m not quite ready for many-to-one relationships yet, but I can see that the system supports them. This first pass will be essentially using it like a spreadsheet, not a relational database. Once they are entered, the “View” menu lets me redefine the columns and even select whether to sort and by what field. It’s almost too easy.

Four games entered!

Zipping around and exploring this data works fairly well. It takes a few minutes to realize that I can request which columns I want in specific instead of selecting just one. I did all five for the report above, but that involved typing “column name author1 author2 series date”. You can’t do it using the arrow keys and this is the first time that I realized that I have a full command-prompt at the top and not just a selectable menu. I can use the arrow keys to select an action, but compound actions can be entered in just by typing. Neat! I can sort the records and with a few more commands I can change the way the screen is formatted in other ways. One other feature that took me a moment to figure out is that you move around the top menu with the arrow keys, but navigate the lower record-list area using “tab”. I don’t experiment too much because right now that “author1” and “author2” thing is driving my DBA-brain nuts.

I create a new file called “implementor” that will have two fields, one for the imp name and one for the game name. I then select to add a “relationship” between the game name field in the implementor file and the game file. That should be a many-to-one, right? I then enter mappings for Zork I and Zork II, and delete the “author1” and “author2” fields. Except, that doesn’t work exactly. I end up getting a corrupted database file and starting over, building a new set of data records for both the “implementors” and “games” file that contains all the same information, but without the bad form of having numbered records. This should be a relational database; we can handle this!

The implementors file.
The games file.

And… I have to admit, this is where I am stuck. Although I can define the relationship between the two files, I see no way to merge the data into a report. I can select the records in one file and use that to cross over and view the related records in the other file, but I cannot do it in one view. Worse, it’s not doing it exactly as I want because there seems to be no way to look up all of the games by “Marc Blank”, for example. When I select Marc on the implementors list, it only ties to a specific instance of him in the games list rather than listing all of his games.

I’m sure that I am doing something wrong, so I search the help system… only to be told that I need to consult “Chapter 9” of the manual to understand relationships and how to use them and since I have no manual, I guess I am stuck.

I cannot at all tell you how Cornerstone compares with its competition, but I found the system to be fairly robust if not perfect. Unlike some of the contemporary reviews, I found no performance issues– but that is to be expected considering I live in the future where even the average wrist watch has hundreds of times more processing power than this. It could also be that I only used small files. I did hit on bugs and mis-features more than once such as a screen that I could find no way to exit (I figured out later that I needed to hit “F9” to leave that particular screen) and I actually ran out of disk space when using the “view” menu each time from within a file as it seems to have been nesting the query somehow. I’m sure if I had understood things more, I could have avoided this. I also cannot explain how I managed to corrupt my first database, but that could be emulation or the fact that I have my Dosbox drive doing cloud replication. (Cornerstone creates and deletes a lot of temporary files which was driving Google Drive batty.) It’s a solid program for doing basic things and if I could just get relationships working, I’m sure I would feel even better about it. This failure is likely more because I do not have the manual and less because the program is insufficiently robust. The fact that I made it this far with no manual and only one case where I had to use a programmer-brain to guess what to do (using a “string” type to a record) is a testament to just how user-friendly this software is.

I really need to find a copy of that manual.

The Aftermath

I suspect that you all know how this story ended: Cornerstone was not the success that Infocom needed. Although it sold more than 10,000 copies in its first year (sales of 1.8 million), that wasn’t enough to justify the massive cost of development. Slowing sales of Infocom games also took a huge toll on the company, not to mention the disastrous decision to move to larger and more expensive Cambridge real estate before they even knew whether the product would be a hit. It was a management failure. It was a commercial failure. It alone did not bring Infocom down, but it was a crippling blow.

In less than nine months, the layoffs started on both the entertainment and business side. By the end of 1985, the entire business products division was let go. Cornerstone’s price was lowered dramatically as they tried to find a market for it, to recoup some of the lost costs. Less than a year after Cornerstone’s launch, both Marc Blank and Al Vezza would be out of the company. (Marc would return to the company in a more narrow role to work on Border Zone and Journey under Activision.) 1985 would be the last year of an independent Infocom; Activision officially bought the company in summer of 1986. I expect we’ll talk more about that as we get closer to the sale date in our marathon.

I hope you enjoyed this look at Cornerstone. This is one of the biggest stories in adventure gaming history and I hope I told it well. Up next will be a return to actually playing games: Wishbringer posts will begin in one-two weeks. Don’t forget that we are still soliciting donations to buy and donate A Christmas Adventure to the Internet Archive. If we get it in time, I’ll also play it as our holiday bonus post!



Original URL: https://advgamer.blogspot.com/2018/10/infocom-marathon-cornerstone-1985.html