ZTerm 0.9 FAQ
Version 1.2
July 14, 1993
by Leslie Jones
For best results, display in 9 point Monaco
with rulers set to 6 inches.
! = New section!
+ = Section updated since the last version.
Contents:
Distribution and Posting Information
Other ZTerm Information and Software
[1] ZTerm's Version History
[1.1] What's the current version?
[1.2] What features will be in the next version?
+ [1.3] When will the next version be released?
[2] Registration and Support
[2.1] Why should I register (pay the shareware fee)?
[2.2] Will I get technical support if I register?
[2.3] If I registered an earlier version of ZTerm, do I have to
send in an upgrade fee?
[2.4] What is Dave's new Internet address?
[3] Quick Fixes to Common Problems
[3.1] Relax. Don't worry. Have a homebrew.
[3.3] Select a download folder to cure -120 downloading error.
[3.3] Reselect a download folder.
[3.4] Make sure ZTerm is sending data to the correct port.
[3.5] Turn the modem off, wait a few seconds, then turn it back
on.
[3.6] Quit other programs that use the modem.
[3.7] Restart the computer.
[3.8] Restart the computer with extensions off.
[3.9] Move the ZPhoneList out of the ZTerm folder. (But don't
throw it away!)
[3.10] Make sure call waiting is disabled.
+ [3.11] Make sure you have a hardware handshaking cable.
[3.12] Install Apple's Hardware System Update.
! [3.13] Disable fax software and fax auto-answer.
[4] Known Bugs, ResEdit Fixes, and ResEdit Hacks
[4.1] Queue Dialing
[4.2] File Appends
[4.3] Missing Download Folder
[4.4] UNIX and Opus Settings
[4.5] Sending returns in scripts
[4.6] Text pacing
[4.7] Unmarking all services
[4.8] Dialing with the scroll buffer scrolled back
+ [4.9] Possible bugs
[4.10] Increasing the port buffer size with ResEdit
[5] Dialing
[5.1] Can I reorder my Dial directory?
[5.2] Why is one service in the Dial menu and in the Dial
directory in outline?
[5.3] How do I change the default service?
[5.4] How do I set a service to be the current service?
[5.5] How do I mark and unmark services for queue dialing?
[5.6] I started ZTerm and the only service listed is called
Local. Wa' hoppen?
+ [5.7] My ZPhoneList with a bizillion phone numbers and settings
got trashed. Am I screwed?
[5.8] Undocumented tip: changing the data rate.
[5.9] Undocumented tip: Changing parity, data bits, and stop
bits.
[5.10] Undocumented tip: dialing the current service.
[6] Connecting
[6.1] When ZTerm dials, the dialing line has the A cut off the
dial string, like this: TDT 691-7094. Whatever could be
wrong?
[6.2] The BBS drops carrier before my sound stops playing.
Suggestions?
[6.3] Why is ZTerm so slow at sending passwords on some
services?
+ [6.4} Why isn't there a setting for 14400 bps? What data rate
should I use with a 14400 bps modem?
[7] File Transfers
[7.1] This text, binary, MacBinary, and Smart MacBinary stuff
makes my head spin. Which should I use?
[7.2] When I download Mac files from a PC BBS, the files have
generic icons and are unusable. What went wrong?
+ [7.3] Which protocol should I use?
[7.4] Does ZTerm support batch ZModem downloads?
[7.5] I have a high speed modem. Which protocol should I use?
[7.6] Interrupting ZModem downloads is messy. What's a modem
freak to do?
[7.7] How do I prevent massive CRC errors during ZModem
downloads from UNIX?
[7.8] I have other transfer problems with UNIX. What's Dave
been smokin'?
[7.9] I have an error-correcting modem. Which protocol should I
use?
[7.10] Where's YModem-G Send?
[7.11] Why does YModem work on some systems and not others?
[7.12] Using hardware compression makes my uploads and downloads
slower. Wie gehts?
+ [7.13] If I have the Kermit/VT102/etc. Tool, will ZTerm support
Kermit/VT102/etc.?
! [7.14] How can I resume downloads interrupted by a meddling
cat?
[8] Sound, ANSI Graphics, and Color
[8.1] Why oh why won't the ZTerm sounds play?
[8.2] Can I use sounds other than the ones that come with ZTerm?
[8.3] Is there any limit on the length of the sound?
[8.4] My modem speaker won't work with ZTerm. What's the story,
Lori?
[8.5] How do I turn my modem speaker down or off?
[8.6] Why can't women see what a great guy I am?
[8.7] How do I get ANSI graphics when connecting to a PC BBS?
[8.8] I did all of that and the ANSI graphics still look a
little funny. What gives?
[8.9] How can I add excitement to my dull and monotonous
existence?
[9] VT100 Emulation
[9.1] I'm wiggin' out, Leslie. Why don't the home, end, page
up, and page down keys on my extended keyboard work?
[9.2] Why don't the f1-f4 editing keys on my extended keyboard
work?
[9.3] How can I emulate a control key on a Mac Plus?
[9.4] How can I emulate an escape key on a Mac Plus?
! [9.5] How can I emulate a numeric keypad on a PowerBook?
[9.6] Undocumented tip: positioning the cursor with the mouse.
[10] Text and Text Files
[10.1] Can I make the terminal font bigger?
[10.2] Why does onscreen text look so crummy in anything but 9 or
12 point?
[10.3] Will ZTerm save text files in something other than
TeachText?
[10.4] How can I increase the size of the scroll buffer?
! [10.5] Why do some characters get corrupted when I copy text from
my word processor and paste it into ZTerm?
[11]Scripting
[11.1] How do I know the script is running?
[11.2] How do I cancel a script?
[11.3] How do I send an escape in a script?
[11.4] Does a ^M have to be in quotation marks?
[11.5] Do I have to use the Wait for "blah blah" prompt syntax?
+ [11.6] Why is ZTerm sending only part of a line?
! [11.7] How can I send quotation marks within a send statement?
[11.8] What does error -49 mean?
+ [11.9] I'm goin' nuts! Why won't my login script run?
+ [11.10]Undocumented tip: sending a sig with a script and macro.
! [11.11]Other uses of scripts and macros
An Easter Egg
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
Distribution and Posting Information
I will post the current version of the FAQ to comp.sys.mac.comm
and comp.sys.mac.apps during the first week of every month. New
versions of the FAQ will be posted as soon as they become
available.
I will also post the current version to
macg...@mac.archive.umich.edu, which covers the
comp.binaries.mac newsgroup on Usenet, the sumex-aim and umich
ftp sites, and other, lesser-known ftp sites. Look in the info-
mac/comm/info or info-mac/comm directory of sumex-aim, and in
the mac/misc/documentation directory of umich. I will also post
to America Online (file search key word: ZTerm).
Sorry, but I can't email the FAQ to individuals. It's too
big and my student account is limited to only $10.00 per week.
To make corrections and suggestions, send Internet mail to
ljo...@utkvx.utk.edu (utk=University of Tennessee, Knoxville).
This is my preferred (read: cheap) mail address. If mail to that
address bounces, send Internet mail to lesli...@aol.com, or
send America Online mail to LeslieJonz. (Note: I am currently
living in a remote section of the Great Smoky Mountains
National Park, and have only infrequent AOL access.)
Many thanks to the folks who have contributed, knowingly or
unknowingly. In rough chronological order: Neil Schulman, Joe
Dellwo, Adam Toner, Rick McCormack, Scott Macrae, David Platt,
Daniel Friedan, Drew Wade, Gregory Youngs, Roy Wood, Gary Snow,
Peter Middleton, Eric Hoffmann, Jay Bourland, and Pete Halverson.
Others have contributed material which I intend to use in
upcoming versions.
Special thanks to ZTerm author Dave Alverson for reviewing the
FAQ, providing information about the next release, and for
releasing a great piece of software as shareware.
This document is copyright 1993 by Leslie Jones. Please give
credit when citing this work. It can be freely copied and
distributed electronically, and may be uploaded to ftp sites and
online services which charge no more than a normal connect fee
for downloading files. Distribution on physical media is
prohibited without written permission, but the moderators and
archivists of the info-mac archives may include this FAQ on the
info-mac CD-ROM.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
Other ZTerm Information and Software
Information
This FAQ answers questions relating specifically to ZTerm 0.9.
There are other sources for information of interest to ZTerm
users
For answers to more general questions about Macintosh
telecommunications and networking, please read Eric Rosen's
excellent comp-sys-mac-comm FAQ, available for anonymous ftp from
sumex-aim.stanford.edu mac.archive.umich.edu. Everyone who uses
a modem should keep Eric's FAQ on their hard drive.
For answers to questions about file conversion (I downloaded a
file that ends in cpt/sit/dd/arc/lzh/pit/etc. How do I open it?),
get David Lemson's exhaustive report compression-util-table.
The ZTerm manual briefly describes the most common Macintosh
compression formats.
For information about configuring your modem, consult your
modem's manual.
If you have Usenet access, questions about Macintosh-specific
telecommunication hardware and software should be directed to
comp.sys.mac.comm. Questions about modems and telecommunications
in general should be directed to comp.dcom.modems.
Software
Denise McElroy (dmce...@bonnie.ics.uci.edu) has released ZTerm
Phone Directory Listing. The application reads your ZPhoneList
file and produces a text file containing the names and phone
numbers of all services. If your ZPhoneList ever gets
erased or corrupted, you'll be glad you used it.
Jon Snell (jons...@aol.com) has released his ZTerm high speed
patch. The patch consists of Resedit instructions and a 16 color
palette resource. By using the hack and setting the monitor
depth to 16 colors, ZTerm users will experience faster
screen redraws while still seeing the correct colors. Users with
2400 bps modems wil experience little or no speed increase. If
you don't need color for ANSI graphics, the hack is unnecessary.
Simply set the monitor depth to 16 or fewer colors.
><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><
[1] ZTerm's Version History
[1.1] What's the current version?
ZTerm 0.9 is the current version. It is dated February 8, 1992.
Before 0.9 was released, someone hacked 0.85 with ResEdit and
released it as 1.0. There is a more recent hack called 0.93 XK
(eXtra Keys), which was released by a user group. Anyone may
modify ZTerm with ResEdit for their personal use, but
distributing modified versions of copyrighted software is
illegal. Dave Alverson sends official releases to America
Online, CompuServe, and GEnie. You can also expect the newest
version to appear quickly on BBSs and ftp sites.
[1.2] What features will be in the next version?
Support for Kermit file transfers.
Implementation of 16 color ANSI graphics, instead of the current
8 colors.
Some additions to the scripting language.
A scripts folder, possibly.
Bug fixes.
[1.3] When will the next version be released?
The original goal was second quarter, 1993, conditional on Dave
getting finding enough spare time. That date has now passed. We
all hope the next version will appear Real Soon Now.
[2] Registration and Support
[2.1] Why should I register (pay the shareware fee)?
This is a tough question. There is no legal precedent to show
that people can be forced to pay for shareware, so one will come
knocking on your door in the middle of the night. On the other
hand, many of us in the computer community feel that you
should pay for shareware which you use often, just because it
seems to us to be the right thing to do. Shareware authors put a
lot of work into their software, and they deserve compensation.
Shareware authors also put a lot of faith in the
computer community by releasing their products as shareware.
They trust that people will voluntarily pay for a product they
need and use. I for one don't think we should take advantage of
people's trust.
There are also practical reasons for registering. Registering
encourages the author to update his software. More importantly,
the author is more likely to continue to release his work as
shareware if people pay the registration fee.
[2.2] Will I get technical support if I register?
Yes. Dave supports ZTerm through paper mail, email, and in
conferences on America Online, CompuServe, and GEnie. Registered
users receive his home phone number and can call him for direct
phone support. When was the last time you called a Microsoft
programmer at home?
[2.3] If I registered an earlier version of ZTerm, do I have to
send in an upgrade fee?
No. Dave Alverson, like most shareware authors, doesn't charge
upgrade fees. This is another advantage of shareware.
[2.4] What is Dave's new Internet address?
The address given in ZTerm 0.9 is out of date. Dave's new
Internet address is da...@xetron.com, and is his preferred (read:
cheap) mail address.
[3] Quick Fixes for Common Problems
[3.1] Relax. Don't worry. Have a homebrew.
Keep your head tool cool. Read the manual, read this FAQ, and
remember that tens of thousands of people have used ZTerm
successfully.
[3.3] Select a download folder to cure -120 downloading error.
Before downloading files for the first time, you must select a
default download folder by selecting Receive Folder from the
Settings menu. If ZTerm can't find the download folder, it
reports an error of -120.
[3.3] Reselect a download folder.
If you change your directory structure or delete your download
folder, remember to select a new download folder before you
attempt to download. This is sometimes a problem when you
move to a new machine.
[3.4] Make sure ZTerm is sending data to the correct port.
An external modem can be connected to the modem or printer ports.
Find out which yours is attached to, select Modem Preferences
from the Settings menu, and select the port. Alternatively, you
can hold down the shift key while ZTerm loads to select
the port. If you have a PowerBook with an internal modem, open
the PowerBook control panel and select the option for an internal
modem.
[3.5] Turn the modem off, wait a few seconds, then turn it back
on.
This technique solves numerous connection and downloading
problems.
[3.6] Quit other programs that use the modem.
Communications programs that access the modem are sometimes
reluctant to give up control of the port the modem is attached
to. Quit all other telecommunications software, as well as any
phonebook programs that can dial phone numbers through the
modem.
[3.7] Restart the computer.
Restarting is a standard way of solving transient problems of any
kind.
[3.8] Restart the computer with extensions off.
Extensions (inits and cdevs under System 6) cause more than their
share of problems, and should always be suspect if the machine is
crashing or freezing. Under System 7, restart with the shift key
held down to prevent extensions from loading. Under System 6,
manually remove all inits and cdevs from the System Folder and
restart.
see also 3.13.
[3.9] Move the ZPhoneList out of the Zterm folder. (But don't
throw it away!)
Besides storing phone numbers, the ZPhoneList contains all of
ZTerm's settings and preferences, which may have been misset or
corrupted. If you remove the file from the ZTerm folder, ZTerm
will create a new one using its default settings. You can
also restore the file from a backup disk. If that doesn't solve
the problem, put your old ZPhoneList back in the ZTerm folder so
you won't lose your phone numbers.
[3.10] Make sure call waiting is disabled.
To disable call waiting on a touch tone phone, insert the string
"*70," before the phone number, like this:
ATDT *70,555-5555
The comma causes the modem to wait 2 seconds before sending the
number, giving the phone company's hardware time to turn off call
waiting. On a pulse dial phone, use "1170," instead of "*70,".
[3.11] Make sure you have a hardware handshaking cable.
If you have hardware handshaking turned on in the Connection
dialog, consult your modem manual to make sure your modem cable
is capable of hardware handshaking.
A diagram of a correctly-wired hardware handshaking cable is hidden
in the Apple Modem Tool. Open a copy in ResEdit and examine PICT
resource #20000.
To find out more about hardware handshaking, read issues 179 and
180 of TiDBiTS, Adam Engst's free electronic magazine, available
at ftp sites and online services.
[3.12] Install Apple's Hardware System Update.
The hardware update (AKA Hardware Enabler) corrects some problems
with high speed communications under System 7.1 on the following
machines: LC, LC II, IIsi, IIvx, IIvi, Classic II, Quadra 900,
and Quadra 950. The updater solves other problems on
these and other machines, so users of System 7.1 should have it
anyway. The updater should NOT be used on Performas.
[3.13] Disable fax software and fax auto-answer.
see also 3.6.
Fax software may prevent ZTerm from accessing the serial port to
which the modem is attached. Remove fax extensions, control panels
and chooser devices from the System folder. Fax chooser devices
are especially insidious. Chooser devices aren't disabled when you
restart with extensions off under System 7. If they were, print
drivers would be disabled, and you wouldn't be able to print.
Consult your fax modem manual to learn how to disable fax auto-
answer.
[4] Known Bugs, ResEdit Fixes, and ResEdit Hacks
[4.1] Queue Dialing
When queue dialing, the dial window remains open after a
connection is made.
[4.2] File Appends
Appended text is inserted at the beginning of the file, rather
than at the end.
[4.3] Missing Download Folder
If you attempt to download without selecting a default download
folder, ZTerm reports a -120 error instead of prompting you to
select a download folder.
[4.4] UNIX and Opus Settings
The radio buttons may change when you open the ZModem Options
dialog, but the settings remain unchanged, so the bug is not
serious.
[4.5] Sending returns in scripts
When ZTerm sends a return by itself in a script, it usually sends
a space, then the return. To fix the problem, open a copy of
ZTerm in ResEdit. Open CODE 2. At offset 52B4 find the string
671E 4A6E FFEE. Change 671E to 601E.
[4.6] Text pacing
If text pacing is set to wait for a line prompt, ZTerm will
usually wait for about 5 seconds even if it receives the prompt
character. To fix this bug, open CODE 2. At offset 5082, find
the string 3B40 CAC0. Change CAC0 to CABE.
[4.7] Unmarking all services
Holding down shift-option and selecting Dial Marked is supposed to
unmark all services, but doesn't.
[4.8] Dialing with the scroll buffer scrolled back
When dialing with the scroll buffer scrolled back, ZTerm crashes
when a connection is made. This bug does not occur on all
systems.
[4.9] Possible bugs
I have only one report of the following bug:
Using System 7.1, 32 bit addressing, and virtual memory, text
capture doesn't work. I don't have System 7.1, so I couldn't
test this bug.
Two people have reported that they could not reproduce the bug
on their system. Unless I get further confirmation of this bug,
I will remove it from the FAQ. I should note that the person
who originally reported the bug was using Mode32 on an SE/30.
[4.10] Increasing the port buffer size with ResEdit
Open a copy of the ZPhoneList in ResEdit. Doubleclick the zSet
resource. The first two bytes are the port buffer size. X'1000 =
4K. Changing X'1000 to X'7000 will result in a 28K port buffer.
Higher settings are reported to be unreliable. You can also
use intermediate settings, such as X'2000 (8K), X'3000 (12K), etc.
[5] Dialing
[5.1] Can I reorder my Dial directory?
Yes. In the Connections dialog, put one or more spaces in front
of the name to force the service to the top of the list. To
force the service to the end of the list, put a bullet (option-8)
in front of the name. NOTE: if you change the name of any
services that have login scripts, you will have to change the
login script names to reflect these changes.
[5.2] Why is one service in the Dial menu and in the Dial
directory in outline?
That's the default service. When you launch ZTerm, that service
will be the current service.
[5.3] How do I change the default service?
Open the Dial directory, hold down the command key, and click on
the service you want to be the default. You can also hold down
the command key and select the service from the Dial menu.
[5.4] How do I set a service to be the current service?
You can either open the Dial directory, click on the service, and
click the Set button. You can also hold down the option key and
select the service from the Dial menu.
[5.5] How do I mark and unmark services for queue dialing?
You can open the Dial directory, and either click on the service
and click the Mark or Unmark buttons, or click in the space to
the left of the service's name. You can also mark and unmark
services by holding down the shift key and selecting the
service from the Dial menu. Holding down the shift key while
selecting Dial Marked will mark all services. Holding down
shift and option is supposed to unmark all services, but it
doesn't work. You can, however, open the Dial directory, hold
down shift-option, and click Unmark to unmark all services.
[5.6] I started ZTerm and the only service listed is called
Local. Wa' hoppen?
ZTerm didn't find your ZPhoneList in the ZTerm folder, so it
created a new one with the default entry Local. Find your
ZPhoneList and place it in the root level of the ZTerm folder.
[5.7] My ZPhoneList with a bizillion phone numbers and settings
got trashed. Am I screwed?
You're screwed. Always back up your ZPhoneList when you perform
your routine backup. Or, to put it another way, whenever you
think "Man, I really oughta back up my files one of these days,"
instead think "Man, I really oughta back up my files,
including my ZPhoneList, one of these days."
If your ZPhoneList becomes corrupted, you might be able to extract
the service names and numbers using Denise McElroy's ZTerm Phone
Directory Listing, available from sumex-aim and America Online.
[5.8] Undocumented tip: changing the data rate.
You can change the data rate without going to the connection
dialog. Click on the data rate string at the bottom of the window
to get a popup menu for changing the data rate.
[5.9] Undocumented tip: changing parity, data bits, and stop
bits.
Likewise, clicking on the string to the right of the data rate
string produces a popup menu for selecting 8-N-1, E-7-1, or O-7-1
settings.
[5.10] Undocumented tip: dialing the current service.
Command-shift-d normally dials marked services. If no services
are marked, command-shift-d dials the curent service.
[6] Connecting
[6.1] When ZTerm dials, the dialing line has the A cut off the
dial string, like this: TDT 691-7094. Tell me, tell me!
Whatever could be wrong?
Two things to try:
1. This is symptomatic of a modem which is either not properly
connected, or not turned on. Make sure your modem is turned on,
that the modem cable is properly connected to the computer and to
the phone jack, and that ZTerm is sending data to the
correct port.
2. ZTerm may be sending the dial string too fast for the modem.
Add a comma to the beginning of your predial initialization
string in the Connection dialog, like this:
,AT M0
The comma is a Hayes modem command which causes a 2 second delay.
[6.2] The BBS drops carrier before my sound stops playing.
Suggestions?
Use a shorter connect sound. ZTerm can't send or receive data
while the connect sound plays.
[6.3] Why is ZTerm so slow at sending passwords on some
services?
You have "Wait for character echo" turned on in the Text Pacing
options, but the remote system isn't echoing the password
characters, so ZTerm waits 5 seconds, times out, and sends the
next character. Turn off the "Wait for character echo" option
for that service.
[6.4} Why isn't there a setting for 14400 bps? What data rate
should I use with a 14400 bps modem?
The setting in the connection dialog controls the Mac-to-modem
speed (AKA serial port speed, or what ZTerm calls the
data rate), not the modem-to-modem speed (AKA carrier
speed). With a high speed modem, you want to set the serial port
speed higher than the carrier speed so that the modem won't get
ahead of the computer. Also, most v32bis (14400 bps) modems feature
hardware compression methods such as v42bis and MNP 5. To take
advantage of hardware compression, the serial port speed must be
higher than the carrier speed.
When using a high speed modem, set the serial port speed in the
Connection dialog to 19200 for Macs with 68000 processors, or to
38400 for Macs with 68020 processors or higher. You can
experiment with higher values, but these should work reliably.
Some users report that high serial port speeds are unreliable when
AppleTalk is enabled in the Chooser DA.
[7] File Transfers
[7.1] This text, binary, MacBinary, and Smart MacBinary stuff
makes my head spin. Which should I use?
Unless you know better, use Smart MacBinary, which will
automatically select the correct transfer mode. The major
exception is if you are uploading nontext files, such as GIFs or
zip files, which PC users will use. In that case, use binary to
prevent Finder information from being sent.
[7.2] When I download Mac files from a PC BBS, the files have
generic icons and are unusable. What went wrong?
You didn't use MacBinary or Smart MacBinary.
[7.3] Which transfer protocol should I use?
If the service you're calling supports ZModem, use it, because:
1. ZModem is very fast.
2. ZModem is a batch protocol, meaning you can place more than
one file into a batch for uploading or downloading. Most
protocols make you request files one at a time.
3. ZModem has crash recovery. If a 3 hour download is
interrupted 1 minute before it finishes, you can redial the
service, start the download again, and finish the download where
you left off, instead of having to start all over.
4. ZModem receives begin automatically. To start a ZModem
download, simply tell the other computer to begin the transfer.
Your computer will detect a ZModem transfer and automatically
enter receive mode. This autoreceive feature necessitates the
default download folder, which ZTerm also uses with other
protocols.
5. ZModem handles XON/XOFF software flow control better than
other protocols.
[7.4] Does ZTerm support batch ZModem downloads?
Yes. ZModem is by definition a batch protocol. To download
multiple files from UNIX using ZModem, use the command
sz file1.txt file2.hqx etc.
[7.5] I have a high speed modem. Which protocol should I use?
ZModem. In addition to the benefits listed above, ZModem is a
streaming protocol, meaning that the receiving computer doesn't
send back any information unless an error is detected. In other
protocols, the sending computer sends a packet of
information, then waits for the receiving computer to check the
packet for errors and report whether or not there were any
errors.
[7.6] Interrupting ZModem downloads is messy. What's a modem
freak to do?
Type control-x repeatedly. Control-c may work on some systems.
[7.7] How do I prevent massive CRC errors during ZModem
downloads from UNIX?
Try the following suggestions from Dave Platt:
"The commonest reason for this sort of failure-to-resynchronize
is, in my experience, excessive data buffering between the
sending "sz" process and the receiving program. The ZMODEM
protocol can become badly confused if you're connected to your
host via a TCP-based terminal server or some similar serial data
switch. If the terminal server and the network software provides
a substantial amount of data buffering (as it probably does),
then the two ZMODEM processes will each see a _long_
delay between the time that they send a message to their peer,
and the time that the response to this message makes it through
the network to them. This delay will interfere with the
protocol's error-recovery timeouts, and can lead to an endless
stream of recovery attempts.
I strongly suggest using the poorly-documented "-w" option when
downloading files from a mainframe or workstation, unless you're
_sure_ that all of the data communication links between you and
the host are running at the same speed and don't do data
buffering. The "-w" option enables a four-packet sliding-window
mode, which will guarantee that sz will never "get ahead" of your
Mac by more than the window-size that you specify. As long as
the window size is no more than (e.g.) 10 seconds worth
of data, there won't be a problem with the retry timers expiring
before the window is emptied.
I usually use "sz -w 2048 filename" when downloading. In fact, I
have "sz" aliased to "sz -w 2048" to ensure that I don't forget
to use windowed mode. "
The window size should be a multiple of 512, and should be 2048
or less. Most people experience trouble with larger windows.
Apple's free Hardware Enabler fixes some problems which occur at
high transfer speeds and/or when hardware handshaking is enabled.
See also 3.12.
[7.8] I have other transfer problems with UNIX. What's Dave
been smokin'?
If you have trouble with UNIX when you use the telnet command,
try the rlogin command, and vice versa. This tip has solved many
problems for UNIX users.
[7.9] I have an error-correcting modem. Which protocol should I
use?
You should probably still use ZModem, but you might also consider
YModem-G. Other protocols have software error correction which
is redundant and time consuming if your modem has hardware error
checking. Be sure that hardware error correction is
enabled on both modems. Consult your modem manual for
instructions. The downside to YModem-G is that there is no error
recovery in YModem-G, so the transfer terminates if an error is
detected. For this reason, you shouldn't use YModem-G if you
have noisy phone lines or are transferring large files.
[7.10] Where's YModem-G Send?
According to the excellent Balloon Help, YModem1K send is the
same as YModem-G send.
[7.11] Why does YModem work on some systems and not others?
What some BBSs call YModem is actually XModem-1K. If the BBS
offers YModem and YModem Batch, use YModem Batch, which is the
true YModem that ZTerm expects.
[7.12] Using hardware compression makes my uploads and downloads
slower. Wie gehts?
Most online files are compressed with software utilities such as
Stuffit and Compact Pro and can't be compressed much more, if at
all. So the time the modem spends trying to compress and
decompress the files can actually slow down the transfers.
Your modem manual will tell you how to turn off hardware
compression.
[7.13] If I have the Kermit/VT102/etc. Tool, will ZTerm support
Kermit/VT102/etc.?
No. ZTerm doesn't use the Communications Toolbox, so it can't
use Communications Toolbox tools. The freeware Termy, by Tim
Endres of Ice Engineering, can use Toolbox tools. To answer a
common question in advance, there are no freeware or shareware
ZModem tools available at this time.
[7.14] How can I resume downloads interrupted by a meddling
cat?
If an animal, two-legged or four-legged, presses the 9 key
during a download, ZTerm will display
zrdata: cnt = 1024
zrdat32: cnt = 1024
ad nauseum. To fix the problem, press the 0 (zero) key.
[8] Sound, ANSI Graphics, and Color
[8.1] Why oh why won't the ZTerm sounds play?
The sounds must be stored in the System file (AKA System
suitcase). See 8.2.
[8.2] Can I use sounds other than the ones that come with ZTerm?
Absolutely. You can rename any system-compatible sound to
"Connect", "Filedone" or "Termbell" and install the sound in the
System file. Under System 7, quit all applications and desk
accessories and drag the sounds to the icon of the closed System
Folder. When asked if you want the sounds installed in the
system file, click OK.
System 6 users can install System 6-compatible sounds using the
shareware SoundMover (shareware by Riccardo Etore) or
ResEdit. The sounds that come with ZTerm are not compatible with
System 6.
[8.3] Is there any limit on the length of the sound?
ZTerm doesn't limit the length of the sound, but ZTerm can't send
or receive data while the sound is playing. Therefore, a long
connect sound may cause connection problems. Try to keep the
sounds short.
[8.4] My modem speaker won't work with ZTerm. What's the story,
Lori?
Either the modem initialization string or the predial
initialization string of the copy you received contains the M0
(zero) command, which turns off the modem speaker. Select Modem
Preferences from the Settings menu and delete the MO command. If
the problem occurs only with some services, delete MO from the
predial initialization string in the Connection dialog of those
services.
[8.5] How do I turn my modem speaker down or off?
This one is near and dear to my heart, as I seem to have the 2400
bps Modem for the Deaf(TM). ZTerm offers three ways to turn the
modem speaker off (AT M0), or to turn the speaker down (AT L0) if
it's on. (All 0's are zeroes.)
1. You can manually do the deed by typing AT M0 or AT L0 before
you make a connection. This method is best if you only want to
silence the modem for some sessions.
2. To automatically change the volume for one service, enter AT
M0 or AT L0 in the "Pre-dial init" field in that service's
Connection dialog. This method is best if you want the speaker on
for some services and off for others.
3. To automatically control the volume for all services, select
Modem Preferences. Click in the "Initialize" field and use the
cursor keys to move to the far right. Move the cursor just to
the left of ^M and type M0 or L0. This method is best if
you want the speaker off for every service, every time.
These three techniques work for any initialization string,
incidentally.
[8.6] Why can't women see what a great guy I am?
Man! I've been trying to figure out the same thing for years.
You tell me.
[8.7] How do I get ANSI graphics when connecting to a PC BBS?
1. Select Terminal Settings for that service and choose the PC
ANSI BBS radio button.
2. Also in the Terminal Settings dialog, uncheck the "No Extended
Characters (Strip hi bit)" box if it is checked.
3. In the Color Preferences dialog, check the Use Color box.
4. In the Terminal Preferences dialog, set the font size to 9 or
12 point, preferably 9 point.
5. In the Monitors control panel, set the monitor depth to 256
colors or higher. 16 colors will do in a pinch.
[8.8] I did all of that and the ANSI graphics still look a
little funny. What gives?
ZTerm 0.9 uses 8 colors for ANSI emulation, while some ANSI
graphics use 16 colors. The next version will support 16 color
ANSI emulation.
[8.9] How can I add excitement to my dull and monotonous life?
Select Color Preferences and choose colored text on a darker
background. I use yellow text on a black background. Use
whatever colors you want. It's your life.
[9] VT100 Emulation
[9.1] I'm wiggin' out, Leslie. Why don't the home, end, page
up, and page down keys on my extended keyboard work?
During VT100 emulation, those keys are assigned to VT100
operations. To make them work like normal Macintosh application
keys, hold down the shift key and then press them. Without the
shift key, all four keys act like the end key, scrolling the
window to the end of the buffer.
[9.2] Why don't the f1-f4 editing keys on my extended keyboard
work?
During VT100 emulation, all of the function keys are assigned to
VT100 operations. Use the command key equivalents or the edit
menu.
[9.3] How can I emulate a control key on a Mac Plus?
If you are using System 7 on a U.S. system, install the ZTerm
Keyboard layout. To do this, drag the keyboard layout to the
icon of the closed system folder. When asked if you want to
install the keyboard layout, click OK. The option key will
now emulate the control key.
If you are using a non-U.S. system, or a system earlier than 7.0,
select Terminal Settings from the Settings menu. Assign the
control key function to the command key.
[9.4] How can I emulate an escape key on a Mac Plus?
When Option for Control is checked in Terminal Preferences, the
accent/grave key in the upper left hand corner of the keyboard
emulates the escape key. I haven't been able to verify this for
myself, so someone please correct me if I'm wrong.
[9.5] How can I emulate a VT100 numeric keypad on a PowerBook?
Use NumericKeypad (AKA U.S. Keypad), a ResEdit resource and keypad
written by Mel Park, of the University of Tennessee, Memphis.
NumericKeypad maps the numeric keypad to the regular keyboard
when the caps lock key is engaged.
[9.6] Undocumented tip: positioning the cursor with the mouse.
Not only can you use the mouse for selecting text, you can also
use it to position the cursor when in editing mode. Hold down
the option key. The pointer will become diamond-shaped, and will
move the cursor, somewhat slowly, to wherever you click.
[10] Text and Text Files
[10.1] Can I make the terminal font bigger?
Yes. Select Terminal Preferences from the Settings menu and
enter a larger size.
[10.2] Why does onscreen text look so crummy in anything but 9 or
12 point?
ZTerm uses its own terminal font for 9 and 12 point, but uses
Monaco for other sizes. If you want to see ANSI graphics, it is
essential that you select 9 or 12 point. Monaco doesn't contain
the special characters needed for ANSI emulation.
A font-morphing wiz could help Dave Alverson and ZTerm users by
creating, say, 10 and 11 point sizes of the ZTerm font. Contact
Dave Alverson if you're interested.
[10.3] Will ZTerm save text files in something other than
TeachText?
Yes. To change the application ZTerm saves text files in, choose
General Preferences from the Settings menu and choose a new file
creator. TeachText can't open files larger than 32K, so this
feature is especially useful if you save large text files.
[10.4] How can I increase the size of the scroll buffer?
ZTerm stores the contents of the scroll buffer in memory. To
increase the memory partition, increase the current size in
ZTerm's Get Info window.
[10.5] Why do some characters get corrupted when I copy text from
my word processor and paste it into ZTerm?
The characters you've pasted are illegal on the system you're
logged in to. A lengthy explanation follows.
On the Macintosh, all eight bits of a byte are used for
characters, producing 256 possible characters (two to the eighth
power is 256), though some of these are dead keys, command
keys, etc. Mainframes use only seven bits for text, producing
only 128 possible characters (two to the seventh power is 128).
This seven bit text is the ASCII standard (American Standard for
Information Interchange, pronounced "ass key"). If you use any
characters which use the eighth bit, the mainframe ignores the last
bit and uses the first seven bits to determine which character to
display.
To avoid illegal characters when composing text for a mainframe,
never use any characters which require pressing the option key.
Also, in your word processor, turn off smart (curly) quotes
(which usually includes smart apostrophes), which use the
eighth bit. When smart quotes are turned on, the word "don't"
usually becomes "donUt" when pasted to a mainframe. And I'll
bet dollars to donUts you donUt want that to happen.
If you need to upload or paste text files containing illegal
eighth bit characters, you can process the file with the Zap
Gremlins command in BBEdit Lite (freeware by Richard Siegel).
[11] Scripting
see also 4.5.
[11.1] How do I know the script is running?
You will see a letter or two in the lower right hand corner of
the terminal window. These letters are abbreviations for the
command the script is preparing to execute. By noting which
commands have executed, you can debug scripts more easily.
These are the abbreviations and their meanings, as provided by
Dave Alverson:
b : beep
s : send
w : wait
wp: wait prompt
wq: wait for quiet
[11.2] How do I cancel a script?
Hold down the command key and type a period. Command-period, AKA
the Universal Mac Distress Code, also cancels printing and
pastes, in ZTerm or most other applications.
[11.3] How do I send an escape in a script?
Use the line:
send "^["
Where "[" is the lowercase left hand bracket.
[11.4] Does a ^M have to be in quotation marks?
Yes
[11.5] Do I have to use the Wait for "blah blah" prompt syntax?
No.
Wait prompt "blah blah"
works just fine.
[11.6] Why is ZTerm sending only part of a line?
When a line begins with the "send" command, ZTerm sends
everything between the first set of quotes and the second set of
quotes. If the string looks like this:
send " "It is not I who am crazy ... It is I who am MAD!!!" ^M"
ZTerm will send a space, since that is what is between the first
and second set of quotes.
[11.7] How can I send quotation marks within a send statement?
ZTerm recognizes four varieties of quotation marks: single quote,
double quote, smart single quote, and smart double quote. If you
begin a send statement with one type, ZTerm won't stop sending
until it reaches another quote of the same type. (It doesn't,
however, care which way the smart quotes face.) For instance,
if the send line looks like this:
send ' "It is not I who am crazy ... It is I who am MAD!!!" ^M'
ZTerm will send everything within the single quote marks
(apostrophes).
If your send string contains double and single quotes, enclose the
string within smart quotes. KeyCaps DA will show you the correct
keys for producing smart quotes in your word processor or text
editor. If you're working with a mainframe system, never enclose
smart quotes within the send string. See 10.5.
[11.8] What does error -49 mean?
It means that the script ZTerm tried to use is open in another
application, such as your word processor. Close the file and try
again.
[11.9] I'm goin' nuts! Why won't my login script run?
There could be a number of reasons.
1. The file may not be in the right place. Login scripts must be
stored in the root level of the ZTerm folder. That is, you
should be able to see the ZTerm application and the script in the
same Finder window using an icon view.
2. The file may not have the correct name. Login scripts should
have the same name as the service, with the ".zts" extension on
the end. If the service is called " MacClique" (note the space),
the script should be called " MacClique.zts", with a space.
3. The script may not be in text only format. ZTerm can only
read text only files (AKA ASCII or plain text), such as TeachText
files. If you write the script with your word processor, be sure
to use the Save As command and select a text only format. If
TeachText can't open the file, it is not in text only format. One
exception: TeachText can't open any file larger than 32K. Or had
I mentioned that already?
4. The script may be an alias. ZTerm doesn't recognize aliased
scripts.
5. There may be something wrong with your login script. To test
your script, select the Run Script command to tell ZTerm to use
the script. If the script doesn't work when run manually, the
script is faulty.
[11.10]Undocumented tip: sending a sig with a script and macro.
UNIX users often include a signature at the end of their
messages. The signature, or sig, often includes the person's
name, email address, position, etc. Sigs are automated in UNIX.
ZTerm users can easily send a sig with their email by creating a
sig script.
Launch your favorite text editor or word processor, set the font
to Monaco, and write the sig as you want it to appear. Then
enclose each line of text in quotation marks, type send in front
of each line, and include a ^M before the second set of
quotation marks. To send a blank line, send a ^M by itself.
Save the script in the ZTerm folder and name it sig. If you use
a word processor, be sure to use Save As and save in a text only
format.
Example:
send "************************************************************^M"
send "Leslie Jones ljo...@utkvx.utk.edu AOL: LeslieJonz^M"
send "^M"
send "Made from only the freshest electrons and 100% pure ASCII to^M"
send " insure that you have the best possible email experience.^M"
send "************************************************************^M"
Launch ZTerm and choose Edit Macros from the Macro menu. Name
the new macro sig, and type "(option-r)sig" in the Macro String
field. Now your sig is only a macro away. You could also use
the Run Script command under the Macro menu, though it wouldn't
be as convenient. Enjoy!
[11.11]Other uses of scripts and macros
Scripts and macros can eliminate a lot of needless typing. The
following is something I cooked up to speed up Kermit transfers
on the VAX. (I'm really looking forward to Kermit support in the
next version of Zterm!)
Example:
wait "kermit>" prompt
send "SET BLOCK_CHECK_TYPE THREE_CHARACTER_CRC_CCITT^M"
wait "kermit>" prompt
send "SET SEND PACKET_LENGTH 1000" "^M"
wait "kermit>" prompt
send "SET RECEIVE PACKET_LENGTH 1000" "^M"
As in the example in 11.10, you could trigger this script with a
macro or with the "run script" command when you enter the Kermit
utility on the VAX. With a little thought, you can probably think
of some routine operation you could automate with a script and
macro.
And finally, an Easter Egg. Open a copy of ZTerm in ResEdit.
Doubleclick on the STR resource, then doubleclick on the ID=0
resource. Inside you will see a line from Monty Python. Enjoy!
Send in those corrections and tips! And send Dave your shareware
fee!