Arctic Adventures With A Data General Nova II — The Equipment

As I walked into the huge high bay that was to be my part-time office for the next couple of years, I was greeted by all manner of abandoned equipment haphazardly scattered around the room. As I later learned, this place was a graveyard for old research projects, cast aside to be later gutted for parts or forgotten entirely. This was my first day on the job as a co-op student at the Georgia Tech Engineering Experiment Station (EES, since renamed to GTRI). The engineer who gave me the orientation tour that day pointed to a dusty electronic rack in one corner of the room. Steve said my job would be to bring that old minicomputer back to life. Once running, I would operate it as directed by the radar researchers and scientists in our group. Thus began a journey that resulted in an Arctic adventure two years later.

The Equipment

The computer in question was a Data General (DG) mini computer. DG was founded by former Digital Equipment Corporation (DEC) employees in the 1960s. They introduced the 16-bit Nova computer in 1969 to compete with DEC’s PDP-8. I was gawking at a fully-equipped Nova 2 system which had been introduced in 1975. This machine and its accessories occupied two full racks, with an adjacent printer and a table with a terminal and pen plotter. There was little to no documentation. Just to turn it on, I had to pester engineers until I found one who could teach me the necessary front-panel switch incantation to boot it up.

Not all Novas are the same, as they were avaialble in various configurations and could also be upgraded in the field. That said, the basic specifications of this machine were as follows:

  • 16-bit CPU
  • 64 Kb magnetic core memory
  • Floating Point Arithmetic Unit
  • Ten-slot chassis
  • Two 9-track Tape Drives
    • Dual density
    • phase-encoded or NRZI
    • up to 10-1/2 in reels
  • Two Diablo Systems Hard Disks, each with
    • one fixed 5 MB platter
    • one removeable 5 MB platter
    • Paper Tape puncher / reader
  • GE Terminet Quasi-Line Printer
  • Nicholet Zeta Pen Plotter
  • ADM-3A Terminal

At twenty years old, this was a dream come true. I had programmed a TRS-80 in high school which is a very hands-on experience. I had also programmed in Fortran using the Georgia Tech central mainframe computer, which was the complete opposite of hands-on. Enshrined behind glass walls, you handed punched cards to the operator and waited around for your printouts. The notion of having a “big” computer all to myself was both exciting and a bit scary.

Who is Fred?

ERDAS System for Peach Tree Orchard Analysis, 1979

Everyone fondly called this computer “Fred Nova”. The story I heard was that the system was initially procured by a researcher named Fred Dyer. But when I recently tried to track this story down, it wasn’t so clear. Back in the 1970s, these Nova mini-computers were both popular and affordable. There were quite a number of them at EES, used all around in different laboratories on different projects. You could almost say they were the IBM PC or the Raspberry Pi of the era — cheap enough to own multiple systems, and veratile enough to pass around to new projects as old ones wrapped up. I’m pretty sure that this particular Nova originated from a project called Earth Resources Data Analysis System (ERDAS). This was a NASA-sponsored project to study the decline of peach tree orchards throughout the Southeastern United States.

Switches and Blinkin’ Lights

The first hurdle I overcame was how do you boot such a computer? The TRS-80 had a power switch and it magically came to life. The campus mainframe never turned off as far as I knew. The Nova minicomputer just sat there doing nothing when you turned it on. In modern computers, we have the BIOS which can be configured to boot from different devices, and there are tools like GRand Unified Bootloader (GRUB) to select between different OS partitions. Doing the same thing on the Nova was simpler but not at all obvious. There was a short program one had to key into the computer via the front panel. One of the values in the program selected the boot device. But I quickly discovered that this model had a special option for lazy operators. You only switched in the address of the device you wanted to boot from, and toggled the Program Load switch. This loaded a short boot program from the optional boot PROM, thus saving the painstaking process of toggling in a dozen or so words.

Nova Front Panel

What’s with all the switch toggling and blinking lights? Well this is the most basic way to interact with the computer, speaking its own language. The Nova family of computers had 16-bit words, and the front panel had a row of 16 toggle switches. Using these switches, you could store any value you wanted into any address, first toggling in the address into a register (indicated by lamps) followed by toggling in the data and loading it. If you are entering a program, thankfully the address register auto-incremented with each data load. The lamps showed the current address and data. While this process is tedious to the extreme, I found it really helpful in learning the computer inner workings. I also gained an deep appreciation for keyboard-based memory monitors.

One quirk of the Nova, and other machines of the era, is that the the panel and all the supporting ecosystem of documents used octal notation. This seems a strange choice for 16-bit word sizes. Indeed, by the time I encountered the Nova, most of the industry was using hexadecimal. Jumping back and forth between hex and octal was annoying, and I’m glad octal eventially fell out of favor. Hexadecimal makes more sense, given that word sizes of modern machines are almost always an integer multiple of the 4-bit hex nibbles,

Base eight is just like base ten, really — if you’re missing two fingers!  – Tom Lehrer

Magnetic Core Memory

At the time, I was vaguely aware of magnetic core memory — just to the extent that it keeps its contents when power is removed. But I wondered if that property was helpful in the context of a mini-computer system, since that there were so many connected accessories. So one day I did a test. I fired up a large compilation that I knew would take a more than ten minutes. Once started, I went around to the back of the machine and yanked the big plug out of the wall. The front panel lights went out and all motors whirred down to a stop. Satisfied that it was really off, I went to lunch. Coming back an hour later, I plugged it back into the wall. To my surprise, it picked right up where it left off — comilation completed as if nothing had happened. Later, one of the engineers told me there was a small option board installed on this model which sensed power being removed, gaving the OS a few milliseconds to save a handful of CPU registers to scratchpad core memory.

Pseudo-line Printer

GE Terminet (Honeywell Bull) Pseudo-Line Printer, with the agreement of the Computer Museum NAM-IP, Belgium

At the campus mainframe, the printer was a true line printer that struck one entire line of text with one whack. This Nova’s printer was similar, but unlike anything I’ve seen before or since. It was 120 columns wide with 120 tightly-packed, individually-controlled hammers. In front of these hammers ran a long belt holding type fingers. The fingers contained a complete set of the printable characters, repeated a few times along its length. This belt was in continuous motion during operation. When printing, the printer would buffer one line of text, and then fire all the necessary hammers in sequence with the rotating belt of type fingers, each hammer striking it’s assigned letter at the precise moment that letter passed by. This isn’t exactly a line printer, but it sounded almost like one. Instead of one whack per line, there was a very quick burst of sound each line — like a stuttering swarm of angry mechanical wasps. It was a fascinating mechanism to behold and hear.

Nicholet Zeta Pen Plotter

Many of the assignments that I received from the researchers involved producing plots, and I used the plotter like that in the advertisement above — notice one feature is a starting price of less than $6000. The researchers would give me a complicated formula and / or measured experimental data, and request various plots. Quite often these programs would run for hours just to generate one plot, sometimes requiring overnight shift work. One scientist was writing a book at the time, and I made dozens of graphs and charts for him. For the next couple of decades, I would find those same graphs in various radar reference books. One plotter program they asked me to write was actually the opposite of a plotter — it was to input already printed graphs. One of the “pens” you could get was in fact a clear “bomb sight”, complete with cross-hairs. You would manually steer the pen over a desired point on the paper, line it up exactly, enter the value in user units on the termina, and press OK to digitize the point. That program turned out to be surprisingly simple. You first digitize the origin and a point along each axis, then just enter all the desired points along each curve of interest.

Programming

The Author’s Arctic Work Station

Most of the programming I did on this computer was in Fortran, although the EES used a preprocessor called Fortran Language Extended Control Structures ( FLECS ). FLECS took away some of the annoying aspects of Fortran by providing structured programming features, like IF-THEN-ELSE structures, DO-WHILE-UNTIL loops, and internal procedures (kind of like an inline function). But the most interesting project, the subject of this article series, was using assembly language to control custom hardware in order to record radar measurement data — in the frozen Arctic. I will begin covering that in part two.

51 thoughts on “Arctic Adventures With A Data General Nova II — The Equipment

  1. In the 80’s when I was in the USAF, one of the test system I worked on used a GE Terminet 1200 with that belt of hammers. It was a testament to the skill of the designers to be able to track the position of any particular character as the print progressed across the page, all using standard TTL logic.

    1. I worked for Dataproducts in the late 70s as electronics technician and later in the engineering department. They too manufactured line printers with a large rotating character drum and the position tracked by, I believe, a hall effect sensor. Of course, the bank of hammers, and tons of 74XX logic. Surprised I have any hearing left — those things were loud when you were working on them with the lid open.

      1. CDC CYBER74 at UMass in the 70s had the big brother of these…it used a chain of type elements instead of a tape, and was extremely loud and fast. They upgraded to a true drum printer later.

  2. I yearned to get my hands on a Nova but it wasn’t to be. Our PDP8 had a magic switch sequence to boot from the hard drive (5 meg fixed+5 meg exhangeable) up until one of our number came across a ROM board at a radio rally – I say ROM: it used magnetic cores and was programmed with a strong light and pair of tweezers, but it did have enough words available for the boot sequence! The main memory was also magnetic core and, as I have commented previously, held its last contents from when it was switched off and stashed in a basement until out new building was completed. On restarting without clearing RAM it was still working on its next move in a student’s chess program.

    1. The PDP-8s I dealt with back in the day used a two-word bootstrap to boot from RK05 (about 2.5 megabyte removable cartridge disk). It wasn’t bad to toggle that in.

      Some of the machines had core memory. When the fall thunderstorms came through, you could tell which; the ones with core kept on running, but you had to reboot the ones with semiconductor whenever the lights blinked.

      1. Ours had core store on a PCB card, unlike the ICL1904S that I worked on – they had an 86lb power supply and some very large sense amplifier cards in a cabinet larger than the entire PDP8, though they were 32K of 24 bit words, unlike the PDP8e which were 16K of 12 bit IIRC.

        Our new building was somewhat flimsier than the old one, which was Victorian brick at its finest, and a lightning strike on the lawn outside the computer room was concentrated by the steel frame in the corner of the room where we put the PDP8. On examining it to see why it was’t booting we found some of the chips on the core board were just legs and no package – the return to base exchange warranty didn’t quite cover this, though they did give us 40% discount on a new card for sheer cheek, so it did work again. We also got to keep the failed card to show to students.

        To this day I have no idea why the power supply and all other boards survived while the RAM card failed spectatularly – the core was inside a metal can, so I don’t know if it was as fried as the interface chips.

  3. The computer in question was a Data General (DG) mini computer. DG was founded by former Digital Equipment Corporation (DEC) employees in the 1960s. They introduced the 16-bit Nova computer in 1969 to compete with DEC’s PDP-8.

    I was under the impression that the Nova was intended to compete with the PDP-11. As I understand it (and I may be wrong), DEC was deciding which direction to go after the PDP-8. When they chose the PDP-11, a bunch of the PDP-8 guys left and did the Nova, which was an alternate direction.

    One quirk of the Nova, and other machines of the era, is that the the panel and all the supporting ecosystem of documents used octal notation. This seems a strange choice for 16-bit word sizes.

    In the case of the PDP-11, octal made sense. Eight addressing modes and eight registers. Octal allowed you to pick the addressing mode and register number out of an instruction just by looking at it.

    It’s been too long since I dealt with a Nova to remember whether it made sense there. I seem to recall there being four accumulators and four addressing modes, so probably not.

    1. I remember hearing at the time that DEC chose to use octal on the PDP-11 so that the transition from PDP-8 would be easier. Also, the alternative of hex would have been seen as copying IBM.

    2. My brain is too foggy to remember which machine we named “Fred”, I think it was a Data General, and maybe a “Nova” at that. (Early 1990s-it was old then). When a similar (but less capable) machine was built from spare parts, it was named “Barney”. Both were used for radar data processing.

      1. Oh wow, you knew about this machine? The story that I initially remembered from back in the day was that this Nova had been used by Fred on some radar instrumentation projects for the Navy. I’ve collected recollections from people who worked on that machine, and it isn’t clear to any of us. The resemblance between the “Arctic” Nova that I used and the photo of the ERDAS system is so close that I lean that way.

        1. No, not the particular machine,
          but maybe the engineer that set it up for us was aware of the the real [Fred] story and named ours after him.

          So, were you in Thule or Cobra Dane?

    3. > I was under the impression that the Nova was intended to compete with the PDP-11. As I understand it (and I may be wrong), DEC was deciding which direction to go after the PDP-8. When they chose the PDP-11, a bunch of the PDP-8 guys left and did the Nova, which was an alternate direction.

      The first Nova did come out not too long before the 11/20 (’69 and ’70), but despite the similarity in word size, the Nova was a lot closer to the -8 in terms of how it was made and how it was used — a smaller but capable machine that was still affordable. The comparison to the Raspberry Pi is pretty on-point, in my opinion. It (like the PDP-8) found itself the ‘brains’ of a lot of embedded systems. The -8 and the Nova were ‘do more with less’, while the PDP-11 was very much ‘bigger and better’: more capable and complex, but with a price tag to match.

      As for the actual history surrounding De Castro’s exit from DEC and the founding of DG, I encourage you to read it straight from the man himself:
      https://archive.computerhistory.org/resources/access/text/2012/07/102702207-05-01-acc.pdf

    4. [QUOTE]I was under the impression that the Nova was intended to compete with the PDP-11..[/QUOTE]

      I understood it was more like the philosophy of the pdp-8 (the cheapest possible computer) but with a 16-bit word size. DG’s big insight was that at the end of the 1960s it was possible to squeeze an entire CPU into a 15″ PCB and the reduction in manufacturing costs would make the computer super-cheap.

      The Nova has a lot in common with the pdp-8 in that it has a fairly minimal instruction set, very limited logic instructions (AND, just like the pdp-8); page 0/current page + indirection as addressing modes + some special locations for indirect addressing. Finally it had close to the pdp-8s ‘microcode’ style instructions and a fairly similar I/O setup.

      OTOH it was also a bit RISC in that it was a fixed-length instruction, load/store architecture and certainly ‘reduced’. It’s clear from the design of the early ARM CPUs that it’s influenced by the Nova, especially with the ALU being able to perform operations + shifts + skips + updating condition codes all in one instruction.

    1. I think the same. It’s a fascinating story about a venerable system.
      It’s well and thoughtful written, as well.
      The comparison to an IBM PC was chosen well, too. Both were workhorses and well built.

      1. The Nova was before my time but one of the techs that worked for me at DG used to extoll the virtues of the machine for a number of reasons. The one the writer picked up on was the core memory. He found the ability to power down the machine, swap out peripherals and even power supplies and resume at the exact program location you left off was a godsend during hardware debug. The second feature was the reliability and longevity of the machine series. Just about every bug in the machine operation had been tracked down and the errata list just ceased growing as a result. A number of customers hung on to their machines for years and refused to upgrade to newer models. Great for the customers who found they had a machine they could rely on not to give them nasty surprises but maybe not so great for future sales.

        1. I was a new hire at DG RTP (home of FHP, for _Soul of a New Machine_ readers) in the late ’80’s, and knew a few folks that had worked as FE/SE employees. They would carry core memory boards with them with diagnostics preloaded. From what I was told, it saved a huge amount of time to just shut the machine down, insert the core memory board, and boot. They still maintained a Nova lab in RTP when I was there (the group I was in also did RDOS maintenance). Really cool, rock solid machines.

    2. Never too young to start! (says the Nova enthusiast born decades after these things were old news…)
      Here in modern times Novae are relatively inexpensive compared to the contemporary PDP-8 — partly because fewer people are into tinkering with ’em. The trick is finding one, and getting it from whatever dusty basement it’s uncovered from, to your house.

  4. Good stuff. I could write a comment as long as this post about experiences with a DG Nova 2 in the late ’70s. Flipping switches to input a bootloader, writing programs in assembler on a model 33 teletype. Fun all around

      1. “It is a truth, universally acknowledged, that an article on a Data General minicomputer, must be in want of a reference to ‘The Soul of a New Machine'”.

        Great book btw, I have it on my shelf.

  5. I used to run the Data General Nova Eclipse S250 for Zales. They sold it to Greyhound and I got a trip to Florida and a 10-speed bike out of it. We still had the 1200 baud modem for it but used a new 5600 baud modem, state of the art, man. That was my first job where I learned that updating old procedure manuals to be more accurate and easier to follow would make you very popular with your manager – you were “expendable” and could be promoted now.

  6. A big shout out to #ChrisLott for writing this article on digital archeology with a purpose! What years were you stationed in Antarctica? I’m amazed you didn’t find leaking electrolytic capacitors in power supplies everywhere, and magnetic tapes that couldn’t be read anymore.

    If a “bunch of [DEC] PDP-8 guys” were the ones who designed the DG Nova, it’s no surprise they used octal. These guys thought in octal. But if you Google “PDP-11/70 front panel,” you’ll see that even the PDP-11 favored octal–note the console switches in groups of three. Hex (again, I think) was more of a Bell Labs thing. (Correct me if I’m wrong.) You can read Tracy Kidder’s Soul of a New Machine if you’re interested in Data General history and the thrill of bringing a new minicomputer to life.

    The practicality of having to boot a minicomputer by hand was a transitional thing. Eventually even DEC’s computers booted when you powered them up (e.g. the PDP-8/A, which typically had no front panel). Every word of boot ROM cost money, and minicomputers were often purchased by organizations that were trying to save every dollar. Some disk drives could be booted with a single instruction “read sector zero and branch to start location.”

    Indeed, I remember “chain printers,” which (I think) were for less heavy-duty printing applications (e.g. in a university lab) than the big drum printers you’d find parked next to a mainframe. Compared to the weight of the chains (which did break sometimes) line-printer drums were heavy.

  7. Way way back, I worked with a DG Nova 3/12 and other pieces of equipment that took turns being called “FRED”. The last part always stood for “Ridiculous Electronic Device”. Can’t remember what the “F” stood for.

  8. Great article ! I can’t wait for part 2. Old systems like that take me back. Nice to reminisce about days of “big iron”. Couple of things, the line printer in some areas was called a Band Printer because the characters were on a “band saw” like loop with print hammers for each column. A Hall sensor was used to track the beginning of the character loop and timing circuits were used to “know” when a particular character arrived at the column it was to be printed on (I know this is vastly over simplified). Also magnetic core memory was a big thing then. At NCR (National Cash Register) we had it in cash registers as well. I remember when we upgraded all the NCR 280 registers at P.A. Bergners (now Macy’s) from 1k to 4k cores (wow). Power outages were never a problem. As for octal … several models of NCR registers were programmed in octal and one model was programmed in BCD (binary coded decimal) converted to octal. Looking back we were so primitive like using “stone knives and bear skins” (Spock).

    1. It’s interesting that these days we think of machines like the Nova, the PDP-8 as “big iron”, but the truth is that in their days, these were the opposite of big iron. They were mini-computers in terms of both price and size, and therefore could be integrated into projects. You wouldn’t dream of taking your CDC or IBM mainframe out into the field for radar measurement programs. I don’t think it’s an exaggeration to say that these mini-computers ushered in a whole new era of computing.

  9. Worked on DG macnines when i started in IT in 1980. Eclipse C350, Nova 4C and X, the orrendously slow MP100 and following more modern machines (cant remember the names) until we ported everything on x86 running Interactive Unix.

  10. Spent some time wrangling Nova’s. And having core memory boards was a useful feature in some of our applications. Worked with TTI which did automotive crash testing and pavement design and evaluation. Had a Nova 1200 mounted in the trunk of a car with several analog/digital boards to collect pavement profile information. We transferred data by removing the 4K core board from the car and inserted into the lab/data analysis system in the office. Far more rugged than disk or tape from that era. Did similar things with crash test subjects and even some pollution dispersion experiments. Nova 3’s ran some of the telecom systems I was responsible for into the 90’s. Those had 512K word banked memory systems to keep their translations in RAM.
    The most fun was when in school and many labs were to be completed using Nova 1200’s. The architecture supported 32K words so the address was actually 15 bits bit the msb was an indirect bit. So if it was set it would access the memory to fetch the operand address. But you could set the indirect bit in that memory location and it would do it indirectly again. Problem was when you would do things like jump indirectly through an address which had its indirect bit set and pointed to itself it would be in in infinite indirect loop. Early Nova’s would not respond to interrupts even resets until an instruction completed, and these self indirect could only be cleared by power cycling. The switching power supply would begin a unique squeal and the machine operators would begin to curse profusely because the had to restart the machine and resubmit all the batch jobs that were incomplete.

  11. I designed communications boards for DG, IAC intelligent multiplexors, the Ethernet board for the Micronova/Eclipse, and some that never made it out of the engineering lab. I have a NOVA 3 front panel in my office, and a few non working examples of the boards I designed up in the attic.
    DG was a great first job out of college. Had its ups and downs of course, but I stayed there for 14 years until the layoffs. I knew a lot of the “Soul” guys, and even worked under Tom West at one point.

    1. The IAC was a very interesting board. In the mid ‘80s I helped a coworker sort out an IAC-8 that would not pass power diags. He wrote code to export the rom from the IAC to the host computer memory.
      He got stumped by a subroutine that walked through the sram on the board XORing each location, I suggested it might be a memory test, which led to us finding the latch on the board that was only used for memory test.
      Swapping the chip solved the problem.
      Interesting times.
      Jack

  12. As one of the modern DG Nova enthusiasts, this is super cool to see the life of a Nova 2 in-situ! One of these days I’ll get my 1200 running again, and I’d love to install that program load feature described here. It involves a pair of weird ROMs that are open-collector and incompatible with EVERYTHING, so if you’re not DG, you just have to make a custom jig to program them.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.