Image Map Image Map
Page 1 of 8 12345 ... LastLast
Results 1 to 10 of 79

Thread: Tektronix 4051 / 4052 / 4052A / 4054 / 4054A Program Archives

  1. #1

    Default Tektronix 4051 / 4052 / 4052A / 4054 / 4054A Program Archives

    I have begun the process of re-reading the dozens of Tektronix 4050 series program tapes I collected 18 years ago, and another huge collection of 36 tapes from Al Kossow.

    Somehow - I failed to find the files I downloaded to my PC while making copies of the tapes in 2000

    As I began to use my serial program on a laptop connected to my now operational and upgraded 4054A, I have re-encountered the issues with using RS-232 serial for program and data transfer, and have begun to learn how to deal with 40 year old data tape cartridges with disintegrated drive belts.

    My serial transfer program uploaded to the Tektronix 4051 web emulator github site:
    and my Tektronix 405x Program Files Archive site:
    is able to recover programs from a readable tape with an Option 1 Serial Interface on your working Tek 405x computer by substituting a printable character string ~X~ where X is the fundamental character typed for each of the control characters heavily used in Tektronix PLOT50 PRINT statements.

    However - the emulator above uses a different scheme to form a control character as X<BS>_ where <BS> is the backspace control character. I have successfully manually edited some of my recovered programs with Notepad++ to change my control character scheme to the emulator scheme, but that is still a lot of manual effort that I haven't done for the programs I have recovered so far. Yes - a small program should be able to automatically accomplish that conversion - that I haven't written yet.

    But I ran into two killer serial transfer program issues:
    1 - Transfer from PC to Tek tape
    2 - Transfer of "Fast Graphics" ASCII data files to the PC

    1 - I was able to transfer Tek 4050 ASCII program files both to and from my PC in 2000 with my program with no serial hardware handshaking protocol, but the higher performance of my current PC now overruns the Tek on transfers back to tape. The 4052/4054 Serial Option ROM added a new serial command CALL "CMFLAG" that according to a Teknique article adds handshake control - but until late yesterday I could not find ANY documentation on all the parameters. The only bitsavers documentation I have found is the original 4051 Option 1 Serial operators manual. Then yesterday I found a Tektronix 4114 Host Programming guide with one page outlining the 4114 CMFLAG parameters. I am hoping the 4052/4054 CMFLAG has the same parameters. Bottom line on using serial - I don't think this method will work for the Tek 4051, and I'm not confident I have got it fully working with my 4054A.

    2 - One of Al's program tapes was labeled 4051 Graphics Demos and the first demo program was titled "PICTURE TAPE INDEX" with the following files:

    130 PRINT "~J~~J~~J~1-------ALL PICTURES"
    134 PRINT "1.4-----CONVERT PRINT @0: TO STRING"
    150 PRINT "3-------TEK LOGO OLD"
    160 PRINT "4-------GARGOYLE"
    170 PRINT "5-------MICKEY MOUSE"
    180 PRINT "6-------SNOOPY"
    190 PRINT "7-------WIZARD"
    200 PRINT "8-------R2-D2"
    210 PRINT "9-------FLAKEY FUNT"
    220 PRINT "10------R2 TALK"

    I got excited as I am a huge R2-D2 Star Wars fan - and have built my own aluminum full-size remote controlled R2-D2.

    Then the bad news - this tape is apparently an ancestor to Zetopans 4051 Fast Graphics ROM Pack, and the first program uses a 4051 CALL "EXEC" program to draw the vectors on the screen after the program FINDs a selected data file.

    The program comments outline the structure of the fast graphics data as three ASCII characters per vector - with MOVE and DRAW as one bit of the first character and the 10-bits of X and 10-bits of Y across all three 7-bit ASCII characters.

    I knew (from trying) that my 4054A would not run the CALL "EXEC" code (which jumps to 6800 assembly code and uses the 4051 ROM entry points and 4051 X&Y D/A converter I/O addresses - totally different than for the 4052 and even different for the larger X&Y 4054).

    That didn't stop me from trying to transfer the ASCII data files from the tape and attempt to create BASIC PRINT statements to draw them.

    Now I ran into a new issue with my serial transfer to the PC - the data is really packed 7-bit binary, and NOT intended to be accessed from a BASIC program, just accessed by the CALL "EXEC" assembly language program.

    1 - INPUTing the data file from BASIC into a string variable: the string variable must be dimensioned as large as the entire data file, as the Tek is looking for a carriage return control character to terminate each string. And the Tek BASIC strips the trailing carriage return character and passes the remaining data to your program

    2 - My original serial transfer program used software handshaking during the transfer - as XON/XOFF control characters are NOT found in Tek BASIC programs. That is not true for the Fast Graphics Data files

    3 - Tektronix 4000 series graphics terminals already used a packed ASCII file format for host computers to send graphics data to the terminals, but the 19" terminals had more resolution so there are two different formats. Later, they added dot intensity and even later color values in these formats. This was 60's and 70's bleeding edge DVST graphics technology innovation before memory prices allowed true bitmap displays. For the 4050 series computers - displaying vector drawings from a program file can easily exceed the 16KB of memory in the original 4051.

    Tekniques Vol 7 No 3 Tekniques_Vol_7_No_03.pdf page 5 outlines the huge performance advantage and memory space advantages of the R12 Graphics Enhancement ROM Pack available in a version for 4051 and a different pack for 4052 and 4054. This ROM Pack also added MUSIC commands to the computers!

    I need one of these R12 ROM Packs for my 4052/4054

    In the meantime I have downloaded and converted to a BASIC program (that runs on all 4051/4052/4054 computers and even the Tek 4051 Emulator) the SNOOPY picture. I added a PAGE command to clear the screen and the SNOOPY title. I also shortened the BASIC program by putting multiple draw commands on a single PRINT statement.

    SNOOPY program file

    Here is a screenshot of SNOOPY from the emulator:

    SNOOPY screenshot from Tek 4051 emulator

    and another screenshot from my 4054A:

    SNOOPY on my 4054 upgraded to 4054A

    I made two changes to my posted serial transfer program - change 190 to CALL "CMFLAG",4 and change 192 to 2400 baud.
    I also stopped using PUTTY for the PC serial transfer program and have been experimenting and learning how to use RealTerm. I have even tried having RealTerm capture to a file without displaying, and also writing two HEX characters for every incoming byte. I also changed line 570 to E$=B$&M$ to add a carriage return to the incoming FAST GRAPHICs data file string to replace the one dropped by Tek BASIC.

    I have not gotten any of the other graphics files transferred and converted yet - and I also found a set of 4014 graphics files posted by Jos Dreesen that I would like to try to convert to display on Tek 4050 computers - possibly changing the format to floating point ASCII data statements to read from tape. This technique would not work with the emulator until it supports programs accessing another file.


    PS - I managed to mangle the R2-D2 file where I can't read it anymore. I have one transfer to the PC before that - but there is a lot of missing data and therefore lots of bad vectors It will take some major surgery to try to recover this file. Does anyone have the R2-D2 file from the Tektronix 4014 demo?
    Last edited by nikola-wan; July 15th, 2018 at 01:52 PM. Reason: corrected typo

  2. #2

    Default 4 Tapes just uploaded

    I recovered almost all the files from four more 40 year old Tektronix 4050 tapes - and uploaded them in separate folders on my github archive site:

    Graphing T1 062-5964-01. I misnamed the folder -00, but I don't know how to rename it on github.

    Interfacing T1 062-5984-00

    4050 GPIB Support Software for 4662 - 020-0256-00. I haven't found any document on the web referencing this tape.

    4027A - 4052 Compliment Color Graphics Demo. This tape had a hand written label. Looks like each program sends graphics commands over serial interface to an attached 4027A color monitor

    More tape uploads coming.

    Last edited by nikola-wan; July 16th, 2018 at 06:07 PM. Reason: added link to program archive site

  3. #3


    I found a new - simpler way to use the Option 1 Serial Interface to save tapes without needing a program.

    Tekniques Vol 1 No 5 March 1977 - page 5 shows how to use the serial interface to get the 4051 to act like a 4010 series terminal!

    just type:

    CALL "RATE",9600,2 //Only on 4052/54 - use 2400 max on 4051)
    CALL "TSTRIN","","","D" //Removes NULL and DC3 from the transfer and adds EOT at end of transfer
    FIND x //Find the file on the tape you want to transfer
    CALL "TERMIN" //This puts in the 4050 in terminal mode
    press User Definable Key 16 (shift UDK 6) //Turns off local echo

    get your PC program ready to capture an ASCII file

    press UDK 4 // Data Send

    if the transfer completes without error - the tape stops
    error messages like READ errors will be displayed if they occur

    After the tape stops - close the file on the PC transfer program.
    I like to then open the transferred file with Notepad++. Scroll to the end of the file - if no EOT character, the file transfer was incomplete. Delete the EOT character and save the changed file.

    I really like RealTerm (free download) - which can capture and send files or act as a terminal. To use it with the Tek - configure the port for the same speed as in the RATE command. I use 9600 7E1 with no handshake. Then click the capture screen - create a filename - click Direct Capture (no echo on the pc) - Start Overwrite.
    Now Press UDK 4

    after the transfer stops - click Stop on RealTerm

    Press UDK 5 to return to Tek BASIC

    Now you can FIND another file, type CALL "TERMIN", and you are ready to repeat the above steps to capture that file.

    I am going to change the github README to the instructions above

    Last edited by nikola-wan; July 18th, 2018 at 07:27 PM. Reason: added TSTRIN instructions

  4. #4


    Thanks for uploading the games, Monty.

    But, um, what's this HARDON thing? Did characters get jumbled over serial?
    "END OF LINE" [MCP, 1982]
    "An admin that isn't a bit hackerish is just the guy mopping up the keyboard" [Phrack V0b I3f P12]
    "Any appearance of danger is simply a device to enhance your experience" [Futureworld, 1976]

  5. #5


    Quote Originally Posted by GanjaTron View Post
    Thanks for uploading the games, Monty.

    But, um, what's this HARDON thing? Did characters get jumbled over serial?
    It works loaded into the emulator - I haven't tried it on my 4054.

    Looks like it could be a timing issue - that only works on the 4051. I'll mark that file 4051 only


  6. #6


    Well, glad it works. Was just a bit amused by the name; HADRON woulda been less risqué. Or maybe it's just me.

    Btw, the Gumowski thing published in Creative Computing (linked in one of the other Tek threads) is pretty interesting to watch. Kinda psychedelic even. Forgot to dump my tape tho. Give it a try, it's a quick type-in.

    "END OF LINE" [MCP, 1982]
    "An admin that isn't a bit hackerish is just the guy mopping up the keyboard" [Phrack V0b I3f P12]
    "Any appearance of danger is simply a device to enhance your experience" [Futureworld, 1976]

  7. #7


    Quote Originally Posted by GanjaTron View Post
    Well, glad it works. Was just a bit amused by the name; HADRON woulda been less risqué. Or maybe it's just me.

    Btw, the Gumowski thing published in Creative Computing (linked in one of the other Tek threads) is pretty interesting to watch. Kinda psychedelic even. Forgot to dump my tape tho. Give it a try, it's a quick type-in.

    I posted it


  8. #8

    Default Added new Tektronix 4050 picture files with screenshots

    Finally created a format that will play the Fast Graphics compressed binary ASCII format pictures on any Tek 4050 computer and the web-based emulator.

    I transferred the pictures to my PC over serial by changing the output format to two Hex ASCII bytes per binary vector 3 character point.
    Then converted each Hex picture file into BASIC DATA strings and added my player program to the front of each file.

    The files use the PRINT @32,21 (MOVE) or PRINT @32,20 (DRAW) commands to speed up the drawing - but it is still a LOT slower than the FAST GRAPHICS ROM Pack or Graphics Enhancement ROM Pack.

    The other formats I tried either required a separate file to be read into the Tek - which doesn't work on the web-emulator, OR were too big to add as inline program statements.

    You could modify my player program to change the size of the vector picture or its location by modifying the scaling in the PRINT @32,M: line in the program.

    Remember that this print command works on Graphics Display Units for X and Y - 0-130 for X and 0-100 for Y, and the input data file is designed to write directly to the 4050 D to A converters - with 10-bit binary data for X and Y - without any scaling capability for the FAST GRAPHICS ROM.

    The Graphics Enhancement ROM R12 is a little slower than the Fast Graphics ROM - but considerably faster than DRAW or PRINT statements, as it does allow scaling and other modifiers for the data - but does this with integer math. I still haven't found a way to use serial to directly save and restore the binary ASCII data files without missing characters in the process.

    Each PRINT command in my program is doing floating point math to compute the GDU coordinates from the 10-bit input data statements.

    One advantage of my picture file format is - no issue with transfer over serial - as all the characters are plain ASCII HEX values.

    Here are screenshots of the new pictures (also on the github site from post #1):

    IntroToFastGraphics.jpg OldTekLogo.jpg Gargoyle.jpg MickeyMouse.jpg Wizard.jpg
    Last edited by nikola-wan; July 25th, 2018 at 04:40 AM.

  9. #9

    Default Added Tektronix 4050R12 Graphics Enhancement ROM Pack program folder to the archive

    I have uploaded a tutorial program that I created from the 4050R12 Graphics Enhancement ROM Pack instruction manual examples I posted in that thread.

    Tektronix-4051-and-4052-R12-Enhanced-Graphics-ROM-Pack post 7

    I also uploaded files that contain strings to directly input for testing several commands including MUSIC and SOUNDS.

    To use the strings command - I set up my PC serial port as follows:
    CALL "RATE",300,2,0
    CALL "TSTRIN","","","D"
    CALL "RSTRIN","","","D"

    then setup the RealTerm PC program port speed to 300E71 - no handshaking
    selected the string file I wanted to transfer

    Then on the 4054 typed:
    DIM L$(1000)

    At this time you can type on the 4050 your Graphics Enhancement command to run the string - example for MUSIC:

    4050R12-Graphics-Enhancement-ROM program archive folder

    Last edited by nikola-wan; August 5th, 2018 at 05:35 AM.

  10. #10

    Default Aswan Dendera Lights

    And now for something different.

    I have been experimenting with Tektronix 4114 plot files - from Jos Dreesen's ftp save of Chuck Forsberg site: Tektronix Terminals plot files

    The 4114 Terminal was a 19" storage terminal with same resolution as my restored 4054A computer.

    I used Cygwin on my PC to run the linux plotutils library - which contains a tek2plot routine that can convert these old files to bitmaps or HPGL or SVG, etc

    The Tektronix terminals displayed text with vectors, vector graphics and even pictures with dot patterns.

    The vector picture files I have posted on my program archive site for the 4050 series were converted from SVG translations of the tektronix plot files.

    However, some of the files are simply dots not vectors - so I've been working to develop a Tek 4050 BASIC program to display them.

    The file format is called Marker Mode in the 4114 Host Programming Guide and consists of one to five 7-bit ASCII bytes per point.

    I based my Tek BASIC program on the C-language source code to tek2plot, embedded one of the picture plot files called aswan.plt and got everything working last night on the web-based 4051 emulator - and then ran it on my 4054A.

    I used Notepad++ to reformat the aswan.plt file into BASIC DATA statements and copied that to the end of my program.
    Long term - I plan to have the program directly read the plt files from tape (or my to-be-finished GPIB flash drive), but that won't work for the web-based emulator (until it allows more than just "OLD" command to load a program).

    Here is a screenshot of running my program on the web emulator:


    Since the Tek 4050 series does not directly allow you to use the 10-bit DACs - I have a window command in the program that I hoped would automatically convert the output to 4050 GDUs (graphics display units). However - I had to adjust the X and Y computations on lines 1072 and 1074 for scaling and position before I could see the picture.

    If you have the web-emulator or a 4051,4052 or 4054 - the 4054 needed different scaling - I found scaling by 8 and subtracting 6400 worked on my 4054.

    I do warn you that the MOVE/DRAW are slow - so you will be waiting a couple of minutes for the picture to be complete.

    I did some googling today on that picture - it is in the Dendera Temple in Egypt - and is also called Dendera "Lights", although the scholars debunk the websites that imagine they are high technology.

    I posted the BASIC program in a new folder - 4114-Plot-Files.



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts