home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / t / turbors.zip / TURBORS.TXT < prev   
Text File  |  1993-02-19  |  23KB  |  531 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.           TTuurrbbooRRSS
  28.           -----------------------------------------------------------------
  29.           Copyright 1993 Neat and Nifty Software
  30.  
  31.  
  32.           PPuubblliicc DDoommaaiinn DDooccuummeennttaattiioonn
  33.  
  34.           TTuurrbbooRRSS
  35.           -----------------------------------------------------------------
  36.           Version 1.00
  37.  
  38.  
  39.           CCooppyyrriigghhtt NNoottiiccee
  40.  
  41.           TurboRS is Copyright 1993 by Neat and Nifty Software
  42.  
  43.           This document is Copyright 1993 by Neat and Nifty
  44.  
  45.           Neither this  document or  associated software  may be  copied in
  46.           whole or in  part without  the expressed permission  of Neat  and
  47.           Nifty,  unless distributed  in  its entire  form  along with  all
  48.           associated files.
  49.  
  50.           Release 1.00  of TurboRS is released as  Public Domain and may be
  51.           distributed  on diskette or  in archival  form provided  that the
  52.           following files are included:
  53.  
  54.                TURBORS.TXT    This document
  55.                NOTICE.TXT     Public Domain Notice
  56.                TURBORS.PRG    The software driver
  57.                TURBOCNF.TTP   Software Utility
  58.                EXAMPLES.S     Assembly Programming Examples
  59.                ORDER.FRM      Order Form for TurboRS
  60.  
  61.  
  62.           DDiissccllaaiimmeerr
  63.  
  64.           Neat and  Nifty makes no warranty  of any kind, either  stated or
  65.           implied to the appropriateness of this product for any particular
  66.           purpose.   Continued use of this  product is done entirely at the
  67.           users own risk.
  68.  
  69.           Under no circumstances  shall Neat  and Nifty be  liable for  any
  70.           damages (including loss of data, business time or information, or
  71.           any other form  of loss)  incurred through use  of this  product,
  72.           even  if  Neat and  Nifty  has been  advised  in  advance of  the
  73.           possibility of such damages.
  74.  
  75.  
  76.           NNoottiiccee
  77.  
  78.           This public domain release is  not the complete TurboRS  package.
  79.           TurboRS  itself is  a hardware upgrade  for the Atari  ST line of
  80.           computers which boosts  the maximum  baud rate of  the ST  serial
  81.           port  (TT Modem1)  to  115200 baud.   This  release  is meant  to
  82.           demonstrate   TurboRS  functionality,  and   also  to  provide  a
  83.           reference  for programmers who wish  to support it.   The TurboRS
  84.           hardware  is required to use the extended baud rates supported by
  85.           this package.
  86.  
  87.                                           i
  88.  
  89.           TTuurrbbooRRSS
  90.  
  91.  
  92.           Hardware design:
  93.                Daryl Richards
  94.           Hardware testing:
  95.                Daryl Richards
  96.                Kevin Tessner
  97.           Driver design:
  98.                Daryl Richards
  99.           Driver coding:
  100.                Daryl Richards
  101.                Kevin Tessner
  102.           TurboCNF design and coding:
  103.                Kevin Tessner
  104.           Documentation:
  105.                Kevin Tessner
  106.           Edited By:
  107.                Tass Chapman
  108.           Atari TT Supplied by:
  109.                George Kirkaldie
  110.           Beta Testing:
  111.                Daryl Richards
  112.                Kevin Tessner
  113.                George Kirkaldie
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.                                           ii
  143.  
  144.                                        CCoonntteennttss
  145.  
  146.  
  147.           1 T_u_r_b_o_R_S_                                                       1
  148.                How it Works . . . . . . . . . . . . . . . . . . . . . .   1
  149.  
  150.           2 T_h_e_ T_u_r_b_o_R_S_ D_r_i_v_e_r_                                            2
  151.  
  152.           3 U_s_i_n_g_ T_u_r_b_o_C_N_F_                                                3
  153.                Setting the Current Parameters . . . . . . . . . . . . .   3
  154.                Remapping Baud Rates . . . . . . . . . . . . . . . . . .   3
  155.                Locking a Baud Rate  . . . . . . . . . . . . . . . . . .   3
  156.                Locking Flow Control . . . . . . . . . . . . . . . . . .   4
  157.                Viewing and Clearing the Settings  . . . . . . . . . . .   4
  158.                Saving and Reloading the Settings  . . . . . . . . . . .   4
  159.                Disabling / Enabling TurboRS . . . . . . . . . . . . . .   4
  160.  
  161.           4 P_r_o_g_r_a_m_m_i_n_g_ f_o_r_ T_u_r_b_o_R_S_                                       5
  162.                Through Software . . . . . . . . . . . . . . . . . . . .   5
  163.                Through Hardware . . . . . . . . . . . . . . . . . . . .   6
  164.                38400 Without TurboRS  . . . . . . . . . . . . . . . . .   6
  165.  
  166.           5 N_e_a_t_ a_n_d_ N_i_f_t_y_                                                7
  167.  
  168.           I_n_d_e_x_                                                           8
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.                                          iii
  198.  
  199.           TurboRS (C) 1993 Neat and Nifty                            Page 1
  200.           -----------------------------------------------------------------
  201.  
  202.  
  203.                                       11 TT_uu_rr_bb_oo_RR_SS_
  204.  
  205.  
  206.           In association with a small  software driver, TurboRS allows your
  207.           ST's serial port to operate at  extended rates up to 115200 baud.
  208.           The serial port remains fully software compatible, and is usually
  209.           hardware compatible as well.  The TurboRS software will work with
  210.           any version of Tos running on any processor.
  211.  
  212.           HHooww iitt WWoorrkkss
  213.  
  214.           The  baud rates in the  ST are generated by System  Timer D.  The
  215.           TurboRS board merely intercepts Timer  D's output and replaces it
  216.           with an externally generated signal  for rates higher than  19200
  217.           baud.   This interception is controlled by the unused RTS outputs
  218.           of the MIDI  and Keyboard control chips, or ACIAs.   By using the
  219.           software  driver other  programs  can access  the extended  rates
  220.           through standard system calls.
  221.  
  222.           TurboRS also allows you to remap any baud rate onto another.  For
  223.           example 300 baud  can become 38400 for instant compatibility with
  224.           older  software.   In addition,  new communications  products are
  225.           being developed that directly  support the extended rates without
  226.           any remapping at all.
  227.  
  228.           Although  TurboRS can be installed  in the Atari  TT, please note
  229.           that  it works only on the Modem1  port, and will have no effect,
  230.           hardware or software, on the other available serial ports.  There
  231.           may be a future release which will work with Modem1 and Modem2.
  232.  
  233.           Some software  on the Atari ST  is marginally too  slow to handle
  234.           rates above 19200 baud and will lose characters during full speed
  235.           bursts.  TAZ, a  high performance terminal package from  Neat and
  236.           Nifty Software, will operate reliably at higher speeds.  Machines
  237.           running  with accelerators  as low  as 12Mhz  have few  problems,
  238.           while  16Mhz Mega STEs and Atari TTs handle the higher baud rates
  239.           with ease.
  240.  
  241.           TurboRS (C) 1993 Neat and Nifty                            Page 2
  242.           -----------------------------------------------------------------
  243.  
  244.  
  245.                                  22 TT_hh_ee_ TT_uu_rr_bb_oo_RR_SS_ DD_rr_ii_vv_ee_rr_
  246.  
  247.  
  248.           To  install   the  driver,   simply  run  TURBORS.PRG   from  the
  249.           distribution disk.  It can  be placed in the auto folder  of your
  250.           boot  disk and should not affect any  other software.  If you are
  251.           loading any serial port fixes, it  is usually a good idea to load
  252.           them first.
  253.  
  254.           When  the driver loads, it looks for  the file TURBORS.CNF on the
  255.           root directory of the boot drive.  If this file is found, TurboRS
  256.           will  automatically load  up  your preferred  settings.   Running
  257.           TurboCNF with the  -s option will  create or update this  file to
  258.           the  current settings.  If  this file is  not found, TurboRS will
  259.           revert  to  its default  which  matches the  standard  TOS bootup
  260.           state.
  261.  
  262.           Without the hardware the  driver will alert you with  the message
  263.           "No  Hardware: 19200 Baud Physical  Max".  It  will still install
  264.           itself and perform  all functions normally.  The  only limitation
  265.           is  that your serial port will never physically be running higher
  266.           than 19200 baud.
  267.  
  268.           TurboRS (C) 1993 Neat and Nifty                            Page 3
  269.           -----------------------------------------------------------------
  270.  
  271.  
  272.                                    33 UU_ss_ii_nn_gg_ TT_uu_rr_bb_oo_CC_NN_FF_
  273.  
  274.  
  275.           TurboCNF  works with  the  TurboRS driver  to  add extended  rate
  276.           compatibility  to non-TurboRS aware  programs.  It  allows you to
  277.           remap  any rate to the ST  baud rates, and also  to lock the baud
  278.           rate and flow control parameters.
  279.  
  280.           SSeettttiinngg tthhee CCuurrrreenntt PPaarraammeetteerrss
  281.  
  282.           The current  baud  rate can  be  set by  typing  it as  a  single
  283.           argument to  TurboCNF.    Additional parameters  can  be  set  by
  284.           including them after  the desired  rate in the  order of  Parity,
  285.           Data Bits and Stop  bits.  For example, "TurboCNF  19200N81" will
  286.           set  the ST to 19200 baud, no parity, 8 data bits and 1 stop bit.
  287.           Valid parity parameters are N, E, O for None, Even or Odd.  Valid
  288.           data bit  settings  are 5,  6,  7 and  8,  while valid  stop  bit
  289.           settings  are 1, 2 and 3.   Note that setting 3 actually produces
  290.           1.5 stop bits.   If no additional parameters  are given after the
  291.           baud rate, the current ones will remain unchanged.
  292.  
  293.           RReemmaappppiinngg BBaauudd RRaatteess
  294.  
  295.           Baud  rates are remapped by  telling TurboCNF the  rate to remap,
  296.           followed by  an equals  sign and  the  rate to  substitute.   For
  297.           example, to turn  300 baud into 38400, just run TurboCNF with the
  298.           argument "300=38400".  Multiple rates can be remapped on the same
  299.           command line, ie: "TurboCNF 300=38400 1200=57600 4800=115200".
  300.  
  301.           All standard ST  rates (including the useless ones) are supported
  302.           by TurboCNF.   That  is: 50,  75, 110, 134,  150, 200,  300, 600,
  303.           1200, 1800, 2000, 2400, 3600, 4800, 9600 and 19200.
  304.  
  305.           LLoocckkiinngg aa BBaauudd RRaattee
  306.  
  307.           Baud rates  can be locked  with the -l  argument followed by  the
  308.           rate to  be locked.   To  remove rate locking,  simply use  -l by
  309.           itself.   For example "TurboCNF -l38400" would lock the baud rate
  310.           at 38400.  Locked  rates cannot be changed without  rebooting the
  311.           machine, or running TurboCNF with another -l argument.
  312.  
  313.           TurboRS (C) 1993 Neat and Nifty                            Page 4
  314.           -----------------------------------------------------------------
  315.  
  316.  
  317.           LLoocckkiinngg FFllooww CCoonnttrrooll
  318.  
  319.           For  high speed modem use,  flow control is  essential.  For this
  320.           reason it can also be locked by TurboCNF.  Use -f followed by one
  321.           of the following control codes:
  322.  
  323.                0 - No flow control
  324.                1 - XON/XOFF flow control
  325.                2 - RTS/CTS flow control
  326.                3 - XON/XOFF & RTS/CTS flow control
  327.  
  328.           Using  -f by itself will  remove a flow control lock.   As of Tos
  329.           2.06, option 3 does not work properly, though it is  described in
  330.           Atari documentation.
  331.  
  332.           VViieewwiinngg aanndd CClleeaarriinngg tthhee SSeettttiinnggss
  333.  
  334.           To  view the existing baud  rate mapping and  other settings, use
  335.           the -v option.   To reset all baud rates  to standard mapping and
  336.           clear the locks, use -r.
  337.  
  338.           SSaavviinngg aanndd RReellooaaddiinngg tthhee SSeettttiinnggss
  339.  
  340.           The  current  settings can  be  saved to  the  configuration file
  341.           TURBORS.CNF in the root directory.  When the driver loads it will
  342.           use this file as its default.  To create or update this file, use
  343.           the -s option.  If you would like to reload the  settings in this
  344.           file, run TurboCNF with -c.
  345.  
  346.           DDiissaabblliinngg // EEnnaabblliinngg TTuurrbbooRRSS
  347.  
  348.           If you  are experiencing compatibility problems,  the -d argument
  349.           can be used to deactivate TurboRS.  You can still change settings
  350.           while the driver is disabled, but they will not take effect until
  351.           TurboRS is enabled again with -e.
  352.  
  353.           TurboRS (C) 1993 Neat and Nifty                            Page 5
  354.           -----------------------------------------------------------------
  355.  
  356.  
  357.                               44 PP_rr_oo_gg_rr_aa_mm_mm_ii_nn_gg_ ff_oo_rr_ TT_uu_rr_bb_oo_RR_SS_
  358.  
  359.  
  360.           TThhrroouugghh SSooffttwwaarree::
  361.  
  362.           The normal ST serial  control is handled through the  rsconf call
  363.           (trap #14, function 15) which accepts the values 0  through 15 to
  364.           specify the desired baud rate.  The TurboRS driver adds the codes
  365.           16-18 for 38400, 57600 and 115200 baud respectively.  Simply pass
  366.           these values through the standard call and you're done.
  367.  
  368.           Please  note that  passing these  numbers to  rsconf  without the
  369.           driver installed may yield very bizarre rates!  To detect whether
  370.           or not  the TurboRS driver is  in memory, look in  the cookie jar
  371.           where you will  find the cookie "TBRS"  if the TurboRS  driver is
  372.           present.   The value linked  to this cookie  is a pointer  to the
  373.           following structure in memory:
  374.  
  375.           struct {
  376.                long magic;         /* Used to verify cookie.  Should always
  377.                                    read $31415926 */
  378.                int  rates[16];     /* Remap codes for  ST baud rates - used
  379.                                    to force higher rates with non - TurboRS
  380.                                    aware programs.  default:
  381.                                         rates = [0,1,...,15] */
  382.                int  lock_rate;     /* Locked rate code  (remap independent)
  383.                                    if not -1 */
  384.                int  lock_flow;     /* Locked flow control if not -1 */
  385.           } TurboRS_Cookie;
  386.  
  387.           Note that "magic" should always be checked for $31415926 when
  388.           determining the presence of the TurboRS driver.  This is your
  389.           insurance that the driver is not only present but also enabled.
  390.  
  391.           BBS programmers should  take note of the  lock_rate and lock_flow
  392.           variables.   These can be used to  insure that BBS doors will not
  393.           change the  baud rate  or flow control  settings.  This  can make
  394.           your BBS  more "bullet  proof".  After  setting these  variables,
  395.           call rsconf with any valid baud parameter.  This insures that the
  396.           locked values will take immediate effect.  Don't forget to unlock
  397.           them again afterwards by resetting them to -1.
  398.  
  399.           The  TurboRS  extended rsconf  functionality (rate  remapping and
  400.           locking) apply only to the standard ST serial port, and will have
  401.           no effect when other Bconmap compatible ports are configured.
  402.  
  403.           TurboRS (C) 1993 Neat and Nifty                            Page 6
  404.           -----------------------------------------------------------------
  405.  
  406.  
  407.           TThhrroouugghh HHaarrddwwaarree::
  408.  
  409.           If your program  must access  the ACIAs directly,  these are  the
  410.           values of bit  6 (RTS) of the  ACIA control register  required to
  411.           control TurboRS.   Note that  when bit 6  is set,  bit 5 must  be
  412.           clear or  a break will  be sent.   The value  in brackets is  the
  413.           control byte to use at each address to maintain  the default MIDI
  414.           and Keyboard settings of the  ST (of course, if this is  what you
  415.           are going to do, you should just be using the driver).
  416.  
  417.                Rate           $FFFFFC00      $FFFFFC04
  418.  
  419.                TimerD         0 ($96)        0 ($95)
  420.                38400          0 ($96)        1 ($D5)
  421.                57600          1 ($D6)        0 ($95)
  422.                115200         1 ($D6)        1 ($D5)
  423.  
  424.           To autodetect the hardware, program the MFP for 9600 baud and set
  425.           the  ACIAs for  115200.   Next disable  the Modem1  interrupts to
  426.           avoid clogging  the Bios' routines.  Transmit nulls in a loop and
  427.           count how many you send in a  tenth second.  If you transmit more
  428.           than  200, (technically  96, but  this gives  a much  wider error
  429.           margin) the TurboRS hardware is present.
  430.  
  431.           UNLESS YOUR  SOFTWARE MUST PROGRAM  THE ACIAS DIRECTLY  FOR OTHER
  432.           PURPOSES,  USING THE  DRIVER AND  THE COOKIE  IS THE ONLY  WAY WE
  433.           ADVISE SUPPORTING THE TURBORS BOARD.
  434.  
  435.           3388440000 WWiitthhoouutt TTuurrbbooRRSS
  436.  
  437.           The ST is capable  of handling 38400 baud without  extra hardware
  438.           by setting  the MFP's USART to use the input clock directly.  The
  439.           default mode  is to  divide this  clock by  16, which  allows the
  440.           USART to  sample the incoming data  16 times per bit.   When used
  441.           directly,  the  incoming  data  is sampled  only  once  per  bit.
  442.           Transmission is 100% reliable, but receive errors will occur when
  443.           this sample is  taken on a bit transition.  This limits reception
  444.           in this  mode to 80%  reliability.   This mode can  be programmed
  445.           through the standard rsconf call by requesting 2400 baud (code 4)
  446.           and clearing bit 7 of the  UCR parameter.  A standard rsconf call
  447.           with bit 7 set restores normal operation.
  448.  
  449.           TurboRS (C) 1993 Neat and Nifty                            Page 7
  450.           -----------------------------------------------------------------
  451.  
  452.  
  453.                                    55 NN_ee_aa_tt_ aa_nn_dd_ NN_ii_ff_tt_yy_
  454.  
  455.  
  456.           Neat and Nifty consists of Daryl Richards and Kevin Tessner.  All
  457.           products released  under Neat and Nifty  are copyrighted products
  458.           of  same and  carry  no  warranties,  stated or  implied  against
  459.           misuse, damage,  loss of data or  any other loss, as  a result of
  460.           using said products.
  461.  
  462.           For bug reports, suggestions, or criticism, we can be reached as:
  463.  
  464.                ktessner@sanity.tdkcs.waterloo.on.ca
  465.                drichards@sanity.tdkcs.waterloo.on.ca
  466.  
  467.           Or by writing to:
  468.  
  469.                Neat and Nifty
  470.                43 Carwood Crescent
  471.                Kitchener Ontario
  472.                N2G 3C6
  473.                Canada
  474.  
  475.           For the latest TurboRS  updates and other products from  Neat and
  476.           Nifty, contact the following BBS system:
  477.  
  478.                Sanitarium          (RATSoft ST)
  479.                (519) 623-6116
  480.                300-16.8k Dual Standard
  481.                Neat and Nifty conference OR
  482.                Email to Pi or Mr Martian
  483.  
  484.           If  you are interested  in purchasing  the full  TurboRS package,
  485.           please  print  out  and  complete ORDER.FRM  included  with  this
  486.           release.    Please  enclose a  certified  cheque  or  money order
  487.           payable to Kevin Tessner and mail it to the above address. 
  488.           Please do not send cash in the mail!
  489.  
  490.           TurboRS (C) 1993 Neat and Nifty                            Page 8
  491.           -----------------------------------------------------------------
  492.  
  493.  
  494.  
  495.  
  496.                                         II_nn_dd_ee_xx_
  497.  
  498.  
  499.           Accelerators (1)                   Public Domain (i)
  500.           ACIA                               Rsconf (5)
  501.                Direct Accessing (6)               Flow Locking (5)
  502.                RTS Output (1)                     Rate Locking (5)
  503.           Atari Mega STE                     Sanitarium (7)
  504.                Rate Handling (1)             Settings
  505.           Atari ST                                Default (2)
  506.                Rate Handling (1)                  Reloading (4)
  507.                Serial Port (1)                    Saving (4)
  508.           Atari TT                           TBRS Cookie (5)
  509.                Rate Handling (1)                  Structure (5)
  510.                Support (1)                        Verification (5)
  511.           Autodetect                         Timer D (1)
  512.                Hardware (6)                  Trap #14 (5)
  513.                Software (5)                  TurboCNF (3)
  514.           BBS Doors (5)                           Disabling (4)
  515.           Bconmap (5)                             Enabling (4)
  516.           Bug Reports (7)                         Locking Flow (4)
  517.           Cookie Jar (5)                          Locking Rate (3)
  518.           Copyright (i)                           Remapping Rates (3)
  519.           Disclaimer (i)                          Resetting (4)
  520.           Lock_flow                               Setting Rate (3)
  521.                BBS Usage (5)                      View Settings (4)
  522.                Cookie Structure (5)          TurboRS
  523.                Unlocking (5)                      Credits (ii)
  524.           Lock_rate                               Description (1)
  525.                BBS Usage (5)                      Software Driver (2)
  526.                Cookie Structure (5)          TURBORS.CNF (2)
  527.                Unlocking (5)                 TURBORS.PRG
  528.           Modem1 (1)                              Installing (2)
  529.           Modem2 (1)                              Warnings (2)
  530.           Neat and Nifty (7)
  531.