home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / cprog / spp.zip / SPPMAN.TXT < prev    next >
Text File  |  1992-01-21  |  33KB  |  1,268 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                                           
  8.                                           
  9.                                           
  10.                                           
  11.                                           
  12.                                           
  13.                                           
  14.                                           
  15.                                           
  16.                                           
  17.                                           
  18.                                       Serial++
  19.                                           
  20.                         Interrupt Driven Serial Ports for C++
  21.                                           
  22.                              from Cortlandt Technologies
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                               
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.                                           
  74.  
  75.           
  76.           
  77.           
  78.           
  79.           
  80.           
  81.           
  82.           Serial++ Version 1.0
  83.           by Cortlandt Technologies
  84.           P.O. Box 195
  85.           Pleasantville NY 10570
  86.           
  87.           
  88.           
  89.           
  90.           
  91.           
  92.                                             _______
  93.                                        ____|__     |                (R)
  94.                                     --|       |    |-------------------
  95.                                       |   ____|__  |  Association of
  96.                                       |  |       |_|  Shareware
  97.                                       |__|   o   |    Professionals
  98.                                     -----|   |   |---------------------
  99.                                          |___|___|    MEMBER
  100.           
  101.           
  102.           This program is produced by a member of the Association of
  103.           Shareware Professionals (ASP).  ASP wants to make sure that the
  104.           shareware principle works for you. If you are unable to resolve a
  105.           shareware-related problem with an ASP member by contacting the
  106.           memberdirectly, ASP may be able to help. The ASP Ombudsman can
  107.           help you resolve a dispute or problem with an ASP member, but
  108.           does not provide technical support for members' products.  Please
  109.           write to the ASP Ombudsman at 545 Grover Road, Muskegon, MI 49442
  110.           or send a CompuServe message via CompuServe Mail to ASP Ombudsman
  111.           70007,3536.
  112.  
  113.           
  114.           
  115.           Copyright Notice:
  116.  
  117.           Serial++ is Copyright (c) 1991 by Cortlandt Technologies.  All
  118.           rights reserved.
  119.  
  120.           This manual is Copyright (c) 1991 by Cortlandt Technologies.  All
  121.           rights reserved.
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                               
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.           
  140.  
  141.           
  142.           
  143.           
  144.           
  145.           
  146.           
  147.           
  148.           
  149.           
  150.           
  151.           
  152.           
  153.           
  154.           
  155.           
  156.           
  157.           
  158.           
  159.           
  160.           
  161.           
  162.           
  163.           
  164.           
  165.           
  166.           
  167.           
  168.           
  169.           
  170.           
  171.           Warranty Disclaimer
  172.  
  173.           CORTLANDT TECHNOLOGIES MAKES NO WARRANTY OF ANY KIND, EXPRESSED
  174.           OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY WARRANTIES OF
  175.           MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
  176.  
  177.           CORTLANDT TECHNOLOGIES DOES NOT ASSUME ANY LIABILITY FOR THE USE
  178.           OF THIS SOFTWARE BEYOND THE ORIGINAL PURCHASE PRICE OF THIS
  179.           SOFTWARE.
  180.  
  181.           IN NO EVENT WILL CORTLANDT TECHNOLOGIES BE LIABLE TO YOU FOR ANY
  182.           ADDITIONAL DAMAGES, INCLUDING ANY LOST PROFITS, LOST SAVINGS, OR
  183.           OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE
  184.           OF, OR INABILITY TO USE, THIS SOFTWARE AND ITS ACCOMPANYING
  185.           DOCUMENTATION, EVEN IF CORTLANDT TECHNOLOGIES, HAS BEEN ADVISED
  186.           OF THE POSSIBILITY OF SUCH DAMAGES.
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                               
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.                                   Table of Contents
  206.  
  207.                Introduction........................................4
  208.  
  209.                Hardware/Software Requirements......................5
  210.  
  211.                Installing Serial++.................................6
  212.  
  213.                Installing .LIB Library Files.......................7
  214.  
  215.                Installing .H Include Files.........................8
  216.  
  217.                Using This Manual and Serial++......................10
  218.  
  219.                     Serial Ports...................................10
  220.  
  221.                     Break Trapping.................................13
  222.  
  223.                     Memory Models..................................13
  224.  
  225.                     Serial++ with Overlays.........................14
  226.  
  227.                SerialPort Function Reference.......................14
  228.  
  229.                     constructor....................................14
  230.  
  231.                     destructor.....................................15
  232.  
  233.                     getBreakOff....................................16
  234.  
  235.                     getCommPort....................................17
  236.  
  237.                     getDataBits....................................17
  238.  
  239.                     getLSR.........................................18
  240.  
  241.                     getMSR.........................................19
  242.  
  243.                     getParity......................................20
  244.  
  245.                     getSpeed.......................................21
  246.  
  247.                     getStopBits....................................21
  248.  
  249.                     inbyte.........................................22
  250.  
  251.                     inmem..........................................23
  252.  
  253.                     instr..........................................24
  254.  
  255.                     isOwner........................................25
  256.  
  257.                     lineOK.........................................26
  258.  
  259.  
  260.  
  261.                               
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.                     outbyte........................................27
  272.  
  273.                     outmem.........................................27
  274.  
  275.                     outstr.........................................28
  276.  
  277.                     sendBreak......................................28
  278.  
  279.                     setMCR.........................................29
  280.  
  281.                     unbyte.........................................30
  282.  
  283.                     constructor....................................31
  284.  
  285.                     destructor.....................................31
  286.  
  287.                     breakCt........................................32
  288.  
  289.                     isBreak........................................33
  290.  
  291.                     isCaptured.....................................34
  292.  
  293.                     isOwner........................................35
  294.  
  295.                     operator().....................................35
  296.  
  297.                     reset..........................................36
  298.  
  299.                     Serial++ is Shareware..........................38
  300.  
  301.                     Registration Information.......................38
  302.  
  303.                     Limited Distribution License...................39
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.                               
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.           Introduction
  339.  
  340.           Serial++ is a library of small, safe, and efficient routines that
  341.           bring interrupt driven serial port support to your C++ programs.
  342.           It is compiled and linked with the Borland C++ compiler, and
  343.           supplied in the form of a set of ready to link object libraries.
  344.  
  345.           The routines in Serial++ are as easy to use as file i/o in C, yet
  346.           give you complete access to the registers of the 8250 UART,
  347.           should you require it.  They allow you to read characters from
  348.           and write characters to two serial ports simultaneously, in a
  349.           fashion very similar to stream i/o in C.  Support for iostreams
  350.           as defined in C++ version 2.0 is not available as of this
  351.           release.
  352.  
  353.           Implemented as C++ classes, the Serial++ library handles multiple
  354.           ports and multiple instantiations with ease.  The SerialPort and
  355.           BreakTrap classes contain all the internal housekeeping necessary
  356.           to deal with  multiple instances of the each class using a single
  357.           port.  It is because of this feature that Serial++ lends itself
  358.           nicely to event driven applications.
  359.  
  360.           Serial++ protects your applications from keyboard breaks,
  361.           (pressing the Control-Break or Control-C keys), to insure that
  362.           the necessary interrupt housekeeping is completed before
  363.           terminating,.  This guarantees that premature closing of a
  364.           Serial++ application will not leave your system with invalid
  365.           service routine addresses hooked to the serial interrupts..
  366.  
  367.           By default SerialPort will perform an orderly shutdown when a
  368.           break key is pressed, and exit to DOS. You can, however, specify
  369.           that keyboard breaks be handled in your own application code, in
  370.           which case SerialPort will continue to operate and ignore the
  371.           break. See the section on break trapping for details on how this
  372.           works.
  373.  
  374.           You can also use the keyboard break handling in Serial++ by
  375.           itself.  The BreakTrap class is entirely independent of the
  376.           SerialPort class.
  377.  
  378.           Serial++ is linked into your C++ programs just like any other
  379.           library.  There is absolutely no requirement for external TSR's -
  380.           - applications using Serial++ are completely self contained.
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.                              4
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.           
  404.  
  405.  
  406.           Hardware/Software Requirements
  407.  
  408.           Serial++ may be used on any PC or PC-AT compatible computer,
  409.           running on an Intel(Tm) 8088, 8086, or 80x86 family processor or
  410.           compatible, that uses standard port addresses for COM1 and COM2.
  411.  
  412.           It is worth mentioning that Serial++ assumes that your serial
  413.           port hardware makes use of the National Semiconductor 8250 UART
  414.           chip, or a clone of it.  It is almost unheard of to find hardware
  415.           that uses anything else, so if you don't know what your serial
  416.           board uses, you're alright.  Be aware of this issue though, if
  417.           you use some sort of exotic or proprietary serial boards in your
  418.           machine.  When in doubt, try executing the demo program on your
  419.           target machine.
  420.  
  421.           While Serial++ is unaffected by machine speed, and has been run
  422.           on machines operating at 4.77 to 33 MHz, it does expect to find
  423.           the serial ports and interrupt vector addresses at very specific
  424.           locations:
  425.  
  426.           Device    Base i/o Address    Int. Vector Address
  427.           COM1:     0x03F8              0x000C
  428.           COM2      0x02F8              0x000B
  429.           
  430.           Keyboard:
  431.           Ctrl-Brk  n/a                 0x0023
  432.           Ctrl-C    n/a                 0x001B
  433.  
  434.           If you have difficulty getting the demo program to work, you
  435.           might want to consult the technical documentation that comes with
  436.           your computer to verify the addresses shown above.
  437.  
  438.           Serial++ requires MS-DOS, version 2.11 or higher. [The library
  439.           has been tested and works with version 5.00].  Serial++ uses DOS
  440.           functions for saving, setting, and restoring interrupt service
  441.           routine addresses.
  442.  
  443.           While it is running, Serial++ traps the interrupts mentioned in
  444.           the table above.  Although it restores the addresses of the prior
  445.           service routines upon exit, while it is running Serial++ could
  446.           interfere with any TSR's that utilizes any of the listed
  447.           interrupts.  Consult the documentation of any TSR's you use that
  448.           provide serial communications or respond to the Control-Break or
  449.           Control-C keys.
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.                              5
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.           
  470.  
  471.  
  472.           Installing Serial++
  473.  
  474.           Serial++ is distributed as a self-extracting archive file,
  475.           SPP.EXE.  The first step in installation is to copy this file
  476.           into a work directory and execute it by typing:
  477.           
  478.                C:>spp
  479.           
  480.           at the DOS command prompt.  SPP will announce each file as it is
  481.           unpacked looking something like this:
  482.           
  483.  
  484.             . . .
  485.             
  486.             READ.ME .
  487.             PACKING.LST .
  488.             SPPL.LIB .
  489.             BREAK.H .
  490.             SERIAL.H
  491.             SPPS.LIB .
  492.             . . .
  493.             
  494.  
  495.           After you have expanded SPP.EXE into its component files, you may
  496.           delete it from your install work directory, to save space.
  497.  
  498.           The first file to check is READ.ME, which may contain updated
  499.           information about Serial++.  You may also wish to examine the
  500.           contents of PACKING.LST, which lists every file in the package,
  501.           along with a brief description.
  502.  
  503.           The files included in the Serial++ package fall into the
  504.           following groups:
  505.  
  506.             >  Library files, SPPx.LIB.  There is one library file for each
  507.                  memory model supported by Serial++.
  508.  
  509.             >  Include files, *.H. These are C++ source includes that
  510.                  define the public interface of the classes that make up
  511.                  Serial++.
  512.  
  513.             >  Demo related files, *.CPP, *.BAT, *.MAK, etc. These files
  514.                  are included to provide you with some examples of how to
  515.                  use Serial++.  They include an executable demo program,
  516.                  SPPDEMO.EXE, which is ready to run.
  517.  
  518.             >  Documentation, READ.ME, PACKING.LST, and the file that
  519.                  contains this document, SPPMAN.TXT.
  520.  
  521.           In order to begin using Serial++, you must place the library and
  522.           include files in a directory where the C++ compiler and linker
  523.  
  524.  
  525.                              6
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.           can 
  536.  
  537.   ting,.  Thisright.  B and linker
  538.  
  539. n your
  540.        k
  541.    Ps t    e Borlak
  542.   DEMOing 
  543.           s of thi
  544.  
  545. t place the library a          
  546. ,          hat make up
  547. e spt files                containsde files  
  548.  
  549.  
  550.        hey iMAN.TXT  machine.  Whenntirely thibwitn that your seri LibrarompaplXT.tilizes anyhousekeeping is ition, READ.Ms usipanded SPP.w execannoums
  551.        i/o in C. rhing like this:
  552.           
  553.  
  554.     6       . . .
  555.             
  556.      our cecannm       
  557.     s    e Dopd proma     w execao e, i
  558.  
  559.  
  560.          s READ.ME,am to lre maibws o   SPPSplXT.mmputer,
  561.           run
  562.           
  563.  /o iur
  564.  EAD.Ms 
  565.  
  566. he rs Rdeta*.Bthoug,
  567.   yary files, SPPx.bPSplXT.         he faufromor each
  568.   pt.  m   
  569.   intoekeeping is it    . . ..          READ.ME .
  570.             Serial+F C++ cK, etc. These figoof a
  571.   anno     EAD.Ms 
  572. ao     annmde you wiizes any of the listse
  573.    ude
  574.    if ybyrt for iostreamsn C. r, TLINK.an execdoes expect to firont   y
  575. ao ins    fine  infor like this:
  576.  1+ us    wiizes ani.Ms usng:
  577. nded SPP.w execibranourclly           containsde     i/o in C.     fashiy be us iostreams
  578.              compiler and linkerutorce ccllytse
  579.    u     urrromor each
  580. ,
  581.            compiler and linkeles to ls ftlyta works usip            usng: save sp   e compiler and linke
  582.  
  583.      save sp   e
  584.        e to opei++
  585.  
  586. rt.
  587.  
  588. uter,
  589.           runect to firontopd pro.     ng:
  590. nded SPP.ibra      following gro         runect to h
  591.  
  592. ens thibwsng:
  593. nded SPP.w execibrade     i/o in C.
  594.    Ps t    e Borlakone lzes ani.Msr
  595.  
  596. .
  597.   ed!or like this:
  598.  - ORioni like this:
  599.  2    py
  600.           (pressini.Ms uyou wiianded SPP.w execann   Ps t    e Borlakoprietaryressini.Ms        ybyrs iostre  S   e to op           contains nded SPP.s ope  drutorce ccllytse
  601.    f ybyrt fo
  602.        e           containsnntratinit    . . .s,
  603.  n dou Brebiianded SPP:           contains like this:
  604.          \BORLANDC\    compiler and linke
  605.           can 
  606.  
  607.   nle.
  608. the
  609.     deangedrial++ self. s iostreanded SPP
  610.           can 
  611.  
  612.  naesse tF is ng:
  613. nded SPP.w execibra      following 
  614.    Ps t    e Borlakce    Ba s R, to save ss:           contains like this:
  615.          e i   PYllow?      \BORLANDC\    compiler and linkeeeeeeeeeeeeee(    vec    ,
  616.          Ke this
  617. )           contains like this:
  618.          e i DELllow?     compiler and linkeeeeeeeee(ao     ride
  619.  
  620.     s
  621. adyial+   i.M.)           contains like this:
  622.       or like this:
  623.  - ORioni like this:
  624.  3+ us    wiizes ani.Ms usng:i Thereor each
  625.   stredeangecann   Ps t    e Borlak
  626.        'sizes anyhse
  627.    ude
  628.  e to ope   biiins    fin. These are C+ing is it s    e D  y:           contains like this:
  629.                      s iostreIDEk
  630.        ,re is a
  631.   usng: like this:
  632.       environmmput       Opd promDr eachi.ME,atre    you with some exam, SPPx.bPitnn break.ght wa
  633.    ude
  634.    wiianded SPP. orde     compiler and linkede files
  635.           (pressini.M.         wfin.      lXT.         runect to finmde ianded SPP.\      It i
  636.  
  637.  
  638. ,ed in ywizes anyhse
  639.    hing like this:
  640.           
  641.  
  642.     7 looking something like this:
  643.       de
  644.         ntai     :           contains like this:
  645.          \   ;\BORLAND\   ;...           contains like this:
  646.       
  647.  
  648. suxecao      d inenvironmmput intoer t Serial+deangecbP
  649.           can 
  650.  
  651.         SerOpd promS    f is ng:mmpu.           contains like this:
  652.         I wort   ly,cibrade Bre        sCIN, wps the i         like this:
  653.       a
  654.   s iostreamsao r to ial+deangec     s usng:IDE like this:
  655.       ds the ial++ m, sC      Agile,e    y
  656.  
  657.   th you with some exam, SPPx.       (pressinypanded SPP.EXE     ctedl usnou with some exam, SPPx.bPitnn break.ght zes anyhse
  658.    ude
  659.  e           contains like this:
  660.              prefly t    save sp   e
  661.         sCCing 
  662.  
  663.    as it is
  664.    
  665.       a
  666.  des de figur   
  667.     >  Libra   you e   d insaess it is
  668.    
  669.         Slf. am P, *.Bb 
  670.       sbyrthat yt fo
  671.        ntioL
  672.           can 
  673.  
  674.   a
  675. c e tAs      ,+deangat yt fo a
  676. c  thi
  677. s o:           contains like this:
  678.          -L\   ;\BORLANDC\   ;...           contains like this:
  679.       ou Bre
  680. .ert y
  681.  
  682.   th you Ke hypot fe ccl       PACKike this:
  683.       ressini.Ms nded SPP.suyou wiise
  684.    ude
  685.  e          READ.ME .
  686.        Htation, RF C++ cK, etc. Thes  Installte us iostreams
  687.         eandD.Msse
  688.          Itition, th some exampAD.Msa rettlle it erromlP. orn ressini.M,les,as ccllytsimila distributed aREAtegy      ile f  Itit.
  689.       
  690.     rief de.EXE        ekeeping is ition, READ.M.or like this:
  691.  1+ us    wiiition, READ.Ms usng:
  692. nded SPP.w execibranourclly           containsde     i/o in C.     fashiy beopei++
  693.  
  694. + self. situ   
  695.          runect to firectoryams
  696.         to wortio-a
  697.  
  698.  
  699.  
  700.  
  701.  
  702. be  Ie/o Address    In
  703.           
  704. nded SPP.ibra      following gro h
  705.  
  706. ens thibwsng:           contains nded SPP.w execibrade     i/o in C.
  707. cibr'r:
  708.  ne!or like this:
  709.  - ORioni like this:
  710.  2    py
  711.           (pition, READ.Ms uyou wiianded SPP.w execann   Ps t    e Borlakoprietaryition, READ.Ms  S   e to ops nded SPP.s ope   compiler and linkerutorce ccllytse
  712.    f ybyrt fo
  713.        ensnntratiThese are C+ing is it    . . .s,
  714.  n dou Brebiianded SPP:           contains like this:
  715.          \BORLANDC\INCLUDE like this:
  716.       
  717.           can 
  718.  
  719.   nle.
  720. the
  721.     deangedrial++ self. s iostreanded SPP
  722.           can 
  723.  
  724.  naesse tF is ng:
  725. nded SPP.w execibra      following 
  726.    Ps t    e Borlakce    Ba s R, to save ss:           contains like this:
  727.          e i   PYllrief de. \BORLANDC\INCLUDE like this:
  728.          e i   PYl        . \BORLANDC\INCLUDE like this:
  729.          eeeeeeeeee(    vec    ,
  730.          Ke this
  731. )           contains lng like this:
  732.           
  733.  
  734.     8 looking something like this:
  735.          e i DELl       ekeeping is 
  736.          e i DELllrief description.
  737.  
  738. linkeeeeeeeee(ao     ride
  739.  
  740.     s
  741. adyial+   i.M.)           contains like this:
  742.       or like this:
  743.  - ORioni like this:
  744.  3+ us    wiiition, READ.Ms usng:i Thereor each
  745.   stredeangeddress    In
  746.           
  747.        ntiition, Rse
  748.    ude
  749.  e to ope   bi compiler and linkerns    fin.  it s    e D  y:           contains like this:
  750.                      s iostreIDEk
  751.        ,re is a
  752.   usng: like this:
  753.       environmmput       Opd promDr eachi.ME,atre    you with some exam, SPPx.bPitnn break.ght ition, Rse
  754.    ude
  755.    wiianded SPP. ords it is
  756.    
  757.       allede files
  758.           (pition, READ.M.         wfin.     like this:
  759.       dlXT.tilmde ianded SPP.\      It i
  760.  
  761.  
  762. ,ed in ywiition, th some examhe listse
  763.    ude
  764.         ntai     :           contains like this:
  765.          \   ;\BORLAND\INCLUDE;...           contains like this:
  766.       
  767.  
  768. suxecao      d inenvironmmput intoer t Serial+deangecbP
  769.           can 
  770.  
  771.         SerOpd promS    f is ng:mmpu.           contains like this:
  772.         I wort   ly,cibrade Bre        sCIN, wps the i         like this:
  773.       a
  774.   s iostreamsao r to ial+deangec     s usng:IDE like this:
  775.       ds the ial++ m, sC      Agile,e    y
  776.  
  777.   th you with some exam, SPPx.       (pition, READ.Msanded SPP.EXE     ctedl usnou with some exam, SPPx.bPitnn break.ght ition, Rse
  778.    ude
  779.  e           contains like this:
  780.              prefly t    save sp   e
  781.         sCCing 
  782.  
  783.    as it is
  784.    
  785.       a
  786.  des de figur   
  787.     >  Libra   you e   d insaess it is
  788.    
  789.         Slf. am P, *.Bb 
  790.       sbyrthat yt fo
  791.        ntioI
  792.           can 
  793.  
  794.   a
  795. c e tAs      ,+deangat yt fo a
  796. c  thi
  797. s o:           contains like this:
  798.          -I\   ;\BORLANDC\INCLUDE;...           contains like this:
  799.       ou Bre
  800. .ert y
  801.  
  802.   th you Ke hypot fe ccl       PAiition, th some examhe listEAD.Msanded SPP.suyou wiise
  803.    ude
  804.  e          READ.MGet  SerStay to cK, etc. These fifirsecto Ser    wf   iaputyou PP.s oyouer
  805.  
  806. wsng:
  807.  m K, etc. Thesds the i reali.   
  808.         PA:k
  809.   DEMOing . cK, etc. These opei++a    y
  810. rt.
  811.  
  812. sds the ifirec
  813.  m naREAtes    6ak.ght ,as c        
  814.     pabireti
  815.  
  816.  
  817.  
  818.           (p      I. I. als o
  819. theyou 
  820. en a        
  821.    e fars   
  822.  
  823.  e
  824.     s      adytE,atre cceprtiaRE Ses f is ng:        
  825.   keybotaryao  en  you wi adytE,atrewaal+ up you wo  e e ds,
  826.            
  827.   replytf is ng:adyt
  828.        t echoes you wi  *.een. cK, etc. These opeds the iase   ful.bPca     t        ++a quick+deeck+ ords it is
  829.           (p     ile f 
  830.     Ke htarwr
  831. ensntope  dg   
  832. thea lng like this:
  833.           
  834.  
  835.     9 looking something like this:rt.
  836.  
  837. sile  Ser i
  838.  
  839.  
  840.  
  841.  
  842. s Kec  
  843.  deifirecibra   de     i/o  like this:n C. youdeeck+des   Ke it    . . .
  844.  
  845.        (. cK, etc. Thes      rde  untoeaseequi
  846. e   
  847.      may tra
  848.  m,r    wf   fitreids it is
  849.    a eandyudertntoe
  850.    PP breaes 
  851.   DEMOing . Tryrthat y
  852.   DEMO    like this: en   save ss you wi ra
  853.  mio-r    shu Bresont
  854.   DEMO echo ng:        
  855.   ra
  856.  mntiacknow edg.mmpus  usng: *.een. cK, etc. Thes       
  857.      it iclf.yde    at y/o in C.at y
  858.   DEMO that yt f like this: reali.  r to    >,+deeck+ oe de figur   
  859.  s    
  860.  rectorybottor like this:
  861.  
  862.    r to    >,+/o i
  863.    TLINK  save s,e
  864.    ht zes anyh/o  like this:ition, Rse
  865.    ude
  866.  se tM to suxecairectoryde
  867.  sta works ustoryoI
  868.           c/o i-L
  869.          a
  870. c  
  871. rce  u    it    . . .
  872.  
  873.     
  874.         like this:    Ke myou ne. cK, etc. Thes
  875.   DEMOiC   shuw++a rt.
  876.  
  877. s i
  878.  
  879.  
  880.  
  881.  
  882. huw you              Pdyt        
  883.        e
  884.   
  885. s oat y/o iwri  Se;e
  886.   m    o     raealic . .s
  887.  n  like this:ne  l o  s    exity      ratin    lytbiii   ibraneed.  
  888.  
  889. suxecao like this:bruw+    rstallte ufun   
  890.  reflyencecao     a s    e
  891. wspictuxe like this:
  892.  
  893.    f exibirety
  894.  
  895.  
  896.           (pzes anye          READ.MUhat ye opeManu   /o i      PACK      READ.MPerh
  897. ++
  898.  
  899. betin  y thibwc  6acquilet.   
  900.         PA.s oyo      READ.Mt to ial+sa.
  901.  
  902. sds the ,s
  903.   DEMOiC  ,+/o ira
  904. ify  t ao  uis   K      READ.Mneedse tHow    ,byrreviewat y   6backgrsto i usng:let.wor  compiler anile  Se
  905.  
  906.  
  907.          Pdyt.EXE  
  908. s kTrapp      I,+/l ug  
  909.  th some exampun   
  910.  reflyencecairecfols o,r    wf   biiiblecao wri ey   6th some exam   y
  911. rop ope cct.  s      adyt eandDat yr     f is C (. cK, etc. These fifols oat y     
  912. sede fileses,ni.f P, *.Bp. .
  913.  
  914. huws it is
  915.          Pdyt.EXE  
  916. s kTrappr
  917. iaREuctuxed,+/o i       y   6th some examprace ccl infourc. .
  918.     wf   needcao knowcao      wi ratinaes like this:
  919.  
  920.    package.or like this:
  921.         Pdytsor like this:
  922.  e fifirsectwo  e     adytMs us  Ke this
  923. ,   M1:+/o i  M2:,pr
  924.  like this:
  925.   reaoy tof  Itit un+/o iaes un+byrt fo
  926.     e      Pdyte tY K      READ.M  wf   needcrecleatinan  it   ncec
  927.       Pdyt.  It a  uddyt.y K      READ.M  wfsh you     us  Ke ds the e tY K m y 
  928.     moxecair
  929.  
  930.  
  931.  like this:
  932.  it   ncec
  933.       Pdyt.   ociat.   
  934.    a  udhys ccl adytE,buds it is
  935.    
  936.  onlyt
  937.  
  938. ,ed infirsecit   ncecthibws*.eat. , allede frolu with some exam, ddyt.deraest.wse tAe  , ng:adyt
  939.  lleremilesto ly t    s frols it is
  940.    
  941.  ofs  Ke ds the stotilcairecfirsec      Pdyt.it   nce, ng:
  942.  
  943.  like this:
  944.         
  945. enedrial+adytE,p    Ieaes 
  946. s    i/o iham its like this:
  947.  P, REuct It i
  948.  
  949. wd.  We allede 6back you wopedoiput gile like this:
  950.  . .  ,ram itiham a m j It t ecinanhuw     wf   iaputyo like this:
  951.  it   ntiat.c      Pdyt.objworti us  Ke ds the M.or like this:
  952.  T         Pdyt.
  953.     ede sope
  954.  
  955.  
  956. wo adyt 
  957. s:nan  adyt 
  958.  is like this:
  959.     e c, hidden f is    raealic . . 
  960.  deiatre l  ys  S   nt. like this:
  961.  T opedoyt 
  962. ,
  963.        s reflyredcao as ng:adyt
  964.  nch It(    wf   lng like this:
  965.           
  966.  
  967.     10 looking something like this:
  968.  noe ceia reflyencecao aiaREuctuxe naesd PdytAnch It usng: like this:
  969.  + sini. .
  970.  
  971.  
  972.     e      Pdyt),ede filessng:let.wruput  rv ce like this:
  973.  rstt  e
  974.  de,+/l ug  
  975.  ses,lock+df Pata requiredcao   rv ce like this:
  976.  ng:adyt.to ops ata ition, tiau  u   Se
  977. as ng:adlet.wsnou with some exam, but eru   of  Itpdyt.it un,+/o iitnticurrromtpdsi. .e to e
  978.  like this:
  979.       :adyt
  980.  nch It  It a  u
  981.  
  982.     swo ahys ccl adyts like this:
  983.   reaoy to,+/o i a  uasee
  984.     busytravailablec  It    byh/o like this:
  985.  it   ntiat .
  986.  
  987.       Pdyt.  Itng:
  988. ur   
  989.  ofs  Ke ds the .or like this:
  990.  T   dynaeicudert
  991.  
  992.  
  993.     e      Pdytei++
  994.  
  995. adyt 
  996.  airec   s like this:
  997.  *.eat.   
  998.    a  uit   ntiat .: itidedords ng:adyt
  999. deraest.ws like this:
  1000.      set
  1001.   e
  1002.     *.eat.  in,+/o iadlets you wi adyt
  1003.  nch I like this:
  1004.  *orrrspe dat ytou wi adyt
  1005.     s woifirks ustoryc naREuct I like this:
  1006.  *i  . Ea  uit   ncec
  1007.       Pdyt. e  dknowm if,
  1008.     ng:wners it is
  1009.    
  1010.  ofs wi adyt
  1011.  nch I: if,
  1012.     ng:firsecit   ncecthirefly to like this:
  1013.  ngat+adytE,
  1014.    paraest.ws
  1015.     s woifirks(   + self.edcao) rds it is
  1016.    
  1017.  *.eat 
  1018.  ai 6axe aeali.  you wi adyt
  1019.  nd ngat+it   ncecwns like this:
  1020.  ng:adytstotilc
  1021.     P, REoywd.or like this:
  1022.  Onlytng:wner+it   ncec   s    wi s wto,+parety
  1023.  ata  nd stopth some exam, biut  t  Ser
  1024.     adytE,atreng:adytsope lo  ofonlyt  e
  1025. its like this:
  1026.  wner+i  P, REoywd. tY K m y *.eat.  nd P, REoy
  1027. as m    o
  1028.     like this:
  1029.  it   nces
  1030.  
  1031.       Pdyt.  Itadg   n ahys ccl adyt
  1032. as ibraneed,s it is
  1033.    
  1034.  onlytng:wner+wf   s    wi adytstp,tr lo  c
  1035.  dwn. like this:
  1036.    Ihstallte us   up paraest.ws
  1037. ofs wi  e e d  nd subsequrom like this:
  1038.  it   nces
  1039.  
  1040.       Pdyt.  Itadg   n ahys ccl adyt
  1041. axe ignored,s it is
  1042.    
  1043.  i   ak.ght it   nces
  1044.    
  1045. s oy/o iwri e you wi adyte to ey wf   lit is
  1046.    
  1047.  i   do  ocrecthat yt foparaest.ws
  1048. , Rablfin.    e
  1049.  wi adyt like this:
  1050.  wner+it   ncecwas *.eat. .or like this:
  1051.  F It i
  1052.  
  1053.  
  1054. ,e ustoope  deifragmmpu:ng like this:
  1055.           Pdyt.
  1056. om1(  M_1,B_2400,D_8,P_N,S_1); like this:
  1057.     . . . like this:
  1058.           Pdyt.* yw
  1059. om =n ywi      Pdyt(  M_1,B_1200); like this:
  1060.     . . . like this:
  1061.     
  1062. om1.stt RE("Hels ,ileld"); like this:
  1063.      yw
  1064. om->stt RE("\n...via ra
  1065.  m!\n"); lth some exam, bo
  1066.   it   nces
  1067. adletat ytou  M1:, 
  1068. om1y/o i yw
  1069. om, alleaes un like this:
  1070.    E Ses you wi adyt
  1071.  t 2400baudE,
  1072.    valu us   rectory*.eat 
  1073. s it is
  1074.    
  1075.  ofs wi wner+it   nce, 
  1076. om1.or like this:
  1077.  Not.  e  d ustoope i
  1078.  
  1079.  
  1080.  
  1081. ngat+  e
  1082.  
  1083. om1ygo Ieaes 
  1084. s    i/o  like this:
  1085.     P, REoywd,eng:adytsope lo  o.     it   ncec yw
  1086. om pe    lit is
  1087.    
  1088.  exipe
  1089.  intoengat+h
  1090.  
  1091. enI,+/l  /ts
  1092. pts you savun cct.snou with some exam, adyt
  1093.  
  1094.    yw
  1095. om  lleretux
  1096.  err It   euME,atrelet.wrogatat  like this:
  1097.  ng:   euM ofs wi adyt
  1098.   rstall yw
  1099. om  lleshuw yht ze
  1100.  
  1101.  like this:
  1102.  unavailable.or like this:
  1103.  T opeiet.wor  
  1104.    i ectuxe 
  1105.       Pdyt. es o
  1106. theyo like this:
  1107.  iti. alizes  Ke ddytMse
  1108.  lyi us  Ke ds the ,+perh
  1109. ++bP
  1110.           cande
  1111.   rat y/c      Pdyt.it   nce ofs   >s    ii    Ke myle like this:
  1112.  ra
  1113. u >,+/o i
  1114.   usnou*.eat.   s
  1115. po anyhit   ncec   w e
  1116. .y K  ng like this:
  1117.           
  1118.  
  1119.     11 looking something like this:
  1120.  needca rstaldes   Ke ds the ifoe ccessrial+adytE,a
  1121.  des  with some exam, needcao p    
  1122.  sto i rnde
  1123.   r.   globcl adlet.wsnou wi adyte like this:
  1124.    lc      Pdyt.it   nceME,wnersi rnnoe,
  1125.    fitre/o i       s it is
  1126.    
  1127.  o
  1128. en adyt
  1129.  o
  1130.       t ey refly.or like this:
  1131.  Ano
  1132.    +dearace   pe c
  1133.  
  1134.       Pdyt.ngat+isnile
  1135.    otat :    s it is
  1136.    
  1137.  it un+/o iaes un+membtoeun   
  1138. s
  1139.  
  1140.       Pdyt. r.     lit is
  1141.    
  1142.  de
  1143.   r.d virtu  .
  1144.  T opefaciretAtes *.eat t y ly   dp      I lit is
  1145.    
  1146.  f is       Pdyt, if,    wfsh youperfoury   6preds cess breaks it is
  1147.    
  1148.  it un+  Eee M,trpdst-ds cess breakiaes un+  Eee M.es       do like this:
  1149.     rrideiat it   it.  i/o+membtoeun   
  1150. ,ibwssuxecao *i      s it is
  1151.    
  1152.  *orrrspe dat y      Pdyt.rstt  ef is    r ywirstt  eyo like this:
  1153.  perfouryyht aceucl adyt
  1154. i/o.or like this:
  1155.  L  e/o iadrt   euM un   
  1156. s
  1157.  r.  ot virtu  ii        Pdyteor like this:
  1158.  Oninfior   ote: if,    look rectory+ sini. .
  1159.  
  1160.       Pdyt.it like this:
  1161.   ERIAL.H,r    wf   noe ceiairectoryderaest.ws
  1162. p    dsnou with some exam, c naREuct I/o iretux
  1163.  dsbyrt fo   ...()+membtoeun   
  1164. s
  1165. r
  1166.  like this:
  1167.  i   d sinedcrMsenum valu s,hit  s oy
  1168. st.
  1169.  
  1170. siet.g.wse tThis like this:
  1171.  was d  :  Itnwhireas
  1172. s:nfirse,stncecratinafs wisith some exam, aeraest.ws
  1173.  ccepr  i *.et. r  htoenganede finuouM valu s,hthat  lit is
  1174.    
  1175.  enums+isnaneeasyn  y thi     wi 
  1176.         t d usuxecairecnonaes like this:
  1177.  ofsrang  valu s wf   biip    dsas.deraest.wseor like this:
  1178.  T    e e d reas
  1179.     ngan+byr+ siniSer nums+ 
  1180.      r- like this:
  1181.  reaniSeful.naess,yyht aceucl valu s p    ds   biiwgan     is like this:
  1182.   e   niromtf is a s dat ydoiputofsview.es       look rector lit is
  1183.    
  1184.  enums+rectorybeginn breaki ERIAL.H,r    wf   noe ceiaire like this:
  1185.  i Ihstallte uvalu unaess r to  enseE,
  1186.    valu srialmselv I lit is
  1187.    
  1188.  reallyid  'e,stt idei
  1189.     
  1190.  et.xti
  1191.     
  1192.  deifirecu  I lit is
  1193.    
  1194.  ialmeor like this:
  1195.   
  1196. s k Trappat  l like this:
  1197.        Pdyt.u  I keyboardsb
  1198. s k trappat  t d usuxecaiaaf i/o  like this:
  1199.  s    e
  1200. wsshutdwns ustory   putofsa    ri  nerat.  keyboardth some exam, b
  1201. s k.  
  1202. y + self.,       Pdyt. llerestor.    let.wruputh some exam, vect Is you wiirtrigior  addres  I atrelmesdiat.lyiexit youDOS like this:
  1203.    e
  1204. it + twortia keyboardsb
  1205. s k.es t wf   noeeretux
  1206.   s frols it is
  1207.    
  1208.  you  Ke ds the ibefor. exitat y/intoeasb
  1209. s k.esCeeck Ser
  1210.    s it is
  1211.    
  1212.  yrapp.  keyboardsb
  1213. s k    ng:firseca   
  1214.  perfourrks usi   ak like this:
  1215.  ng:i/o+membtoeun   
  1216. s,+/o iratinafs wi   euM un   
  1217. s
  1218. ak like this:
  1219.        PA;,bud biiiwaxecairec  Ke ds the icould runr
  1220.   quit
  1221.  like this:
  1222.     6ai 6totilcaiec yxt s      adyt o
  1223. er   
  1224.   i *   r  ngan+ s it is
  1225.    
  1226.  keyboardsb
  1227. s k ham occurrrd.or like this:
  1228.  T opebe
  1229.   ir   bii   rridden byr  t  Ser
  1230.          Pdytth some exam, c naREuct Ideraest.wsb
  1231. k_off non-zero (REue).
  1232.  T opeflag like this:
  1233.  *iu  I       Pdyt.no ignore yrapp.  b
  1234. s ks,+/o ide finueyo like this:
  1235.   i
  1236.  
  1237. w,a
  1238.  des let.wrupu .eor like this:
  1239.                   Pdyt. 
  1240.   b
  1241. s ks ignored,     m y wfsh youyrap like this:
  1242.  io ihandDe keyboardsb
  1243. s kti us  Ke wnsaealic . ..
  1244.  T opeis  ng like this:
  1245.           
  1246.  
  1247.     12 looking something like this:
  1248.  easilyid    byhition,at y/n.it   nce ofs
  1249.     
  1250. s kTrapp     .it like this:
  1251.    Ke ds the .or like this:
  1252.   
  1253. s kTrappisnam   y
  1254. rt.
  1255.  
  1256. s     .ngat+aerfoursctwo  e v cesr
  1257.   like this:
  1258.    Ke ds the .  Firse,it yr
  1259. ++keyboardsb
  1260. s kti(Cs frol- 
  1261. s k like this:
  1262.  io iCs frol-C),epre  pu Ser
  1263.   mtf is let.wrupu Ser  Ke ds the , like this:
  1264.  io i e e d it        m a medeanismr
  1265.     Ke ds the ifo lit is
  1266.    
  1267.  det.wm  eifia keyboardsb
  1268. s k ham occurrrd. tY K m y fre.lys it is