I bid 250 pound for a "Data General Nova 1200" computer on Ebay in the UK and won the auction on 28 April 2017. The photo shows my first (but not last!) dissassembly of this system, released in 1971.
This computer came from a Singer Photomix 8400, a phototypesetter (grandfather of a laser printer). The top board in the photo (top-left) above is the interface board. Then (top-right) we have the 8kx16 bits magnetic core memory board, bottom-left the CPU board (TTL logic) and botton-right the power supply. Because this Nova has been embedded it did not require any control switches. I.e. the so-called frontpanel was missing. Time to build my own.
On this first frontpanel, the banks of lights (orange LEDs, for similar color as old-fashioned bulbs on the Nova) represent address and data in binary. My Nova (manufactured in 1973 as seen from the IC datestamps) must have been off for 40 years or so, but the original data and code were still in the core memory. The Nova seemed completely functional! The hand-wired frontpanel started to fail quickly though.
The project slept for a while until I was forced to stay at home early 2019 due to a health issue. I knew that my favorite conference (ICCR = International Conference on the use of Computer in Radiotherapy) was upcoming. Why not submit a paper about this computer doing CT reconstruction? I decided to make a more user-friendly frontpanel using a manufactured PCB (picture below).
The original CT scanner made images with 80x80 pixels that would fill up 6400 words, using most of my 8k core memory. Time to buy more. I found a slightly damaged board on Ebay from the US for $95. With shipment to the UK and tax the price doubled. On inspection, some of the hair-thin wires has broken and had to be repaired. Also the timing of the board needed to be adjusted. As the Arduino was running out of space, I replace it by a Teensy. In the larger storage space of the Teensy, a user-friendly monitor software was written. I wrote a small cross-assembler in Lua that allows modifying the assember code on the PC, upload it and instantly run it on the Nova. I did run out of time before my ICCR talk, so CT reconstruction was not complete. The talk is here: ICCR 2019 talk Marcel van Herk
Later I also wrote a Nova simulator into a V3 frontpanel that I had designed. Time for a Battle of the Nova's.
In 2024 I was invited to the give the annual British Society for the History of Radiology (BSHR) lecture, and I decided to take up the challenge again. One of the issues was the lack of a proper display. How to perform output to a display from a 50+ years old computer? It turns out that the HALT instruction in the Nova has 4 unused bits. This means one can use 15 HALT-equivalent instructions to do things in the Teensy or Pico such as GRMODE and GRDISPLAY to display data on the graphics display, and READBLOCK and WRITEBLOCK to read and write data to EEPROM or SD card.Input data for CT reconstruction is an array of measurements with X-Ray detectors as the scanner rotated around the patient, called a sinogram. There is not enough space in the Nova's core memory for the sinogram and a reconstructed CT slice (the EMI scanner had a disk drive). I therefore load the input data from the (large) code memory of the Teensy. The finished optimised reconstruction code runs below in 23 s NOVA time (a lot faster than in the original CT scanner!).
The full lecture can be seen here: BSHR lecture 2025
marcelvanherk