Image Map Image Map
Page 8 of 8 FirstFirst ... 45678
Results 71 to 79 of 79

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

  1. #71

    Default

    Quote Originally Posted by pgru2 View Post
    BTW: - about stretched tape. I don't known if it is possible or how much it cost but some companies on the market, write on their sites that they can recover from damaged tape. E.g. https://datatechlab.com/data-recover...ry-conversion/
    pgru2,

    Thanks for the link.

    In the case of the NAVY DEMO tape - I don't believe it is worth trying to recover the 40 year old simulator files.

    At this point there are very few folks around the globe that still have working Tektronix 4050 computers - I would say less than a dozen

    Monty

  2. #72

    Default Lunar Lander for Tektronix 4051 4052 and 4054 computers

    I had recovered a Lunar Lander program from a Tektronix tape, but it was designed for the 4051 computer in 1976 and ran too fast to play on my 4052 and 4054A computers.

    The program has three difficulty levels: Beginner, Advanced, and Expert
    and two different LANDERS: 3 Main Engines or 1 Main Engine and four attitude jets for rotation
    There is also a training screen with the LANDER you selected to become familiar with the engines or attitude jets.

    You must use four of the ten the User Definable function keys to run this program - as these keys cause interrupts (GOSUB) to trigger up to three lines of code and then a RETURN

    • 1 - Increase main engine thrust
      2 - Decrease main engine thrust

      6 - Increase thrust on left or decrease right thrust
      7 - Increase thrust on right or decrease left thrust



    So I updated the program with a FOR/NEXT delay loop of 1264, selected to slow it down to similar speed as running on the 4051 emulator - about 1 second per lander position update.

    I also added an Engine Status graphic with refreshed text for the thrust of the left thruster, right thruster and main engine - to make it easier to control by a beginner like me

    This program makes extensive use of array drawing with the PRINT @32,20: Z4 where Z4 is dimensioned as an 8 by 2 array of 8 vectors to fast draw the current orientation of the lander.

    There are very few comments - so my first modification was to create the static Engine STATUS graphic from the main drawing code in the program.

    This also was where I added the special refresh print statements to temporarily display the engine thrust next to that engine on the Engine STATUS graphic.

    Since the Tektronix 4050 computers have a storage tube display - the standard PRINT and DRAW leave the characters or lines on the screen until it is erased with the PAGE key.
    The PRINT @32,24 command will print a single text character in refresh mode. My modification prints the value of all three thrusters after every LANDER update.

    With this helper graphic and practice, I am now able to land successfully on my 4052 and the emulator, as in the 405x web emulator screenshot below - but not very often And this is in beginner mode:



    I've posted LANDER4050 in my github repository at:

    github.com/mmcgraw74/Tektronix-4051-4052-4054-Program-Files/Games/LANDER4050.txt

  3. #73

    Default

    Here is a photo from my 4052 with a successful landing - you only have a couple of seconds between end of one round and automatic start of the next round:


  4. #74

    Default

    Quote Originally Posted by nikola-wan View Post
    Nine Tektronix 4052 ROM Cartridge binaries and photos posted on my github archive in a new 4052_ROM_Pack_Firmware folder:

    https://github.com/mmcgraw74/Tektron..._Pack_Firmware

    • 4050E01 ROM Expander (Cartridge photos only - uses BASIC ROM firmware)
    • 4052 File Manager (-00 firmware and docs)
    • 4052 File Manager (-01 firmware and docs - this is the one I am using with my 4907)
    • 4052 Advanced File Manager (requires Tektronix 4909 Hard Disk system which I don't have)
    • 4052 Character and Symbol - 4052R11
    • 4052 Editor
    • 4052 Graphics Enhancement - 4052R12 (includes firmware link to bitsavers, doc, and programs - fast graphics plus music!)
    • 4052 GPIB Enhancement - 4052R14 (4052/4054 only)
    • 4052A GPIB Enhancement - 4052R14-1A (4052A/4054A only)
    • 4052 RS-232 Printer Interface - 4052F10

    I have scanned my Tektronix 070-2908-00 4050 Series Option 10 RS-232 Printer Interface 4051F10 and 4052F10 Instruction Manual and uploaded it to my github repository in the folder with the ROMs for this card:

    4051_4052_RS-232_Printer_Interface_Instruction_Manual.pdf

  5. #75

    Default Lunar Lander for Tektronix 4051 4052 and 4054 computers

    Hi Monty,

    many thanks for uploading all these goodies. Having painstakingly restored my 4052 over what felt like aeons, I'm only now actually _using_ it and uploading some of your tapedumps via the Option 1 serial comms interface. Having mucked about mostly with the hardware, I'm still very much a novice in handling the 4052, and it admittedly feels awkward (for instance, I still don't "get" the line editing, if there even is one). RTFM, I guess...

    I bashed together a *NIX script that delimits each BASIC line with the ROPEN/RCLOSE (DC2/DC4) ctrl character sequences expected by the comms interface's DTRECV routine, and I get stuff written to tape, although as DATA rather than PROG according to TLIST. Note that I have to remove any control characters in your tape dumps beforehand -- I use an sed script for that. I also upload with 4800 baud and wait ~0.1 sec between records to avoid buffer overruns on the 4052. Most of the uploads ran, though those for the 4051 failed as expected, particularly when CALL "EXEC" was involved.

    I tried your revised lunar lander last night, and was surprised to get an I/O ERROR on the READ statement in line 5965. As I understand, READ's input "device" defaults to the DATA statement (@34?), so I dunno what's going on there. Any ideas? I'm using the v5.1 firmware, btw -- the only working chipset I have, infact.

    Thanks again for archiving this material for the very few working 4050's still around (as you surmised, about a dozen would be my guess too).

    --Roland
    Last edited by GanjaTron; June 8th, 2020 at 11:13 AM.
    "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]

  6. #76

    Default

    Quote Originally Posted by GanjaTron View Post
    Hi Monty,

    many thanks for uploading all these goodies. Having painstakingly restored my 4052 over what felt like aeons, I'm only now actually _using_ it and uploading some of your tapedumps via the Option 1 serial comms interface. Having mucked about mostly with the hardware, I'm still very much a novice in handling the 4052, and it admittedly feels awkward (for instance, I still don't "get" the line editing, if there even is one). RTFM, I guess...

    I bashed together a *NIX script that delimits each BASIC line with the ROPEN/RCLOSE (DC2/DC4) ctrl character sequences expected by the comms interface's DTRECV routine, and I get stuff written to tape, although as DATA rather than PROG according to TLIST. Note that I have to remove any control characters in your tape dumps beforehand -- I use an sed script for that. I also upload with 4800 baud and wait ~0.1 sec between records to avoid buffer overruns on the 4052. Most of the uploads ran, though those for the 4051 failed as expected, particularly when CALL "EXEC" was involved.

    I tried your revised lunar lander last night, and was surprised to get an I/O ERROR on the READ statement in line 5965. As I understand, READ's input "device" defaults to the DATA statement (@34?), so I dunno what's going on there. Any ideas? I'm using the v5.1 firmware, btw -- the only working chipset I have, infact.

    Thanks again for archiving this material for the very few working 4050's still around (as you surmised, about a dozen would be my guess too).

    --Roland
    Hi Roland!

    Please give the Realterm program a try. I set up Realterm for 4800 7E2 with Xon/Xoff protocol.

    On Dave Robert's new 4052 with v5.1 ROMs, I had no issue loading programs directly into memory with all the control characters. Then it is easy to save to tape.

    CALL "RATE",4800,2,0
    CALL "TSTRIN","","",""
    CALL "RSTRIN","","",""
    CALL "CMFLAG",3

    Then to load a program in memory from serial:

    OLD@40:

    SEND the file from Realterm, the Xon/Xoff works without any additional delays
    When Realterm is done with the SEND, press the BREAK key to stop the 4052 from looking for more data.

    Program is ready to run or SAVE to tape.

    I have uploaded a LANDER4050.BAS. Please try this one - when I save files without and extension or with TXT extension github adds linefeeds - which Tek BASIC (4051,4052 and 4054 all BARF).
    https://github.com/mmcgraw74/Tek405x...LANDER4050.BAS


    And try to load it with my Realterm instructions above.

    Monty

  7. #77

    Default

    Quote Originally Posted by nikola-wan View Post
    Hi Roland!

    Please give the Realterm program a try. I set up Realterm for 4800 7E2 with Xon/Xoff protocol.

    On Dave Robert's new 4052 with v5.1 ROMs, I had no issue loading programs directly into memory with all the control characters. Then it is easy to save to tape.

    CALL "RATE",4800,2,0
    CALL "TSTRIN","","",""
    CALL "RSTRIN","","",""
    CALL "CMFLAG",3
    Hi Monty,

    thanks for the hints, I wasn't aware that you can just pass empty strings to TSTRIN and RSTRIN. And of course I wasn't aware of CMFLAG and the XON/OFF option, as this is indeed undocumented in the serial comms option manual.

    Btw, the lunar lander works if I don't run the training option (and yeah, it's pretty tough). I dunno why that READ statement fails on my 4052, as the code transferred ok.

    Best regards,

    --Roland
    "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]

  8. #78

    Default

    Roland,

    You found a bug in my LANDER4050.BAS!

    I ran that version in the 4051 web emulator - and see what the issue is.

    In this version I added four DATA statements in lines 221 to 224, which I use to determine the delay timing difference for 4051, 4052/4054, and 4052A/4054A.

    This messed up the RESTORE statement in link 5945 in the original program - which causes the READ to fail in line 5965 due to a variable mismatch (string verses number).

    The fix is to edit line 5945 to point the RESTORE to line 5955:

    5945 RESTORE 5955

    Since I wrote many programs on the 4051 in the late 1970's - I'm used to quick editing with the Tektronix editing keys at the top of the keyboard (of real 4051/4052/4054, and the 4051 emulator) special keys marked with quotes, don't type the quotes. Example: "RECALL LINE" is an edit key:

    5945 "RECALL LINE" "SPACE" 5955 "ENTER"

    adds 5955 to the end of line 5945

    then run the program again, and the training screen shows two lunar modules correctly.

    I checked my original Data Communication Interface operators manual and find it is newer than the one posted on bitsavers and includes new features in the 4052/4054 and 4052A/4054A and is titled "4050 Series Data Communication Interface" instead of "4051 Option 1 Data Communication Interface".

    the new version number is -02, dated October 1982.

    I guess I need to scan and post it.

    I scanned the page on CMFLAG



    Since this CALL works on my 4052 with 5.1 firmware, Dave's 4052, and yours - I think this call was added to v5.1 for all 4052 and 4054 users, or it would have failed. I think v5.1 firmware was released after 1982, the manual may have been updated later, I don't know.

    Glad you are now running the LANDER4050.BAS program! Otherwise, the original LANDER program would run to fast for you to react

    Monty
    Last edited by nikola-wan; June 26th, 2020 at 06:10 AM.

  9. #79

    Default

    I just corrected the error and posted LANDER4050.BAS on my repository:

    https://github.com/mmcgraw74/Tektron...LANDER4050.BAS

    I need to update the main README file to show the simpler way to transfer programs if you have a 4052 or 4054 with V5.1 firmware - use the CMFLAG command and faster serial speed.

    CALL "RATE",4800,2,0
    CALL "TSTRIN","","",""
    CALL "RSTRIN","","",""
    CALL "CMFLAG",3

    Then to load a program in memory from serial:

    OLD@40:

    SEND the file from Realterm, the Xon/Xoff works without any additional delays
    When Realterm is done with the SEND, press the BREAK key to stop the 4052 from looking for more data.

    Program is ready to run or SAVE to tape.



    Monty

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
  •