3. Terminal Functions
Scroll Back Buffer
One of the most important features in terminal program is its scroll
back buffer. This allows you to look back at words that zipped by
on your screen a few minutes ago. It should be simple,
unobtrusive and fast. ZTerm will save lines that are pushed off
the screen by a line feed or a clear screen. It will not put more
than two blank lines in a row in the buffer. This means if it
receives a clear screen code and there are only two lines of
information, you will NOT get 22 blank lines in the scroll back buffer
(what a waste). The buffer is stored in memory and when the
buffer fills up, ZTerm will try to allocate more memory for the
buffer. If it cannot get more memory, ZTerm will remove lines
from the top of the buffer (the oldest lines). The scroll back
buffer does not store any character attributes like bold or colors – it
only stores the text.
You can scroll around in the buffer while data is coming in, while a
file transfer is in progress and when ZTerm is dialing. If you
have the Extended keyboard, you can use Home, End, Page Up and Page
Down to move around in the scroll buffer. However, if the VT100
Keypad option is turned on in Terminal Settings, you will need to hold
down the Shift (or Option) key when you use these keys.
The Find command in the Edit menu allows you to search the scroll back
buffer for a sequence of characters. Any changes to the search
string will reset the search position to the top of the buffer
(the oldest line). Clicking in the terminal window will set the
search position to the line you clicked on. After you have found
an occurrence, if you click the Find button again (or use the Find
Again command) it will find the next occurrence. If it beeps, the
string could not be found.
When you select text in the scroll back buffer, you can Cut, Copy or
Clear it, and you can save it to a text file (Save Selection), or
append it to an existing text file. Cut and Clear will not remove
text from the last 24 lines because it is not in the scroll back buffer
yet. If the clipboard has text on it, Paste will start sending
the text as if you were typing it, using the options selected in Text
Pacing. Command-Period will cancel a Paste command.
Append Selection to a File
Many people will store messages that they see in a file on their Mac,
in case they want to refer to it later. For example, I store lots
of messages that I see about ZTerm. For each of the services that
I frequent, I have a folder and in it I have a file for every month
that holds the messages I saved that month. When you use the
Append to... command, it will add the selected text to the end of the
file you pick. It will also change the “last append file” to that
file. The name of this file will appear in the next menu.
When you see another message you want to save, you can append it to
this file by using this second append command (or use Command-Shift-N).
Uploading a Composed Message
Many times when you want to post a message or a reply on a bulletin
board, you might want to compose the message when you are
offline. This is especially true if you are going to post the
message on a service that charges per minute. So you type your
message using your word processor or text editor and save it in TEXT
format. Some editors always use TEXT format (like TeachText,
BBEdit or Alpha). Most word processors have their own file format
that includes lots of formatting information in addition to the
text. But most will let you save a file in a TEXT only
format. Some give this option in the Save As dialog (like Word 4,
with full menus on). Others have a separate menu command;
MS Works has the Export command, which saves the file in a TEXT format.
When you select the Send Text command and choose a text file to send,
ZTerm will send the text in the file like you are typing it. When
you are typing or sending a message to a service or BBS, some want you
to hit return when you get near the right margin. Others will
automatically wrap text to the next line, just like most word
processors do. When you are composing a message for a service
without auto-wrap, you will need to break the lines yourself by
entering a return at the end of each line.
Text Pacing
When you are sending a composed message with the Send Text command,
ZTerm can send the text a lot faster than most people could type.
Some services can’t handle receiving the text at such a high rate and
could lose characters. In these cases, you need to use Text
/Pacing, which is a means to slow down the rate that the text is sent.
The first option in Text Pacing Options is Wait for char echo.
This is the slowest and most conservative option. When ZTerm
sends a character from your text file, it will wait until that
character is echoed back before it sends the next one. This will
only work with services that echo what you type. Most do; GEnie
is one that does not. If you don’t use wait for echo, you can use
the remaining options to slow things down. When the line prompt
character is filled in, ZTerm will wait until that character is
received (after a line has been sent), before it starts sending the
next line. The last two options let you set a delay after each
character and after each line. The values are in sixtieths (1/60)
of a second, so a value of 30 would be one half second. If you
use a delay between characters, it normally would be small, say between
1 and 5. Typical values for the delay between lines would be
between 10 and 60, but could go even higher.
If you leave all these options blank or off, ZTerm will send the text
as fast as it can. Many BBS’s run on personal computers will be
able to handle this if the computer is handling only one line and is
not doing any other processing.
Person to Person Modem Connection
There are times when you may want to connect to a friend’s Mac (or PC),
usually to transfer some files. I have heard some photographers
use ZTerm to call into their work (a newspaper, for example) to send in
a digital photogragh. The easiest way to set up for this is for
one side to enable auto answer and have the other person call.
For example, I could enable the auto answer feature in my modem and
tell my friend to dial me through his modem. The modem command
“ATS0=1” (that’s a zero, not the letter O) will enable auto answer on
most Hayes compatible modems. This command tells the modem to set
register zero to a value of 1. The zero register selects how many
rings before the modem will answer the phone and try to establish a
connection. You can even add an entry to your dialing directory
called “Auto Answer On” and set the phone number to “ATS0=1”.
For a person to person connection, you usually want to turn on Local
Echo so you can see what you are typing. When I connect like
this, I always exchange a hello, etc, to make sure that the connection
is OK. Then if I am sending a file to him, I use ZModem so that
he will not have to do anything to start the transfer (because ZModem
has the autodownload feature).
If the person you are calling is using a program that does not support
ZModem, then try XModem. The sender can type something like "OK,
I'll send it now." Then he would select the Send XModem command
and choose the file. The person that will be receiving the file
should wait about 15 seconds (to give the sender time to select the
file), then use the Receive XModem command. If he is not using
ZTerm, he may have to give a name for the received file. You
should start seeing progress in the transfer status window within 10 or
20 seconds.
Keyboard Buffer
The keyboard buffer is most useful for online conferences (for example,
on GEnie or CompuServe). Selecting this command will bring up a
keyboard buffer window and you can type into this window and perform
any editing. When you hit RETURN, the contents of the buffer are
sent out. If you have ever tried sending a message during a
conference without a keyboard buffer, you know how confusing it can
get. If other users send messages while you are typing your
message, the characters of your message can get mixed in with the other
messages and get spread over several lines. With the Keyboard
Buffer, you type your entire sentence locally (and edit it if needed)
and its all sent out when you hit return.
Dialing Directory
ZTerm uses the ZPhoneList file to hold setups for the various services
or BBS’s that you like to call. Each setup will appear in the
Dial menu and in the Dialing Directory window. Each Dial setup
will save all of the settings from the Settings menu above the dividing
line. The ZPhoneList file also contains some global settings that apply
to all setups. You can have multiple phone list files. If
you open ZTerm, it will look for ZPhoneList in the same folder and if
its not there it will create it. However, you can double click on
a phone list file and ZTerm will use it. You can create different
phone files by renaming or duplicating one that ZTerm has created.
The Dialing Directory window is where you do all your maintenance of
the phone list. You add a new service with the New button.
Delete will let you remove the highlighted service. You can edit
the connection settings by highlighting the service and using the
Connection button (or double click on the service). You can
rename an entry by changing the name in the Connection settings
window. The Manual button lets you enter a number to dial without
adding it as a new service. The Set button will load the settings
of the highlighted service without dialing it.
Queue Dialing
If there are several busy BBS's that you would like to connect to, you
can mark them for Queue dialing and ZTerm will call each one, round
robin, until you connect to one (or Cancel the dialing). Setups
can be marked or unmarked in the Dialing directory, by using the Mark
and Unmark buttons, or clicking in the leftmost column of an
entry. They can also by marked by selecting the service in the
Dial menu with the Shift key held down. ZTerm will automatically
mark an entry when a dial attempt fails, and will unmark an entry when
a connection is made.
ANSI Graphics
The emulation that I call “PC ANSI-BBS” is called many things by many
people. Two things make up this emulation: a font that is used by
PC’s, which include a lot of line and box drawing characters; and
handling the escape sequences that most PC BBS’s use. These
sequences are pretty much the VT100 sequences (based on the ANSI X3.64
specification), with additional sequences to change foreground and
background colors. If any of the services you call are BBS’s run
on a PC, you should set the emulation for that BBS to PC ANSI-BBS in
the Terminal Settings.
Call Waiting
Call Waiting is an option available from many telephone companies that
can cause problems with modem communication. With this option,
when you are using the phone and someone tries to call you, you will
hear a short beep. This is fine when you are talking, but when
it’s your modem using the phone, the beep can get the modem real
confused. You will probably get some garbage characters received
or the modem could hang up. Most modem users with call waiting
disable this feature when making a modem call. If you have Touch
Tone service, you dial *70, wait for a second dial tone then dial the
number. For rotary service, you would dial 1170 then the
number. These codes are the most common, but your telephone
company may use other codes to disable call waiting.
So in the connection settings, you would put “*70,xxx-xxxx” for the
phone number. The comma adds a short delay for the phone company
to handle the disable function. If the comma delay is not long
enough for your phone company, you can use two commas, or the ‘w’ dial
option if your modem supports it. On many newer modems, you can
include a ‘w’ in the dial command to wait for a dial tone. So you
could use “*70w xxx-xxxx” to wait for the new dial tone after the code
to disable call waiting. Another way would be to set one of the
dial substitution strings, say •1, to “*70,” in the Modem
Preferences. Then you can put •1 in front of each phone number,
like “•1 xxx-xxxx”. If you ever wanted to have call waiting
enabled during a call, you could go to Modem Preferences and change •1
to be empty.