A large commit.
[pdp8.git] / sw / kermit / k12 / k12mit.dsk
diff --git a/sw/kermit/k12/k12mit.dsk b/sw/kermit/k12/k12mit.dsk
new file mode 100644 (file)
index 0000000..a30dca0
--- /dev/null
@@ -0,0 +1,484 @@
+        KERMIT-12 Release Disk Information File a/o 28-Oct-1991.
+
+        Description of files on RT-11 format double-density (RX02) diskettes.
+
+Diskette #1     Source Files
+
+   Name      Size   Block     Date
+K12MIT.PAL    453     14    6-Sep-90
+K12PCH.PAL     50    467    6-Sep-90
+K12ENC.PAL     59    517   30-Aug-90
+K12DEC.PAL     60    576   30-Aug-90
+K12PRM.PAL      3    636    6-Sep-90
+K12CLR.PAL      2    639   30-Aug-90
+K12ENB.PAL     47    641    1-Oct-91
+K12DEB.PAL     45    688   22-Oct-91
+K12IPL.PAL     19    733    6-Oct-91
+K12IPG.PAL     23    752    8-Oct-91
+<Unused>      213    775
+
+  10 files in 761 blocks,  213 free blocks.
+
+Diskette #2     Documentation and Support Files
+
+   Name      Size   Block     Date
+K12MIT.ANN     41     14   21-Oct-91
+K12MIT.UPD     23     55   21-Oct-91
+K12MIT.DOC    135     78    6-Sep-90
+K12MIT.NOT     33    213   18-Oct-91
+K12MIT.ENC     24    246    6-Sep-90
+K12PL8.ENC     24    270   30-Aug-90
+K12CRF.ENC     17    294   30-Aug-90
+K12GLB.ENC      6    311    5-Sep-90
+K12MIT.LST     30    317    6-Sep-90
+K12MIT.DSK     52    347   28-Oct-91
+K12ENC.DOC     24    399   31-Aug-90
+K12MIT.BWR     69    423   28-Oct-91
+K12MIT.BOO     18    492    1-Oct-91
+K12PL8.BOO     18    510    1-Oct-91
+K12CRF.BOO     12    528    1-Oct-91
+K12GLB.BOO      4    540    1-Oct-91
+K12IPL.DOC      9    544    6-Oct-91
+K12FL0.IPL     18    553    8-Oct-91
+K12FL1.IPL     18    571    8-Oct-91
+K12IP0.ODT      4    589    6-Oct-91
+K12IP1.ODT      4    593    6-Oct-91
+<Unused>      391    597
+
+  21 files in 583 blocks,  391 free blocks.
+
+        Description of individual files.
+
+        K12MIT.PAL
+
+            This is the  current  release  of  KERMIT-12  in source form.  The
+        beginning of this file  contains  much  information  about  setting up
+        various  hardware (KL-8, etc.) and  software  settings  for  KERMIT-12
+        internal operation;  the first 30-35 pages of the listing file created
+        by  PAL8  are  available  as a stopgap  user  guide  in  the  form  of
+        K12MIT.DOC.  It is extremely important to read the section on assembly
+        instructions  for  K12MIT,  as  non-default  switches must be set  for
+        proper assembly.
+
+            Due to the sorry  state  of  the  predecessor source (K08MIT) this
+        file is based on, it has taken an extreme amount of effort to overcome
+        many former limitations on many levels;  there are still many problems
+        which only development time (when available) will  overcome.  There is
+        also a lot of inconsistency of implementation, i.e., some features are
+        totally  finalized  (or  are  so written in such a  way  that  only  a
+        non-existent  section  of  code  could  "wake  up" the feature), while
+        others  are  bound  to  be  "bodily  replaced"  (such as the low-level
+        protocol implementation  which can "blow up" when dealing with certain
+        atypical (though perfectly  reasonable)  KERMIT  implementations which
+        pass data such as  lower-case file name characters, etc.) when time is
+        available.
+           
+            Approx.   2/3  of  the  source  code  and  80% of the current file
+        contents have been  written by Charles Lasner taking advantage of over
+        20 years of PDP-8  hacking  and  "cook-book"  methods, etc., including
+        some never-before-seen techniques "borrowed" from  P?S/8  (P?S/8 is an
+        alternate PDP-8 operating system and is copyright CLA Systems).  Every
+        new piece of code added to KERMIT-12  usually  represents an exemplary
+        method  for  handling  a  given task, often producing  "quantum  leap"
+        improvements over the former code;  see the built-in  edit history for
+        details.
+           
+            It should be noted that  KERMIT-12 runs on the minimum OS/8 family
+        configuration  of 8K 12-bit words total  main  memory  (including  the
+        operating  system;   this could change in  future  versions!)  and  is
+        probably the smallest known (in terms of total executable binary code)
+        KERMIT implementation.  (If a P?S/8 KERMIT is written, it  will run on
+        a smaller machine, only 4K 12-bit words!)
+
+        A rough table of improvements (wish list?) includes:
+
+        a)      100%  rewrite  of  the  command parser to conform to  accepted
+                guidelines of most KERMITs.
+
+        b)      100%  rewrite  of the protocol-related features to allow for a
+                robust (though minimal) KERMIT implementation that should work
+                in all cases.
+
+        c)      Adding in local  feature  improvements  (Connect  mode  parity
+                support, VT-100 terminal support, command  files,  etc.) which
+                depend  on  the  better  command  processor    to    implement
+                efficiently.
+
+        d)      Adding in protocol improvements such as negotiated  parameters
+                (eight-bit, repeat-count  compression, file attributes, server
+                mode, etc.) and  session  statistics  (internally and visually
+                on-line).
+
+        e)      Additional "frills" such as  scripting language, macros, etc.,
+                as well as anything else someone can add to this list.
+
+        K12PCH.PAL
+
+            This is the  official  "patch"  file for K12MIT.PAL.  All relevant
+        customizing can be accomplished  within K12PCH.PAL, as all conditional
+        parameters  and their consequences have  been  copied  to  K12PCH.PAL,
+        leaving only the "pure" code behind in K12MIT.PAL.
+
+            A  standard  assembly  of    K12MIT.PAL  producing  K12MIT.BN  (or
+        K12MIT.SV via ABSLDR.SV) can be  overlaid  by  K12PCH.BN to accomplish
+        any relevant changes to configure a  custom version.  If any parameter
+        causes this convention to be violated, please  notify  Charles Lasner,
+        as this specification must be met to support the ability for a minimal
+        system  to configure KERMIT-12 from K12MIT.SV and K12PCH.BN on  modest
+        hardware (such as one pair of RX01 only).
+
+            Use of K12PCH.PAL mandates a local banner message for the  running
+        KERMIT.SV  which should be locally modified as necessary.  The default
+        message  is    "Insert    Local    User  Message  Here"  to  encourage
+        customization.
+
+        K12ENC.PAL
+
+            This is an encoding program (aka ENCODE) to convert OS/8 files  in
+        any format  to  a  "printable"  ASCII format suitable for transmission
+        through  any  medium    which  doesn't  "mangle"  the  printing  ASCII
+        characters from 0 through  9,  and  A  through  V  (or  a  through v).
+        Several binary files are distributed in ENCODE format (see elsewhere).
+
+            All characters outside of the  printing  ASCII  character  set are
+        ignored except for the necessity for  "white-space"  to  exist between
+        the  two  fields  of  the  optional (FILE  XXXXXX.XX)  command,  which
+        specifies the name of the original (un-encoded) file.    Several other
+        optional commands are supported;  see K12MIT.ENC as an  example of all
+        of  them.    When properly decoded (see K12DEC.PAL description below),
+        the  original    file   is  totally  restored  except  for  additional
+        information words from the directory (not really in the file itself!),
+        thus only the creation  date (if the directory is setup to support it)
+        is lost.  Users of  ENCODE  are  encouraged  to use the (REMARK .....)
+        command to help in the restoration of the file.  Assembly instructions
+        as well as usage examples are provided  in  the  source  file.   NOTE:
+        output files created by this program can overwrite existing files with
+        identical names;  use this utility carefully!
+
+            The format used by  ENCODE  (and  DECODE)  was designed by Charles
+        Lasner and Frank da Cruz  to  allow  seven-bit  ASCII  transmission of
+        arbitrary binary files (any file where  the  eight-bit  representation
+        must be maintained, such as OS/8 files  unpacked/packed  as strings of
+        eight-bit  bytes)  through  "hostile  environments," such as seven-bit
+        ASCII-only  KERMIT  (alas,  the current sorry state of KERMIT-12),  or
+        various network E-mailers.  An optional checksum feature (supported on
+        the PDP-8 version) will ensure against data corruption.  The format is
+        robust enough to  allow  extraneous  "white-space"  (<space> <HT> <VT>
+        <FF>,  <CR>/<LF>,  etc.) to  be  introduced  by  various  intermediate
+        "editors" with no loss.
+
+            It is hoped that this format is adopted on many systems, as it was
+        designed to overcome some of the  limitations  of  the  former (albeit
+        extremely popular) UUENCODE and .BOO formats used elsewhere.
+
+        K12DEC.PAL
+
+            This is an auxiliary utility (aka DECODE)  to  decode  the encoded
+        binary  files  created  by  ENCODE  into their original  form.    (See
+        description  of  K12ENC.PAL.)  The  files  can  be recreated with  any
+        arbitrary  file  name  including  the  original  file name if embedded
+        within  the  encoded file (embedded file name commands are optional to
+        the    encoded  file  format.),  and  can  be  directed  to  any  OS/8
+        file-structured device.
+
+            Since  this  utility  is  potentially to be used on  systems  with
+        "ancient"  assemblers, the source file has been restricted in the  use
+        of  "frill"  features,  so it can be assembled by virtually any  known
+        standard released version of PAL8 associated with any release of PS/8,
+        PS/12, OS/8,  OS/12, OS/78, OS/278, etc., and should be used to decode
+        K12PL8.ENC and K12CRF.ENC into PAL8.SV AND CREF.SV respectively, which
+        will then allow further  assemblies  with  the  latest  PAL8  and CREF
+        (Version B0).  Assembly instructions  as  well  as  usage examples are
+        contained within the source file.  NOTE:  output files created by this
+        program can overwrite existing files with identical  names;   use this
+        utility carefully!
+
+        K12PRM.PAL
+
+            This  is  an example of a custom parameter file  ("PARAM"  in  the
+        documentation) for use with either K12MIT.PAL or K12PCH.PAL.  It  sets
+        most  of  the  common  parameters  to  their likely (possibly default)
+        values.   VT-78-specific  parameters  are  given  for SLU2 support;  a
+        VT-78-specific  banner  message    is  created  as  an  example  of  a
+        user-defined banner message.
+
+        K12CLR.PAL
+
+            This file is a simple memory-clearing file.  All KERMIT-12 loading
+        memory  is  pre-cleared by loading  K12MIT.BN  over  the  binary  file
+        K12CLR.BN derived from this file.   This  yields  "cleaner" core-image
+        files which will compress better when encoded  with ENCODE (K12ENC) or
+        ENBOO (K12ENB).
+
+        K12ENB.PAL
+
+            This file is a utility program to encode  any  OS/8 file into .BOO
+        format  for  distribution via any "ASCII" path much the  same  as  the
+        ENCODE utility.  While not as robust as ENCODE format,  .BOO files are
+        generally smaller,  which  may be desirable.  This implementation uses
+        length correction bytes  at  the  end  of  any file requiring it.  The
+        ultimate decoding program must  support  this  aspect of the format to
+        ensure reliable file recreation.
+
+            This utility, as well as the companion  K12DEB (see below) use the
+        standard  OS/8  unpacking  scheme  internally  to  ensure proper  file
+        representation    on   other  systems.    This  allows  ASCII  (albeit
+        "delicate") files  to be encoded/decoded between systems.  This allows
+        exchange of such files as TECO macros without loss.
+
+        K12DEB.PAL
+
+            This  file  is a utility program to decode .BOO format files  back
+        into their original  (binary)  form.    Length  correction  bytes  are
+        supported to ensure proper file decoding.  Any file encoded with ENBOO
+        (aka K12ENB) will decode perfectly back into the original form as long
+        as the file's contents are intact  other  than  white-space  and other
+        insignificent "cosmetic" considerations.
+
+            Files  not  originating from OS/8 (not an exact  multiple  of  384
+        bytes) will be padded with null bytes to fill  the  rest  of an entire
+        OS/8  record.    Files  stored  this way and then encoded  again  will
+        reflect these extra null bytes.  This implementation doesn't check for
+        line terminations,  so  files  delivered without proper <CR>/<LF> line
+        termination are acceptable.
+
+        K12IPL.PAL
+
+            This  file  is  a utility program to load  portions  of  KERMIT-12
+        directly  into  memory without any error checking or recovery  method.
+        It  is used to create K12MIT.SV "from the ground up."  Once  K12MIT.SV
+        has  been  created,  this  utility  should  be  abandoned  in favor of
+        K12MIT.SV  to acquire all further files.  Use this utility only if  no
+        other method is available, as it is inherently unreliable.  The safest
+        way to use  it is with a local dedicated connection to another machine
+        via null modem.
+
+            K12MIT.SV is available split into single-field encoded files to be
+        loaded  by this program.  Documentation on the entire loading  process
+        is  contained  within the source file.  The binary version(s) of  this
+        program can be directly keyed into ODT if desired as the shortest  way
+        to  load  K12MIT.SV  if  desired.    (See  K12IP0.ODT  and  K12IP1.ODT
+        description below.)
+
+        K12IPG.PAL
+
+            This file is a utility program to generate the  .IPL  format files
+        (K12FL0.IPL  and  K12FL1.IPL  from  K12MIT.SV) meant to be loaded with
+        IPL0.SV  and  IPL1.SV as created by the user from K12IPL.PAL.   It  is
+        primarily  a  development  tool  and  must be modified if K12MIT.SV is
+        enlarged to occupy an additional memory field.
+  
+        K12MIT.ANN
+
+            This is the release announcement file for KERMIT-12.
+
+        K12MIT.UPD
+
+            This is the release update file for KERMIT-12.
+
+        K12MIT.DOC
+
+            This  is  a  collection  of  hints  and  kinks,  etc.    regarding
+        KERMIT-12, including hardware-specific recommendations for customizing
+        and assembling KERMIT-12  for  a  variety of configurations.  The edit
+        history of KERMIT-12 is also included.  (This file is the beginning of
+        the file K12MIT.PAL.  It  is  intended  for  those  who  do not obtain
+        K12MIT.PAL, the main source code, which  is much longer and beyond the
+        filing capabilities of some of the smaller (though supported) systems.
+        By using the information in K12MIT.DOC, KERMIT-12 can  be  created  by
+        merely obtaining all of the files except K12MIT.PAL.)
+
+        K12MIT.NOT
+
+            This is a collection of release notes for the latest version.  New
+        issues raised or solved by  this release will be collected here.  Old,
+        but open issues may be retained in this file also.
+
+        K12MIT.ENC
+
+            This is the standard assembly of the distributed K12MIT.PAL (using
+        PAL8 Version B0) into K12MIT.BN which is then loaded (using ABSLDR.SV)
+        over K12CLR.BN to produce K12MIT.SV which  is then converted to ENCODE
+        format  (using  ENCODE.SV (aka K12ENC.SV) as described  above).    All
+        parameters are set to their normal defaults including those parameters
+        which cause the local banner message to be generated  as  a valid null
+        message (in case K12PCH.BN is not loaded over K12MIT.SV).   This  file
+        should  first be decoded with DECODE.SV (aka K12DEC.SV) into K12MIT.SV
+        and then  overlaid  by K12PCH.BN to create a customized local version.
+        The resultant customized  version  should  be  named KERMIT.SV (or any
+        other appropriate file name),  and  not  be  named K12MIT.SV, to avoid
+        confusion with the standard release  file  of KERMIT-12;  it is likely
+        all future releases will use this naming convention.
+
+        K12PL8.ENC
+
+            This is PAL8 Version  B0  from  the  "official"  release of OS/278
+        Version 2, i.e., the version  available  as  DECUS  DM-101,  in ENCODE
+        format.  It has no actual  dependencies on any cpu hardware extensions
+        beyond the classic PDP-8 (as was originally  intended).   PAL8 Version
+        B0 and its companion CREF Version B0 (see  below) will run on any OS/8
+        family member system.
+
+            There is a minor quirk of PAL8 Version B0 documented in K12MIT.PAL
+        regarding interaction with the  TTY:    handler  of  operating systems
+        prior to OS/278, but in all other respects this should be treated as a
+        replacement for all prior PAL8 releases.    This version supports 128k
+        assembly  as  do  several prior versions;   the  listing  format  will
+        truncate  one  column  earlier  on  wide  source  file   input  lines.
+        K12MIT.PAL  requires  the use of PAL8 Version B0 (or  essentially  any
+        2-digit  release just prior to Version B0;  in any  case  no  versions
+        prior  to  Version  10A)  for  proper  assembly.   PAL8 Version B0  is
+        distributed as a convenience to KERMIT-12 users.
+
+        K12CRF.ENC
+
+            This  is  CREF  Version  B0 from the "official" release of  OS/278
+        Version  2,  i.e.,  the  version  available as DECUS DM-101, in ENCODE
+        format.   It  has  no  actual  dependencies on any hardware extensions
+        beyond the classic PDP-8 (as was originally intended).  Besides fixing
+        several long-standing bugs of  CREF,  this  version  is  the  required
+        companion to PAL8 Version B0.    This  is  the only known CREF version
+        that will format 128k-capable assembly output  correctly,  which was a
+        major  sore point for three prior releases,  preventing  their  proper
+        use;  many users have had to stick  with  PAL8  V10A and CREF V3 until
+        this  release.   CREF Version B0 is distributed as  a  convenience  to
+        KERMIT-12 users.
+
+        K12GLB.ENC
+
+            This is a TECO macro K12GLB.TEC (aka  GLOBAL.TEC)  which maintains
+        the concordance between K12MIT.PAL and K12PCH.PAL.  It  is distributed
+        in ENCODE format to protect the rigid format requirements  of  a  TECO
+        macro.   All global symbols required by K12PCH.PAL are equated  within
+        K12MIT.PAL in a special format required by GLOBAL.TEC.  The OS/8  MUNG
+        command is used  to  update  K12PCH.PAL whenever KERMIT-12 development
+        (within  K12MIT.PAL)  dictates.     KERMIT-12  developers  must  fully
+        understand how to use this utility.
+
+        K12MIT.LST
+
+            This file is a symbol-table  listing  of K12MIT.PAL minus the code
+        listing.    It  is  needed  by   K12GLB.TEC  for  the  maintenance  of
+        K12PCH.PAL.    K12MIT.LST  can be created from  K12MIT.PAL  merely  by
+        assembling K12MIT.PAL as documented within K12GLB.TEC;  it is provided
+        in  the  distribution  for  those  unable  to obtain the  main  source
+        (K12MIT.PAL) due to its size.
+
+
+        K12MIT.DSK
+
+            This file, which explains the KERMIT-12 distribution files as they
+        appear on the RT-11-format RX02 release diskettes.
+
+        K12ENC.DOC
+
+            This is a description of the encoding format used for  the ENCODed
+        binary files (.ENC) in the KERMIT-12 release.  Related issues and file
+        considerations are also  discussed  to foster future encoding formats,
+        since the format is subject to possible change.
+
+        K12MIT.BWR
+
+            This file  documents  known  problems  with the current release of
+        KERMIT-12  and related  utilities.    Possible  workarounds  are  also
+        discussed.
+
+        K12MIT.BOO
+
+            This is the standard assembly of the distributed K12MIT.PAL (using
+        PAL8 Version B0) into K12MIT.BN which is then loaded (using ABSLDR.SV)
+        over K12CLR.BN to produce K12MIT.SV which is then  converted  to  .BOO
+        format  (using  ENBOO.SV  (aka  K12ENB.SV)  as described above).   All
+        parameters are set to their normal defaults including those parameters
+        which cause the local banner message to be generated as a  valid  null
+        message  (in  case K12PCH.BN is not loaded over K12MIT.SV).  This file
+        should first  be  decoded with DEBOO.SV (aka K12DEB.SV) into K12MIT.SV
+        and then overlaid  by  K12PCH.BN to create a customized local version.
+        The resultant customized version  should  be  named  KERMIT.SV (or any
+        other appropriate file name), and  not  be  named  K12MIT.SV, to avoid
+        confusion with the standard release file  of  KERMIT-12;  it is likely
+        all future releases will use this naming convention.
+
+            It is  conceivable  that  distribution "paths" may be "hostile" to
+        .BOO format thus  making K12MIT.SV (or other files) undeliverable when
+        encoded in .BOO format.  For example, some users acquire KERMIT-12 via
+        a path including WPS and  WPFLOP.SV.   .BOO files cannot reliably pass
+        through this process.  In this  or  any  other "troublesome" case, the
+        ENCODE format equivalent file is recommended for distribution.
+
+        K12PL8.BOO
+
+            This is PAL8 Version  B0  from  the  "official"  release of OS/278
+        Version  2, i.e., the version  available  as  DECUS  DM-101,  in  .BOO
+        format.  It has no actual  dependencies on any cpu hardware extensions
+        beyond the classic PDP-8 (as was originally  intended).   PAL8 Version
+        B0 and its companion CREF Version B0 (see  below) will run on any OS/8
+        family member system.
+
+            There is a minor quirk of PAL8 Version B0 documented in K12MIT.PAL
+        regarding  interaction  with  the  TTY:   handler of operating systems
+        prior to OS/278, but in all other respects this should be treated as a
+        replacement for all  prior  PAL8 releases.  This version supports 128k
+        assembly as do several  prior  versions;    the  listing  format  will
+        truncate  one  column  earlier  on   wide  source  file  input  lines.
+        K12MIT.PAL requires the use of PAL8  Version  B0  (or  essentially any
+        2-digit release just prior to Version B0;    in  any  case no versions
+        prior  to  Version  10A)  for proper assembly.   PAL8  Version  B0  is
+        distributed as a convenience to KERMIT-12 users.
+
+        K12CRF.BOO
+
+            This  is  CREF  Version B0 from the "official" release  of  OS/278
+        Version  2,  i.e.,  the  version  available  as DECUS DM-101, in  .BOO
+        format.    It  has  no  actual dependencies on any hardware extensions
+        beyond the classic PDP-8 (as was originally intended).  Besides fixing
+        several long-standing bugs  of  CREF,  this  version  is  the required
+        companion to PAL8 Version  B0.    This  is the only known CREF version
+        that will format 128k-capable assembly  output  correctly, which was a
+        major sore point for three prior  releases,  preventing  their  proper
+        use;  many users have had to  stick  with  PAL8 V10A and CREF V3 until
+        this  release.  CREF Version B0 is distributed  as  a  convenience  to
+        KERMIT-12 users.
+
+        K12GLB.BOO
+
+            This is a  TECO  macro K12GLB.TEC (aka GLOBAL.TEC) which maintains
+        the concordance between K12MIT.PAL  and K12PCH.PAL.  It is distributed
+        in .BOO format to protect  the  rigid  format  requirements  of a TECO
+        macro.  All global symbols required  by  K12PCH.PAL are equated within
+        K12MIT.PAL in a special format required by  GLOBAL.TEC.  The OS/8 MUNG
+        command  is  used to update K12PCH.PAL whenever KERMIT-12  development
+        (within  K12MIT.PAL)   dictates.    KERMIT-12  developers  must  fully
+        understand how to use this utility.
+
+        K12IPL.DOC
+
+            This file  is  a description of the encoding format for .IPL files
+        as used in the direct loading method of acquiring K12MIT.SV.
+
+        K12FL0.IPL
+
+            This file is  the  field  zero data of K12MIT.SV encoded into .IPL
+        format for use with IPL0.SV (from K12IPL.PAL).
+
+        K12FL1.IPL
+
+            This file is the field  one  data  of  K12MIT.SV encoded into .IPL
+        format for use with IPL1.SV (from K12IPL.PAL).
+
+        K12IP0.ODT
+
+            This  file  is a sample of an ODT session used to  create  IPL0.SV
+        using  manual  entry  into  ODT and a SAVE command only.  Some  values
+        shown  are  default  and  may  need  to  be  customized  according  to
+        parameters documented in  K12IPL.PAL.  Using IPL0.SV (and IPL1.SV from
+        K12IP1.ODT as described below)  is the shortest way possible to obtain
+        K12MIT.SV when no other method is available.
+
+        K12IP1.ODT
+
+            This file is the  field one companion to K12IP0.ODT used to create
+        IPL1.SV using similar means to  those  described  for  IPL0.SV.   Both
+        IPL0.SV and IPL1.SV are required to directly obtain K12MIT.SV.
+
+[end of file]