Projects

Downloads

Resume

Photos

Pictures

Illustrations

3D

Videos
TopView: An early multi-tasking OS for the PC

Introduction

In the last fifteen years or so, there have been a lot of things written about TopView; a lot of it negative, much of it inaccurate, and some of it just plain wrong.

While working on this web site and sorting through a lot of dusty old boxes containing memorabilia from projects I had worked on at IBM, I came across an incomplete, unsent letter I had written to Don Estridge.

At the time, Don was President of the IBM ESD division that had developed the original IBM PC. In rereading the letter I found it interesting because, among other things, it recounted a lot of the history leading up to the development of TopView, much of which had grown dim in my own mind with the passage of time.

As I recall, I was angry at the time over the direction being taken for the TopView product, and writing the letter was a way of venting some of those frustrations. I never finished or sent the letter, and Don died a year or so later in a tragic commercial airline accident in Dallas. But for some reason I hung onto a grainy, dot matrix copy of the letter all these years.

I tried scanning the letter for use on this web page, but the normally fairly accurate OCR software was not able to recognize a single character correctly. So, with a deep sigh, I sat down and completely re-keyed the more interesting parts...

... In June of 1980 I began a two year temporary assignment with what, at that time, was the ISG advanced technology group in Yorktown Heights. During this period, ISG and Research were in the process of defining an office systems research strategy. The result was that I had a lot of "free" time on my hands, since I was not directly involved in the definition of this strategy. I made use of this time to investigate some ideas I had been toying with during the previous few years in Rochester, Minnesota dealing with "windows" and advanced user interfaces. At this time, the notion of windows and windowing systems was not well known or accepted. No systems using windows were yet commercially available, or even hinted at. As far as I am aware, no work on windowing systems was underway anywhere in IBM.

Initially, my work received little or no attention. However, since management in Yorktown continued to be "bogged down" in the office systems research strategy, I was given additional time to pursue my work. Eventually, my management began to take note of the work I was doing, and while still not overly supportive, at least gave me permission to "officially" continue work on windows.

Up to now, all my work on windows had taken place on IBM System/370 computers running under VM. Due to inherent limitations in the I/O and display architecture of these systems, the results I was achieving weren't all that I had hoped. As a result, in the winter and spring of 1981, I began work on a windowing system which ran on an Apple II computer. The choice of the Apple II was somewhat accidental. At that time, the IBM PC was only a rumor. I felt that what was needed was a machine with direct video mapped memory, such as the Apple II (and now the IBM PC) possessed. In addition, I happened to own an Apple II. The only stumbling block was a legal one. The IBM legal department in Research had determined that no Apple II could be allowed inside the research facility. As a result, I was forced to use my own equipment and my own time to continue my research into windowing.

The result was that in the spring of 1981, I had completed a windowing system on the Apple II. This new system aroused somewhat more interest than the previous VM versions had. Now, with a greater degree of management cooperation, I proceeded to give a number of demos to groups in Research and ISG, both in Yorktown and in White Plains. The main problem that I encountered though was an attitude that might be characterized as: "So what, IBM doesn't make Apples.".

However, in July of 1981 it became clear to me that IBM was indeed going to make "Apples". At this time, my manager was able to arrange for me to travel to Boca Raton to "evaluate" the new personal computer being developed there. I spent several days in Boca, during which time I became somewhat familiar with the PC, BASIC, and some of its hardware features. In fact, Don, you may recall the drawing program I wrote in BASIC during those two days.

On return to Yorktown, I immediately began to turn my attention to the task of writing a windowing system for the new IBM PC. I had learned a lot from the previous two windowing systems I had written. Armed with this experience, and some additional ideas concerning object oriented systems, I was eager to combine them into a system that would run on the PC. However, in the fall of 1981, PC's were not easy to come by. As a result, I developed the windowing routines on an Intel MDS, but, having no way in which to test them, I turned instead back to VM. There I updated the windowing routines with some of the techniques I had developed over the past year, and incorporated the object architecture ideas I had been working on. The result was that by the end of September 1981 I had a version of what I called GLASS running on VM.

During the next two months, I "tinkered" with this system while waiting to get my hands on a PC. Finally, in late November 1981, my manager in Yorktown was able to procure two old engineering models of the PC for me to work on. From then until January 1982 I worked on rewriting GLASS for the PC, incorporating some additional ideas I had had while using the VM version.

In late January of 1982, my manager arranged for us to travel to Boca to demonstrate GLASS to a group working on the Datamaster word processing system. During this trip, he also arranged to give a demonstration of GLASS to you, Don. I recall, as you do I'm sure, that your reaction was one of interest, but concern over the fact that existing PC applications would not run under it. I was somewhat reluctant to promise anything in this area, and so we let the matter drop, and I returned to Yorktown.

During the rest of 1982 I continued to work on improving and refining GLASS for the PC. It was during this time that several significant uses for GLASS developed. In the late spring, a group from Kingston saw a demonstration of GLASS and were immediately interested in its windowing capabilities. They were in the process of defining a new display system and were considering incorporating a form of windowing into the display. Upon seeing the GLASS demo however, they immediately revised their concept of what windowing was and what it should be. They began trying to interest me in pursuing a temporary assignment in Kingston to help them with the development of their new display. However, for various personal and professional reasons, I declined all their offers. From a professional viewpoint, I was convinced that the ideal use of windows was in a personal computer, and not in a mainframe-based terminal. I was afraid that if I worked with them, the real potential of a windowing system would never be realized. So I refused.

Seeing that I would not work with them, Kingston next decided that they would make do with the code that I had developed. Again I refused. Finally, Kingston decided to go around me, and appealed to what was now my CPD management in Yorktown. The result was that I was forced to send all source code that I had developed to Kingston.

It was at this point, feeling somewhat cheated, that my relationship with Kingston, as well as my own group in Yorktown, broke down. To this day, Kingston has been fairly silent as to where many of the original concepts of the PC/3270 originated. In several conversations I have had with people outside of Kingston, I have even heard stories of misrepresentations as to the origins of the prototypes they developed based on the GLASS code I sent them.

The net result of this series of events was my transfer from CPD to the Research Division in Yorktown in September 1982. The agreement with which I joined Research was that I would be allowed to continue work on GLASS. And so I continued to do so.

As the end of 1982 approached, it became clear to me that the correct place in IBM for GLASS was Boca. And so in December and January I turned my attention to what I knew was the major stumbling block for GLASS with Boca: its inability to run with existing applications. During those two months I developed the code which was the basis for the DOS emulation employed today in Orion. At the end of this time I had solved enough of the problems that I was able to demonstrate running GLASS with several applications popular at the time. In late winter of 1983 I again returned to Boca to demonstrate GLASS. This time, considerably more interest was generated.

In fact, a task force was formed to study which of the several windowing systems becoming available at that time, including GLASS, should be adopted by Boca. After several weeks of evaluation, GLASS was chosen by the task force as its recommendation. As a result, in late march of 1983 I was asked to come to Boca for a six month assignment to work on turning GLASS into a product. With a certain amount of hesitation I agreed. During the first week of April, I packed a suitcase and left for Boca, leaving behind a new house I had just bought and moved into in December. It is now 14 months later...

I lead the TopView development team in Boca Raton, Florida from April 1983 until November 1984, when I returned to IBM Research in Yorktown Heights, New York. This letter was apparently written around June or July of 1984.

Contrary to the impression sometimes given in the press, the development of TopView was not a huge undertaking by IBM. Although the total number of people working on the product, including testers, technical writers and management, probably came to several dozen, the size of the core development team was never much more than a handful of programmers.

Perhaps the most vivid and interesting memory I have of the time I spent in Boca was a meeting with Bill Gates and Steve Balmer that I attended. In those days, Microsoft's domination of the computer industry was still in the future, and Bill had to come to IBM, rather than vice versa.

Bill was not very happy with TopView. I remember him rocking back and forth in his chair, saying some very insulting things. Then Steve Balmer would try to put a more positive spin on what Bill was saying. I think that if I hadn't been so personally upset by some of the things being said about my "baby", I probably would have found the whole tableau really quite funny.


  Table ofContents Forward

© Copyright 2001-2008 by David C. Morrill. All rights reserved.