Commodore 64/128 Kermit User's Guide

                       Version 2.2

Electronic Version -- Copyright 1988  Dr. Evil Laboratories

                   All rights reserved




















                 Commodore 64/128 Kermit
    Version 2.0, 2.1, & 2.2 enhancements by Ray Moody
            User's Guide v2.2 by Kent Sullivan

                      Kent Sullivan
                    16611 NE 26th St.
                    Bellevue, WA 98008



                     Rev. 4 - 1/1/92












                                                          i


Summary: C-64/128 Kermit Version 2.2



 What Kermit Is


The term "Kermit" denotes both a specific protocol for
transferring files between computers AND those computer pro-
grams which can do the transferring.  Kermit as a protocol
is often called the Kermit Protocol to distinguish it from
an actual computer program.  Various versions of the Kermit
program for different computers also have longer, official
names to distinguish themselves.  Commodore 64/128 Kermit is
a public-domain telecommunications program that utilizes the
Kermit protocol for file transfers.

C-64/128 Kermit was originally known as Kermit-65.  Begin-
ning with version 2.0, the name was officially changed to
Commodore 64/128 Kermit to reflect the fact that support for
the C-128's 80 column screen had been added.

The "65" in Kermit-65 signifies that the Commodore 64 has as
its CPU the 6510A, a member of the 6500 series family, which
also includes the Apple II.  In fact, Kermit for the Commo-
dore 64/128 was originally translated from Apple II Kermit.


 Recent Improvements


The following describes the improvements made to Kermit for
version 2.2.  If you are a first-time user of Kermit, you
may want to move directly to the Introduction section.  As
this manual was originally intended to accompany v2.1
(released in May, 1988), also included is a summary of v2.1
improvements.

V2.2 really only has one significant change from v2.1: reli-
able communication at 2400 bps is now possible (but ONLY
when using the C-128 screen driver).  There was quite a bit
of interest in this feature so we decided it was worth
adding right away, before any of the other scheduled
additions/fixes listed in the Future Plans for Kermit sec-
tion of Appendix A.

The main improvements to v2.1 are as follows:

+ Enhanced DEC VT-100 terminal emulation with support for
  the VT-100 keypad.  Kermit should now work fine with
  operating systems such as VMS.  V2.1 has some VT-102
  features added as well: Insert/Delete Line/Character.











ii


+ Limited Tektronix 4010 graphics terminal emulation.  Ker-
  mit can plot both graphics and text with a resolution of
  320 x 200 (C-64) or 640 x 200 (C-128).

+ Commodore 128 grey key and numeric keypad support.  The
  grey keys and the numeric keypad, not normally accessible
  on a C-128 in C-64 mode, are active within Kermit.

+ A special file-type for transferring C Power (now sold as
  Power C) source code files.  You can now download C
  source code ASCII files as well as upload C Power source
  files.  All necessary character translations are handled
  automatically.

+ A screen driver for the Batteries Included BI-80 80
  column card.  This device gives a display as nice as the
  Commodore 128's 80-column hardware, but lacks many attri-
  butes such as blinking and bold.


In addition to these major improvements, many smaller
changes were made.  Several bugs were squashed that affected
VT-100 emulation, the STATUS command, and other things.  For
related information, please see Appendix A: Implementation
Notes.


 Hall of Fame


Many people have worked on Commodore 64/128 Kermit since its
first appearance in March, 1984, continually adding improve-
ments and fixing bugs.  Below is a list of the people who
have worked on the C-64/128 Kermit project over the years.

Programming:

   David Dermott
   Eric Lavitsky
   Michael Marchiondo
   Ray Moody
   Frank Prindle

Documentation:

   Eric Lavitsky
   Kent Sullivan
















C-64/128 Kermit User's Guide                        Page iii


                    Table of Contents


Summary: C-64/128 Kermit Version 2.2 ..................    i
 What Kermit Is ......................................    i
 Recent Improvements .................................    i
 Hall of Fame ........................................   ii
Introduction: The Kermit User's Guide .................    1
 What You Need to Know ...............................    1
 Recommended Texts ...................................    1
 Kermit Availability .................................    2
 Syntax of Commands ..................................    2
Tutorial: Introduction to Kermit ......................    3
 Booting Kermit ......................................    3
 Choosing a Screen Driver ............................    3
 The Three Modes of Kermit ...........................    4
   Command Mode ......................................    4
   Connect Mode ......................................    6
   File-Transfer Mode ................................    7
Troubleshooting: If You Have Problems .................   10
Emulation: Terminal-Type Features .....................   11
 VT-100 Emulation ....................................   11
 VT-102 Emulation ....................................   12
 VT-52 Emulation .....................................   12
 Tektronix 4010 Emulation ............................   13
   Alpha Text Mode ...................................   13
   Point Plot Mode ...................................   14
   Vector Plot Mode ..................................   14
Displays: Screen Driver Comparison ....................   15
 C-128 80 Column Driver ..............................   15
 C-64 80 Column Driver ...............................   15
 Batteries Included BI-80 Driver (Standard) ..........   15
 Batteries Included BI-80 Driver (Custom) ............   16
 C-64 40-Column Driver ...............................   16
File Transfers: Transferring Files ....................   17
 Choosing the Correct File-type ......................   17
   ASCII File-type ...................................   17
   Binary File-type ..................................   17
   C-Power File-type .................................   18
   PETSCII File-type .................................   18
   Script File-type ..................................   18
 Setting the File-byte-size ..........................   18
 Using Eight-bit-quoting .............................   19
 Special File-Transfer Mode Features .................   19
Reference: Command Descriptions .......................   20
 Command List ........................................   20
 Command Summary .....................................   20
   Bye ...............................................   20
   Connect ...........................................   20
   Directory .........................................   21
   Disk ..............................................   21
   Exit ..............................................   22
   Finish ............................................   22










Page iv                         C-64/128 Kermit User's Guide


   Get ...............................................   22
   Quit ..............................................   22
   Receive ...........................................   23
   Restore ...........................................   23
   Save ..............................................   23
   Send ..............................................   24
   Set ...............................................   24
     Set Baud ........................................   24
     Set Bold ........................................   25
     General Notes on Color ..........................   25
     Set Border ......................................   25
     Set Character ...................................   26
     Set Dark-background .............................   26
     Set Debugging ...................................   26
     Set Eight-bit-quoting ...........................   26
     Set Escape ......................................   27
     Set File-byte-size ..............................   27
     Set File-type ...................................   27
     Set File-warning ................................   28
     Set Flow-control ................................   28
     Set IBM .........................................   28
     Set Light-background ............................   29
     Set Local-echo ..................................   29
     Set Parity ......................................   29
     Set Receive .....................................   30
       Set Receive Eight-bit-quote-char ..............   30
       Set Receive End-of-line .......................   31
       Set Receive Packet-length .....................   31
       Set Receive Pad-char ..........................   31
       Set Receive Padding ...........................   31
       Set Receive Quote-char ........................   32
       Set Receive Timeout ...........................   32
     Set RS232-registers .............................   32
     Set Screen-driver ...............................   33
     Set Send ........................................   33
     Set Terminal-emulation ..........................   34
     Set Word-size ...................................   34
   Show ..............................................   34
   Status ............................................   35
Appendix A: Implementation Notes ......................   36
 Summary of Kermit Capabilities ......................   36
 Known Restrictions ..................................   36
 Future Plans for Kermit .............................   37
Appendix B: Default Initialization Settings ...........   38
Appendix C: Keyboard Layouts ..........................   39
 Commodore 64 Map ....................................   39
 Commodore 128 Map ...................................   40
Appendix D: UNIX (TM) Termcap Settings ................   41
Appendix E: BI-80 Replacement ROM Information .........   42














C-64/128 Kermit User's Guide                          Page 1


Introduction: The Kermit User's Guide



 What You Need to Know

This manual introduces Kermit to new users as well as pro-
vides an organized reference for experienced users.  Some
basic knowledge of computers is required to use Kermit.  New
users should understand the basics of computers and telecom-
munications.  Please see Recommended Texts below for a short
list of books recommended for background knowledge.

Don't become frustrated if you have problems initially using
Kermit.  Careful reading of this manual will clear up most
problems that you might have.  If you have questions, don't
be afraid to ask around.  Kermit is a very popular program,
so many people know how to use it.  You may direct any ques-
tions to Ray or me at the address on the front of this
manual as well.

This manual is available in both laser-printed and elec-
tronic form.  This, the electronic version, comes as part of
the standard Kermit disk from most distribution sites
(including Kent Sullivan).  The electronic version
can be printed out using most any sequential file printer or
word processor since all special features like underlining
and bold have been removed.  The laser-printed version of
the manual is available from Kent Sullivan for $7.50
(US funds ONLY; WA residents please add 8.2% sales tax).


 Recommended Texts

The following is a short list of recommended background
texts.  The area covered is listed first, followed by the
title of the text and publishing information.

  + Basic Commodore Computing: Commodore 64/64C/128 User's
    Guides.

  + Basic Telecommunications: Compute!'s Telecomputing on
    the Commodore 64, Compute! Books.

  + The Kermit Protocol: Kermit: A File-Transfer Protocol
    for Universities, 2 parts, Byte magazine, June & July,
    1984, & Kermit, A File Transfer Protocol, Digital Press
    (1987).















Page 2                          C-64/128 Kermit User's Guide


 Kermit Availability

All Kermit distribution for versions that Ray and I have
worked on (versions 2.0 and later) is now handled by Kent
Sullivan.  In the past, Dr. Evil Laboratories handled
distribution, but that company is now out of business.
If you have any questions or recommendations
concerning Kermit, please contact Kent Sullivan.  Kermit
is also available for download on many local BBS systems
and national information services.


 Syntax of Commands

Most Kermit commands are simple English phrases.  Commands
are represented in this document in capital letters (i.e.
CONNECT) to set them off from any surrounding text.  Many
standard representations for keys are used.  Below is a
table showing the representations and the corresponding
keys:

   Representation       Actual key

   <C=>                 Commodore
   <CAPS LOCK>          Caps Lock *
   <CLR>                Clear (Shifted Home)
   <CTRL>               Control
   <DEL>                Delete
   <ESC>                Escape *
   <F1>,<F2>,...,<F8>   Function key 1,2,...,8
   <HELP>               Help *
   <HOME>               Home
   <INST>               Insert (Shifted Delete)
   <LINEFEED>           Linefeed *
   <RETURN>             Return
   <SPACE>              Spacebar
   <STOP>               Stop
   <TAB>                Tab *

(*) These keys are available on the C-128 keyboard only.

For a list of keys that have been re-defined to implement
special characters, please see Appendix C: Keyboard Layouts.
























C-64/128 Kermit User's Guide                          Page 3


Tutorial: Introduction to Kermit



 Booting Kermit

Kermit is written for the Commodore 64 and 128 (in 64 mode).
One Commodore disk drive (or compatible) is required, and a
modem.  Almost any modem will work except the Commodore
1660.  To boot Kermit, follow these easy steps:

For Commodore 64:

1. Turn on monitor, drive, and computer.
2. Insert the Kermit disk, label side up, into device 8,
  drive 0, and close the drive door.
3. Type: LOAD ""BOOT"",8,1 and press <RETURN>.

For Commodore 128:

1. Insert the Kermit disk, label side up, into device 8,
  drive 0, and close the drive door.
2. Turn on the monitor, drive, and computer.
3. Kermit will automatically boot on power-up.

Once loaded, you should see the following in black on a grey
screen with a blue border:

Commodore 64/128 Kermit version 2.2 (70)
Type '?' for help

Kermit-65>

A blinking block cursor should be just to the right of the
">".  If you don't see this on your screen, turn off all
your equipment and try again.  If you still have problems
booting Kermit, please see the Troubleshooting section.


 Choosing a Screen Driver

Kermit can use many kinds of displays.  You can use either
40 columns or 80 columns (software-driven) on a standard C-
64, or, if you have a Batteries Included BI-80 80-column
card, you can use it too.  All of these options are avail-
able on a C-128, plus the C-128's built-in 80-column
display.  Kermit defaults to the setting found in its ini-
tialization file.

Each of the screen drivers has its advantages and disadvan-
tages.  Not all of the drivers, for example, are capable of
supporting features such as underlining or bold.  Please see
the Screen Driver Comparison section for further details.










Page 4                          C-64/128 Kermit User's Guide


If you want to switch to a different screen driver now,
please see the example given in the Command Mode section
below.


 The Three Modes of Kermit

Kermit has three basic operational modes: Command, Connect,
and File-Transfer.  In Command mode, you can communicate
directly with Kermit to change various program settings and
also enter either of the two other modes.  In Connect mode
you can communicate with another computer (known in many
other terminal programs as Terminal mode).  In File-Transfer
mode you may send to and receive files from the computer to
which you are connected.  Let's begin by learning about Com-
mand mode and the Kermit parser.

   Command Mode

When Kermit first boots, you are placed automatically in
Command mode.  From here you can communicate with the pro-
gram by typing commands at the "Kermit-65>" prompt.  Command
mode is really the program's command "parser", which is that
part of a computer program which takes your command input
and tries to interpret it and then execute the appropriate
action.

Kermit's command parser is very easy to use.  Let's begin
with a look at the main level commands.  At the top of the
screen you should see "Type '?' for help".  So let's do just
that: Type a "?".  A list of Kermit's main commands (there
are 16 of them) should appear on the screen in two columns
like this:

   Kermit-65>? Keyword, one of the following:
   bye         connect
   directory   disk
   exit        finish
   get         help
   quit        receive
   restore     save
   send        set
   show        status

The "?" is a very helpful feature of the command parser.
You can type a "?" at ANY point in the middle of a command
to receive a list of the valid ways to complete the command.
A complete list of commands may be found in the Command
Descriptions section.

Let's try a slightly more difficult command to give you
practice with the parser.  For example, let's say we want to











C-64/128 Kermit User's Guide                          Page 5


change which screen display we are using.  After looking at
the various main level commands, we deduce that the SET com-
mand might be the way to get the job done.  Type: SET fol-
lowed by a space and then a "?".  Kermit should respond with
a list that looks like this:

   Kermit-65>set ? Keyword, one of the following:
   baud                 bold
   border               character
   dark-background      debugging
   eight-bit-quoting    escape
   file-byte-size       file-type
   file-warning         flow-control
   ibm                  light-background
   local-echo           parity
   receive              rs232-registers
   send                 screen-driver
   terminal-emulation   word-size

After looking through this list, we can determine we need
the SCREEN-DRIVER sub-option.  Notice that the parser con-
veniently reprinted the SET command so that we can continue
where we left off.  So, type: SCREEN-DRIVER followed by a
space and a "?".  Now we have another list, looking like
this:

   Kermit-65> set screen-driver ? Keyword, one of the following:
   40-columns     80-columns
   bi-80          commodore-128
   custom-bi-80

It should now be obvious what to do to change to a different
screen driver.  Try it out.  Now, let's go back to 80
columns.

One thing you are probably wondering is, "Do I have to type
ALL of that out?" Luckily, no, you don't.  The left arrow
key (upper left corner of the keyboard) is the "Escape" key
in Kermit.  This key will spell out a command one level at a
time for you if you provide it with the first few characters
of the command.  Note: if you are using a C-128, you can
also use <ESC>.  To try this out, type: SET SC and hit the
left arrow key.  Kermit should spell out SCREEN-DRIVER and
put a space at the end.  Notice that we had to use "sc" and
not just "s".  Consulting the list above, we can see why.

Both SEND and SCREEN-DRIVER begin with an "s".  If we had
just typed "s", Kermit would have chosen SEND because it is
the first command in the list that meets the specified
requirements.  The same applies for why we spelled out SET.
SEND is before SET in the main command list, making the left
arrow useless.  So keep in mind that you must always use











Page 6                          C-64/128 Kermit User's Guide


enough characters to uniquely identify the command before
hitting the left arrow.  Ok, let's finish our command.  Type
"8" and hit the left arrow.  Kermit should finish the com-
mand.  Now press <RETURN>.

Presto!  We're back to 80-column mode, saving 19 character's
worth of typing.  Not all commands are nearly this long, but
the left arrow (along with the "?") can be very helpful.

NOTE: Once you are familiar with the parser, you can save
even more keystrokes by using just the abbreviations for the
commands.  In other words, you don't HAVE to use the left
arrow key.  For example, you could just type "SET SC 8" to
set the screen driver to C-64 80 columns.

There are a few other useful tricks to know about the
parser.  They are:

 1) Pressing <CLR> or <CTRL> - <L> instead of <RETURN> to
    execute a command will clear the screen first and then
    execute the command.

 2) Pressing <CTRL> - <W> while typing a command will back
    the cursor up to the previous word, erasing any associ-
    ated text.

 3) Pressing <CTRL> - <U> while typing a command will can-
    cel the command by backing the cursor up to the
    "Kermit-65>" prompt.

   Connect Mode

Connect mode is the mode in which you will spend most of
your time while using Kermit because it is in this mode that
you can communicate with another computer (often known as
the remote host).  Now let's prepare to connect to another
computer.  Type: CONNECT.  This command will take us out of
Command mode and into Connect mode.  If you type CONNECT
then hit <CLR>, the screen will be cleared before entering
Connect mode.  Every time you enter Connect mode, you will
see the message:

[Connecting to host: Type ^Y c to return]

This tells us that we are in Connect mode and that to return
to Command mode we should type <CTRL> - <Y> then type "c".
Try it out.  Then return to Connect mode.

Now we will call the other computer.  A Commodore 1670 or
other Hayes compatible modem can dial directly from Connect
mode via its built-in dialing commands, but with most other
modems you will have to dial manually.  In other words, Ker-
mit does NOT have the capability to auto-dial a modem










C-64/128 Kermit User's Guide                          Page 7


directly.  Also please note that Kermit currently does NOT
work with the Commodore 1660 modem.  It will, however, be
supported in a future version.  Please see Appendix A:
Implementation Notes for further information.

We need to check a few things before dialing.  Each computer
you connect to may have different baud, parity, and word-
size requirements.  Kermit defaults to the settings found in
the initialization file: 1200 bps transmission speed, eight
bit word length, no parity, and VT-100 terminal emulation.
These settings may be different if you did not get your copy
of Kermit from Kent Sullivan.  To adjust any of these param-
eters, escape back to Command mode and use the SET command
as we did above to change the screen-driver. For example, to
change to 300 bps transmission speed, type: SET BAUD 300.
Remember to use the "?" to get help at any level.

If you wish to save any changes you make as new defaults,
please see the SAVE command explanation in the Command
Descriptions section.

Once you have set up your communications parameters
correctly, all that's left to do is dial the phone and con-
nect to the remote host.

   File-Transfer Mode

Once you have connected to a remote host you may wish to
send and/or receive files.  With Kermit you can send and
receive most any kind of file, as Kermit has automatic
translation features for many types of files.  For example,
you can automatically convert a PETSCII (Commodore's special
ASCII) text file to ASCII when sending it to another
machine, and vice versa.  For a list of the various file-
types supported, see the SET FILE-TYPE command explanation
in the Command Descriptions section.

The procedures for transferring files with Kermit can differ
widely depending on the system to which you are connected.
This tutorial can't possibly cover every possible situation.
Instead, we will walk through a simple transfer and point
out some things of which you should be aware.  The MOST
important thing when attempting to transfer files with Ker-
mit is to have your file-transfer parameters set correctly!
You may want to skip ahead to the Transferring Files section
for more information.

Now, we will show two examples: 1) uploading a PETSCII
sequential text file, converting it to standard ASCII, and
2) downloading a C language program source code file for use
with the C Power (now sold as Power C) C compiler for the
64/128.











Page 8                          C-64/128 Kermit User's Guide


Text File:

We are sending and the other end is receiving.  In note
form, here is what we need to do:

 1) Check file-transfer parameters!!  Make sure the FILE-
    TYPE is set to PETSCII.

 2) Start Kermit on the host machine using the appropriate
    command.

 3) Tell the host Kermit to RECEIVE the file.

 4) Escape to Command mode in our Kermit (<CTRL> - <Y> then
    <"c">).  Type SEND followed by the filename of the Com-
    modore text file you wish to send.

When the two Kermits have finished transferring the file,
you will be returned to Command mode.  Type: CONNECT and
continue with your login session.

NOTE: The recommended parameters (work most of the time)
are:

 File type is PETSCII
 File byte size is EIGHT-BIT

Everything else should retain its default value.


C Power File:

We are receiving and the host is sending.  In note form,
here is what we need to do:

 1) Check parameters!!  Make sure the FILE-TYPE is set to
    C-POWER.

 2) Start Kermit on the host machine using the appropriate
    command.

 3) Tell the host Kermit to SEND the file.

 4) Escape to Command mode in our Kermit (<CTRL> - <Y> then
    <"c">).  Type RECEIVE followed by the filename of the C
    source code file you wish to receive in C Power format.

 5) When the two Kermits have finished transferring the
    file, you will be returned to Command mode.  Type: CON-
    NECT and continue with your login session.

NOTE: The recommended parameters (work most of the time)
are:










C-64/128 Kermit User's Guide                          Page 9


 File type is C-POWER
 File byte size is EIGHT-BIT
 Word size is EIGHT-BIT

Everything else should retain its default value.

If you have persistent problems with transferring files,
don't hesitate to ask someone for help.  Also try VERBOSE
debugging to see more of what is happening during transfers.
Kermit is very flexible, but flexible can mean complicated!

We now have completed the introductory tutorial.  The next
section of this manual, Troubleshooting, may help if you
have some problems using Kermit.  The Command Descriptions
section describes in detail each of Kermit's commands and
will prove to be invaluable to successfully using this pro-
gram.  Good Luck with Kermit!














































Page 10                         C-64/128 Kermit User's Guide


Troubleshooting: If You Have Problems

Here are some common problems and their most likely solu-
tions.  The best troubleshooting usually comes from someone
who has experience using Kermit, but this isn't always
available.

 1) Problem: Kermit won't boot.

    Solution: Make sure all of your equipment is hooked up
      correctly.  If the red error light blinks on your
      disk drive, you might a) have a bad disk or b) be
      missing the initialization file, KERMIT.INI.  See the
      Known Restrictions section of Appendix A for more
      information.

 2) Problem: I can't get out of Connect mode.

    Solution: Remember to type <CTRL> - <Y>, let up, then
      hit the letter "c".  The escape character might also
      be set to something other than <CTRL> - <Y>.  You can
      check it with the SHOW ESCAPE command and change it
      with the SET ESCAPE command.

 3) Problem: When I connect to a host machine, all I get is
      garbage.

    Solution: Check the baud, parity and word-size parame-
      ters.  You may have to hang up and try again if you
      change some of the parameters.

 4) Problem: I can't see what I am typing, but I see what
      the host machine is sending.

    Solution: Check to see if the host machine is supposed
      to echo characters back to you.  You might need to
      SET LOCAL-ECHO ON.

 5) Problem: I downloaded a binary file but the file I
      received was garbage.

    Solution: Remember to SET EIGHT-BIT QUOTING ON.  Also,
      check the file type on the host Kermit.  It should be
      set to BINARY as well as on your end.

 6) Problem: All of a sudden output stopped appearing on
      the screen and nothing I type shows up either.

    Solution: You may have hit the <C=> key accidently,
      which pauses all data transmission temporarily.
      Press it again to re-start transmission.












C-64/128 Kermit User's Guide                         Page 11


Emulation: Terminal-Type Features

Kermit is a very powerful terminal emulator.  For text
displays, it can emulate both a VT-100 (with or without
added VT-102 features) and a VT-52.  For graphics work, Ker-
mit has limited Tektronix 4010 emulation.  Emulation can be
turned completely off as well.

It is beyond the scope of this manual to present each of the
escape sequences that these terminals use.  This section
will instead describe in general terms what each of the emu-
lations can do, and provide a table of which Tek commands
are supported.


 VT-100 Emulation

Most people will use Kermit's VT-100 emulation more than any
other.  The DEC VT-100 terminal is an industry standard, and
so is supported on virtually every medium-to-large-sized
operating system.  The VT-100 terminal provides you with
many powerful features that make communicating with a remote
host (especially at speeds under 9600 bps) much more effi-
cient and therefore, quicker.

The major VT-100 features are summarized below:

 1) Scrolling regions.  This feature of the VT-100 allows
    selected parts of the screen to be scrolled, cutting
    down on character transmission greatly-- making
    telecommunicating faster.

 2) Text attributes.  Text on a VT-100 can be displayed in
    normal or bold, and be vanilla, underlined, or blinking
    (or any logical combination), and displayed on either a
    dark or light background.  Kermit has the added feature
    of selectable colors for text, bold text, dark-
    background, light-background, and border for most
    screen drivers.

 3) Numeric keypad.  A VT-100 has a numeric keypad that
    includes four personal function (PF) keys.  Kermit has
    this feature on both a C-64 & 128.

 4) Graphics characters.  A VT-100 has a wide range of
    graphics characters that can be used for graphs and
    charts.

 5) Status line.  Kermit has an extra 25th screen line that
    can be used as a system status line on operating sys-
    tems such as UNIX (TM).  Note that a standard VT-100
    terminal does NOT have a status line.











Page 12                         C-64/128 Kermit User's Guide


For a chart showing what keys have been re-defined in Ker-
mit, please see Appendix C: Keyboard Layouts.  Also, if you
are using Kermit on a machine running UNIX (TM), please see
Appendix D: UNIX (TM) Termcap Settings, for information on
how to customize your termcap to take full advantage of
Kermit's features.

Not all of the VT-100's features were feasible to support in
Kermit.  Below is a list of the restrictions to the VT-100
emulation:

 1) No 132 column mode
 2) No double high/double wide characters
 3) Limited terminal reports (only the important ones are
    emulated)
 4) No foreign character sets
 5) No smooth scrolling
 6) No terminal LEDs

For related information, please see the Screen Driver Com-
parison section.


 VT-102 Emulation

Only the four most important VT-102 terminal features are
present in Kermit.  These are Insert Character, Delete Char-
acter, Insert Line, and Delete Line.  The Insert Character
function, as on a real VT-102 terminal, is really a switch-
able Insert/Replace mode.

These additional features allow MUCH faster, more efficient
communication, since the C-64/128 handles much of the time-
consuming work (inserting and deleting lines & moving char-
acters around on a line).  If you are able to utilize the
VT-102 features, you will be pleasantly surprised at how
much quicker certain operations are, such as editing text
files.


 VT-52 Emulation

Kermit emulates a VT-52 terminal as a subset of its VT-100
emulation, just as a real VT-100 terminal does.  It is a
complete emulation, except that the graphics character set
is the VT-100's, not a true VT-52's.  All of the real VT-100
terminals we have seen also use the VT-100 character set in
















C-64/128 Kermit User's Guide                         Page 13


place of the true VT-52 set in VT-52 mode.


 Tektronix 4010 Emulation

Kermit supports a limited kind of Tektronix 4010 emulation.
Two resolutions are supported: 320 x 200 (C-64) and 640 x
200 (C-128 80 col.).  You can use the Tektronix emulation
even if you are using a BI-80 card, as Kermit will automati-
cally switch between the appropriate graphics screen and the
BI-80.  All plots and text are plotted using the current
character color and are plotted on the current background
color.  Both the 320 x 200 and 640 x 200 screens are a lit-
tle too wide horizontally scale-wise compared with a real
Tektronix 4010 terminal.  We thought it was better to use
the full width of the screen given the limited resolution
than to have perfect scaling.

Kermit supports three Tek modes: Alpha Text, Point Plot, and
Vector Plot, for a total of eight different Tek commands.
The commands are:

Sequence                Action

<ESC> FF (Form Feed)    Activate Tek emulation and clear screen
RS (Record Separator)   Switch to incremental plot mode
US (Unit Separator)     Switch to alpha text mode
GS (Group Separator)    Switch to vector plot mode
CAN (Cancel)            Deactivate Tek emulation and clear screen

Tek mode is also exited when many VT-100/52 escape sequences
are received.  These include any sequences beginning with
<ESC> "[" or <ESC> <upper-case letter>.  Also, once Tek mode
is activated, any further <ESC> FF sequences received will
clear the current graphics screen.  Finally, the current
text screen is not saved when Tek mode is entered, and the
current Tek screen is not saved when Tek mode is exited.

   Alpha Text Mode

Alpha Text mode uses the standard ASCII character set and
can display 79 columns by 24 lines of text if Tek mode is
entered from any of the screen drivers except C-64 40
columns.  If Tek mode is entered from the C-64 40 column
screen driver, up to 40 columns of text can be displayed.

This mode is used generally to label graphs.  No on-screen
















Page 14                         C-64/128 Kermit User's Guide


editing should be attempted while in this mode.

   Point Plot Mode

In this mode the drawing pen is given a direction to move
and whether to have the pen up (no line drawn) or down (line
drawn) when moving.  This allows considerable freedom in
drawing odd-shaped objects.

   Vector Plot Mode

In Vector Plot Mode, just the endpoints of a line to be
drawn are specified.  This allows lines to be drawn quickly,
since not all the points on the lines must be specified
individually.
















































C-64/128 Kermit User's Guide                         Page 15


Displays: Screen Driver Comparison

Each of Kermit's screen drivers has different capabilities.
Below is a discussion of the various limitations of the dif-
ferent screen drivers.


 C-128 80 Column Driver

This driver is the best that Kermit has.  All video attri-
butes are supported with no limitations, and the highest Tek
resolution (640 x 200) is available. The only feature not
available with this driver, that is on some others, is a
border.  This is because the C-128's 80 column chip (the
8563 VDC) does not support a border.

One note: many people who use the 80-column mode on the C-
128 do so on a monochrome monitor.  With this setup, only
THREE colors are possible: bright, normal, and black.  This
can pose a problem when trying to set up readable light- and
dark-background screens.  One solution to this is to buy a
grey scale attachment for the 80-column video cable to pro-
vide a wider range of grey shades.


 C-64 80 Column Driver

This screen driver is traditionally the most popular, mainly
because more people have C-64s than C-128s.  When using this
driver, even on a C-128, the Tek 320 x 200 mode will be used
for graphics.  This driver is full-featured except for one
minor limitation.

Because of the way hi-res graphics screens are created on a
C-64, if two characters with different attributes are placed
adjacent horizontally, the first character sometimes will
not have the correct attribute.  For example, if a bold
character is printed immediately followed by a flashing
character, the bold character may change to a flashing char-
acter.  This can easily be avoided by inserting a space
between the two characters.


 Batteries Included BI-80 Driver (Standard)

The BI-80, an excellent 80-column card for the C-64 (also
C-128 in 64 mode), is no longer in production and generally
very hard to find used.  We added support for it because it
offers the same text resolution as the C-128's 80 column
screen, making it clearer than the standard C-64 80 column
screen.

There are several limitations when using this driver.  The










Page 16                         C-64/128 Kermit User's Guide


main limitation is that the BI-80 character set is not rede-
finable through software, meaning that some characters like
the braces, tilde, underscore, etc., are not available.
Also, the VT-100/52 graphics character set is not available.
A closest match was made on many of the characters, but some
of them look pretty unrecognizable.

Also, the only character attribute available is reverse.
All other modes, such as blinking, bold, and underlined, are
mapped into reverse, so you can at least tell when the text
is not plain vanilla.

Finally, no color change options are available as the BI-80
card operates only in black and white mode with no border.


 Batteries Included BI-80 Driver (Custom)

This driver is for use with the custom BI-80 character ROM
available from Kent Sullivan.  This driver makes use
of the re-defined characters in the replacement ROM.  The
full ASCII character set is available, as well as the VT-
100/52 graphics character set.  All other restrictions from
the standard BI-80 driver apply.

Please see Appendix E: BI-80 Replacement ROM Information for
details on how to obtain a replacement character ROM.


 C-64 40-Column Driver

This driver supports all character attributes and screen
functions.  Its main limitation is its width-- 40 columns is
generally not very useful when communicating with most large
computer systems.




























C-64/128 Kermit User's Guide                         Page 17


File Transfers: Transferring Files

Transferring files with Kermit isn't really any more diffi-
cult than with most other Commodore telecommunications
packages/protocols.  In fact, Kermit is much more flexible--
but flexibility can be confusing.

There are three major parameters to be concerned with when
transferring files.  They are: 1) File-type, 2) File-byte-
size, and 3) Eight-bit-quoting.  Let's discuss each of them
in turn, beginning with File-type.


 Choosing the Correct File-type

Kermit currently supports five different file types. They
are:

   a) ASCII
   b) Binary
   c) C-Power
   d) PETSCII
   e) Script

Each of these file types has a distinct use.  When to use
one file-type over another can be confusing initially.  So,
we'll discuss each of them separately, starting with ASCII.

   ASCII File-type

This file-type is used a lot less often than you might think
at first.  Because Commodore computers (except for the Ami-
gas and PCs) use their own, modified character set arrange-
ment (PETSCII), most text files you transfer to and from
your Commodore will be PETSCII files, not standard ASCII.

You will use this file-type only when you a) wish to down-
load a standard ASCII file and NOT convert it to a form
usable on your Commodore (PETSCII), or b) you have, for some
reason, a standard ASCII file that you wish to upload to
another computer.

If you happen to choose this file-type when you really
needed PETSCII, you will be able to tell immediately, as the
case of all the text will be reversed.

   Binary File-type

The Binary file-type is not used as often as some of the
other file-types.  This file-type is used to transfer Commo-
dore programs that are executable (i.e. a BASIC program or a
machine language game), or memory images such as graphics
screens.  In other, more technical, terms, this file-type










Page 18                         C-64/128 Kermit User's Guide


allows you to transfer files without performing any charac-
ter translation.  Note that it's generally a good idea to
have Eight-bit-quoting set on when transferring binary
files, but more about that below.

   C-Power File-type

This file-type is designed specifically to transfer source
code files for use with the C Power (now sold as Power C) C
compiler for the C-64 and C-128.  C Power files have, in
addition to the standard PETSCII file-type base, a few re-
defined characters that are needed for C programming, such
as braces, the underscore, the pipe, etc.

When you use this file-type, any standard C source code
files you download to your Commodore will be converted to C
Power format.  On the other side of the coin, any C Power
files you upload to another computer will be converted to
standard ASCII source code files.

   PETSCII File-type

This file-type is the most common file-type, and so it is
the default Kermit file-type.  When you use this file-type,
any Commodore text file you upload to another computer will
be converted to standard ASCII text.  Going the other direc-
tion, when you download a standard ASCII text file to your
Commodore, it will be translated to PETSCII.

If you choose this file type when you really meant ASCII,
the case of all the letters in the text will be reversed.

   Script File-type

This is a special file-type for use when transferring files
for the Commodore Speedscript word processor (Compute! Pub-
lications).  Speedscript files have a special file format.
If you want to download a standard text file from another
computer for Speedscript, you must use this format.  The
same applies for sending a Speedscript file to another com-
puter that uses standard ASCII text files.  Note that no
attempt is made to translate any of Speedscript's special
text formatting or control codes-- you will have to make the
appropriate changes manually.


 Setting the File-byte-size

This parameter is often confusing because it sounds a lot
like the Word-size parameter.  These two parameters are
actually quite different.  Whereas Word-size describes the
width of the data path, File-byte-size describes the size of
the data words within files being transferred.










C-64/128 Kermit User's Guide                         Page 19


This parameter can always be left set to EIGHT-BIT.  Techni-
cally, it is really only necessary to be set to EIGHT-BIT
when you are transferring Binary or PETSCII files.


 Using Eight-bit-quoting

This feature allows you to transfer Binary or PETSCII files
to and from computers that would normally be unable to han-
dle them.  Eight-bit-quoting allows you to send files with
eight-bit data words over a seven-bit data path.  This
parameter can always be left set to ON.

For instance, I often communicate with a machine where my
communications parameters have to be Word-size of Seven-bit
and Even Parity.  In this kind of environment I would nor-
mally be unable to send a program file to a friend on that
machine, as program files are Binary (eight-bits).  But if I
make sure Eight-bit-quoting is ON, everything will be fine.

Technically, Eight-bit-quoting prefixes each byte of data
that is over seven bits long (greater than ASCII 127 decimal
in value) so that it can be transferred along a seven-bit
data path.


 Special File-Transfer Mode Features

There are three helpful features available when transferring
files.  These features are standard in most versions of Ker-
mit.  They are:

   Key Sequence   Action

   <RETURN>       Force local Kermit to re-send current packet
   <CTRL> - <X>   Cancel transmission of current file
   <CTRL> - <Y>   Cancel transmission of entire batch of files

All of these commands are available when receiving a file or
files.  Because C-64/128 Kermit can't send more than one
file per SEND command (a feature called "wildcard send"),
the <CTRL> - <Y> feature is not applicable when sending a
file.




















Page 20                         C-64/128 Kermit User's Guide


Reference: Command Descriptions



 Command List


Kermit v2.2 has 16 major commands, many of which have sub-
options.  Below is a list of the major commands.

   Bye    Connect   Directory   Disk      Exit      Finish
   Get    Help      Quit        Receive   Restore   Save
   Send   Set       Show        Status


 Command Summary

Each of the major commands are described below in alphabeti-
cal order.  Following the description is one or more exam-
ples using the command previously described.  Please note
that all commands may be entered in either lower or upper
case-- case distinction is not made by the Kermit parser.

   Bye

This command causes C-64/128 Kermit to tell the remote Ker-
mit, which must be in server mode, to exit and, if applica-
ble, terminate its job (or process, etc.).  The remote Ker-
mit then closes the connection.  C-64/128 Kermit finishes by
exiting to BASIC.  Bye has no arguments, with the format:

Kermit-65>bye

   Connect

The CONNECT command puts Kermit into Connect Mode (see the
Introduction to Kermit section for more information on Con-
nect Mode).  Kermit can then begin communication with
another computer as a terminal (as defined by the SET
TERMINAL-EMULATION command).  Connect has no arguments, with
the format:

Kermit-65>connect

To return to Command Mode (see the Introduction to Kermit
section for more information on Command Mode), type the
escape character followed by a <"c">.  The default escape
character is <CTRL> - <Y>.  The escape character may be fol-
lowed by characters other than <"c">.  The other valid
options and what they do can be viewed by substituting a
<"?"> for the <"c">, giving the following display:












C-64/128 Kermit User's Guide                         Page 21


   One of the following:
   ?             - this help message.
   b             - send a break signal.
   c             - close the connection.
   s             - status of connection.
   0             - send a null.
   escape-char   - transmit the escape character.

   Directory

The DIRECTORY command returns a disk directory of the speci-
fied files on device 8 (the normal device number for the
first serial Commodore disk drive).  DIRECTORY with no argu-
ments returns a complete disk directory.  The directory may
be paused by pressing <SPACE> and resumed by pressing any
key, and aborted by pressing <STOP>.  The format is:

Kermit-65>directory [filename]

where [filename] is a valid CBM DOS filename.  Some exam-
ples:

   Kermit-65>directory        (directory of all files
                              on device 8)

   Kermit-65>directory ker*   (directory of files be-
                              ginning with "ker")

   Kermit-65>directory k?w    (directory of files 3
                              characters long, begin-
                              ning with "k" and ending
                              with "w")

   Disk

The DISK command allows you to send DOS commands directly to
the disk drive controller.  This command is useful for ini-
tializing the drive, formatting a disk, and deleting
unwanted files.  This command supports all the standard Com-
modore DOS commands, except that NO spaces in filenames are
allowed.  This is actually a "feature" of the parser and
will be corrected in a future version.  DISK with no argu-
ments will return the drive error in standard DOS format if
the drive's red light is blinking.  The format is:

Kermit-65>disk [string]

where [string] is a valid CBM DOS command.  Some examples:















Page 22                         C-64/128 Kermit User's Guide


   Kermit-65>disk s0:k*         (delete all files begin-
                                ning with "k" on device
                                8)

   Kermit-65>disk i0:           (initialize device 8)

   Kermit-65>disk n0:files,01   (format disk in device 8,
                                giving it name "files"
                                and id "01"-- note the
                                lack of spaces in the
                                disk name chosen)

   Exit

The EXIT command causes C-64/128 Kermit to stop execution
and return control of the machine to BASIC.  This command is
the same as the QUIT command.  Kermit may be restarted
immediately with the command RUN.  If you type NEW, Kermit
can still be restarted most of the time with the command SYS
2064.  Exit has no arguments.  The format of this command
is:

Kermit-65>exit

   Finish

This command causes C-64/128 Kermit to tell the remote Ker-
mit, which must be in server mode, to exit.  When C-64/128
Kermit receives the acknowledgement that this is being done,
you are prompted for another command.  Finish has no argu-
ments, with the format:

Kermit-65>finish

   Get

This command causes C-64/128 Kermit to request that the
other Kermit (which must be running in server mode) to
transmit the specified file to the C-64/128 Kermit.  The
format of this command is:

Kermit-65>get [file-specification]

where [file-specification] is a valid file specification for
the system on which the other Kermit is running.

   Quit

This command causes C-64/128 Kermit to stop execution and
return control of the machine to BASIC.  QUIT is identical
to the EXIT command (see EXIT above for more information).
QUIT has no arguments.  The format this command is:











C-64/128 Kermit User's Guide                         Page 23


Kermit-65>quit

   Receive

The RECEIVE command causes C-64/128 Kermit to wait for the
remote Kermit to initiate a file transfer (using a command
like SEND).  The format for this command is:

Kermit-65>receive [filename]

where [filename] is any valid CBM DOS file name not contain-
ing spaces.  If no file name is given, C-64/128 Kermit will
wait for a file transfer initialization sequence from the
other Kermit.  If a file name is given, that file name will
be used to store the received file(s), regardless of what
name is supplied by the other Kermit.  If more than one file
is received, the second file will have a ".00" appended to
it.  The third file will have a ".01", and so on.  The file
name will be truncated appropriately to accommodate the
".XX" suffix.  If FILE-WARNING is turned OFF, the ".XX" suf-
fix scheme will not be used-- transmission will stop with
disk error 63, FILE EXISTS.

Some examples:

Kermit-65>receive

Kermit-65>receive myfile

   Restore

The RESTORE command is used to re-initialize Kermit parame-
ters that have been previously saved with the SAVE command.
Kermit searches the disk in device 8 for a file named
KERMIT.INI.  If this file is present on disk, Kermit loads
the parameters contained therein and restarts itself with
those new parameters.  If no KERMIT.INI file is found, Ker-
mit crashes, exiting to BASIC.  You must insert a disk con-
taining a KERMIT.INI file in order to restart Kermit.
RESTORE has no arguments, with the command format:

Kermit-65>restore

   Save

The SAVE command saves to the disk in device 8 the current
Kermit settings and parameters in the file KERMIT.INI.  If a
KERMIT.INI already exists on the disk, no attempt is made to
write over the existing file.  The blinking red light on the
disk drive indicates error #63, FILE EXISTS.  It can be
scratched using the DISK command, however.  The parameters
may later be recalled with the RESTORE command.  SAVE has no
arguments, with the format:










Page 24                         C-64/128 Kermit User's Guide


Kermit-65>save

   Send

The SEND command allows you to send a file to the remote
Kermit.  The command format is:

Kermit-65>send [filename]

where [filename] is any valid CBM DOS filename.  Please note
that the C-64/128 currently does not have a wildcard send
capability.  In other words, the entire file name must be
specified-- no pattern matching is allowed.  Also, only one
file may be sent per SEND command.

   Set

The SET command is used to alter various Kermit parameters.
The format of this command is:

Kermit-65>set [option] [suboption]...

where [option] is one of the following:

   Baud                Bold               Border
   Character           Dark-background    Debugging
   Eight-bit-quoting   Escape             File-byte-size
   File-type           File-warning       Flow-control
   IBM                 Light-background   Local-echo
   Parity              Receive            RS232-registers
   Screen-driver       Send               Terminal-emulation
   Word-size

Many of the above options have sub-options.  A description
of the options and sub-options follows.

     Set Baud

The SET BAUD command is used to set the speed at which com-
munications will take place.  The format is:

Kermit-65>set baud [value]

where [value] is one of the following:

   300   1200   2400

Please note that communication speeds above 1200 are possi-
ble ONLY on a C-128 when using the COMMODORE-128 screen
driver.  Because of hardware limitations, speeds above 1200
baud are not possible on a C-64.  Also, please note that
this command does not support speeds under 300 bps.  You











C-64/128 Kermit User's Guide                         Page 25


will need to use the SET RS232-REGISTERS command instead.
See the SET RS232-REGISTERS section and the Known Restric-
tions section of Appendix A for further information.

     Set Bold

The SET BOLD command sets the bold character color, which
can be used for highlighting text in VT-100 emulation mode.
An example of bold text is the "Type ? for help" message
when Kermit boots.  The default bold color is white.  The
format of this command is:

Kermit-65>set bold [color]

where [color] is one of the following:

   Black        Blue          Brown
   Cyan         Dark-grey     Green
   Light-blue   Light-green   Light-grey
   Light-red    Medium-grey   Orange
   Purple       Red           White
   Yellow

     General Notes on Color

The above colors correspond to the C-64 VIC chip colors.  A
closest mapping was done for the C-128 8563 VDC (the 80-
column chip) BUT: 1) orange is really a dark purple while 2)
medium-grey has a greenish tint.  Also, note that:

 1) The C-128 display has no border (just like a real VT-
    100).
 2) The BI-80 has no color options or border-- and, any
    highlighted text is printed as reverse.
 3) None of the SET commands for color currently have a
    corresponding SHOW command.

A real VT-100 terminal doesn't have any color options at
all-- simply light text on a dark background, or vice versa.
So, most of Kermit's screen drivers give you an added capa-
bility with their color options.

     Set Border

The SET BORDER command sets the border color, which is
available only when using the C-64 40 or 80 column screen
drivers.  The default border color is blue.  The format of
this command is:

Kermit-65>set border [color]

where [color] is one of the colors listed under the "Set











Page 26                         C-64/128 Kermit User's Guide


Bold" section.

     Set Character

The SET CHARACTER command sets the normal character color.
The default character color is black.  The format for this
command is:

Kermit-65>set character [color]

where [color] is one of the colors listed under the "Set
Bold" section.

     Set Dark-background

The SET DARK-BACKGROUND command sets the VT-100 dark back-
ground color (the one normally used).  This is also the
background color used in VT-52 mode or when no terminal emu-
lation is used.  The default dark-background color is
medium-grey.  The format for this command is:

Kermit-65>set dark-background [color]

where [color] is one of the colors listed under the "Set
Bold" section.

     Set Debugging

The SET DEBUGGING command is used to set the type of debug-
ging generated by C-64/128 Kermit during a file transfer.
The format is:

Kermit-65>set debugging [keyword]

where [keyword] is either OFF, TERSE, or VERBOSE.  OFF
causes all debugging output to be suppressed.  TERSE directs
a copy of each packet to the screen, printing any control
characters as <CTRL> - <"char">.  VERBOSE prints identifying
text for each field in the header and prints the actual data
section of the packet in the same manner TERSE uses.

     Set Eight-bit-quoting

This command turns on or turns off the eight-bit-quoting
feature.  Eight bit quoting is used to transmit eight-bit
bytes over a seven-bit data path.  If the WORD-SIZE is
SEVEN-BIT, eight bit quoting allows full eight-bit data to
still be transmitted.  If the WORD-SIZE is EIGHT-BIT, the
quoting is ignored as it is not needed.  The format of the
command is:

Kermit-65>set eight-bit-quoting [keyword]











C-64/128 Kermit User's Guide                         Page 27


where [keyword] is ON or OFF.

     Set Escape

This command sets the escape character, which is the charac-
ter used to "escape" back to Command Mode from Connect Mode.
The command takes a hexadecimal value of the chosen charac-
ter to use as the escape character.  The default character
is <CTRL> - <Y> ($19).  It is usually a good idea to set
this character to something which is not used (or at least
not used very often) on the system to which C-64/128 Kermit
is connected.  The format of the command is:

Kermit-65>set escape [hex value]

where [hex value] is the ASCII value, in hex, of the charac-
ter to use as the escape character.

     Set File-byte-size

This command sets the byte size C-64/128 Kermit will use for
files being received or transmitted.  The file byte size can
almost always be EIGHT-BIT, as this setting will work for
most SEVEN-BIT and EIGHT-BIT data files.  The format of this
command is:

Kermit-65>set file-byte-size [size]

where [size] is SEVEN-BIT or EIGHT-BIT.

     Set File-type

This command tells Kermit what type of file is being sent or
received.  It is important that this parameter be set
correctly since it is used to determine the exact file
length when sending files in addition to determining special
processing which may have to be done (i.e. when receiving a
text file, write all characters in PETSCII).  The format of
this command is:

Kermit-65>set file-type [type]

where [type] is ASCII, BINARY, C-POWER, PETSCII, or SCRIPT.
An ASCII type file is any standard ASCII text file.  A
BINARY type file is a memory image (i.e. machine language
program, graphics screen, etc.) and is normally transferred
in eight-bit mode.  A C-POWER type file is a C language
source file for use with the C Power C compiler from Pro-
Line (now sold as Power C by Spinnaker).  A PETSCII type
file is a CBM ASCII text file.  A SCRIPT type file is a file
produced by the Speedscript word processor published by Com-












Page 28                         C-64/128 Kermit User's Guide


pute! Publications.

     Set File-warning

This command determines what C-64/128 Kermit will do when it
receives a file with a filename that already exists.  If
FILE-WARNING is turned ON, C-64/128 Kermit will not
overwrite the old file.  Instead, it will create a file with
the original file name with a ".00" appended to it.  It will
increment the ".XX" number until it succeeds in creating a
unique file name.  If FILE-WARNING is turned OFF, C-64/128
Kermit will stop with disk error 63, FILE EXISTS.  The for-
mat of this command is:

Kermit-65>set file-warning [keyword]

where [keyword] is either ON or OFF.

     Set Flow-control

The SET FLOW-CONTROL command enables or disables XON/XOFF
flow control.  With flow control on, C-64/128 Kermit will
automatically send a <CTRL> - <S> to the host computer when
it can't keep up (i.e. buffer full) to prevent loss of char-
acters.  Kermit will then send a <CTRL> - <Q> when it is
ready to receive more data.  This option is recommended for
communication speeds of 1200 baud or higher.  The format of
this command is:

Kermit-65>set flow-control [keyword]

where [keyword] is either ON or OFF.

     Set IBM

The SET IBM command sets up C-64/128 Kermit to communicate
with certain IBM mainframes.  This command is needed on a
limited number of systems.  The format of this command is:

Kermit-65>set ibm [keyword]

where [keyword] is either ON or OFF.  With IBM mode on, C-
64/128 Kermit waits for the IBM turnaround character (XON,
<CTRL> - <Q>) before sending any characters to the other
Kermit.  It also forces the parity type to be mark, the word
length to be seven-bit, turns on local echo for the CONNECT
command and turns off flow-control.  All of these changes
are temporary.  When IBM mode is turned off, any parameters















C-64/128 Kermit User's Guide                         Page 29


altered are returned to their previous values.

     Set Light-background

The SET LIGHT-BACKGROUND command sets the VT-100 light back-
ground color (the one not normally used).  The light back-
ground is generally used only by programs to catch your
attention (usually by flashing the background color
quickly).  The default light-background color is light-grey.
The format for this command is:

Kermit-65>set light-background [color]

where [color] is one of the colors listed under the "Set
Bold" section.

     Set Local-echo

The SET LOCAL-ECHO command specifies whether characters
should be echoed locally when connected to another computer.
If LOCAL-ECHO is set ON, any character typed on the C-64/128
will be echoed immediately to the C-64/128 as well as being
sent to the other computer.  This setup is useful when you
are connected to another personal computer.  If LOCAL-ECHO
is set OFF, the characters typed on the C-64/128 are sent
only to the other computer (which would normally echo the
characters).  This arrangement is used by most mainframe
hosts.  The format of this command is:

Kermit-65>set local-echo [keyword]

where [keyword] is either ON or OFF.

     Set Parity

This command determines the type of parity to use during
communication.  Kermit normally uses characters which con-
sist of eight data bits with no parity bit.  For systems or
transmission media which require a specific parity type,
Kermit can send characters as seven data bits plus a parity
bit.  The format of this command is:

Kermit-65>set parity [keyword]

where [keyword] is one of the following:


















Page 30                         C-64/128 Kermit User's Guide


   NONE (default)   -   eight data bits and no
                        parity bit.

   MARK             -   seven data bits with the
                        parity bit set to one.

   SPACE            -   seven data bits with the
                        parity bit set to zero.

   EVEN             -   seven data bits with the
                        parity bit set to make
                        the overall parity even.

   ODD              -   seven data bits with the
                        parity bit set to make
                        the overall parity odd.

     Set Receive

It is possible to set various parameters associated with the
receiving of data from the Kermit on the other end of the
connection (the remote Kermit).  SET RECEIVE will enable you
to set the various Receive parameters.  The format of this
command is:

Kermit-65>set receive <suboption>

The suboptions of the SET RECEIVE command are:

   Eight-bit-quote-char   End-of-line   Packet-length
   Pad-char               Padding       Quote-char
   Timeout

These suboptions are described below.


       Set Receive Eight-bit-quote-char

This command sets the character to be used to quote charac-
ters when EIGHT-BIT QUOTING is ON.  The default value is
hexadecimal 26 (decimal 38, ASCII "&").  Please see Set
Eight-bit-quoting for further information.  The format of
this command is:

Kermit-65>set receive eight-bit-quote-char [value]

where [value] is the ASCII value of the character (in hex)
















C-64/128 Kermit User's Guide                         Page 31


to use for eight-bit quoting.

       Set Receive End-of-line

This command sets the end of line character that C-64/128
Kermit expects to receive from the remote Kermit.  This is
the character which terminates a packet of data during file
transmission.  The default value is hexadecimal 0D (ASCII
<CTRL> - <M>, which is <RETURN>).  The format of this com-
mand is:

Kermit-65>set receive end-of-line [value]

where [value] is the ASCII value of the character to use for
the end of line character (in hex).

       Set Receive Packet-length

This command sets the receive packet length.  The value for
this parameter must be between hexadecimal 0A (decimal 10)
and $60 (decimal 96).  Packet lengths outside of this range
are illegal.  The default value is $5E (94 decimal).  The
format of this command is:

Kermit-65>set receive packet-length [value]

where [value] is the ASCII value of the receive packet
length (in hex).

       Set Receive Pad-char

This parameter is the padding character that is expected
from the remote Kermit.  The parameter must be a hex number
between 0 and $1F or $7F.  All other values are illegal.
The default value is 0 (ASCII NUL).  The format of this com-
mand is:

Kermit-65>set receive pad-char [value]

where [value] is the ASCII value of the character to be used
as a pad character (in hex).

       Set Receive Padding

This command sets the number of padding characters to
request before each packet coming from the other Kermit.
The default value is 0.  The format of this command is:

Kermit-65>set receive padding [value]

where [value] is the number (in hex) of padding characters
to use.  NOTE: This command, along with SET RECEIVE PAD-
CHAR, is only used under very unusual circumstances.  At










Page 32                         C-64/128 Kermit User's Guide


this time, no Kermit program for any machine is known to
need padding, and if one did, it would request it without
intervention.

       Set Receive Quote-char

This command sets the quoting character that C-64/128 Kermit
will expect on incoming files.  This is the character used
to quote control characters.  The default value is $23
(ASCII "#").  The format of this command is:

Kermit-65>set receive quote-char [value]

where [value] is the ASCII value of the quoting character
(in hex).

       Set Receive Timeout

This command sets the number of seconds that C-64/128 Kermit
will wait for acknowledgement before it will retry sending
or receiving the current packet of data (during a RECEIVE,
SEND, or GET).  The default value is 15 seconds (hex 0F).
The format of this command is:

Kermit-65>set receive timeout [value]

where [value] is the number of seconds to wait for a message
from the remote Kermit (in hex).

     Set RS232-registers

This command sets the 2 RS-232 registers in the C-64/128
that control the baud rate, parity, etc.  The 2 registers
are treated as a 16 bit hex integer.  The first 2 digits are
the SECOND register and the last 2 digits are the FIRST
register.  If only 2 digits are entered, the second register
is cleared.  The format of this command is:

Kermit-65>set rs232-registers [value]

where [value] is a four-byte long hex integer.  Some exam-
ples:





















C-64/128 Kermit User's Guide                         Page 33


   Kermit-65>set rs232-registers 0006   sets the registers
                                        to 06, 00 for 300
                                        baud, 8 bits, no
                                        parity

   Kermit-65>set rs232-registers a026   sets the registers
                                        to $26, $A0 for 300
                                        baud, 7 bits, mark
                                        parity.

See the Commodore 64 or 128 Programmer's Reference Guides
for a complete description of the RS-232 registers.  Please
note that this command is rarely used-- it is a holdover
from the earliest versions of Kermit.  You can use the SET
BAUD and SET PARITY commands to set the baud and parity for
most cases.  See the Known Restrictions section of Appendix
A for exceptions.

     Set Screen-driver

This command switches the display mode.  Kermit is capable
of displaying text in 40 and 80 columns, using the Batteries
Included BI-80 80 column card, and also using the Commodore
128's 80 column screen.  Not all of the displays are capable
of completely accurate displays.  For example, the standard
Batteries Included 80 column character set does not include
certain standard ASCII characters.  In all cases the best
compromise was made to provide the most accurate display
(Please see the Screen Driver Comparison section for further
information).  The format of this command is:

Kermit-65>set screen-driver [keyword]

where [keyword] is 40-COLUMNS, 80-COLUMNS, BI-80,
COMMODORE-128, or CUSTOM-BI-80.

     Set Send

It is possible to set various parameters associated with the
sending of data to the remote Kermit.  SET SEND enables you
to set the various SEND parameters.  These parameters should
not normally be changed since, as part of the transfer ini-
tialization process, the two Kermits exchange their RECEIVE
parameters.  The capability of setting these parameters is
provided so that the transfer initialization can be com-
pleted even if the default parameters are not correct.  The
format of this command is:

Kermit-65>set send <suboption>

The suboptions of the SET SEND command are:

   Eight-bit-quote-char   End-of-line   Packet-length
   Pad-char               Padding       Quote-char
   Timeout

The suboption descriptions for the SET SEND command are the
same as those for the SET RECEIVE command (except that they
affect sending, not receiving, parameters). So, to avoid




Page 34                         C-64/128 Kermit User's Guide


redundancy, please refer to the appropriate suboption
descriptions under the Set Receive section for further
information.

     Set Terminal-emulation

Kermit is capable of emulating two popular terminals, as
well as act as a dummy (glass) terminal.  The SET TERMINAL-
EMULATION command changes the type of terminal Kermit emu-
lates.  The format for this command is:

Kermit-65>set terminal-emulation [type]

where [type] is NONE, VT-52, or VT-100.  Kermit provides
very accurate emulation of the DEC VT-52 and VT-100 termi-
nals.  In VT-100 mode, Kermit can perform most all functions
of a VT-100 terminal, including displaying a graphics char-
acter set as well as emulating certain VT-102 sequences.
See Terminal-Type Features for more info.

     Set Word-size

This option sets the data word length for communication with
another computer.  Although word lengths below seven bits
exist, C-64/128 Kermit only supports seven and eight bit
word lengths.  The format of this command is:

Kermit-65>set word-size [length]

where [length] is either SEVEN-BIT or EIGHT-BIT.

   Show

The SHOW command allows you to examine the status of many of
the SET parameters.  The format is:

Kermit-65>show <option> <suboption>...

The options available to SHOW are:

   All                  Baud              Debugging
   Eight-bit-quoting    Escape            File-byte-size
   File-type            File-warning      Flow-control
   IBM                  Local-echo        Parity
   Receive              RS232-Registers   Send
   Terminal-emulation   Word-size

The SHOW ALL command will display the settings for most of
the parameters that may be SET.  The other SHOW options and
suboptions will display the current value of just that par-
ticular parameter.  Note: The 4 color commands and the












C-64/128 Kermit User's Guide                         Page 35


SCREEN-DRIVER command are not currently supported.

   Status

STATUS displays the current values of various counts associ-
ated with the most recent file transfer.  This includes the
number of characters that have been sent and received from
the remote Kermit with the amount of characters which were
actual data as well as the overhead for both send and
receive.  Also included is the last error encountered (if
any) and the disk drive error status (absent if no error).
STATUS has no arguments with the format:

Kermit-65>status

















































Page 36                         C-64/128 Kermit User's Guide


Appendix A: Implementation Notes

This appendix contains information mainly of interest to
people who are familiar with Kermit-- experienced users and
programmers.  First time users may not find too much useful
information here.


 Summary of Kermit Capabilities


   C-64/128 Kermit v2.2 Capabilities at a Glance:

   Local operation:                  Yes
   Remote operation:                 Yes
   Transfer text files:              Yes
   Transfer binary files:            Yes
   Wildcard send:                    No
   ^X/^Y interruption:               Yes
   Filename collision avoidance:     Yes
   Can time out:                     Yes
   8th-bit prefixing:                Yes
   Repeat count prefixing:           No
   Alternate block checks:           No
   Terminal emulation:               Yes
   Communication settings:           Yes
   Transmit BREAK:                   Yes
   IBM communication:                Yes
   Transaction logging:              No
   Session logging (raw download):   No
   Raw upload:                       No
   Act as server:                    No
   Talk to server:                   Yes
   Advanced server commands:         No
   Local file management:            Yes
   Handle file attributes:           No
   Command/init files:               Yes
   Printer control:                  No



 Known Restrictions


Kermit is a comprehensive telecommunications package.
Because it is continually under development, however, some
features are not fully implemented.  These incomplete
features therefore have some restrictions as to their use.
They are:

  + The SET BAUD command does not support baud rates under
    300 bps.  To set speeds of 50, 75, 110, or 150 bps, you











C-64/128 Kermit User's Guide                         Page 37


    will have to set the RS-232 registers directly.  Please
    see the SET RS232-REGISTERS section for more informa-
    tion on this procedure.

  + Any changes made using the SET RS232-REGISTERS command
    will not be reflected in the BAUD, PARITY, or WORD-SIZE
    parameters.

  + If the initialization file, KERMIT.INI, isn't on the
    same disk as Kermit when you boot, Kermit will crash,
    exiting to BASIC.  You can recover from this condition
    by inserting a disk containing a KERMIT.INI and typing
    RUN.  You MUST have a disk with a KERMIT.INI file on it
    in order to boot Kermit.

  + Kermit currently does not work with the Commodore 1660
    modem.  This modem is backwards in terms of picking up
    and hanging up the phone.  We will fix this in a future
    version of Kermit.


 Future Plans for Kermit


New features can always be added, it seems, to a program.
We are currently considering implementing the following
features for a future version of Kermit:

  + Modem support.  Kermit needs to be able to work with
    the Commodore 1660 modem and other "oddballs".  This
    would require a SET MODEM-TYPE command.

  + Long packets.  Long packets allow more data to be sent
    per packet, speeding up file transmission considerably.

  + Remote server commands.  With this command Kermit would
    be able to answer the phone automatically and
    send/receive files without anyone present.  Kermit
    would function as a very simple bulletin board in a
    way.

  + New parser.  The current parser is VERY large, ineffi-
    cient, and riddled with numerous bugs.

  + TAKE command.  This command would allow multiple ini-
    tialization files.  In other words, you could have an
    initialization file for every different configuration
    you use.















Page 38                         C-64/128 Kermit User's Guide


Appendix B: Default Initialization Settings

This appendix is of use mainly to experienced Kermit users.
Kermit loads various default settings from disk on power-up
(or when the command RESTORE is issued).  Kermit reads in
the settings from a file called KERMIT.INI.  Below are the
default settings for all of the parameters contained in
KERMIT.INI.

   Parameter                       Setting

   Debugging                       Terse
   Terminal Emulation              VT-100
   IBM Mode                        Off
   Local Echo                      Off
   Baud Rate                       1200
   Parity                          None
   Word Size                       Eight
   Flow Control                    On
   Eight Bit Quoting               On
   File Warning                    On
   Escape Character                ^Y
   File Type                       PETSCII
   File Byte Size                  Eight Bit
   RS232 Registers                 $0000
   Receive
     Padding Character             ^@
     Amount of Padding             00
     Eight Bit Quoting Character   &
     End of Line Character         ^M
     Packet Length                 $5D
     Quote Character               #
     Timeout Character             0A
   Send
     Padding Character             ^@
     Amount of Padding             00
     Eight Bit Quoting Character   &
     End of Line Character         ^M
     Packet Length                 $5D
     Quote Character               #
     Timeout Character             0A






















C-64/128 Kermit User's Guide                         Page 39


Appendix C: Keyboard Layouts



 Commodore 64 Map

Kermit redefines a few keys on the Commodore 64 keyboard
both to send ASCII characters that are not found in the
standard Commodore character set and to send some special
VT-100/52 key sequences.  These redefined keys are most use-
ful when communicating with a mainframe host.  The following
is a list of the redefined keys:

If You Type This                    You Send This

<Left Arrow>                        <ESC>
<Up Arrow>                          <Hat>
<Shifted "="> or <F1>               <Underscore>
<Shifted British Pound> or <F2>     <Pipe>
<Shifted "@"> or <F3>               <Grave accent>
<Shifted Up Arrow> or <F4>          <Tilde>
<Shifted "+"> or <F5>               <Left Brace>
<Shifted "-"> or <F6>               <Right Brace>
<British Pound>                     <Backslash>
<STOP>                              <CTRL> - <C>
<CLR>                               <CTRL> - <L>
<HOME>                              <CTRL> - <H>
<DEL>                               <DEL>
<INST>                              <BREAK>
Cursor Keys                         VT-100/52 Cursor Key
                                     Sequences
<CTRL> - <F1>                       VT-100/52 PF 1
<CTRL> - <F3>                       VT-100/52 PF 2
<CTRL> - <F5>                       VT-100/52 PF 3
<CTRL> - <F7>                       VT-100/52 PF 4
<CTRL> - <0> through <CTRL> - <9>   VT-100/52 Num.
                                     Keypad 0 through 9
<CTRL> - "-"                        VT-100/52 Num.
                                     Keypad "-"
<CTRL> - "."                        VT-100/52 Num.
                                     Keypad "."
<CTRL> - ","                        VT-100/52 Num.
                                     Keypad ","
<CTRL> - "+"                        VT-100/52 Num.
                                     Keypad "," (dupli-
                                     cate)
<CTRL> - <RETURN>                   VT-100/52 Num.
                                     Keypad <ENTER>

Also, the <C=> key will temporarily stop character display.
It acts as a toggle, and will start the display again when












Page 40                         C-64/128 Kermit User's Guide


pressed a second time.  This works only in Connect mode.


 Commodore 128 Map

The Commodore 128 has an expanded layout that includes all
of the Commodore 64 redefined keys.  In other words, the
Commodore 128 keyboard layout is a superset of the Commodore
64 layout.  The following is a list of the special C-128
keys.

   If You Type This             You Send This

   <ESC>                        <ESC>
   <HELP>                       <"?">
   <LINEFEED>                   <CTRL> - <J>
   <TAB>                        <CTRL> - <I>
   Grey Cursor Keys             VT-100/52 Cursor Key
                                  Sequences
   Numeric Keypad 0 through 9   VT-100/52 Num.
                                  Keypad 0 through 9
   Numeric Keypad "-"           VT-100/52 Num.
                                  Keypad "-"
   Numeric Keypad "."           VT-100/52 Num.
                                  Keypad "."
   Numeric Keypad "+"           VT-100/52 Num.
                                  Keypad ","

Also, <CAPS LOCK> is functional.  All lowercase letters are
changed to upper case when this key is in the down position.

































C-64/128 Kermit User's Guide                         Page 41


Appendix D: UNIX (TM) Termcap Settings

Kermit emulates a DEC VT-100 terminal with a complete VT-52
mode, graphics character set, and extra VT-102 editing
features.  On UNIX (TM), you can use most of Kermit's
features by setting your terminal type to VT-100.  However,
to use the extra features such as the VT-102 editing
sequences, a visual bell, and a sysline (25th line used for
system status programs), you will need to use the following
as your termcap instead:

Kc|vt100|Commodore 64/128 Kermit in VT-100 mode:\
   :ae=\E(1:AL=\E[%dL:al=\E[L:as=\E(0:bc=^H:bl=^G:bs:\
   :cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:co#80:\
   :cr=^M:cs=\E[%i%d;%dr:DC=\E[%dP:dc=\E[P:\
   :DL=\E[%dM:dl=\E[M:DO=\E[%dB:do=^J:\
   :ds=\E7\E[25H\E[2K\E8:ei=\E[4l:es:fs=\E8:ho=\E[H:hs:\
   :im=\E[4h:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:\
   :kb=\177:kd=\E[B:ke=\E>:kl=\E[D:kn=4:kr=\E[C:\
   :ks=\E=:ku=\E[A:l1=PF1:l2=PF2:l3=PF3:l4=PF4:\
   :LE=\E[%dD:le=^H:li#24:ll=\E[24H:mb=\E[5m:\
   :md=\E[1m:me=\E[m:mi:mr=\E[7m:ms:nd=\E[C:pt:\
   :rc=\E8:RI=\E[%dC:rs=\E<\Ec:sc=\E7:se=\E[m:\
   :so=\E[7m:sr=\EM:ta=^I:te=\E[?7h:ti=\E[?7l:\
   :ts=\E7\E[%i25;%dH\E[m\E(1\E[1K:ue=\E[m:\
   :UP=\E[%dA:up=\E[A:us=\E[4m:vb=\E[?5h\E,\E[?5l:\
   :vt#3:xo

This custom termcap also fixes several minor bugs and omis-
sions in the standard VT-100 termcap entry found in Berkeley
4.3 BSD UNIX.

Note that any British Pound signs in the above termcap entry
should really be backslashes.  Commodore computers map the
backslash onto the British Pound sign, as they don't have
the backslash in their character sets.



























Page 42                         C-64/128 Kermit User's Guide


Appendix E: BI-80 Replacement ROM Information

Kent Sullivan is now making available a replacement
character ROM for the BI-80 card.  This replacement ROM adds
the ASCII characters that are missing from the Commodore
character set (backslash, braces, underscore, tilde, grave
accent, pipe, and hat) plus the VT-100 line graphics charac-
ter set.

To add these characters, some sacrifices had to be made.  As
you may know, the Commodore 64/128 and the BI-80 have two
separate character sets: upper/lower case and upper
case/graphics.  The upper/lower case set remains as is in
the new ROM, so most commercial programs that work on a BI-
80 are not affected (such as the Paperclip word processor
from Batteries Included).  The upper case/graphics character
set has been changed quite a bit, so some programs may be
affected (such as a BASIC program that uses extensive char-
acter graphics).

The new ROM is $7.50 (US funds only; WA residents please add
8.2% sales tax) and comes with complete installation
instructions.