NCSU EE Dept. Computer Graphics Lab 1970-78

Short Video - 3D modeling & display
Video - Debbie Ogden & 3D modeling program on AGT-30
Video - Nick England & textile pattern program on Varian 620
Video - Jeff Eastman & 3D Hidden Surface Algorithm running on Varian 620
Video - Nick England's Tiger Tank animated film
Video - Mary Whitton's animation path tool
Interview Video 2019 - Dave, Turner, Mary, Nick
More videos & photos coming some day.

History

Prof. John Staudhammer created an early computer graphics research group in the Electrical Engineering Department of North Carolina State University (Raleigh NC) around 1970. I joined the group in 1972. The group lasted through about 1978. There were a number of publications (5 in SIGGRAPH '74,  3 in SIGGRAPH '78) and successful graduates from the group. John attracted and encouraged creative, motivated students and it was a marvelous environment! We never had much money and a lot of the equipment we had was second-hand or home-brew, but we all had a chance to do and learn an awful lot about graphics. Thanks, John!

John Staudhammer
staud-01.jpg (231821 bytes)

People - need more photos!

Hardware


AGT-30 in background, with stroke CRT, plotters, tablet, and raster display in foreground
glen1.gif (382518 bytes)
Dave Wooten at AGT-30 stroke display
Adage_tape_0_1524x1200.jpg (510461 bytes)
Ed Tripp and one of the AGT-30 7-track tape drives
ncsu-nick3a.jpg (76579 bytes)
Nick England with Rand tablet and the custom color raster display

Adage AGT-30 computer  

Our main machine was an Adage AGT-30, a marvelous machine for its day (1970?). It had a calligraphic display for the main console, driven by a hybrid analog-digital 3D matrix multiplier. Adage did a nice job on the software and it was one of the earliest machines with software that assumed the user had an interactive display with interactive devices as standard equipment. The text editor was set up so you could use the button box (or foot pedals) to search and replace, for example.

It was a 30 bit machine, instructions having 15 bits of op code and 15 bits of address or immediate data. The graphics display lists had 15 bits each of X,Y,Z. The instruction set had hardware indirects so linked list data structures for graphics were a real natural. I remember someone's code with a comment like "POINTER TO THE FIRST POINT POINTER POINTER". There was a FORTRAN compiler and you could put in-line assembly code in that also. Nice symbolic de-bugger too as I remember. Single user machine of course. It supported overlays for really BIG programs.

It had two 7-track tape drives, a card reader, teletype printer and some removable hard disks too (maybe 256K bytes/disk?). Mostly discrete transistor technology, but the ALU was TTL. Originally 8K x 30 core memory, later upgraded to 32K x 30. The machine took up 4 racks plus the two tape drives and two disk drives. Needed lots of air conditioning and continual maintenance.varian620-01.JPG (53397 bytes)

Varian 620 minicomputer  

We also had a Varian 620 mini with 8K x 16 of core memory (actually a Data Machines Inc. 620 - precursor to Varian). We used this to control various peripherals and to run hidden surface display code for shaded raster graphics. It originally had just a paper tape punch/reader for I/O (and a Model 33 teletype for a console), but I later built an interface and controller for a pair of Ampex 9-track tape drives and wrote a very crude OS for it.  Photo - Debbie Ogden waiting for paper tape to load

Adage Ambilog 200

At some time, we inherited an Adage Ambilog 200 machine (kind of a precursor to the AGT series). It had been used in the biomath department, then transferred to Computer Science - they couldn't ever get it to work again, so our lab inherited it. Marc Howard, an undergraduate, adopted it as his own and got it working just fine. Like the AGT, the Ambilog also had a hybrid analog-digital arithmetic unit and vector CRT console. There were also two 7-track tape drives, but no disk system, for this machine. Ambilog advertisement.

1966 - Ambilog 200 in the biomath dept. - photo credit   
Please let me know if you find a console like this for sale.
ambilog200.jpg (152219 bytes)

Parallel Graphics Processor

Jeff Eastman, Dave Wooten, and Ed Tripp designed a very fast asynchronous parallel processor for graphics operations. Debbie Ogden later started building it (wire-wrapped ECL) but never got it to a working stage. See the article in SIGGRAPH 74 for info on the design.

Interactive Devices

Display Systems

AGT-30 - Calligraphic (stroke drawing) display with 3-D transformation hardware. Characters were drawn as vector lists too. Display list processing was via DMA transfer from the CPU memory, so integrating applications and graphics was really nifty.

ncsu-PICT0023.JPG (1307164 bytes)

Color Raster Display - In 1972 Glen Williamson rigged up an analog video disk (old slo-mo magnetic disk) so you could read red, green, and blue frames, and write one scan line at a time. Glen also modified a Sony TV for use as an RGB monitor. Jeff Eastman built a digital interface to this using a run-length coded buffer. Back then, almost no-one could afford all the RAM it would take to build an actual frame buffer!
Debbie Ogden with her textile paint system
Analog/video wizard Glen Williamson
glen-da313-558.jpg (92395 bytes)
color display system

Programmable Raster Display - In 1977-78 I designed and built the fore-runner to the Ikonas system, a programmable 32-bit graphics processor (based on AMD 2901) and a frame buffer (512x512x2 or 256x256x8). Ray Stroh wrote a micro-code compiler for it and we set things up so display lists could be transformed on the AGT-30 and transferred to my machine for drawing. See my paper in SIGGRAPH 78 for a block diagram. I also designed some matrix multiplier boards, but we never actually did anything much with them. This system was probably the very first programmable GPU ever.

Stereo Display - Glen and I experimented with several stereoscopic display techniques. We got a couple of B&W video projectors from federal surplus and projected them through polarizing filters. In another set-up we rigged up a half-silvered mirror to combine the images from two cross-polarized monitors.

Augmented Reality - Glen and I also rigged up two video cameras to look at a scene in stereo. We combined stereo raster graphics from my display system and used a polarization stereoscope to view the result. I used it to try and fit virtual spline patches to real objects. See my paper in SIGGRAPH 78 for info.

Plotters - We also acquired a Calcomp drum plotter and an HP X-Y pen plotter for which we developed hardware and software interfaces -everything required custom work in those days - no USB ports and downloadable drivers.

 

Some Research Results

  • Eight SIGGRAPH papers
  • Interactive 3-D modeling system 
    - Short Video
    - New Video 10/4/12 - Debbie Ogden
    - New Video 10/5/12 - Jeff Eastman
  • Image Processing System
  • Curved Surface Display
  • Interactive B-spline patch manipulation
  • Paint system
  • Textile design system
    - Video 10/4/12 - Nick England
  • Programmable Raster Graphics Processor
  • asynchronous parallel graphics system
ncsu-ship-01.JPG (27922 bytes)
3D modeling & display (1973-74?)
photo thanks to Jeff Eastman
ncsu-01.jpg (31445 bytes)
3D modeling & display (1973-74?)

Spin-offs

Digitec - John Staudhammer formed a company in his basement (with Ed Tripp, Phil Frankenstein, and Marc Howard) and built a couple of graphics systems - a Run Length Coded frame buffer for Chuck Csuri's Computer Graphics Research Group (CGRG) at Ohio State and a 512x512x8 frame buffer using 4Kx1 DRAMs for Bob Evans' oceanographic imaging group at Univ. of Miami.

Ikonas - Mary Whitton and I started Ikonas Graphics Systems (in a back bedroom, rather than the basement) based on the programmable raster display processor I designed as a grad student. We sold about 400 systems. Ikonas history article in IEEE Computing Edge (page 25)

Games

The AGT-30 had a really nifty version of Space War. You could use dials to set gravity, thrust, etc., use the button box for rotation and weapon firing, and use the foot pedals for thrust control!

Debbie Ogden once had to write a 3-D tic-tac-toe (4x4x4) program for an AI class. So of course, she wrote a nice 3-D display routine for the AGT-30 so you could see the board as you played. It was amusing to see her classmates playing via text-only time-share terminals while we had this great interactive 3-D view of the action.

More coming later - I still have a bunch of old pictures to add

Turner Whitted's curved surface display software 1977-78
ncsu-02.jpg (35604 bytes)
Turner Whitted 1978
ncsu-03.jpg (114257 bytes)
Turner Whitted 1978
ncsu-07.jpg (32543 bytes)
Turner Whitted 1978
ncsu-08.jpg (29504 bytes)
Turner Whitted 1978
ncsu-09.jpg (32044 bytes)
Turner Whitted 1978
ncsu-71.JPG (673055 bytes)
Lab photos used on a departmental brochure 1978
 -  -
Nick England's programmable raster display system - 1977-78 - The first programmable GPU 
ncsu-04.jpg (53757 bytes)
Stereo display system for augmented reality - two cross-polarized CRTs, each 512 x 512 x 1
ncsu-17.jpg (42924 bytes)
stereo display of cursor box and spline surface
ncsu-05.jpg (36755 bytes)
Augmented reality - Stereo video of real VW mixed with 3D cursor
ncsu-06.jpg (45031 bytes)
Augmented reality - Stereo video of real VW mixed with 3D spline surface
ncsu-18.jpg (48598 bytes)
256 x 256 x 8 display mode
ncsu-10.jpg (90035 bytes)
display system with 3D cockpit display graphics
--- ncsu-12.jpg (68553 bytes)
card cage & backplane
ncsu-16.jpg (91913 bytes)
frame buffer using 16k x 1 DRAMs
512 x 512 x 2 or 256 x 256 x 8
ncsu-14.jpg (84595 bytes)
GPU processor - 5 MHZ, 32 bit data, 64 bit microcode instructions
AMD 2901 bit-slice parts
ncsu-13.jpg (95908 bytes)
microcode RAM - 512 x 32  two of these boards made up 512x64
proto-01.jpg (227672 bytes)
complete display system with power supplies - interface cables lead to Varian 620 minicomputer and to video DAC
ww-25.JPG (261761 bytes)
frame buffer board - wire-wrap side
chips-28.JPG (151809 bytes)
16Kx1 DRAMS - $60 each in 1977

ww-23.JPG (197645 bytes)
wire-wrap

  ncsu-15.jpg (104184 bytes)
microcode RAM - wire-wrap side
System with logic analyzer probes attached. Upper card cage contains four matrix multiplier boards plus an extender card.
ncsu-202.JPG (1587757 bytes)
ncsu-204a.jpg (1223018 bytes) Ribbon cable jumpers carry microcode data and address lines. Long ribbon cables go to Varian 620 (left) and to video D/A converter (right)
ncsu-203a.jpg (1259119 bytes)
ncsu-205a.jpg (1154692 bytes)
       

Nick England Personal Home Page
Last modified:  14 Oct 2021