s X-NEWS: spcvxb alt.folklore.computers: 4537Relay-Version: VMS News - V6.0 10/3/90 VAX/VMS V5.4; site spcvxb.spc.edu V Path: spcvxb.spc.edu!njin!rutgers!tut.cis.ohio-state.edu!medusa.cis.ohio-state.edu!lum" Newsgroups: alt.folklore.computers/ Subject: History of TOPS (Life in the Fast ACs) * Message-ID: <84950@tut.cis.ohio-state.edu>1 From: lum@medusa.cis.ohio-state.edu (Lum Johnson)  Date: 18 Oct 90 09:12:49 GMT. Reply-To: Lum Johnson <lum@cis.ohio-state.edu># Sender: news@tut.cis.ohio-state.edu L Organization: The Ohio State University, IRCC/CIS Joint Computing Laboratory
 Lines: 361        1                               The History of TOPS (                                       or1                              Life in the Fast ACs     0                                by Peter J HurleyC             for the Spring 1984 DECUS Symposium in Cincinnati, Ohio 5                           transcribed by Jack Stevens     +                                    Abstract   J      Peter Hurley, Manager of 10/20 Software Engineering at Digital,  gaveJ      a  brief  history, complete with war stories and the recollections ofJ      many of those involved, of DEC's 36-bit product line on the  occasion/      of the twentieth anniversary of the PDP-6.     E The main speaker, Peter Hurley, is the Manager of TOPS-10/20 Software K Engineering at DEC, where he has spent the last 16 years.  He had, in fact, N been working with DEC's 36-bit computers for two years before that.  His firstM programming job (which he got by strategically losing a squash match with his M boss) was on a PDP-1 at M.I.T.'s Lab for Nuclear Science.  The next year they O upgraded to a PDP-6, running version 1.6 of the monitor, and a TTY 33 as a line M printer (at least until they tried to do a listing of the Fortran compiler on O it).  Peter followed his boss to DEC, as the latter still needed someone to win  against at squash.  M The PDP-6 was first shipped in June of 1964.  It was followed by the KA-10 in M 1967, about 1.5 times the power of the PDP-6.  The KI-10, about 1.8 times the K KA-10, was released in 1972.  The KL-10 was introduced in 1975 for TOPS-10, K about 2.5 times the KI.  In 1972, the first TOPS-20 KL-10 was released.  In L 1978, the 2060, 2020, and 1091 came out.  The letters in the processor namesO did, in fact, mean something.  The "K" stood for Komputer ("C" had already been O used for something important, like a card reader);  "A" was the first letter of L the alphabet.  By the time they got to the KI, however, marketing had gottenM involved, so "I" stood for integrated circuits.  To help sell the idea of the N KL to management, "L" stood for low-cost system.  The "S" in KS probably stood
 for small.  N The PDP-6 could be purchased with optional fast accumulators.  They took up anL entire 19-inch rack (that's 16 words in one rack).  One megaword, therefore,H would take up 98,958 cabinet feet of floor space (or, approximately 18.7 miles).   O The development team of the PDP-6 included Gordon Bell (who designed the system N architecture, then started to bail out the documentation group by writing halfN the hardware manual, then moved to the software group to try to help bail themL out).  Alan Kotok, who was hired in 1961 as a PDP-4 Fortran compiler writer,I turned into a PDP-6 architect as assistant logic designer.  Russ Donne, a M circuit designer, was pulled into the project late (just about every engineer N at DEC was pulled into the project) and given three weeks to do the main PDP-6J module layout and design.  One of the modules, the biggest one he had everK done, had 108 transistors on it (whatever they are).  Leo Gussell wrote the L diagnostics for the -6, the basic diagnostics A through H, that are still inL use today.  Harris Hyman was the author of Macro and a little absent minded.N One day he managed to lose all the sources to Macro.  Peter Sampson, who wroteO Fortran II, put all of one comment in it.  That comment, which commemorated the M numerological identity of the octal equivalent of 1000 and the year of Johann K Sebastian Bach's death, read "JSB RIP".  Tom Hastings, hired in 1961 as the O first software engineer at DEC, had a few strange habits.  One of them was that K when he was tired he would lay a listing on the floor and take a nap on it. L One could not be sure, coming across him in that state, whether he was stillJ alive.  Dave Gross, brilliant but absent minded, slept through all his DECK employment interviews except one.  He was hired in his last one of the day, M with the documentation group, because that did not take place until 3 PM, and L he had awakened by then.  Tom Eggers, DEC's first school dropout to become aN programmer, developed DDT while at school.  DEC paid him $500 for it.  He usedO to crawl into the office of Harlan Anderson, VP of Engineering, to sleep on the N couch there.  Harlan would discover him the next morning (this happened once aK week) and kick him out.  Ed Yourdin, of structured programming course fame, F wrote Loader.  Loader has since passed out of use;  perhaps it was not sufficiently structured.  :-)   L The PDP-6 project started in early 1963, as a 24-bit machine.  It grew to 36O bits for LISP, a design goal.  The IBM 7090 was also 36 bits, so that was okay. M The PDP-6 did go the 7090 one better, in that it had an 18-bit address rather L than the 7090's 15.  The theory was that 256K was clearly enough to last theO entire life of the product.  After all, that much memory wouldn't even fit in a O room.  The design engineers really didn't even know how to call subroutines, so M they designed in all the ways they could think of:  JSR, JSA, JSP, PUSHJ, and K UUO (JFFO [and JSYS were] added later).  They couldn't decide which Boolean J instructions to have, so they did them all.  The reason that the bits wereL numbered from left to right was that IBM had done it that way (as Alan KotokO put it, "We hadn't invented 'Not Invented Here', yet.").  NIH did arrive by the L time the PDP-11 was developed.  The PDP-6, having only two or three thousandI gates, didn't have any error recovery.  In fact, it didn't have any error O checking.  Memory parity was an add-on box that sat between memory and the CPU.   K A lot of the sites that bought PDP-6's were involved with physics research. F The others included artificial intelligence research organizations andL timesharing utilities.  Apparently proving DEC's masochistic tendencies, theL first PDP-6 sold went about as far from Maynard as one could possibly go, toM the University of Western Australia, in Perth.  The second went to Brookhaven O National Labs, in an air conditioned trailer in which it was to spend its days, J the intention being to drive it between experiments (in fact, it was neverM moved).  With this experience in shipping computers via truck, DEC started to O ship all its products by truck.  Twelve foot trucks.  DEC learned a lot more at I a well-known bridge on Route 62 in Hudson, Massachusetts.  An eleven foot O bridge.  (This is where DEC made its first drop shipment.)  The PDP-6 that made K this unfortunate journey was already some months late for the University of L Pennsylvania.  DEC not having its own van, had rented some space in a movingN van filled with household goods.  The PDP-6 was in the back of the van, and itN appears that the furniture successfully cushioned the impact for the computer.I 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).   H Two philosophies were applied to the design of the PDP-6.  The first wasI expressed by John McCarthy of M.I.T., who helped design it.  That was "to K provide each user with the illusion of having his own large computer."  The K other was "gentleman's timesharing", which was the only way one could exist O with no protection and with manual sharing of all the peripherals, core memory,  system DECtapes, etc.   L The early developers of the PDP-6 software used a cross assembler running onN the PDP-4.  The -4 was in another building, which required a considerable tripJ to transfer software (via paper tape).  Tom Eggers debugged DDT before theM hardware was working fully.  This required that the instructions that did notxL work be simulated by instructions that did work so that they could debug theM ones that were not working (for example, left shift did work, but right shiftO didn't).  L The first successful timesharing test on the PDP-6 consisted of two "JRST ."M (branch to current location) jobs.  The lights showed that the scheduler was,oJ in fact, switching between the jobs.  Immediately following that demo theyO invented Control-C, because they had no way of stopping the test jobs.  Version1N numbers were also developed during this period, as Harris Hyman had a habit ofI labeling the Dectape of each new version of Macro as "Latest".  After six C versions of "Latest" were accumulated, they started numbering them.   O PIP was invented by "Dit" Morse as a demonstration of device independence.  ItsnN original name was ATLATL, which stood for "Anything, Lord, to Anything, Lord".N This was appropriate, as it took a certain amount of prayer to get anything toI move between media.  In those days, when TTY's had backarrows (instead ofmO underscores) that key was used instead of the equals sign in PIP.  This, it was O felt, was sufficiently obvious that anyone who, for example, tried to read fromMN the line printer got a message like:  "You gnerd, device LPT: can't do input!"B That message was changed the day after Ken Olsen tried out ATLATL.  L The first PDP-6 shipped with a 5K monitor.  The user guide could comfortablyK fit on a page.  IJOB started up a job;  one could find out one's job numberbO with PJOB.  GET, SAVE, and START took care of program control.  After Control-C1L was added, CONTINUE was, also.  (Control-C was chosen, incidentally, becauseO Tom Hastings could reach it easily on the keyboard with one hand).  The DECtapeCK editor provided all the functions one could want:  Insert, Deleted, Print a ; line.  It was called EDITOR and was the precursor of LINED.-  L Since there was no swapping, everything had to fit in memory.  Programs wereK shuffled to close up the unused space.  But because the BLT instruction wasPL used, shuffling could only move programs toward lower addresses (5K monitor,K remember?).  Thus, after one's compile had been running for twenty minutes,rH growing towards someone else's job, one might get an error message "CoreN available, but not to you", and could try to persuade the other person to killO his job or, more likely, would have to kill one's own job, type CORE 0 to causen shuffling, and start again."  M The demise of the PDP-6 came after 23 has been built.  (One of them, Lucky 7, L never really worked correctly.) Every engineer at DEC was working at gettingO them through manufacturing, and Ken Olsen was fearing for his company.  SeveraliM of the main players left DEC after the cancellation, but Alan Kotok, asked to H head up a group to choose a smaller system to do next, ended up choosingM something called the PDP-1010.  The PDP-1010 was a 36-bit machine (surprise!)sK which looked a lot like a PDP-6.  It came with 8K words of memory;  a papertO tape reader, paper tape punch, and a terminal as its only peripherals;  and hadiK optional fact AC's, optional floating point instructions, and optional bytewO instructions.  Oxford actually bought one of these (though they did have to buy 
 more memory).n  L The KA-10 set a system debug record.  From power on to running the operatingK system was eight days.  During that time, Bob Clements almost gave away theuK secret.  As part of the debugging, he had been running a music program from O M.I.T.  and found that the pitch was too high.  In talking to the authors abouthO the tuning algorithm that he thought was supposed to bring the pitch down, theymH asked, "What are you running this on?  You've got a fast machine there!"  O Dave Gross was still brilliant.  He was able, after everyone else had tried, tofO get the RIM (Read-in Memory) loader down from 18 instructions (which were keyedyO in on the PDP-6) to fewer than 16 (to fit in the accumulators).  Even after the O KL was introduced, he was getting calls from people who told him that there wasDN no way the code could work.  Dave Gross was still absent minded, too.  DEC hadN given out Christmas turkeys.  The following April, someone who was helping himJ clean out the trunk of the car Dave was selling asked, "What's in this box labeled 'Turkey'?"  M Pat White would bring her dog into work.  It would lie under the KA, where ithL was warm.  There were more programmers than terminals, so anyone who steppedM away for a moment was likely to lose theirs.  Her solution was to tie the dogcJ to the terminal.  No one was willing to take a terminal away from a German shepard.  M In the spring of 1970, at the Joint Computer Conference in Atlantic City, thegN KA was displayed, at what was DEC's largest demo ever.  At the end of each dayM they would play the national anthem on the KA and put it on the loudspeakers.iK (This was also the show at which Sonny Monosson made his debut selling used G computers.  He walked up an down the boardwalk wearing a sandwich boardn advertising a used KA-10.)  H The display system had 128K words (MA-10 memory, at 16K per 36-inch-wideL cabinet), the brand-new RP02 disks, tape drives, line printer, and Evans andM Sutherland LDS-1 display, and 16 teletypes.  Everyone was there debugging the O system the night before the show when it stopped dead.  Alan Kotok, a master ofoM the lights, immediately leapt to the console, determined that it was a memory O parity error, then moved to each memory cabinet to read the lights on them.  At O about the fifth one, he exclaimed, "Ah!  It's this one!  The one with the smoketN pouring out of it!"  No one had noticed the smoke billowing out of the cabinet in the meantime.  O The monitor started with version 1.  (The name TOPS-10 was chosen by marketing, M but not until 1970).  Versions 1.4 to 1.9 shipped on the PDP-6.  27 jobs wereiL supported, as each job got a bit in the mantissa of a floating point number.L To determine which job was next involved an unnormalized floating point add K . . .  In version 3.27, for PDP-10's, in which swapping was added, capacity N was provided for 35 jobs by using a JFFO (Jump if Find First One) instruction.F This kept if from running on the PDP-6's, since they did not have thatJ instruction.  Job capacity jumped to 63 in the next monitor and averaged a4 further doubling each version after that, up to 512.  H Disks have been the source of some interesting moments.  The PDP-6 couldO support the Data Products disk.  This drive had about a dozen platters, each ofcM which was provided with an independently-movable, hydraulically actuated arm.tN When the heads got moving, with the hydraulic hoses moving in and out with theN actuators, it looked like a spaghetti factory.  Dave Nixon of Oxford bought anN IBM disk drive for his system.  Not knowing how to program it as a disk drive,% he made it emulate 40 DECtape drives.i  O The KA-10 came with the RD-10 Burroughs disk.  This was a single fixed platter,jM about three feet in diameter.  Unfortunately, some would work fine and othersnN would crash.  This was eventually traced to the way the disks were lined up onJ the loading dock.  The driveway to the dock sloped down.  As a result, theF trucks would coast the last foot or two and bump the edge, shaking theM building.  Those disks whose arms were perpendicular to the truck would latersL crash, while those whose arms were parallel were fine.  The solution was (ofL course) to line all the drives up the right way.  The RD-10's were also veryK likely to crash if touched.  Kodak ended up installing a heavy pipe railingl" around theirs to keep people away.  L The "Giant Bryant" had six three-foot platters.  Its four-foot actuator armsL were tied into units, unlike the Data Products, but it had two sets of them,L one on each side of the disk.  They, too, were prone to crashing, especiallyO with the assistance of one diagnostic writer who felt that they really ought togI work in the worst case.  His diagnostic would start the heads on one side.M working madly, then would start the others up, out of synchronization.  AsidedM from causing the disk to crash, it would make the drive walk around the room.dN Things got so bad that the first RAMP feature was added, in the hope of savingK some data.  An electronic "sniffer" was installed to detect the debris of aiM head crash and retract the heads.  The platters made nice coffee tables, withb their spiral grooves.h  M The PDP-6 console was attractive but had small switches that were hard on thenK fingers of the programmers who had to key in the RIM loader.  It did have a M prominent on-off switch, though.  Some researchers at MIT thought it would be M fun, one day, to use their new robot arm to emulate the toy whose arm emergeseM from its box to shut itself off.  The next day, DEC got a call to replace the K switch.  It seemed that in turning itself off, there was a slight transientnN that caused the arm to tear the switch out of the panel.  Stanford had a robotM arm, too.  It was hydraulically operated, and if a software bug caused tow oftM the actuators to work against each other, would shake and then throw whateversG it was holding across the room.  It was locked up after the head of thePK department walked into the room to see a block whiz past his ear.  Stanford,O also had a little robot car that was equipped with a TV camera and drove aroundTN outside the building.  There was a sign outside the building that read, "WatchO out for Unmanned Vehicle." It worked, too, until the monitor would crash.  Thent6 someone had to be sent into the woods to find the car.  L The KA-10 had a nicer console with even more lights.  One of the lights, forL interrupt level 7, tended to show how much work the scheduler was doing.  AsO the scheduler seemed to be running much of the time, trying to decide which jobwN to run next, the condition was called "pink scheduler mode".  The KI-10 had anM even fancier console (a lot of time was spent designing consoles) with easilyfL replaceable lights and switches.  Unfortunately, the company that made thoseN fancy lights and switches went out of business, and lights and switches becameL difficult to replace for a different reason.  The KL-10 did away with almostO all lights and switches, except for those on the PDP-11 console front-end (thistL also did away with "pink scheduling mode", since one could no longer see theO problem).  As the PDP-11 lights and switches were not useful to -10 programmers M (they didn't have enough bits) the whole thing was put behind a door, and thenO result was two lights (power and fault--useless, as one knew that it was eitherbI running or not) and four switches (which also broke and were hard to findeL replacements for).  Field service received a tech tip which told them how toO use a paper clip to fix the switches.  The 2020 finally resolved the issue withe, one tri-state light (on, off, and blinking).  L TOPS-20 originated with Bolt, Baranek & Newman, in Cambridge, Massachusetts.J Before the PDP-6 was designed BBN had gotten into timesharing with a PDP-1J system equipped with a swapping drum.  Dan Murphy at BBN experimented withN paging on that system, implemented entirely in software.  Each instruction hadL to be checked before it was executed to see if the address it pointed to wasL actually in memory or if a page had to be brought in.  That made them decideN that a hardware assist might be nice to help performance.  When the PDP-6 cameN out, BBN started negotiating with DEC to install hardware paging, but when theN -6 was canceled, they moved to an SDS 940.  This was probably good in the longL run, as the SDS machine laid the groundwork for TOPS-20 command recognition.  K [I believe that Dan Murphy had previously been responsible for the originalhL implementation of TECO at MIT on the PDP-1 in 1961!  (-editor- Lum Johnson)]  L In 1970, TENEX was introduced by BBN.  They had started the project, late inM 1969, on a KA-10 with their own paging box and finished it within six months.iJ The first system went to SRI.  In 1972, TENEX came to DEC.  Dan Murphy wasM contracted to put TENEX on the KI, then joined the hardware engineering groupoM while the KL was being developed.  The original intention was to create a newtN operating system for the new hardware.  It was to have been the only operatingM system for the KL, but it could never catch up to the performance of TOPS-10."  M A considerable amount of work was done to TENEX to make it into TOPS-20.  For.N example, the disks were made to still be readable after a software crash.  TheO directory structure was redesigned.  The development group added such things as.K search lists, logical names, IPCF, enqueue/dequeue, KL support, wild cards,aL pseudo-teletypes, etc.  Having PTY's and the ability to assign TTY's allowedM one to develop Trojan Horse jobs that could capture passwords of unsuspectingEO users.  Dave Braithwaite was at GM when he was asked how such a gaping securityeM hole could have slipped through.  He explained that it had never been thoughtSL of and suggested that it was "sort of like designing a car where you have to0 pull the engine to replace the last spark plug."  O The name "TOPS-20" was the product of considerable evolution.  DEC did not wantiE to use "TENEX" because it might have caused confusion within the ARPA,L community, so someone came up with "VIROS" (VIRtual Operating System).  ThatH didn't last too long because the VP in charge of the project, John Leng,O started pronouncing it "virus".  Management decided that the name would have todH be changed in order to fool the rumor mill.  The developers came up withM "SNARK", from Lewis Carroll's "The Hunting of the Snark", (". . . the huntinghM of the Snark, with forks and hope. . .").  Six months later, when it was timemM to change names again, the name was encrypted to "KRANS".  One memo with thatvM name went out, which was seen by Ulf Fagerquist.  He pointed out that "krans"eJ in Swedish means "funeral wreath".  Back to "SNARK".  Marketing showed itsN imagination by coming up with "TOPS-20".  [And this may all be moot, since theD ARPA community decided to call it "TWENEX" and many of us still do.]  K In 1976, DEC announced its first DECSYSTEM-20.  It came in two flavors, therJ 2040 and the 2050.  It was originally going to come out with the TU16 tapeL drive, but the developers could never get it to work right on their systems.M About two months before the -20 was to be shipped, the Pertec TU45 was found. M This was determined to be much better than the TU16.  After one was installedgM and the driver was being written, John Leng and Ulf Fagerquist came by to seeuI the result of their months of agonizing over the tape drive decision.  InbO demonstrating for them the auto load feature (with the door open), Peter HurleyoN neglected to make sure the tape had caught on the bottom reel.  As a result, aJ loop of tape shot three feet in the air out of the vacuum column and wound itself around the capstan.  I The news conference given by the totally unflappable (and not troubled by1J technical details) Dave Plummer.  He described the -20 as a multiprocessorL system (after all, it had a PDP-11 in it).  At the end of the demo, while heK was striking a relaxed pose against the air intakes of the CPU cabinet, the M system died with an air flow fault.  Dave never missed a beat as he describedeO the reliability feature that shut down the machine before it could overheat andm damage itself.  O In closing, Peter described the rule of a salesman in the days of the PDP-6 andnM KA-10.  He knew that a prospect was his if that prospect fulfilled his "Three L S" rule:  smart, sophisticated, and strange.  Twenty years of TOPS suggest a fourth "S":  stubborn. -- -- eK Lum Johnson      lum@cis.ohio-state.edu      lum@osu-20.ircc.ohio-state.eduIK "You got it kid -- the large print giveth and the small print taketh away."u -------t