The History of TOPS or Life in the Fast ACs by Peter J Hurley for the Spring 1984 DECUS Symposium in Cincinnati, Ohio transcribed by Jack Stevens Abstract Peter Hurley, Manager of 10/20 Software Engineering at Digital, gave a brief history, complete with war stories and the recollections of many of those involved, of DEC's 36-bit product line on the occasion of the twentieth anniversary of the PDP-6. The main speaker, Peter Hurley, is the Manager of TOPS-10/20 Software Engineering at DEC, where he has spent the last 16 years. He had, in fact, been working with DEC's 36-bit computers for two years before that. His first programming job (which he got by strategically losing a squash match with his boss) was on a PDP-1 at M.I.T.'s Lab for Nuclear Science. The next year they upgraded to a PDP-6, running version 1.6 of the monitor, and a TTY 33 as a line printer (at least until they tried to do a listing of the Fortran compiler on it). Peter followed his boss to DEC, as the latter still needed someone to win against at squash. The PDP-6 was first shipped in June of 1964. It was followed by the KA-10 in 1967, about 1.5 times the power of the PDP-6. The KI-10, about 1.8 times the KA-10, was released in 1972. The KL-10 was introduced in 1975 for TOPS-10, about 2.5 times the KI. In 1972, the first TOPS-20 KL-10 was released. In 1978, the 2060, 2020, and 1091 came out. The letters in the processor names did, in fact, mean something. The "K" stood for Komputer ("C" had already been used for something important, like a card reader); "A" was the first letter of the alphabet. By the time they got to the KI, however, marketing had gotten involved, so "I" stood for integrated circuits. To help sell the idea of the KL to management, "L" stood for low-cost system. The "S" in KS probably stood for small. The PDP-6 could be purchased with optional fast accumulators. They took up an entire 19-inch rack (that's 16 words in one rack). One megaword, therefore, would take up 98,958 cabinet feet of floor space (or, approximately 18.7 miles). The development team of the PDP-6 included Gordon Bell (who designed the system architecture, then started to bail out the documentation group by writing half the hardware manual, then moved to the software group to try to help bail them out). Alan Kotok, who was hired in 1961 as a PDP-4 Fortran compiler writer, turned into a PDP-6 architect as assistant logic designer. Russ Donne, a circuit designer, was pulled into the project late (just about every engineer at DEC was pulled into the project) and given three weeks to do the main PDP-6 module layout and design. One of the modules, the biggest one he had ever done, had 108 transistors on it (whatever they are). Leo Gussell wrote the diagnostics for the -6, the basic diagnostics A through H, that are still in use today. Harris Hyman was the author of Macro and a little absent minded. One day he managed to lose all the sources to Macro. Peter Sampson, who wrote Fortran II, put all of one comment in it. That comment, which commemorated the numerological identity of the octal equivalent of 1000 and the year of Johann Sebastian Bach's death, read "JSB RIP". Tom Hastings, hired in 1961 as the first software engineer at DEC, had a few strange habits. One of them was that when he was tired he would lay a listing on the floor and take a nap on it. One could not be sure, coming across him in that state, whether he was still alive. Dave Gross, brilliant but absent minded, slept through all his DEC employment interviews except one. He was hired in his last one of the day, with the documentation group, because that did not take place until 3 PM, and he had awakened by then. Tom Eggers, DEC's first school dropout to become a programmer, developed DDT while at school. DEC paid him $500 for it. He used to crawl into the office of Harlan Anderson, VP of Engineering, to sleep on the couch there. Harlan would discover him the next morning (this happened once a week) and kick him out. Ed Yourdin, of structured programming course fame, wrote Loader. Loader has since passed out of use; perhaps it was not sufficiently structured. :-) The PDP-6 project started in early 1963, as a 24-bit machine. It grew to 36 bits for LISP, a design goal. The IBM 7090 was also 36 bits, so that was okay. The PDP-6 did go the 7090 one better, in that it had an 18-bit address rather than the 7090's 15. The theory was that 256K was clearly enough to last the entire life of the product. After all, that much memory wouldn't even fit in a room. The design engineers really didn't even know how to call subroutines, so they designed in all the ways they could think of: JSR, JSA, JSP, PUSHJ, and UUO (JFFO [and JSYS were] added later). They couldn't decide which Boolean instructions to have, so they did them all. The reason that the bits were numbered from left to right was that IBM had done it that way (as Alan Kotok put it, "We hadn't invented 'Not Invented Here', yet."). NIH did arrive by the time the PDP-11 was developed. The PDP-6, having only two or three thousand gates, didn't have any error recovery. In fact, it didn't have any error checking. Memory parity was an add-on box that sat between memory and the CPU. A lot of the sites that bought PDP-6's were involved with physics research. The others included artificial intelligence research organizations and timesharing utilities. Apparently proving DEC's masochistic tendencies, the first PDP-6 sold went about as far from Maynard as one could possibly go, to the University of Western Australia, in Perth. The second went to Brookhaven National Labs, in an air conditioned trailer in which it was to spend its days, the intention being to drive it between experiments (in fact, it was never moved). With this experience in shipping computers via truck, DEC started to ship all its products by truck. Twelve foot trucks. DEC learned a lot more at a well-known bridge on Route 62 in Hudson, Massachusetts. An eleven foot bridge. (This is where DEC made its first drop shipment.) The PDP-6 that made this unfortunate journey was already some months late for the University of Pennsylvania. DEC not having its own van, had rented some space in a moving van filled with household goods. The PDP-6 was in the back of the van, and it appears that the furniture successfully cushioned the impact for the computer. They did have to shovel the remains out of the truck afterwards, however. (The PDP-6 was able to be repaired in a couple of more months). Two philosophies were applied to the design of the PDP-6. The first was expressed by John McCarthy of M.I.T., who helped design it. That was "to provide each user with the illusion of having his own large computer." The other was "gentleman's timesharing", which was the only way one could exist with no protection and with manual sharing of all the peripherals, core memory, system DECtapes, etc. The early developers of the PDP-6 software used a cross assembler running on the PDP-4. The -4 was in another building, which required a considerable trip to transfer software (via paper tape). Tom Eggers debugged DDT before the hardware was working fully. This required that the instructions that did not work be simulated by instructions that did work so that they could debug the ones that were not working (for example, left shift did work, but right shift didn't). The first successful timesharing test on the PDP-6 consisted of two "JRST ." (branch to current location) jobs. The lights showed that the scheduler was, in fact, switching between the jobs. Immediately following that demo they invented Control-C, because they had no way of stopping the test jobs. Version numbers were also developed during this period, as Harris Hyman had a habit of labeling the Dectape of each new version of Macro as "Latest". After six versions of "Latest" were accumulated, they started numbering them. P)