Image Map Image Map
Page 3 of 4 FirstFirst 1234 LastLast
Results 21 to 30 of 32

Thread: Tektronix 4052/54 diagnostic ROM pack remade.

  1. #21

    Default

    I have figured out most of the address ranges used by the 4052/4054 Tektronix Diagnostic ROM pack to calculate the ROM CRC's to match the Tektronix ROM CRC list for these computers.

    The Diagnostic ROM pack instructions Appendix page B-2 has the BASIC CALL "CRC" parameter format:

    CALL "CRC",A$

    where A$ = xxxxyyyyzzttrrrr

    xxxx = Start address in hex
    yyyy = End address in hex (actually end address+1)

    zz = ROM space select
    00 = System ROM (B space)
    01 = Constant ROM (A space)

    tt = Bank Switch information
    00 = Internal ROM space
    20 = Slot 41 (left slot)
    28 = Slot 51 (right slot on two slot backpack)
    80 = Slot 61 (slot 3 on four slot backpack)
    08 = Slot 71 (slot 4 on four slot backpack)

    rrrr = return value for CRC in hex

    One example is given:
    for a ROM from 8000 to BFFF set xxxx to 8000 and yyyy to C000

    The address ranges for each ROM on the 4052 or 4054 MAS board can be found in the schematics, but when their addresses are used - I couldn't get the CRC calculation to match the diagnostic ROM pack output, which does match the Tektronix 4052/4054 CRC list that Jos provides with the Diagnostic ROM Pack.

    I found the address decoder ring in the Tektronix factory "CYCLE" program that I posted last year.

    The CYCLE program tested the 4052/4054 or 4052A or 4054A ROM CRC's but didn't use the diagnostic ROM pack - they must have had a different ROM pack with a CALL "MEMTST".

    Here is a snippet of the CYCLE program that provided me the 'Rosetta Stone' decoder for the CRC:

    Code:
    2930 REM ***4052/54 V4.4 CRCS***
    2940 RESTORE 2950
    2950 DATA "C N 4601 4801 5440"
    2960 DATA "C N 4600 4800 B0DB"
    2970 DATA "C N 4401 4601 A7E3"
    2980 DATA "C N 4400 4600 AEED"
    2990 DATA "C N C001 FF01 8AF0"
    3000 DATA "C N C000 FF00 3BC5"
    3010 DATA "C N 8001 C001 3FE5"
    3020 DATA "C N 8000 C000 7403"
    3030 DATA "C N 4801 8001 95BC"
    3040 DATA "C N 4800 8000 00F1"
    3050 DATA "C N 4001 4401 7132"
    3060 DATA "C N 4000 4400 3EAB"
    3070 DATA "C N E001 FF01 1F38"
    3080 DATA "C N E000 FF00 5B67"
    3090 DATA "C O 0000 2000 2435"
    3100 DATA "C O 0000 2000 844A"
    3110 DATA "C O 2000 4000 21D8"
    3120 DATA "END"
    Here is part of the Tektronix CRC table - version 4.4 is the next to last column:



    Some of the third hex values in each row match the CRC table for v4.4, although the order of the entries is a little scrambled.

    The first two hex values look like start and end addresses.

    Remembering that the Constant ROM is in the 64KB data space, I wrote the following program to use the Diagnostic ROM Pack CALL "CRC" to get each CRC value, and I put the tests in the same order as the Tektronix CRC table:

    Code:
    100 PRINT "***Check 4052/54 V5.1 CRCS***"
    110 RESTORE 
    120 DATA "E000FF0001000000","2057","U810 constant ROM"
    130 DATA "4000440000000000","0066","U820A patch ROM"
    140 DATA "4800800000000000","494F","U820B"
    150 DATA "8000C00000000000","8C30","U825"
    160 REM DATA "C000FF010000000","6389","U835"
    170 DATA "4001440100000000","46C9","U870A ODD FOR U820A"
    180 DATA "4801800100000000","67B6","U870B ODD FOR U820B"
    190 DATA "8001C00100000000","AF97","U880 ODD FOR U825"
    200 REM DATA "C000FF0100000000","38E2","U885 ODD FOR U835"
    210 DATA "E001FF0101000000","93A4","U893 ODD constant ROM"
    220 DATA "4400460000000000","8D82","U805A/U820C"
    230 DATA "4600480000000000","D064","U805B/U820D"
    240 DATA "4401460100000000","C27E","U897A/U870C"
    245 DATA "4601480100000000","71C4","U897B/U870D"
    250 REM U897B
    260 DATA "Z","Z","Z"
    265 PRINT "CRC     ROM"
    266 PRINT "---     ---"
    270 READ A$,C$,L$
    280 IF A$<>"Z" THEN 310
    290 PRINT "Done!"
    300 END 
    310 CALL "CRC",A$
    320 B$=SEG(A$,13,4)
    330 IF B$=C$ THEN 360
    340 PRINT B$;"   ";L$;"   ";"CRC ERROR, SHOULD BE ";C$
    350 GO TO 270
    360 PRINT B$;"   ";L$
    370 GO TO 270
    The program above has CRC values for the v5.1 ROMs, and here is a screenshot of my 4052 with v5.1 ROMs running the CRC Dump program:



    The values check!!

    I have not figured out the correct ranges for everything in the Tektronix CRC table for v5.1, the two commented lines in the program hang the computer if the REM is removed.

    Some of the address ranges are larger than a single pair of ROMs, and some ranges cause the algorithm to calculate the CRC of the ODD ROM of a pair - since the 4052/4054 has sixteen bit wide system ROMs.

    The Patch ROMs used in the 4052/4054 (but not the A-series) were small and the CYCLE program calculated CRCs for four sections of these Patch ROMs.

    I guess the ROM designers figured if the sixteen bit checksum failed - they could check the ODD ROM checksum to see if it was the ODD ROM, if not the EVEN ROM was bad.
    Last edited by nikola-wan; May 16th, 2020 at 08:14 PM.

  2. #22

    Default

    Found the issue with the two CRC tests that failed - TYPO on my part.

    Here were the two lines that would lock up the computer

    Code:
    160 REM DATA "C000FF010000000","6389","U835"
    200 REM DATA "C000FF0100000000","38E2","U885 ODD FOR U835"
    The typo is the FF01, which would have to be used with C001 if you were reading an ODD ROM.
    Another typo is line 160 does not have enough '0' - it is one short.

    But when I used C000FF0100000000 the checksum was not correct.

    I was suspicious of the end address as the C000 ROM ends at FFFF, but this would require the end address be bigger than 16-bits?

    No, the CRC code in the Diagnostic ROM will accept 0000 as the end address for the C000 ROM.
    And 0001 for the end address of the ODD ROM starting at C001.

    Here is the code that creates and matches all the ROM Checksums for the v5.1 ROMs in the Tektronix table:

    Code:
    100 PRINT "*** Check 4052/54 V5.1 CRCS ***"
    110 RESTORE 
    120 DATA "E000FF0001000000","2057","U810  Constant ROM    "
    130 DATA "4000440000000000","0066","U820A Patch ROM       "
    140 DATA "4800800000000000","494F","U820B                 "
    150 DATA "8000C00000000000","8C30","U825                  "
    160 DATA "C000000000000000","6389","U835                  "
    170 DATA "4001440100000000","46C9","U870A ODD for U820A   "
    180 DATA "4801800100000000","67B6","U870B ODD for U820B   "
    190 DATA "8001C00100000000","AF97","U880  ODD for U825    "
    200 DATA "C001000100000000","38E2","U885  ODD for U835    "
    210 DATA "E001FF0101000000","93A4","U893  ODD Constant ROM"
    220 DATA "4400460000000000","8D82","U805A/U820C           "
    230 DATA "4600480000000000","D064","U805B/U820D           "
    240 DATA "4401460100000000","C27E","U897A/U870C           "
    245 DATA "4601480100000000","71C4","U897B/U870D"
    250 REM U897B
    260 DATA "Z","Z","Z"
    265 PRINT "CRC    ROM"
    266 PRINT "----   ----"
    270 READ A$,C$,L$
    280 IF A$<>"Z" THEN 310
    290 PRINT "Done!"
    300 END 
    310 CALL "CRC",A$
    320 B$=SEG(A$,13,4)
    330 IF B$=C$ THEN 360
    340 PRINT B$;"   ";L$;"   ";"	*** CRC ERROR, SHOULD BE ";C$
    350 GO TO 270
    360 PRINT B$;"   ";L$
    370 GO TO 270
    and the screenshot running this code:


  3. #23

    Default

    How nice,

    I've never thought about these Tektronix machines. It seems there is some sort of graphics
    Tektronix computer waiting for me. Really wonder which model it is. In the past I have seen it
    for a few seconds. He told me back then that he wanted to scrap it. Since I needed some Tek
    parts I thought lets call him. The machine is still there and I can have it. When I do a search I
    think it should be a 4051 or 4052. We will see... I might keep it if it is a fun machine.

    I never thought that anything Tek is particular rare... I mean, there are Tek scopes everywhere.
    Nevertheless finding a decent Tek XY monitor seems to be harder these days. In the past here were
    piles of these things on radio flee markets. But nobody wanted them... And I didn't care too...
    But recently bought a Tek 611 and a Tek 605 XY monitor for my PDP8 machines. (Play Spacewar on them )

    Since there were no pictures of the innards of both screens I contacted Kurt from Tek WiKi.
    We talked about DEC and Tek working together and using each others electronics.
    Then he sent me this link with pictures.

    S-3275.jpg

    Somehow I got intrigued by those Tek graphic terminals on DEC computers... And to be honest I hope
    to find a 4010 of 4012 once. How nice would that be! But I have been told that you can't really use
    them as a normal terminal. The usability probably depends on the software or OS. Because you can't do things
    like backspace or scrolling. Really a shame that you can't choose between storage and a normal display mode.
    But I understand that they used an expensive storage CRT to save money on even more expensive RAM.

    But I was wondering, if that machine is an 4051 of 4052, can I use it to emulate an 4010 or 4012?
    Or do you need an option for that? And is so, is that package usable for that? I would love to experience
    the behaviour of a graphic terminal on a PDP...

    Regards, Roland
    WTB: Case for Altair 8800 ...... Rolands Github projects

  4. #24

    Default

    Quote Originally Posted by Roland Huisman View Post
    How nice,

    Somehow I got intrigued by those Tek graphic terminals on DEC computers... And to be honest I hope
    to find a 4010 of 4012 once. How nice would that be! But I have been told that you can't really use
    them as a normal terminal. The usability probably depends on the software or OS. Because you can't do things
    like backspace or scrolling. Really a shame that you can't choose between storage and a normal display mode.
    But I understand that they used an expensive storage CRT to save money on even more expensive RAM.

    But I was wondering, if that machine is an 4051 of 4052, can I use it to emulate an 4010 or 4012?
    Or do you need an option for that? And is so, is that package usable for that? I would love to experience
    the behaviour of a graphic terminal on a PDP...

    Regards, Roland
    Roland,

    You certainly can use the 4051 or 4052 as a terminal - you just need to check that the "backpack" for ROMs in the back of the computer has a 25-pin RS-232 connector.

    That means you will also have Option 1 ROMs for the terminal emulator program - that emulated the 4012 series terminals - check out this manual on bitsavers.org - page 44
    http://bitsavers.trailing-edge.com/p...Oper_Jan80.pdf

    If you can't find a 4051 or 4052 you can use your PC to emulate one as a terminal for your DEC:



    The emulator software and photo was here:
    https://github.com/rricharz/Tek4010

    If you do find a 4051 or 4052, I'll bet we can get it working if it needs repair

    Monty

  5. #25

    Default

    Hi Monty,

    I've picked up the the Tek yesterday. It is an 4052. And I got an 4010 also! I have been told that
    both are defective. So both are nice projects! There was an extra power supply with the 4010.
    And I got the 4010 together with a nice 1972 16 bit period correct computer too

    4052.jpg 4010.jpg

    Jos told me that my 4052 is not standard with that 4 slot unit on the back.
    WTB: Case for Altair 8800 ...... Rolands Github projects

  6. #26
    Join Date
    Jul 2012
    Location
    Switzerland
    Posts
    149

    Default

    Errr..it is standard, it is just that the 4 slot unit is rarer than the 2 slot & RS232 unit. They are exchangeable.

  7. #27

    Default

    Quote Originally Posted by Roland Huisman View Post
    Hi Monty,

    I've picked up the the Tek yesterday. It is an 4052. And I got an 4010 also! I have been told that
    both are defective. So both are nice projects! There was an extra power supply with the 4010.
    And I got the 4010 together with a nice 1972 16 bit period correct computer too

    4052.jpg 4010.jpg

    Jos told me that my 4052 is not standard with that 4 slot unit on the back.
    Roland,

    Welcome to the 4052 owners group!

    I would love to see a photo of the back of your 4052 - and any stickers - which show factory option codes.

    The 4-slot backpack can hold 4 ROM-packs, should have an option 1 RS-232 interface and 'may' have a memory expansion board.

    Monty

  8. #28

    Default

    Quote Originally Posted by Roland Huisman View Post
    Hi Monty,

    I've picked up the the Tek yesterday. It is an 4052. And I got an 4010 also! I have been told that
    both are defective. So both are nice projects! There was an extra power supply with the 4010.
    And I got the 4010 together with a nice 1972 16 bit period correct computer too

    4052.jpg 4010.jpg

    Jos told me that my 4052 is not standard with that 4 slot unit on the back.
    Wow - the 4052 and 4010 are in great mechanical condition, no missing keys.

    I was able to get Dave Robert's 4052 working in one day. I replaced a bridge rectifier on the power supply that was shorted and popped the main fuse.

    Monty

  9. #29

    Default

    Quote Originally Posted by jdreesen View Post
    Errr..it is standard, it is just that the 4 slot unit is rarer than the 2 slot & RS232 unit. They are exchangeable.
    Roland,

    I just noticed you have a 4-slot backplane in your 4052. You may have the only one of those!

    What were the option codes listed on the labels on the back of your 4052?

    Tektronix made an Expansion Memory module that fit inside the 4-slot backpack!

    Option 27 had 256KB of DRAM, Option 28 had 512KB of DRAM.

    See this article in Tekniques Vol 6 No 3 on bitsavers.org:


  10. #30
    Join Date
    Jul 2012
    Location
    Switzerland
    Posts
    149

    Default

    Did not know that this existed.....Very, very interesting, as this could be an easy way to store programs offline.
    Hopefully one of these has survived !

    Jos

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
  •