Image Map Image Map
Results 1 to 10 of 10

Thread: Tektronix 4051 and 4052 R12 Enhanced Graphics ROM Pack

  1. #1

    Default Tektronix 4051 and 4052 R12 Enhanced Graphics ROM Pack

    I successfully made my 4052R12 Graphics Enhancement ROM Pack this weekend:
    • Downloaded three EPROM files from Bitsavers (4052R12_Graphics_Enhancement_ROM_Pack)
    • Erased three 2732A EPROMs (bought UV erase lamp on Amazon)
    • Programmed and verified the EPROMs (used my Data I/O 29A with Unipak)
    • Installed the EPROMs in a 16KB Tek ROM board


    I found a couple of Tekniques articles on this ROM Pack with examples:
    Tektronix Tekniques_Vol_7_No_03.pdf

    This ROM Pack gives the Tektronix 4050 Series several features:
    • Significant performance boost on graphics - see table below
    • Plays sound files on 4050 internal speaker
    • Plays music files on internal speaker


    Increased Drawing Rate
    (4051R12/4052R12 vs.
    BASIC MOVE/DRAW)
    4051 4052/4052A 4054/4054A
    Vectors 27X 6X 18X
    Dots 138X 39X 13X

    I can vouch for the huge graphics performance boost on my 4054A! Since the 4052/4054 are around 10x faster than the 4051 - multiply the 4052 and 4054 speedup in the table above by about 10x to compare to the 4051.

    The graphics performance improvement comes from replacing floating point computations for graphics with integer math - and storing the pictures as 3 ASCII 7-bit characters per point instead of two 8-byte floating point coordinates - see the bit layout in the Tekniques article.

    I spent the rest of the weekend trying a couple of examples - and then experimenting with a 4051 FAST GRAPHICS tape that I was trying to recover the data files.

    I was able to read all the data files from the tape ok - except for R2-D2 which I messed up

    The new ROM cartridge commands make it very easy to display the picture files in only a few commands:

    DIM F$(8000)
    FIND file
    CALL "IMAGES",F$ (read entire file into a string)
    F$=SEG(F$,1,LEN-1) (remove the trailing 'string' CR from the data before a draw command)
    CALL "RDRAW",F$,1,0,0 (draw the entire picture)

    Here are some screenshots - and links to the high-resolution versions of the screenshots from the FAST GRAPHICS demo tape:


    IMG_7118.jpg IMG_7117.jpg IMG_7116.jpg IMG_7115.jpg IMG_7119.jpg IMG_7120.jpg IMG_7121.jpg

    Great stuff from 70's vector graphics computer technology.

    My 4054A has 4096 x 3072 addressable vector graphics resolution!

    Monty
    Last edited by nikola-wan; July 23rd, 2018 at 10:59 AM.

  2. #2

    Default 4052R12 Command List

    The Tektronix article in the first post also had an article on two 4050A series commands that "Aid Program Development"

    The two new commands are:
    CALL "VLIST" and
    CALL "CLIST"

    and yes - both commands included control characters in the names.

    The VLIST command is pretty helpful as it lists all the current variables with their values, and DIM and USED size for strings and numeric arrays.

    The CLIST command lists all the CALLs in the BASIC ROM and all Option ROMs that are plugged in.

    The 4052R12 command list is:

    DASHED DOTTED RUBBER VERTEX
    ACROSS RCROSS GCROSS JCROSS
    ADRAW RDRAW GDRAW JDRAW
    ADOTS RDOTS GDOTS JDOTS
    APRINT RPRINT GPRINT JPRINT
    AINPUT RINPUT GINPUT JINPUT
    IMAGES CHANGE DEFINE POINTS TOGGLE
    AMOVE RMOVE GMOVE JMOVE
    ASCALE RSCALE GSCALE JSCALE
    ASHEAR RSHEAR GSHEAR JSHEAR
    ATAPER RTAPER GTAPER JTAPER
    AROTAT RROTAT GROTAT JROTAT
    PRINTS INPUTS STRING
    SOUNDS MUSIC R12LVL

    The R12LVL command reports the version of my ROM as 1.04

    The 'A' 'R' 'G' 'J' prefixes for several commands refer to Absolute or Relative to the current cursor position, or Graphic cursor position or Joystick cursor position.

    Images can be drawn, offset, scaled, rotated, sheared or tapered with a single command.

    In addition - up to 12 vectors can be displayed on 4051 or 4052 in refresh mode. The 4054/4054A can display up to 30 fast vectors in refresh mode.

    A refresh CROSS can be moved by the 4054 x/y thumbwheels next to the keyboard or the optional joystick - and can help with editing images by providing the GDU coordinates of the CROSS location.

    SOUNDS translate the ASCII character values into PWM audio frequencies on the built in speaker for a range of frequencies from 100Hz to 13KHz.

    MUSIC translates the ASCII character values into tempo, octave, notes and time value. Ten different tempos are available and pitch range of eight octaves with duration of 1/64 to a whole note.

    Monty
    Last edited by nikola-wan; July 23rd, 2018 at 02:40 PM. Reason: correct typos in command list

  3. #3
    Join Date
    Aug 2009
    Location
    Oslo, Norway
    Posts
    1,189
    Blog Entries
    3

    Default

    Very interesting, and nice pictures! Thanks for sharing with the rest of us.
    Torfinn

  4. #4

    Default

    Very nice indeed!

    Thanks a lot for the nice pictures. Really need to get my 4051 working. This might have been the trigger to restart that project!

  5. #5

    Default

    Quote Originally Posted by tingo View Post
    Very interesting, and nice pictures! Thanks for sharing with the rest of us.
    I'm happy to share the fond memories I have from using the Tektronix 4051 in the 1970's.

    Finding this 4051 'only' Graphics Demo tape#1 (I don't see a tape#2) has been a great find from the tapes I received from Al Kossow - thanks Al!!

    Monty

  6. #6

    Default I recovered the Tek 4051 demo tape R2-D2 vector graphics file!!

    Finally - the R2-D2 fast graphics demo picture was the first file I tried to recover on this tape after seeing it in the file 1 menu.

    Of course - since I couldn't run the file 1 program - I tried to transfer the file to my PC - and failed miserably.
    I thought I couldn't read the file because it was a bad tape copy and dug a big hole for myself by damaging the file header

    So I tried editing the partially recovered file - that was still corrupt - and gave up on that yesterday.

    I think I found the photo that the Tektronix engineers used to digitize R2-D2 from the April 1978 "Interface Age" article on the original Star Wars movie:

    Modern Mechanics - Apr 78 star_wars_0briteSmall.jpg

    Since I am an R2 builder myself - I immediately noticed in the partially recovered image that this was a "Kenny" unit - meaning two-leg version operated by Kenny Baker.
    You can see the duct hoses from the bottom of the body into both foot shells in the photo.

    So using the photo as reference - I began filling out the missing pieces of the R2 image from my screenshot using Paint.

    Here is my 'edited' R2-D2 bitmap:

    r2wb-1.jpg



    Then I used Inkscape and a centerline plugin to trace the bitmap back into vectors.

    Here is the resulting screenshot of the SVG file I created:


    r2wb-1web.jpg

    I cut out the vectors from the SVG file and serial transferred the vectors to a 4050 tape file

    Then I wrote a Tek BASIC program on my 4054A to read the SVG vectors into a string, then modify the SVG scale factor and write Tek GDU vectors to another tape file.

    Even my almost 64KB RAM in the 4054 wasn't enough memory to do the entire job - so then I cleared RAM, reinitialized a numeric array for the 1582 vectors and a string array to hold the 'fast graphics' three characters per vector data.

    a couple of Enhancement Graphics ROM Pack commands later - here was R2-D2 on my 4054A!

    IMG_7133.jpg

    Drat - R2-D2 was upside down

    I tried a couple of different Enhancement Graphics ROM PACK commands like RROTAT and AROTAT - but didn't get them to work. I need the instruction manual

    So - edited my BASIC program to subtract the Y value from 100 - which resulted in this image:

    IMG_7135.jpg

    PERFECT!!

    I have now saved the 'good' vector files as fast graphics - so it loads and displays in no time at all!

    I also have created an R2-D2 basic program and will upload that to my Tektronix 4050 github site after I finish this post.

    In the meantime - I experimented with the Graphics ROM SCALE command and got this picture of an R2-D2 with a little R2-D2 beside him.

    IMG_7136.jpg

    That's all for now.

    Monty

  7. #7

    Default 4050 Series R12 Graphics Enhancement ROM Pack instruction manual

    Thanks to Bob Rosenbloom - DVQ.com, he ocr scanned his manual which was in the original binder with a demo tape that he promises to read when he fixes his 4052!

    Here is a link to download the manual:
    070-4629-00 4050 Series R12 Graphics Enhancement ROM Pack manual

    The manual also includes the service info for both 4051 and 4052/4054 R12 ROM Packs.

    Here is the Introduction Page - discussing the 64 new commands including not only graphics, but also MUSIC and SOUNDS!

    4050 R12 Introduction page

    4050R12 Introduction.jpg

    The scan of the 241 page manual is missing two pages - they weren't in the binder, but you can figure out the details for those CALLs from related CALLs and the complete list of parameters for all the CALLs in the Appendix.

    The manual includes tutorial examples and example code for each of the ROM CALLs.

    Here is the high-resolution version of the tutorial example for the RSHEAR command:

    4050 R12 RSHEAR command example and screenshot

    4050R12 Relative Shear example.jpg

    The tutorial examples also illustrated refresh graphics images in addition to stored images - just put a minus sign in front of the first numeric parameter - which indicates how many times to draw the image.

    I created a short program on my 4054A with R12 ROM Pack to run each of the tutorial examples - plus MUSIC and SOUNDS example programs.
    I also found the Clay Archer web archive of his 4051 programs CALL "EXEC" MUSIC programs ran with the R12 ROM Pack on my 4054A.

    Their must be some slight difference in the format of the two music "string" commands, but I hope that Bob's demo tape will include the updated songs.

    I also hope Bob's demo tape includes more graphics demo files

    Monty
    Last edited by nikola-wan; August 5th, 2018 at 04:53 AM.

  8. #8

    Default 4050R12 Graphics Enhancement Demo Tape

    I got the R12 Graphics Enhancement ROM Pack Demo Tape from Bob Rosenbloom yesterday and quickly transferred all the files to my PC and made a tape copy to run

    Actually the transfer was a couple of hours of work. I first used the General Utility ASCII Tape Duplicator program - but it barfed on the huge (almost 30K byte image string files).

    I also tried my modified 4924 Tape duplicator program that writes the output to the serial port. That one transferred all the files and added the header string to the end of each file (on a 4924 tape drive it would have rewound to the start of the file and updated the header as the last step in a file copy).

    I wanted to also make a full tape copy - so I took one of my NOS 3M 6250 tapes and tested that I could MARK, SAVE and RESTORE files, then began a manual process to MARK files identical in length to the demo (based on the TLIST that I dumped to the PC), then starting at the first file on original and dupe - if PROGRAM file, simply OLD into memory from original tape and find that file number and SAVE to the dupe tape (none of the demo files were SECRET).

    For the files MARKED ASCII DATA - I used my 4052R12 CALL "IMAGES" command on A$ after dimensioning A$(30000), followed by finding that file number on the dupe tape, then PRINT@40:A$;
    The semicolon is very important as all the graphics data files are read until the ASCII 255 EOT mark. If you don't use the semicolon in the PRINT statement, the string will have an additional CR and any attempt to display the graphics string fails until you remove the trailing CR.

    Of course if you encounter another PROGRAM file to copy - remember to re-dimension A$ before trying to copy the next DATA file - or the file will only have a 72 character string

    I then ran my duplicate of the R12 demo tape - worked great!

    Here are some screenshots - I'll be posting the files to my github program archive this weekend - but you must have the 4051R12 or 4052R12 Graphics Enhancement ROM to run the demo.

    4050R12 Main Menu - high resolution
    Picture Menu-hires
    Wheel Section
    Solar-System-hires

    IMG_7199.jpg IMG_7201.jpg IMG_7204.jpg SolarSystem1.jpg

    Most of the drawings were complete in a couple of seconds.
    The Solar-System file was an animation with simultaneous planet positions and incoming asteroid and comet.

    Here is a link to my video of the demo of the solar system. This demo was a 27K byte file with fast graphics 3 character vectors - so about 9000 vectors.

    Pretty cool - Solar System simulation video

    Monty
    Last edited by nikola-wan; Yesterday at 10:31 AM. Reason: added solar system video link

  9. #9

    Default

    I don't know if anyone reading this has a working 4050 computer with the R12 Graphics Enhancement ROM.

    I converted a couple of the smaller Graphics Enhancement Demo graphics files into a BASIC program that will run on any 4050 computer or the 4051 web browser emulator.

    I have posted those files in a separate folder on my github archive site for 4050 programs.

    Here are the screen shots:

    4051 Self Portrait
    World Map
    Wheel Section

    4051SelfPortrait.jpg WorldMap.jpg WheelSection.jpg

  10. #10
    Join Date
    Sep 2008
    Location
    Walled Lake, MI
    Posts
    3,399
    Blog Entries
    6

    Default

    Quote Originally Posted by nikola-wan View Post
    I successfully made my 4052R12 Graphics Enhancement ROM Pack this weekend:
    • Downloaded three EPROM files from Bitsavers (4052R12_Graphics_Enhancement_ROM_Pack)
    • Erased three 2732A EPROMs (bought UV erase lamp on Amazon)
    • Programmed and verified the EPROMs (used my Data I/O 29A with Unipak)
    • Installed the EPROMs in a 16KB Tek ROM board


    I found a couple of Tekniques articles on this ROM Pack with examples:
    Tektronix Tekniques_Vol_7_No_03.pdf

    This ROM Pack gives the Tektronix 4050 Series several features:
    • Significant performance boost on graphics - see table below
    • Plays sound files on 4050 internal speaker
    • Plays music files on internal speaker


    Increased Drawing Rate
    (4051R12/4052R12 vs.
    BASIC MOVE/DRAW)
    4051 4052/4052A 4054/4054A
    Vectors 27X 6X 18X
    Dots 138X 39X 13X

    I can vouch for the huge graphics performance boost on my 4054A! Since the 4052/4054 are around 10x faster than the 4051 - multiply the 4052 and 4054 speedup in the table above by about 10x to compare to the 4051.

    The graphics performance improvement comes from replacing floating point computations for graphics with integer math - and storing the pictures as 3 ASCII 7-bit characters per point instead of two 8-byte floating point coordinates - see the bit layout in the Tekniques article.

    I spent the rest of the weekend trying a couple of examples - and then experimenting with a 4051 FAST GRAPHICS tape that I was trying to recover the data files.

    I was able to read all the data files from the tape ok - except for R2-D2 which I messed up

    The new ROM cartridge commands make it very easy to display the picture files in only a few commands:

    DIM F$(8000)
    FIND file
    CALL "IMAGES",F$ (read entire file into a string)
    F$=SEG(F$,1,LEN-1) (remove the trailing 'string' CR from the data before a draw command)
    CALL "RDRAW",F$,1,0,0 (draw the entire picture)

    Here are some screenshots - and links to the high-resolution versions of the screenshots from the FAST GRAPHICS demo tape:


    IMG_7118.jpg IMG_7117.jpg IMG_7116.jpg IMG_7115.jpg IMG_7119.jpg IMG_7120.jpg IMG_7121.jpg

    Great stuff from 70's vector graphics computer technology.

    My 4054A has 4096 x 3072 addressable vector graphics resolution!

    Monty
    Hey Monty,

    Could the 'Wiz' have skated all the way over from the Tektronix service manual page edge? I haven't seen that guy since the 70's. Good work and thanks for a 'blast from the past'!

    Tom

    P.S. Kinda reminds of back in the day when all we had to do late at night was generate Snoopy and Marilyn Monroe calendars with the Varian 620i.

Bookmarks

Posting Permissions

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