The Tektronix 4052 System

Return to Home
Return to Resources


               



The Story

A friend of mine who worked for Tektronix from 1973 to 1983 cleaned out his garage and told me to come by to pick up a pile of things that would otherwise be thrown out. When I came over and looked at the stuff, they were practically all Tektronix-made devices, and I found a 4052 computer. At the time I never heard of Tektronix manufacturing anything but high quality oscilloscopes and other test equipment, so I was impressed to find that they even made an attempt in the computer market then. He told me that the stuff was good for parts, but I decided to keep the 4052 among a few other peripherals. Sadly, the 4052 I took home did not work correctly when I fired it up. Although it performed the correct boot-up sequence, there was nothing on the screen. I readjusted the brightness and bias controls on the display board and managed to get nothing more than just a dot. I just left the computer sitting in the house for about a year until my friend cleaned out more things and gave me another 4052. The second 4052 was barely working; it would boot-up and if you were lucky a cursor would appear, but otherwise it had sporadic issues. Now that I had two 4052s to swap around boards, I isolated the problem in the first one to be the I/O board (which generates the display information) and both computers had problems in the memory section. Fortunately, my friend also gave me two sets of preprogrammed ROMs with the BASIC interpreter, and I replaced the original set of ROMs in one 4052 with the unused, preprogrammed ROMs and finally got that system to fully function.



The Tektronix 4050-series Systems

When I searched on the Internet for "Tektronix 4052" there was not much information about its history and specifications. However, searching for a 4051, the earlier and low-cost brother of the 4052, would return slightly better results but still no useful information. I managed to get some information from a few contacts about the 4050-series graphic computer systems produced by Tektronix in the late seventies:

The 4051 was a 8-bit 6800 processor-based system introduced in 1975 for the base price of $5,995 with 8K RAM. The RAM was expandable to 32K for extra cost. The 6800 processor had a top speed of 1MHz at the time. The 4051 was mainly intended for graphics design because of its smooth vector display drawing capabilities.

The 4052 was a vastly improved version of the 4051 using four bit-slice AMD 2901 processors for 16-bit data and allowed the system to run the original 6800-based programs for the 4051. I suppose this was a marketing strategy so 4051 software would be fully compatable with the 4052 and the 4054 without too much additional cost. Moreover, the bit-slice CPUs provided much faster computing power. The 4052 was introduced to the market no sooner than 1978. The cost for the base unit with 32K RAM was $9,800, and the RAM could be expanded to 64KB for an additional $2,000.

The 4054 is a larger version of the 4052 with much more features. While the 4054 has the same type of processors as the 4052, it had a larger screen with high-resolution graphics, in fact it was 4096x3125 pixels, which was very impressive for a late 1970s computer. The price probably explains why the 4054 is seldom seen; the base unit cost $16,500 with 32K RAM, expandable to 64K for an extra $2,000.



The Tektronix 4052

Introduction

The 4052 is unique compared to other computers of the late seventies because of its vector-based display and the DVST (Direct View Storage Tube). A vector-based display meant the computer actually draws true lines from a specified point to another; the line are not pixels or dots. When the 4052 starts up, it uses the Cartesian plane coordinate system with the X axis at 0 to 130 and the Y axis at 0 to 100. This window actually could be changed with a simple command in BASIC. Most computers then and now use a raster display, which means it scans a line across the screen repeatedly and cycles several times per second; this is what makes the "flicker" that people complain about sometimes. In fact, vector-based displays can flicker too. One example is the Vectrex game system, which draws several vectors repeatedly for the same reason a raster display repeats the lines. On the Vectrex, if there were too many lines to draw then it would appear to slow down and flicker. Raster screens also require video memory to store the video information for each pixel. The 4052 graphics does not have a flicker or video memory because of the DVST.

The Direct View Storage Tube (DVST)

The DVST was developed by Tektronix in the late fifties; the DVST contains a special plate over the CRT face that continuously glows when the electrons emit off the phosphor of the CRT face. In short, when a line is drawn, the computer only has to draw it once then the DVST would store the line and continuously display it. This served as the "video memory" for the computer, so the RAMs only had to remember the programs and not video information. This also saves a lot of processing power because the CPU no longer has to set aside some time for handling video information in the background.

However, there is a downside to the DVST. Whatever was drawn literally remains, including text. If one wanted to erase any portion of the screen, then the PAGE command or pressing the HOME/PAGE key would erase the whole screen and you'd have to start over. In fact, the erase process involves a bright green flash, which some say gave these computers and the 4010-series terminals the nickname "the mean green flashin' machine." The blinking cursor is not stored by the DVST because it uses write-through mode, which means the electrons emitted by the CRT is so low that while it was still enough to activate the phosphor face to be visible, the secondary electron emissions off the CRT face were not enough to activate the DVST. If a mistake was made when typing in text for programs or so, the backspace key does not delete anything. In fact, backspace only moves the cursor back one character space just like the space key moves the cursor forward one space. The text on this computer is somewhat similar Overwrite Mode in word processors. However, to actually delete a character or more from the line, there is a RUBOUT key that would display a green box in place of the character and that meant the character was deleted out of memory. If the mistakes were overwhelming, then there is a Clear key that would just ignore the whole line and allow you to retype in the line. Lastly, the other limitation of the DVST is that certain graphic animations are limited or impossible without the roughly 1 second-long erase. The only kind of animations that could be possible would have to take in consideration that whatever is drawn remains.

The Hardware

The 4052 has a large motherboard that consists of four individual boards: ALU (Arithmetic Logic Unit), MCP (Memory Control Processor), MAS (Memory Access Sequencer), and the I/O (Input/Output) boards. Below are pictures of the motherboard top and bottom views.

For the top view, the top of the motherboard is the ALU which contains the four bit-slice 2901 processors and the MCP board below it. The 5V power supply feeds into the MCP board on the left of the ribbon cable. For the bottom view, at the bottom is the MAS board, which contains the BASIC interpreter ROMs, the 4116 dynamic RAMs (DRAMs) and the GPIB port. Above it is the I/O board, which contains several D/A (Digital/Analog) converters to convert the digital signals into analog X and Y signals for the display. The I/O board also receives the keyboard input, tape drive signals, and other power sources besides 5V.

The BASIC Interpreter

There are some nice and unique things about the BASIC interpreter on this computer. When entering a multiple-line program, each line is sent to the processor and checked for syntax before being sent to memory. Many other computers would simply allow one to type in a program directly to memory and only check for syntax in the end when the program is run. The 4052 would check each line as you went along, and if it found an error then it would print SYNTAX ERROR with an arrow pointing to the exact location of the reprinted line where the error was found and allow you to edit it.

Also, unlike many other low-cost personal computers, the 4052 can execute mathematical operations like a calculator without requring something like PRINT "5+4" because 5+4 alone would work. Speaking of math, there are certain BASIC commands that can set up the 4052 to graph like WINDOW -X,X,-Y,Y and AXIS X,Y. By using a loop, one could draw a graph by incrementing X and the function of X (ie. X^2) and use the DRAW X,Y command using these values. Aside from math, Tektronix BASIC supports the MOVE (similar to LOCATE on some other computer systems) and DRAW command. MOVE X,Y would move the cursor to a point on the Cartesian coordinate plane and this sets the initial point of a line that would be drawn with the DRAW X,Y command. The system, however, does not support PLOT, but the same concept can be done by using MOVE and DRAW at the same point, which results in a dot being drawn.

Advertisement

Below is an advertisement on the 4050-series taken from a 1980 Tektronix catalog that includes the 4052 (thanks to Bob at www.dvq.com for the scan).



4052 Programs

I made some relatively simple BASIC programs for the 4052, which probably should work on the 4051, 4054 and perhaps other computer systems that supports a similar type of Tektronix BASIC. They are BASIC programs provided in text form for manual entry on the computer.

  • Lines! - This program draws a line and moves it around in a random manner, the DVST stores all the previous positions of the line, which gives an interesting effect. I set up a line counter that would store the number of lines drawn in X, and after 150 lines have been drawn the computer would erase the screen then continue drawing. The picture of the 4052 computer system at the top right of this page was taken using this program. Below are some other pictures of the computer using this program:

              


  • Draw - This program uses the 4952 joystick for the 4052 and a POINTER statement to draw lines. The graphic pointer is moved to a point then one presses any key but Z then that sets the initial point, then the pointer is moved to another location and by pressing any key but Z will draw a line from the initial point to that point. This program can be used to draw images using the pointer. Now about the Z key, when you press Z at a new point, then it will move the initial point to the new position without drawing a line. Basically when you draw lines using other keys, the final point becomes the new initial point for the next line to be drawn. Z simply moves the initial point without drawing a line. I managed to draw a picture of TEK using this program and a picture of this can be found at the top of this page on the left.


  • Clock - This program uses the 4052RO9 Real Time Clock ROM Pack that attaches to the "backpack" on the 4052. The ROM pack extends the BASIC commands to include CALL "SETIME" and CALL "RDTIME" to set and read the time respectively. When the ROM clock has to be set, it requires the information this string format: DD-MON-YY HH:MM (i.e. 01-JAN-06 12:00), so the program simply prompts for the time then injects that into a string with some random date and sets the ROM clock. Afterwards, the program calls a subroutine to draw the face for the clock, then reads the time and stores it in string A$ that follows the DD-MON-YY HH:MM format. A$ is then disassembled to three strings for hours, minutes, and seconds. All of these strings are converted into a mathematical value for arithmetic and logic operations. After the digits have been obtained, the program draws the hour and minute hands. The displayed minute is stored in P, and the seconds are stored in I. Then the minute value is obtained again and is compared with the value in P, and if it is greater (a minute has passed) then the program goes to the subroutine to erase the screen and redraw the clock face, then when it returns it goes to line 130 and from that point on obtains the new hour and minute and redraws the hands and so on. If a minute has not passed, then the program goes to the seconds section to draw the seconds dot for every second (when S becomes greater than the current second stored in I). In short, the clock draws an analog clock and the DVST stores everything so the only processes that takes up most of the computer's time is drawing the seconds and checking for the minutes. When a minute passes, the screen is cleared and redrawn so the hands can be repositioned. Below is a picture of the clock on the screen: the time displayed is 9:37:54. Notice that there is no seconds dot for the 0 and 1 because it takes up a little over a second for the DVST to completely erase when a minute has passed and have the whole clock redrawn.


    Back to Top