Teletype & Linux TL330 System     2012 - 2014    Pictures


TL330 System
User Guide

Model 33 Teletype

Teletype
Model 33 ASR
Data Terminal

March, 2014
  
PO Box 301, Pleasant Grove, UT 84062 USA
Tel 801 815 9265

Table of Contents

Conventions / Linux / Terminal / TTY-Link / Log In Out
  Conventions
  Linux
  Data Terminal
  TTY-Link
  Maintenance
  Additional Help
  Login
  Logout
Fun
  Factor
  Reverse
  Doctor
  Banner
  Cowsay and Cowthink
  Fortune
  Yes
Date Time / Calendar / Calc / Weather / News / Wiki
  Date & Time
  Calendar
  Calculator
  Weather & Forecast
  News
  Wiki
Files / Programming
  Files
  Editor
  Programming
Who / Chat
  Who Is On System
  Chat With Another System User
Email
  Email System Users
  Email Internet Users
  Managing Email Messages
Games
  Go Fish
  Monopoly
Appendix
  ASCII Chart

Conventions / Linux / Terminal / TTY-Link / Log In Out

The TL330 system is a home computing hardware and software setup, developed using a mixture of old and new computer technology.  Some of the computing technology is 40+ years old, while other parts are but a few years old.  It also showcases how computing of yesteryear was accomplished without a windows graphical interface, without a mouse, using simple, single character commands.  Many people think email, text messaging, or chat, is new, but this existed 40 years ago on Unix machines that talked over a world-wide network.

If what you are looking for is not in this document, contact the TL330 system administrator, at 801 815 9265 x608.

  
Conventions

Conventions used in this guide...

  
Linux

Linux.org

The TL330 system employs the Linux operating system, the same operating system used by millions of people, and at some of the largest companies in the world.  Linux was modeled after UNIX, which was originally developed in 1969 by a group of AT&T employees at Bell Labs.  All of Apple's computers today, have a core operating system based on FreeBSD, which is a flavor of UNIX, just as Linux is a flavor of UNIX.

This system uses the CentOS 6 version of Linux, which is an Enterprise-class Linux Distribution, derived from sources provided to the public by RedHat Inc, the largest distributor of Linux to the business world, and with revenues over $1 billion per year.

The TL330 system computer hardware consists of...

There are hundreds of commands, and 1000's of programs available for this system.  This guide only touches on a handful of Linux commands and programs that you can immediately start using.

This guide also limits its focus to Linux commands and programs that are suited for the Teletype Model 33 Data Terminals, which are used on this system as the communication device of choice.

  
Teletype Model 33 Data Terminal

Model 33 Teletype
Teletype Model 33 ASR

To connect with the TL330 system, a communication device is needed to enter commands and view the results.  The Teletype Model 33 Automatic Send and Receive (ASR) Data Terminal is ideal for this.  It is economical and simple to operate.  It comes in a Greige (greyish beige) color, with satin chrome feet attached to the pedestal.  Standard features include...

The Model 33 can transmit data manually by keyboard or by punched tape, and simultaneously can print local page copy for visual reference, with or without punching tape.  The 33 receives data as printed page copy, with or without punching tape.

Model 33 Data Card

The ^G bell feature rings a brass bell, that will resonate through the walls when attention is necessary.

When sending data to the Teletype, the end-of-line sequence should contain CR LF DEL to give the data terminal time to reposition the cylindrical type-wheel to the 1st column position.

Uppercase Lowercase Text

The Model 33 Teletype Data Terminal, can only print uppercase letters A-Z.  It can not print lowercase letters a-z.  When it receives a lowercase letter, it prints it as an uppercase letter.  The Teletype only transmits uppercase letters also, and does not have anyway to transmit a lowercase letter.

Linux on the other hand uses both uppercase and lowercase letters.  So, to get this all to work, a custom TTY-Link converter box was developed, to handle all the character conversions, and to enable the TTY user to enter any specific ASCII character when necessary.

The TTY-Link box is detailed in a following section.

Model 33 Tape Punch

Error Correction

Correcting paper tape couldn't be easier.  Two buttons do the job.  The backspace button is used to position the errored character under the punching head.  It backs tape up one character at a time.  When error is correctly positioned, the DELETE or RUBOUT key on the keyboard is used to delete it and all following characters.  The correct characters can then be punched.  When a tape reader senses delete characters, no printing or spacing occurs.  Page copy will be corrected with proper format.

Connections

The Teletype Model 33 Data Terminals are connect via a 4-wire cable to a Current Loop to RS232 converter made by Black Box. The Black Box CL050A is connected by a DP9 cable to the custom designed TTY-Link box.  This box then connects to a QuaTech DSC-100 dual serial port board using an 8-wire DP9 serial cable. The serial port board is plugged into the computer's PCI slot.  Communication parameters on the computer side are set using the STTY command.  Termcap / Terminfo files are used to set up the Teletype 33 characteristics for the system.

  
TTY-Link

TTY-Link Bridge

The TTY-Link is a custom piece of hardware, with only three copies known to exist in the world.  It sits in-line with a Teletype Data Terminal (Models 33 & 35) and an RS232C serial port on a host computer.  Teletype 33's and 35's run at 110 Baud, no parity, 8 data bits, and 2 stop bits.  The PC side can be set to run at 300, 1200, 4800 or 9600 Baud, no parity, 8 data bits, and 1 stop bit.  The TTY-Link device matches up the two different baud rates and stop bits. 

There are two RS-232C DB9 connectors, on the back identified as PC port and TTY port. The PC port Baud rate is set set via an internal 8 position DIP switch.  There is ASCII translation that takes place in both directions, to make up for missing characters that the Teletype can not print or type { | } ~ ` and _ characters, and to make the ASCII friendly for the host computer, i.e. convert Teletype's normal uppercase characters into lowercase characters, expand tabs, timed delays to allow for typing head to return, and automatic carriage return if line longer than the platen width, of 72 characters.

The TTY-Link uses an internal microcontroller, the ATmega328p processor, with 32K bytes ISP flash memory, 1024 bytes EEPROM, 2048 bytes static RAM

TTY Link LEDs

PC   RED    Sending characters to PC
PC   GRN    Receiving characters from PC
PWR  GRN    Power on
CTS  GRN    Indicates PC can send characters to TTY-Link (Clear To Send)
TTY  GRN    Receiving characters from TTY
TTY  RED    Sending characters To TTY

TTY Link Escape (ESC) Commands

There are a set of Escape (ESC) Commands that are processed by the TTY-Link device, when they are found in the TTY port's input stream, i.e. the user typed them.  These ESC commands extend the capability of the Terminals and provide a mechanism for setting up and using programmed function keys as shortcuts.  On the Teletype output stream, tabs are processed to the next 8th-character stop, when tabs dip switch is set.

TTY-Link Escape Command Processing...

Enter           Action
-------------   --------------------------------------------
ESC ?           Escape command help
ESC A-Z         Send uppercase letter to PC
ESC ESC A-Z     Send corresponding shortcut to PC
ESC ESC ESC     Send ESC to PC
ESC / 00-7F     Send 7-bit ASCII character 00-7F to PC
ESC :           Enter command mode

TTY Link Escape Mode

ESC commands send text to the PC, except for the ESC : command which enters the local TTY-Link Escape Command Mode, and the ESC ? command which prints out locally the ESC commands.  The Escape Command Mode enables the user to manage his/her shortcuts, using the following commands at the command mode : prompt...

TTY-Link Escape Mode Commands

P [A-Z]  Print all, or selected, shortcuts
S  A-Z   Set shortcut specified
C  A-Z   Clear shortcut specified
I        Internal stats, dip switch settings, etc.
V        Version
H        Help
E or Q   Exit or Quit
D        Debug command

The shortcuts are stored in the ATmega328P's EPROM memory, and are retained after power down.

TTY Link Internal DIP Switch Settings

These features you can set with the 8-position DIP switch inside the TTY-Link case...

SW1    Escape (ESC) commands enabled
SW2    Wrap long lines headed to TTY (at 72 characters)
SW3    Tabs (every 8 chars) enabled for TTY out
SW4    PC Baud rate - 2 bits...
SW5        (00=300 01=1200 10=2400 11=9600)
SW6    PC to TTY, convert lowercase L to 1
SW7    (not used)
SW8    Reset EEPROM to Factory Settings

  
Cabling

  
Maintenance

A Model 33 Teletype has 500+ oil and grease points, and thus needs to be periodically oiled to maintain smooth operation.  If you notice the keys are sluggish, or you hear unusual noises, your Teletype may need a service oiling, contact the TL330 system administrator by telephone at 801 815 9265 x608.

  
Additional Help

For all the commands described in this system user guide, you can get additional help from the 'man page' for each command.  A 'man page' is a manual displayed as one page.  These are available by typing in MAN followed by the command name, at the system prompt.  For example, if you want help on the DATE command, you would type...

$ MAN DATE
NAME
      DATE - PRINT OR SET THE SYSTEM DATE AND TIME

SYNOPSIS
      DATE [OPTION]... [+FORMAT]
      DATE [-U|--UTC|--UNIVERSAL] [MMDDHHMM[[CC]YY][.SS]]

DESCRIPTION
      DISPLAY THE CURRENT TIME IN THE GIVEN FORMAT, OR SET THE SYSTEM 
      DATE.

      -D, --DATE=STRING
             DISPLAY TIME DESCRIBED BY STRING, NOT ‘NOW’

      -F, --FILE=DATEFILE
             LIKE --DATE ONCE FOR^C

  
Login

Power Up and Login sequence for Model 33 Teletype Data Terminal with TL330 system.  Steps assume equipment is connected properly and working.

  1. Turn on equipment power strip.
  2. Wait for TTY-Link power up LED flashes and Red TTY
    transmit LED to go out.
  3. Turn on Teletype by turning right front knob
    to LINE position.
  4. Depress ESC key (escape) on Teletype keyboard.
  5. Depress RET key (return) on Teletype keyboard.  Wait
    a couple seconds, then a second time if no response.
  6. System will send to Teletype the LOGIN: prompt.
  7. Enter your account name.
  8. Enter your account password.
Line Off Local Knob

You should now be logged into your account, and at the system $ prompt.  If you are not, contact the TL330 sys admin (system administrator) by calling 801 815 9265.

WELCOME

SUN NOV 4 2022 11:17:18

LOGIN: USER1
PASSWORD: 

THERE IS MORE TO LIFE THAN INCREASING ITS SPEED.
             -- MAHATMA GANDI

$

To change your password type in PASSWD at the system prompt.

  
Logout

Logout sequence for Model 33 Teletype Data Terminal with TL330 System.  Steps assume equipment is connected properly and working.

  1. Enter EXIT at the system prompt.
  2. Power down Teletype by turning the right front knob to the center OFF position.
  3. Turn off equipment power strip.
$ EXIT
LOGOUT

For Fun

 
Here are commands you can use for fun.  They range from calculating the prime factors of a number, to the famous cowsay program.

  
Factor

Type in a number and get it's factors using the FACTOR command...

$ FACTOR 27
27: 3 3 3

$ FACTOR 3455
3455: 5 691

$ FACTOR 14322
14322: 2 3 7 11 31

Let's see your SmartPhone do that!!!

  
Reverse

Ever wondered what something typed backwards was?  Here's a solution to that need...

$ REV
TIME TO GO TO MARS
SRAM OT OG OT EMIT
TELETYPE
EPYTELET
^C

There might be a new startup company or product name in there.

  
Doctor

This is your own psychotherapist, right at your finger tips, and always in the office. Type DOCTOR at the system prompt to start a session. Type BYE to end session. This chat-bot uses the algorithm developed by Joseph Weizenbaum in the 1960's at MIT. See http://en.wikipedia.org/wiki/ELIZA. Here is an example session...

$ DOCTOR

HANS:  WHAT SURPRISED YOU TODAY?
YOU:   MY CAR BROKE DOWN

HANS:  DOES THAT SUGGEST ANYTHING ELSE WHICH BELONGS TO YOU?
YOU:   MY TELETYPES BREAKDOWN TOO

HANS:  YOUR TELETYPES BREAKDOWN TOO?
YOU:   YES, IN THE GARAGE, IN THE BASEMENT, AND THE KITCHEN

HANS:  WHY DON'T YOU TELL ME A LITTLE MORE ABOUT THIS.
YOU:   ABOUT TELETYPES?

HANS:  DOES THAT HAVE ANYTHING TO DO WITH THE FACT THAT YOUR  
       CAR BROKE DOWN?
YOU:   NO, MY CAR DOES NOT KNOW ABOUT THEM

HANS:  IS IT IMPORTANT TO YOU THAT YOUR CAR DOES NOT KNOW 
       ABOUT THEM?
YOU:   ^C

  
Banner Text

The FIGLET program (Frank, Ian and Glenn's LETters), let you print text banners from small to large in many different fonts.  The basic command is...

$ FIGLET -F BANNER WELCOME!

                                                  ### 
#  #  # ###### #       ####   ####  #    # ###### ### 
#  #  # #      #      #    # #    # ##  ## #      ### 
#  #  # #####  #      #      #    # # ## # #####   #  
#  #  # #      #      #      #    # #    # #          
#  #  # #      #      #    # #    # #    # #      ### 
 ## ##  ###### ######  ####   ####  #    # ###### ### 

Replace BANNER with one of the font names listed below, and replace WELCOME! with the text you want.  See http://www.figlet.org/examples.html for lots of font examples.

Fonts you can use...

3X5          EFTIWALL     SCRIPT       TERM
BANNER3      ISOMETRIC4   SHADOW       THIN
BANNER       IVRIT        SLANT        THREEPOINT 
BIG          LEAN         SLSCRIPT     TICKS
BLOCK        LETTERS      SMALL        TINKER-TOY
BUBBLE       MINI         SMSCRIPT     TREK
CALGPHY2     MNEMONIC     SMSHADOW     UNIVERS
CONTESSA     MOSCOW       SMSLANT      WEIRD
DIGITAL      OGRE         STANDARD   

  
Cowsay and Cowthink

This utility displays a cow with a comic bubble containing text you type in.  For example...

$ COWSAY YOU'RE A FATTY!
 ----------------- 
< YOU'RE A FATTY! >
 ----------------- 
        \   ^--^
         \  (OO)\-------
            (--)\       )\/\
                !!----W !
                !!     !!

No cow would be good without emotions.  You can enter these right before the text, and they include -D (dead), -B (borg), -G (greedy), -P (paranoid), -T (tired), -W (wired), -Y (youthful).  If you type COWTHINK instead of COWSAY you get a cow with a thinking bubble.   There are COWSAY pictures other than the cow, and you can select one of these as in...

$ COWSAY -F TUX LINUX TL330
 ------------- 
< LINUX TL330 >
 ------------- 
   \
    \   .--.
       !o-o !
       !:-/ !
      //   \ \
     (!     ! )
    /'\-   -/`\
    \---)=(---/

Cowsay picture names...

BEAVIS-ZEN        EYES              MEOW            STIMPY
BUD-FROGS         FLAMING-SHEEP     MILK            SURGERY
BUNNY             GHOSTBUSTERS      MOOFASA         THREE-EYES
CHEESE            HELLOKITTY        MOOSE           TURKEY
COWER             KISS              MUTILATED       TURTLE
DAEMON            KITTY             REN             TUX
DEFAULT           KOALA             SHEEP           VADER
DRAGON-AND-COW    KOSH              SKELETON        VADER-KOALA
DRAGON            LUKE-KOALA        SMALL           WWW
ELEPHANT          MECH-AND-COW      STEGOSAURUS            

And you can combine commands, as in...

$ EVAL "ECHO BOO! $P FIGLET -F BANNER3 $P COWSAY -W -N"

 ------------------------------------- 
/ ########   #######   #######  ####  \
! ##     ## ##     ## ##     ## ####  !
! ##     ## ##     ## ##     ## ####  !
! ########  ##     ## ##     ##  ##   !
! ##     ## ##     ## ##     ##       !
! ##     ## ##     ## ##     ## ####  !
\ ########   #######   #######  ####  /
 ------------------------------------- 
        \   ^--^
         \  (OO)\-------
            (--)\       )\/\
                !!----W !
                !!     !!

The EVAL "... $P ... $P ..." format is needed above since the Teletype has no pipe character | for Linux command line piping.  Instead a | has been placed in the $P bash variable, which is used with the EVAL command.

  
Fortune

Type FORTUNE to get a short witty saying printed.  Topics included are goedel, science, startrek or wisdom...

$ FORTUNE
FIRST STUDY THE ENEMY.  SEEK WEAKNESS.
   -- ROMULAN COMMANDER, "BALANCE OF TERROR", STARDATE 1709.2
$ FORTUNE
THE LONGEST PART OF THE JOURNEY IS SAID TO BE THE PASSING 
OF THE GATE.
   -- MARCUS TERENTIUS VARRO

Combine it with COWSAY...

$ EVAL "FORTUNE $P COWSAY" 
 --------------------------------- 
/ EXPERIENCE VARIES DIRECTLY WITH \
\ EQUIPMENT RUINED.               /
 --------------------------------- 
        \   ^--^
         \  (OO)\-------
            (--)\       )\/\
                !!----W !
                !!     !!

The EVAL "... $P ..." format is needed above since the Teletype has no pipe character | for Linux command line piping.  Instead a | has been placed in the $P bash variable, which is used with the EVAL command.

  
Yes

This command repeats what you type, until you stop it with a ^C For example...

$ YES TIME TO GO TO MARS!
TIME TO GO TO MARS!
TIME TO GO TO MARS!
TIME TO GO TO MARS!
TIME TO GO TO MARS!
TIME TO^C

What good is this?  If you are adjusting a Teletype, or page printer, it's a quick way to keep the machine printing while you adjust things.

Date Time / Calendar / Calc / Weather / News / Wiki

 
These commands let you quickly see the time, weather, news, wikipedia informationa, a calendar, or use a calculator.  And that's no simple calculator, but one with variables, looping, and built-in Trigonometry functions.

  
Date & Time

The current date and time is always available with the DATE command...

$ DATE
SAT OCT 27 12:33:41 MDT 2022

  
Calendar

Type in CAL to get a calendar printed.  Type in CAL -3 to get calendar's for the next three months.  Type in CAL 2022 to get the calendar for a complete year.  For example...

$ CAL -3

   SEPTEMBER 2022          OCTOBER 2022          NOVEMBER 2022   
SU MO TU WE TH FR SA   SU MO TU WE TH FR SA   SU MO TU WE TH FR SA
                   1       1  2  3  4  5  6                1  2  3
 2  3  4  5  6  7  8    7  8  9 10 11 12 13    4  5  6  7  8  9 10
 9 10 11 12 13 14 15   14 15 16 17 18 19 20   11 12 13 14 15 16 17
16 17 18 19 20 21 22   21 22 23 24 25 26 27   18 19 20 21 22 23 24
23 24 25 26 27 28 29   28 29 30 31            25 26 27 28 29 30   
30                                      

  
Calculator

BC stands for Basic Calculator. It was developed in 1975 by Robert Morris and Lorinda Cherry of Bell Labs, and is a powerful precision calculator language. You just type in mathematical expressions, using variables if you like. Math functions include...

SQRT()  SQUARE ROOT             A()     ARCTANGENT
S()     SINE                    E()     EXPONENTIAL
C()     COSINE                  L()     LOGARITHM

Example calculator session. The last three examples show bc being used as a single line calculator...

$ BC
4*4
16
SQRT(22)
4.69041575
(12 + 44 + 33 + 45*9)/23
21.47826086
S=60; M=60; H=24
DAY=H*M*S
DAY
86400
DAY/3600
24.00000000
QUIT

$ BC <<< 22/7
22/7
3.14285714

$ BC <<< "22 / 7"
22 / 7
3.14285714

$ BC <<< SQRT(2)
1.41421356

  
Weather & Temperature

Type in WEATHER at the system prompt to get the current weather in Pleasant Grove, UT, supplied by the NOAA weather service.  Type in WEATHER 3 FORECAST to get the current weather and the forecast for the next three days.  Type in WEATHER 4 TEMPS to get the current weather and only the high/low temperatures for the next 4 days.  Type WEATHER -H to get help.  Here is what some of the output looks like...

$ WEATHER

FAIR 45F (7C) -> PARTLY CLOUDY, WITH A LOW AROUND 38. EAST
SOUTHEAST WIND 5 TO 8 MPH.

$ WEATHER T 3 

NOAA'S NATIONAL WEATHER SERVICE
PLEASANT GROVE UT, 28 OCT 9:55PM MDT 

CONDITIONS  FAIR 45F (7C)
HUMIDITY    76%
WIND SPEED  CALM
BAROMETER   30.17 IN
VISIBILITY  10.00 MI

OVERNIGHT   38
MONDAY      64/38
TUESDAY     65/40
WEDNESDAY   67/42

  
News

Headlines are easy to get with the NEWS tool. It prints out the headlines, and defaults to 5 headlines per column, plus the top story, and any developing story.  You can specify the number of headlines from 1 to 20 on the command line, as in NEWS 10 for 10 headlines per column.

$ NEWS

03-NOV-2022 22:59:38

TOP OF THE HEAP...
   OBAMA IGNORES QUESTION ABOUT STORM VICTIMS' FRUSTRATIONS
   FEAR OF THE DARK
   CON EDISON DISTRIBUTING
   FEMA OUT OF WATER, NO DELIVERY UNTIL MONDAY
   FREE FUEL FOR EVERYONE!
   2-MILE LINE ON STATEN ISLAND
   RESIDENTS ARM UP: BATS, MACHETES, SHOTGUNS
   'IT'S LIKE THE WILD WEST'
   'ANARCHY IN ^C

  
Wiki

Getting information on millions of items is fast with the WIKI command.  It prints out the text information on a subject from Wikipedia, the web-based, free-content encyclopedia.  Works best with full words, like WIKI WINSTON CHURCHILL, and not WIKI WINST CHURCH.

$ wiki cirrus clouds
searching > obtaining

Machu Picchu
============

Machu Picchu or Machu Pikchu is a 15th-century Inca site located
2,430 metres (7,970 ft) above sea level.  It is located in the
Cusco Region, Urubamba Province, Machupicchu District in Peru.
It is situated on a mountain ridge above the Sacred Valley which
is 80 kilometres (50 mi) northwest of Cusco and through which the
Urubamba River flows.  Most archaeologists believe that Machu
Picchu was built as an estate for the Inca emperor Pachacuti
(1438-1472).  Often mistakenly referred to
   .
   .
   .
preservation of the area's cultural and archaeological heritage
is an ongoing concern.  Most notably, the removal of cultural
artifacts by the Bingham expeditions in the early 20th century
gave rise to a long-term dispute between the government of Peru
and the custodian of the artifacts, Yale University.

From:
   http://en.wikipedia.org/wiki/Machu_Picchu
   14-Mar-2014 22:18:05

Files / Programming

  
Working With Files

There are many file control commands.  Here are just a few.

$ LS                       # LIST ALL FILE NAMES
$ LS FILENA*               # LIST FILES STARTING WITH FILENA
$ RM FILENAME              # REMOVE FILENAME
$ CP FILENAME1 FILENAME2   # COPY FILENAME1 TO FILENAME2
$ MV FILENAME1 FILENAME2   # RENAME FILENAME1 TO FILENAME2
$ CAT FILENAME             # PRINT OUT FILENAME
$ MKDIR DIRNAME            # MAKE DIRECTORY DIRNAME
$ CD DIRNAME               # CHANGE DIRECTORY TO DIRNAME
$ CD ..                    # CHANGE TO DIRECTORY UP ONE LEVEL
$ CAT > FILENAME ... ^D    # COPY TEXT INTO FILENAME UNTIL ^D ENTERED
$ TOUCH FILENAME           # CREATE NEW FILE NAMED FILENAME
$ HEAD FILENAME            # PRINT FIRST 10 LINES OF FILENAME
$ TAIL FILENAME            # PRINT LAST 10 LINES OF FILENAME
$ HEXDUMP -C FILENAME      # DISPLAY FILENAME IN HEX/ASCII SPLIT MODE
$ WC FILENAME              # DISPLAY LINE, WORD, CHAR COUNT OF FILENAME
$ PWD                      # SHOW CURRENT DIRECTORY PATH

$ EVAL "HISTORY $P TAIL"   # LIST OUT LAST 10 COMMANDS YOU ENTERED
$ !!                       # EXECUTE LAST COMMAND AGAIN

  
Editor

ED is a line oriented editor that works great with the Model 33 Teletype.  Rather than cover all ED features, we list the top 30 commands that let you accomplish most editing needs.  To edit a file, type ED FILENAME at the system prompt. ED will respond with the count of lines in your file, and the > prompt.  Command format is...

> [ADDRESS [,ADDRESS]] COMMAND [PARAMETERS] 

[ADDRESS [,ADDRESS]] selects a range of lines by their line numbers, or special characters such as $ for the last line.

Example line selectors...

,            ALL LINES
1            FIRST LINE
$            LAST LINE
1,$          ALL LINES
5            FIFTH LINE
5,$          FIFTH THROUGH LAST LINE
1,4          FIRST THROUGH FOUR LINES
$-3,$        LAST FOUR LINES
.            CURRENT LINE

Example commands...

P            PRINT LINE(S)
N            PRINT LINE(S) WITH LINE NUMBER(S)
C            CHANGE LINE
D            DELETE LINE(S)
S/FROM/TO/G  REPLACE ALL OCCURANCES OF FROM WITH TO
G/STRING/    PRINT LINE(S) WITH STRING
G/STRING/N   PRINT LINE(S) WITH STRING WITH LINE NUMBERS
J            JOIN LINES
M(.)         COPY LINE(S) AFTER LINE NUMBER SPECIFIED
T(.)         COPY LINE(S) AFTER LINE NUMBER SPECIFIED
U            UNDO LAST COMMAND
H            EXPLAIN LAST ? ERROR
W            SAVE WORK TO ORIGINAL FILE
Q            QUIT

Imagine how quickly a file can be edited with the ED line editor. Compare this to editing a deck of computer punched cards with a keypunch machine.  Now you can begin to appreciate the Teletype Model 33 and the ED line editor.

  
Programming

The TL330 System has 2 GB of RAM, 1.8 Billion CPU cycles per second, making it capable of processing complex programs.  Perl is a programming language on the system that is ready to use.  Perl was developed by Larry Wall in 1987, as a Unix scripting language, so no compiling is necessary.  The system's current Perl release is 5.16, May 2012.  Perl 6 is a complete redesign of the language, announced in 2000 and still under active development as of today.  System TL330 has Perl version 5.10, from 2009.  You can learn more about Perl at http://www.perl.org/

The two steps listed below are one way to use program in Perl on the TL330 system with your Teletype Model 33 Data Terminal, allowing you to use replacement strings for missing Teletype characters.  Alternatively, you can use the TTY-Link ESC / 00-7F command to enter specific characters, for example { can be entered with ESC / 7B.  While this second method will work, when the Teletype sees the { character, it will instead print the [ character, and be confusing with the actual [ character.

  1. Add the line USE TTYFILTER; to the top of your program so you can use missing Teletype characters in their replacement string form.
  2. Type in the missing Teletype characters in their replacement string form, when entering Perl code.

Your Teletype Model 33 Data Termina can not enter or display the { | } ~ ` characters, and these characters are important to Perl.  The USE TTYFILTER; statement allows you to enter these characters in their replacement string form.  There are two replacement string forms,[c] and .c., and you can use them interchangeably...

Enter  or  Enter For Character(s) Name (purpose)
[B]   .B. { Open curly bracket
[E]   .E. } Close curly bracket
[P]   .P. | Vertical bar or pipe
[OR]   .OR. || Two vertical bars (boolean or expression)
[T]   .T. ~ Tilde
[X]   .X. ` Back tick or back quote (execute system command)

Here are two example Perl programs...

$ CAT > PROG1.PL
# CALCULATE SQUARES
USE TTYFILTER;
PRINT "\NSQUARES FROM 5 TO 9...\N";
FOR ( MY $I=5; $I<10; $I++ ) [B]
    PRINT $I . " SQUARED = " . $I * $I . "\N";
[E]
EXIT 0;
^D

$ PERL PROG1.PL

SQUARES FROM 5 TO 9...
5 SQUARED = 25
6 SQUARED = 36
7 SQUARED = 49
8 SQUARED = 64
9 SQUARED = 81

$ CAT > PROG2.PL
# CALCULATE AREA OF A TRIANGLE
USE TTYFILTER;
PRINT "\NTRIANGLE HEIGHT: ";
MY $HEIGHT = 0 + <STDIN>;
PRINT "TRIANGLE WIDTH: ";
MY $WIDTH = 0 + <STDIN>;
PRINT "AREA OF TRIANGLE $HEIGHT HIGH, AND $WIDTH WIDE IS: ";
PRINT ($HEIGHT * $WIDTH) / 2;
PRINT "\N";
EXIT 0;
^D

$ PERL PROG2.PL

TRIANGLE HEIGHT: 2.4
TRIANGLE WIDTH: 3.5
AREA OF TRIANGLE 2.4 HIGH, AND 3.5 WIDE IS: 8.4

Who / Chat

  
Who Is On System

Type in WHO to see who is logged in, and what devices they are using. If the TTY reported is TTY4, then they are on device /DEV/TTY4. For additional user info type FINGER command. You can change your finger user information by typing in command CHFN, and then answering the prompts. WHO followed by any two words, lists who is currently logged into this account, on what device, and since when...

$ WHO
USER1    TTY2      2022-10-29 11:47
USER2    TTY5      2022-10-29 20:35

$ WHO AM I
USER1    TTY2      2022-10-29 11:47

$ WHO MAN CHU
USER1    TTY2      2022-10-29 11:47   

$ FINGER
LOGIN    NAME     TTY     IDLE    LOGIN TIME   OFFICE     OFFICE PHONE
USER1    SAM T    TTY2   13:25    OCT 29 11:47 Utah USA   EXT 608 
USER2    KATE W   TTY5   12:17    OCT 29 21:33 Utah USA   EXT 603 

  
Chat With Another System User

The WRITE command lets you talk to another system user, typing back and forth.  For example, suppose there are two users on the system, with user names USER1 and USER2.  USER1 would start the conversation by typing WRITE USER2 at the system prompt.  USER2 would be notified that USER1 wants to talk.  USER2 would then enter WRITE USER1 at the system prompt, so both users can type back and forth in a conversation.  To end the conversation, enter ^C  Here is what is looks like...

$ WRITE USER2
WRITE: USER2 IS LOGGED IN MORE THAN ONCE, WRITING TO TTYS1
MESSAGE FROM USER1 ON TTYS1 AT 19:59 ...
WHAT ARE YOU DOING?
READING   LETS ASK DAD TO MAKE SOME COOKIES
GOOD IDEA   ^C
EOF

Mail

  
Email System Users

It's easy to send an email message to a user on the system. Type MAIL followed by that user's system login name at the system prompt.  You will be prompted for a subject. Then, enter your message text, and complete it with a line containing a single period.  Here is an example...

$ MAIL USER2
SUBJECT: TRIP
WHEN ARE YOU GOING TO WYOMING?
CAN YOU GIVE ME A COUPLE DAYS NOTICE?
-FRANK
.

You can edit your .MAILRC file to have a text signature automatically added to the end of each email.

  
Email Internet Users

Emailing people on the Internet is easy too.  Type MAIL followed by their email address at the system prompt.  You will be prompted for a subject.  Then, enter your message text, and end with a line containing a single period.nbsp; Here is an example...

$ MAIL FRANKSMITH@WEBSITE.COM
SUBJECT: MOVIE
SAW THE MOVIE YOU RECOMMENDED?
THANKS, IT WAS AS GREAT AS YOU SAID IT WOULD BE.
-LINDA
.

You can edit your .MAILRC file to have a text signature automatically added to the end of each email.

  
Managing Email Messages

You manage your email using the same MAIL program you used to send emails. Your mail message folder is updates immediately if the a message is sent to you locally on the system by another user.  If you have new mail, you will see a You have mail... message printed when you complete a system command.  Messages sent to you from outside on the Internet, are automatically retrieved every 10 minutes, and will cause the same You have mail... message to display after a system command.

Type MAIL by itself at the system prompt to start the MAIL program in interactive mode.  The MAIL program will print a : prompt.  Type H to see a summary of all your email messages.  They will be numbered 1 to n.  To type out message 3, enter T 3 at the prompt.  To reply to message 3, type R 3 at the prompt.  To save message 3 to a local MBOX folder, type S 3 MBOX.  To delete message 3, enter D 3 at the prompt.  To exit MAIL type Q.  When you exit and re-enter MAIL all remaining messages, are re-numbered from 1 to n again.  Enter HELP at the prompt to see a list of MAIL commands.  Here are a few of the commands...

T <MESSAGE LIST>         PRINT OUT (TYPE) MESSAGES
N                        GOTO AND TYPE NEXT MESSAGE
F <MESSAGE LIST>         GIVE HEAD LINES OF MESSAGES
H                        PRINT OUT ACTIVE MESSAGE HEADERS
D <MESSAGE LIST>         DELETE MESSAGES
U <MESSAGE LIST>         UNDELETE MESSAGES
S <MESSAGE LIST> FOLDER  APPEND MESSAGES TO FOLDER AND MARK AS SAVED
R <MESSAGE LIST>         REPLY TO MESSAGE SENDERS AND ALL RECIPIENTS
M ADDRESSES              MAIL TO SPECIFIC RECIPIENTS
Q                        QUIT AND APPLY CHANGES TO FOLDER
X                        EXIT AND DISCARD CHANGES MADE TO FOLDER
L                        LIST NAMES OF ALL AVAILABLE COMMANDS

A <MESSAGE LIST> CONSISTS OF INTEGERS, RANGES OF SAME, SEPARATED BY 
SPACES.  IF OMITTED, MAIL PROGRAM USES THE LAST MESSAGE TYPED.

Here is an example MAIL session...

$ MAIL
: H
<O  1 FRANK@SYSTEM.COM     SUN OCT 14 22:27  19/574    PARKING
 O  2 MARY@COMPANY.COM     MON OCT 22 17:50  37/1474   LASERDISC
 O  3 LARRY@ELECTRO.COM    MON OCT 22 21:53  36/1409   CLASS
: T 3
DATE: MON, 22 OCT 2014 21:51:25 -0600
FROM: LARRY WILSON <LARRY@ELECTRO.COM>
SUBJECT: CLASS
REMEMBER, CLASS NEXT TUESDAY.  READ HOMEWORK.
LARRY WILSON
LARRY@ELECTRO.COM
801 555 1212

: R 3
TO: LARRY@ELECTRO.COM
SUBJECT: RE: CLASS
LARRY WILSON <LARRY@ELECTRO.COM> WROTE:
> REMEMBER, CLASS NEXT TUESDAY.  READ HOMEWORK.
> LARRY WILSON
> LARRY@ELECTRO.COM
> 801 555 1212
WILL BE THERE
.
EOT
: D 3
: Q
HELD 2 MESSAGES IN MAIL

It takes little effort to use the MAIL program, using the single character commands.

Games

How about a few games? There are over 20 games available, and here are a couple.

  
Go Fish

This is a card game you can play with other and against the computer...

$ GOFISH
WOULD YOU LIKE INSTRUCTIONS (Y OR N)? N
I GET TO START.
I ASK YOU FOR: 2.
YOU SAY "GO FISH!"

YOUR HAND IS: 4 4 6 7 8 10 K
YOU ASK ME FOR: 6
I SAY "GO FISH!"
YOU DREW A.
I ASK YOU FOR: 3.
YOU SAY "GO FISH!"

YOUR HAND IS: A 4 4 6 7 8 10 K
YOU ASK ME FOR: ^C

  
Monopoly

The same board game, but now at your fingertips.  Play with others, taking turns to roll.  Check that you have enough paper loaded...

$ MONOPOLY
HOW MANY PLAYERS? 2
PLAYER 1'S NAME: MARY
PLAYER 2'S NAME: SAM

MARY (1) ROLLS 8
SAM (2) ROLLS 7
MARY (1) GOES FIRST

MARY (1) (CASH $1500) ON === GO ===
-- COMMAND: 
ROLL IS 6, 5
THAT PUTS YOU ON ST. CHARLES PL. (V)
THAT WOULD COST $140
DO YOU WANT TO BUY? Y

SAM (2) (CASH $1500) ON === GO ===
-- COMMAND: 
ROLL IS 4, 2
THAT PUTS YOU ON ORIENTAL AVE. (L)
THAT WOULD COST $100
DO YOU WANT TO BUY? Y

MARY (1) (CASH $1360) ON ST. CHARLES PL. (V)
-- COMMAND: ^C
DO YOU ALL REALLY WANT TO QUIT? Y

Appendix

  
ASCII Chart (Tape Codes)

1-inch Paper Tape

The Teletype Model 33 ASR Data Terminal can display, punch, read and transmit a set of ASCII characters.  The basic ASCII (American Standard Code for Information Interchange) codes were defined in 1963, and cover 128 data codes, from 0 to 127, taking up data bits 1 - 7.  The Model 33 can display only 62 characters from this set: A-Z 0-9 ! @ " # $ % & ' ( ) * + . - , / : ; < = > ? [ \ ] ~ and space.   When the model 33 punches a paper tape, it adds an 8th bit for even parity, meaning if you add up the count of all bits for that character, they will sum to an even number: 0, 2, 4, 6 or 8.  The Model 33 can transmit additional characters in the 00 to 27 region, using of the Control key, thus you can send control characters ^A through ^Z.  For example typing ^G while in local mode, or adding it to text in a Perl program \x07, will cause the internal brass bell to ring.

The chart below lists each ASCII value in decimal, hex (base 16), three char abbreviation or printed character, 7 data bits, even parity bit, and the description.  The 7 data bits are shown as they would appear on the 1-inch punched paper tape.

ASCII Chart
ASCII Chart
ASCII Chart

 
Continue to . . .     System In Use

 

 
 
Copyright (c) 2014-2015 John Whitney   -   801 815 9265   -   john at johnwhitney dot com   -   Utah, USA