CKAAAA.HLP                                                    November 23, 1992

C-Kermit 5A bears the following copyright notice:

  Copyright (C) 1985, 1992, Trustees of Columbia University in the City of
  New York.  Permission is granted to any individual or institution to use
  this software as long as it is not sold for profit.  This copyright notice
  must be retained.  This software may not be included in commercial
  products without written permission of Columbia University.

And the following disclaimer:

  The C-Kermit software is provided in source code form by Kermit Development
  and Distribution, Columbia University.  The software is provided "as is;" no
  other warranty is provided, express or implied, including without
  limitations, any implied warranty of merchantability or implied warranty of
  fitness for a particular purpose.

  Neither Columbia University nor any of the contributors to the C-Kermit
  development effort, including, but not limited to, AT&T, Digital Equipment
  Corporation, Data General Corporation, or International Business Machines
  Corporation, warrant C-Kermit software or documentation in any way.  In
  addition, neither the authors of any Kermit programs, publications or
  documentation, nor Columbia University nor any contributing institutions or
  individuals acknowledge any liability resulting from program or
  documentation errors.

DOCUMENTATION

C-Kermit 5A is documented in the book "Using C-Kermit" by Frank da Cruz
and Christine M. Gianone, Digital Press, Burlington, MA, USA.  Digital
Press ISBN: 1-55558-108-0; Prentice-Hall ISBN: 0-13-037490-3.  Price: US
$34.95.  In USA, call DECdirect at 1-800-344-4825, refer to order number
EY-J896E-DP.  Available: January 1993.


	    GUIDE TO C-KERMIT 5A FILES AND FILE NAMING CONVENTIONS

C-Kermit is a family of Kermit programs for many different computer systems.
The program shares a common set of system-independent file transfer protocol
modules, written in the C language.  System-dependent operations are collected
into system-specific modules for each system, or in some cases, selected via
conditional compilation (#ifdef) in the UNIX system dependent modules.

C-Kermit may be built for UNIX (BSD, AT&T, Ultrix, SUNOS, Xenix, many others),
DEC VMS and OpenVMS on VAX and AXP computers, Data General AOS/VS, IBM OS/2,
the Apple Macintosh, the Commodore Amiga, the Atari ST, and Motorola 680x0
computers with Microware OS/9.

C-Kermit file names are of the form:

  CK<system><what>.<type>

where:

<type> is the file type (use lowercase on UNIX):

  C:   C language source
  H:   Header file for C language source
  W:   Wart preprocessor source, converted by Wart (or Lex) to a C program
  R:   Macintosh resource file (8-bit text)
  A:   Assembler source

  ANN: The text of an announcement of a particular version
  DOC: Documentation
  HLP: Help text
  NR:  Nroff/Troff text formatter source for UNIX "man page"
  UPD: Program update history
  BWR: A "beware" file - list of known bugs, limitations
  MSS: Scribe text formatter source
  PS:  Typeset material to be printed on a PostScript printer

  INI: Initialization file
  TAK: A Kermit TAKE command file
  KDD: A Kermit Dialing Directory
  KSD: A Kermit Services Directory
  TXT: A plain-text file

  MAK: A Makefile or other build procedure (often needs renaming)
  COM: (VMS only) a DCL command procedure
  REL: (VMS only) a RELEASE_NOTES file

  BOO: "boo"-encoded executable program, decode with CKBUNB program.
  HEX: "hex"-encoded executable program, decode with CKVDEH program (VMS only).
  HQX: BinHex'd Macintosh Kermit program, decode with BinHex version 4.0.
  UUE: A uuencoded binary file, decode with uudecode or (DG only) CKDECO.

  DEF: An OS/2 linker definitions file.
  SED: A UNIX sed (editor) script.
  STR: A file of character strings extracted from C-Kermit (BSD 2.1x).

<system> is a single character to tell what system the file applies to:

  A: General descriptive material and documentation
  B: BOO file encoders and decoders
  C: All systems with C compilers
  D: Data General AOS/VS
  E: Reserved for "ckermit" files, like CKERMIT.INI
  F: Microsoft Windows 3.x (F = Fenster) (reserved)
  H: Harris computers, VOS (reserved)
  I: Commodore Amiga (Intuition)
  J: (unused)
  K: (unused)
  L: (unused)
  M: Macintosh with Mac OS
  N: Microsoft Windows NT (reserved)
  O: OS/2
  P: IBM PC, PS/2 with MS/PC-DOS (reserved)
  Q: (unused)
  R: DEC PDP-11 with RSTS/E (reserved)
  S: Atari ST GEMDOS
  T: DEC PDP-11 with RT-11 (reserved)
  U: UNIX or environments with UNIX-like C libraries
  V: VMS and OpenVMS
  W: Wart (used with all systems)
  X: DEC PDP-11 with RSX-11 (reserved)
  Y: (unused)
  Z: (unused)
  0-8: (unused)
  9: Microware OS-9

<what> is mnemonic (up to 3 characters) for what's in the file:

  AAA: A "read-me" file, like this one
  INS: Installation instructions
  KER: General C-Kermit definitions, information, documentation

  CMD: Command parsing
  CON: CONNECT command
  DEB: Debug/Transaction Log formats, Typedefs
  DIA: Modem/Dialer control
  FIO: System-depdendent File I/O
  FNS: Protocol support functions
  FN2: More protocol support functions (and FN3, ...)
  MAI: Main program
  PRO: Protocol
  SCR: SCRIPT command
  TIO: System-dependent communications i/o & control and interrupt handing
  USR: User interface
  US2: More user interface
  US3: Still more user interface (and usr4, usr5, usr6, ...)
  USX: Common user interface functions
  USY: Command-line parsing
  XLA: Character set translation module
  NET: Network support module
  MDB: Malloc-debugging module
  STR: Strings module

Examples (use lowercase on UNIX):

  CKAAAA.HLP - This file
  CKUFIO.C   - File i/o for UNIX
  CKSTIO.C   - Communications i/o for the Atari ST
  CKUKER.NR  - Nroff source file for UNIX C-Kermit man page
  CKUKER.MAK - Makefile for building UNIX C-Kermit
  CKOKER.MAK - Makefile for building OS/2 C-Kermit

IMPORTANT FILES (use lowercase names on UNIX):

  CKAAAA.HLP - This file (overview of other files).

  CKCKER.ANN - Brief list of new features of 5A (release announcements).
  CKCKER.BWR - "Beware" file (limitations, known bugs, hints), general.
  CKCCFG.DOC - Configuration information (feature selection), general.
  CKCPLM.DOC - Program logic manual (for programmers)

  CKERMIT.INI - Standard initialization file (rename to .kermrc in UNIX, OS-9)
  CKERMOD.INI - Sample customization file (rename to .mykermrc in UNIX, OS-9)
  CKERMIT.KDD - Sample dialing directory file (rename to .kdd in UNIX, OS-9)
  CKERMIT.KSD - Sample services directory file (rename to .ksd in UNIX, OS-9)
  CKEDEMO.INI - Demonstration macros from "Using C-Kermit"
  CKEVT.INI   - Ditto
  CKETEST.INI - Ditto

  CKCKER.UPD - Program update history, edits 188-present
  CKC188.UPD - Program update history, edits 179-188 (big)
  CKC178.UPD - Program edit history, 5A edits through 178 (very big)
  CKCV4F.UPD - Program edit history, version 4F
  CKCV4E.UPD - Program edit history, version 4E

  CKUKER.DOC - Preliminary C-Kermit User Guide thru edit 179 (ASCII text)
  CKUKER.PS  - User Guide (Postscript)

  CKUINS.DOC - UNIX-specific installation instructions
  CKUKER.MAK - UNIX build procedure
  CKUBS2.MAK - 2.10/2.11BSD build procedure
  CKUKER.BWR - UNIX-specific beware file.
  CKUKER.NR  - "man page" for UNIX

  CKVINS.DOC - VMS-specific installation instructions.
  CKVKER.COM - VMS build procedure (DCL)
  CKVKER.MAK - VMS build procedure (MAKE)
  CKVKER.MMS - VMS build procedure (MMS)
  CKVMSI.COM - VMSINSTAL-kit builder
  CKVKIT.COM - VMSINSTAL-kit installer
  CKVKER.BWR - VMS-specific beware file
  CKVKER.HLP - VMS C-Kermit HELP topic

  CKOKER.BWR - OS/2 "beware" file
  CKOICON.BOO - BOO-encoded OS/2 C-Kermit icon

  CKDINS.DOC - Data General AOS/VS C-Kermit installation instructions
  CKDKER.BWR - AOS/VS "beware" file

BINARIES

If you have FTP access to watsun.cc.columbia.edu (also known as
kermit.cc.columbia.edu, ftp.cc.columbia.edu, kermit.columbia.edu, or
ftp.columbia.edu), you can also retrieve various C-Kermit binaries from the
directory kermit/bin/ck*.*.  Be sure to transfer these files in binary mode.

ENCODED BINARIES

VMS:
 CKVKER.HEX - VAX/VMS (OpenVMS) 5.5, no networks.  Decode with CKVDEH.MAR.
 CKVAXP.HEX - OpenVMS AXP 1.0, no networks.  Decode (on VAX) with CKVDEH.MAR.
OS-9:
 CK9KER.BOO - OS-9/68000.  Decode with CKBUNB.C.
OS/2:
 CKOKER32.BOO - OS/2 2.00 (32-bit).  Decode with CKBUNB.C.
 CKOKER16.BOO - OS/2 1.xx (16-bit).  Decode with CKBUNB.C.
Amiga:
 CKIKER.BOO.  Decode with CKBUNB.C.
Atari ST:
 CKSKER.BOO.  Decode with CKBUNB.C.
Data General MV AOS/VS:
 CKDKER.UUE.  Decode with uudecode or ckdeco.c, then unpack with DUMPFILE.

SOURCE FILES

All the files necessary to build a particular implementation of C-Kermit
are listed in the appropriate makefile or equivalent:

       UNIX: ckuker.mak (rename to makefile)
   2.11 BSD: ckubs2.mak (rename to makefile), ckustr.sed
  Macintosh: ckmker.mak (rename to kermit.make, use MPW C 3.2)
    VAX/VMS: CKVKER.COM (DCL), CKVKER.MAK (MAKE), or CKVKER.MMS (MMS)
      Amiga: CKIKER.MAK
   Atari ST: CKSKER.MAK
       OS/2: CKOKER.MAK, CKOKER.DEF, CKWART.DEF (MSC 6.0, GCC, or IBM C Set/2)
       OS-9: CK9KER.MAK or CK9KER.GCC
     AOS/VS: CKDMAK.CLI, CKDCC.CLI, CKDLNK.CLI

Minimal source files for building selected versions (these patterns get all
the files you need, and in some cases maybe a few extra):

   UNIX:   ck[cuw]*.[cwh]
   VMS:    ck[cuwv]*.[cwh]
   Mac:    ck[cuwm]*.[cwhr]
   OS/2:   ck[cuwo]*.[cwh]
   AOS/VS: ck[cuwd]*.[cwh]
   Amiga:  ck[cuwi]*.[cwh]
   Atari:  ck[cuws]*.[cwh]
   OS-9:   ck[cwh9]*.[cawh]

Here is the specific source file list for edit 5A(188).  If C-Kermit's
SHOW VERSIONS command displays higher version numbers that the ones shown
here, consult the file CKCKER.UPD to find out what changes were made since
the edit 188 release.

FILE      LAST EDIT    VERSION    COMMENTS

ckcasc.h  19 May 92               ASCII character symbol definitions
ckcdeb.h   6 Nov 92               Definitions used by all modules
ckcker.h  23 Nov 92               Kermit-specific definitions
ckcsym.h  19 May 92               C preprocessor symbol definitions
ckcxla.h   4 Aug 92               Common character-set translation definitions
ckuver.h  18 Nov 92               Version header definitions

ckcmai.c  23 Nov 92    5A(188)    Main program
ckcpro.w  23 Nov 92    5A(052)    Protocol state switcher, "wart" language
ckwart.c  14 Jan 92    2A(009)    wart preprocessor for ckcpro.w
ckcpro.c  23 Nov 92    5A(052)    C-language protocol state switcher
ckcfns.c  24 Nov 92    5A(080)    System-independent protocol functions
ckcfn2.c  23 Nov 92                ...continued
ckcfn3.c  12 Oct 92                ...continued
ckcnet.h  13 Oct 92               Common network support definitions
ckcnet.c  23 Nov 92    5A(015)    Network support

ckcmdb.c  10 Nov 92       -       malloc()-debugging package

ckucmd.h  21 Nov 92               Interactive command parser symbols
ckucmd.c  22 Nov 92    5A(053)    Interactive command parser functions
ckuusr.h  26 Oct 92               User interface symbols
ckuusr.c  23 Nov 92    5A(092)    Interactive command parser
ckuus2.c  23 Nov 92                 ...continued
ckuus3.c  21 Nov 92                 ...continued
ckuus4.c  22 Nov 92                 ...continued
ckuus5.c  23 Nov 92                 ...continued
ckuus6.c  23 Nov 92                 ...continued
ckuus7.c  23 Nov 92                 ...continued
ckuusx.c  23 Nov 92               User interface common routines
ckuusy.c  18 Nov 92               Command-line option parser

ckudia.c   2 Nov 92    5A(046)    DIAL command
ckuscr.c   2 Nov 92    5A(015)    SCRIPT command

ck9con.c  12 Oct 92    5A(06)     OS-9 CONNECT command
ck9fio.c  10 Jul 92    5A(07)     OS-9 file system interface
ck9tio.c  12 Oct 92    5A(08)     OS-9 communications i/o

ckdcon.c  10 Oct 92    5A(44)     AOS/VS CONNECT command
ckdfio.c  10 Oct 92    5A(064)    AOS/VS file system support
ckdtio.c  10 Oct 92    5A(096)    AOS/VS communications i/o

ckicon.c   1 Sep 92    1.3        Amiga CONNECT command
ckifio.c   1 Sep 92    1.6        Amiga file system support
ckistu.c   1 Sep 92    1.5        Amiga stub routines
ckitio.c   1 Sep 92    1.7        Amiga communications i/o
ckiutl.c   1 Sep 92    1.7        Amiga utility functions

ckocon.c  25 Oct 92     -         OS/2 CONNECT command
ckodir.h  20 Jan 92               OS/2 file system definitions
ckoker.h   6 Nov 92               OS/2 compilation definitions
ckolat.h  11 Jul 92               OS/2 LAT support definitions
ckonet.c   8 Aug 92    5A(008)    OS/2 network support
ckotio.c  16 Nov 92     -         OS/2 communications i/o

ckscon.c  20 Jul 92    5A(031)    Atari ST CONNECT command
cksfio.c  20 Jul 92    5A(059)    Atari ST file system interface
ckstio.c  20 Jul 92    5A(086)    Atari ST file communications i/o

ckucon.c  23 Nov 92    5A(047)    CONNECT command for UNIX
ckufio.c  23 Nov 92    5A(067)    File system interface for UNIX and OS/2
ckutio.c  23 Nov 92    5A(102)    Communications i/o for UNIX
ckuxla.h  27 Jun 92               Character-set symbols for UNIX & others
ckuxla.c  21 Nov 92    5A(018)    Character-set translation for UNIX & others
ckustr.c  11 Sep 92      -        String extraction module for 2.xBSD
cku2tm.c  11 Sep 92      -        ctimed support for 2.10 BSD

ckvvms.h   7 Oct 92               VMS- and OpenVMS-specific definitions
ckvcon.c  26 Oct 92    5.0-028    CONNECT command for VMS and OpenVMS
ckvfio.c   5 Nov 92    2.0-095    File system support for VMS and OpenVMS
ckvtio.c  23 Nov 92    2.0-050    Communications i/o for VMS and OpenVMS
ckvioc.h  19 Oct 92      -        VMS ioctl() simulation symbol definitions
ckvioc.c  19 Oct 92      -        VMS ioctl() simulation
ckvcvt.c   6 Sep 92    T1.0-05    VMS labeled-file decoder

(End of CKAAAA.HLP)
