home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 4 Drivers / 04-Drivers.zip / s2kv201.zip / FAQ.TXT < prev    next >
Text File  |  2001-10-15  |  15KB  |  303 lines

  1.  
  2.  
  3.  
  4. 1-How can I determine that SIO2K has correctly determined my uart type and
  5. the IRQ it is using.
  6.  
  7.      In the sio2k distribution zip, there is a program named logger.exe. 
  8.      This program can hook into sio2k.sys and provide an enormous amount of
  9.      information.  However, some information is only available once, when
  10.      the port (uart) is first touched by an application.  For information
  11.      like uart type, fifo depth, and crystal multiplier, you must have
  12.      logger running before the port is touched the first time.  Here is
  13.      how.  Reboot your computer, go to an OS/2 session and execute (for
  14.      info on com1) x:\path\LOGGER COM1.  Then go to another OS/2 session
  15.      and execute MODE COM1.  You can then examine the information produced
  16.      by logger.  Note that LOGGER.EXE has an optional parameter of a disk
  17.      file name.  If a disk file name is given, the information produced by
  18.      logger is written to that file, as well as being displayed.
  19.  
  20. 2-DTR/DSR flow control does not work, I am using a 16650.  
  21.  
  22.      The 16650 and similar devices do flow control on chip (in hardware) 
  23.      Unfortunately DTR/DSR flow control is not supported.  One can use a
  24.      special cable to achieve the desired flow control.  Simply move the
  25.      wires for the DTR and DSR signals to the RTS and CTS signals at the PC
  26.      end of the cable.  Then specify RTS/CTS flow control.
  27.  
  28. 3-Why is the IRQ not show in the Hardware (Resource) Manager screen(s).
  29.  
  30.      During boot time, the SIO2K driver set does not always know the IRQ
  31.      that the serial port is going to use. This is especially true with
  32.      legacy ISA serial ports.  However, the first time the port is accessed
  33.      by a program, the IRQ is determined and is reported to the Hardware
  34.      Manager.  So, if you are not seeing the IRQ for COM1 when rmview is
  35.      executed, then do a MODE COM1, and then execute rmview.  The IRQ
  36.      should then show up on the rmview report(s).
  37.  
  38. 4-Why is a message about failing an integrity check being displayed.
  39.  
  40.      Assuming the drivers have not been otherwise altered, you are probably
  41.      running a disk compression utility.  In order to use the SIO2K
  42.      drivers, they must NOT be altered in any way, which includes
  43.      compression.
  44.  
  45. 5-Why is the FIFO depth shown as 1 for a Hayes ESP when the port is used in
  46. compatibility (16550) mode via uart.sys.
  47.  
  48.      The 16550 emulation by the Hayes ESP seems to have a few problems. The
  49.      compatibility mode should be avoided if possible, when ESP.SYS is
  50.      loaded.  One of these problems causes the probed FIFO depth to show up
  51.      incorrectly.  However, once uart.sys has detected a FIFOed device, the
  52.      FIFO size will only be increased, not decreased.  Even though the
  53.      probed depth is shown as 1, the 16 byte FIFOs (for a 16550) are still
  54.      used.
  55.  
  56. 6-I am having problems using a Hayes ESP card in compatibility mode.
  57.  
  58.      Once ANY ESP port has been used in enhanced mode (touched by ESP.SYS),
  59.      power much be cycled before ANY ESP port will again work in
  60.      compatibility mode again.
  61.  
  62.      If your are not using ESP.SYS, try forcing a 16450 uart for the port
  63.      in the uart.sys section of sio2k.cfg.  If this still fails, you should
  64.      use enhanced mode only, via ESP.SYS.
  65.  
  66.  
  67. 7-One of my applications complains that the buffers are not large enough.
  68.  
  69.      Why some people, including some very good programmers, insist on
  70.      believing in the need for large buffers is beyond this writers
  71.      comprehension.  The buffers in the SIO2K drivers are sufficiently
  72.      large enough (and then some) for any application to work well (at top
  73.      speed).
  74.  
  75. 8-I am getting an "In Use" or "Not Ready" error when I try to use one of my
  76. serial ports, even though that port is not being used by another program.
  77.  
  78.      The serial port may not be in use, but the IRQ the port uses probably
  79.      is in use.  See FAQ number 1 for a description of how to use
  80.      LOGGER.EXE.  Information produced by logger should tell you exactly
  81.      why you are getting the error.
  82.  
  83. 9-Why do the drivers skip assigning hardware to COM2 (or COM3/COM4), then
  84. assigns other hardware to ports after that?
  85.  
  86.      You probably have PCMCIA.SYS installed.  If the SIO drivers detect
  87.      that PCMCIA.SYS is installed, then a COMn (COM2 through COM4) opening
  88.      must be available for a possible PCMCIA modem being inserted.
  89.  
  90. 10-Why am I getting errors when I use higher bit rates?
  91.  
  92.      There are several possible reasons:
  93.  
  94.      1 - The most common reason is a flow control problem.  You should
  95.      always try to use RTS/CTS flow control. Xon/Xoff flow control may
  96.      react too slowly at higher bit rates.  Refer to your application
  97.      manual (or their support) to determine how to set flow control.
  98.  
  99.      2 - The second most common reason is possibly your serial cable.  If
  100.      you are using a serial cable at high speeds, it must be a good quality
  101.      shielded cable.  Also, the cable should be as short as possible.  The
  102.      longer the cable, the less the bit rate it will be able to pass.
  103.  
  104.      3 - Another common reason is that your UARTs supporting hardware, like
  105.      the RS232 drivers and receivers, cannot support the higher bit rates. 
  106.      That is to say, simply because your UART can generate 921600 bps,
  107.      other associated hardware in your computer may not be able to work
  108.      correctly at these rates.
  109.  
  110.      4 - Last, it could be that your computer is simply not fast enough to
  111.      handle the higher bit rates.
  112.  
  113. 11-Why does my PCMCIA modem not work?
  114.  
  115.      Try removing, and reinserting the modem card after your system has
  116.      booted.  The PCMCIA drivers seem to only report the existence of a PC
  117.      card modem to the serial drivers when it (the modem) is inserted. If
  118.      the modem is already inserted when the system is booted, the modems
  119.      existence is not reported to the serial drivers.  This may work
  120.      differently on some systems.
  121.  
  122. 12-Does Sio2k support WinModems?
  123.  
  124.      Currently (10-18-00) no.  I will look into WinModem support as soon as
  125.      time permits.  Watch the history.txt file for information.
  126.  
  127.  
  128. 13- Why does my serial ports behave strangely (or not at all) when I switch
  129. from sio2k back to com.sys?
  130.  
  131.      Sio2k enables advanced features of serial devices. Often com.sys is
  132.      not aware of the advanced features.  On some (poorly designed) system
  133.      the advanced features are not reset to their default state when you
  134.      boot by ALT-CTRL-DEL, or by shutdown, unless you also power off.  If
  135.      you have this problem, you should alter your config.sys to use
  136.      com.sys, shutdown or ALT-CTRL-DEL, then power your system off.  The
  137.      power off, then power on will reset the uarts to a state the com.sys
  138.      understands.
  139.  
  140. 14- How do I prevent the kernel warning message at boot time?
  141.  
  142.      By far, the best solution is for IBM to correct the problem and adhere
  143.      to their own driver specifications.  In the opinion of the author,
  144.      this anomaly makes the system unstable at boot time.  I also believe
  145.      the bug could be the reason that many other WARP drivers will not work
  146.      on WSeB.  If a corrected kernel is released and installed on your
  147.      system, the message will go away automatically.
  148.  
  149.      Until and/or if a corrected kernel is released, you can eliminate the
  150.      warning message by adding "WSeB", without the quote marks, to your
  151.      sio2k.sys command line.
  152.  
  153. 15 - Does the sio2k drivers work on SMP systems?
  154.  
  155.      Yes.  At least this is so for many SMP systems reported by users and
  156.      including the authors SMP system.  However, the OS/2 SMP systems
  157.      tested by the author DO NOT follow IBM's published specification for
  158.      device driver initialization.  Specifically, on SMP systems device
  159.      drivers are initialized on ring 0, while the driver specification (and
  160.      all other OS/2 implementations) state the driver will be initialized
  161.      on ring 3.  This incorrect initialization sequence no longer causes a
  162.      problem for the sio2k drivers.  However, the author is concerned there
  163.      may be other undocumented/uncorrected errors in the SMP
  164.      implementations by IBM et al.
  165.  
  166. 16 - Does the sio2k drivers work on WSeB?  I tried them but have problems.
  167.  
  168.      Yes, the sio2k drivers have been tested and work well on WSeB with and
  169.      without SMP.  However, there seems to be a problem in the WSeB kernel,
  170.      or device drivers.  Something on WSeB systems interferes with IRQ3,
  171.      note that com2 usually uses IRQ3.  Due to this interference, the sio2k
  172.      drivers (and com.sys too) will not work well on some WSeB systems when
  173.      the comm port is using IRQ3.  The only solution is to switch the IRQ,
  174.      if possible, or to switch to a comm port this is not using IRQ3.
  175.  
  176. 17 - Why is the I/O addresses shown in the SIO2K.SYS part of SIO2K.LOG not
  177. the same as I specified in the configuration file.
  178.  
  179.      If you are speaking of the address following "AutoVirtIo=" then you
  180.      need not be concerned.  At the time that SIO2K.SYS makes the log
  181.      entries, VSIO2K.SYS has not yet processed the config file.  The
  182.      addresses following "AutoVirtIo=" are the addresses that will be
  183.      assigned in the Dos/Windows sessions if NO config file specifies
  184.      otherwise.  That is, the configuration file will override the
  185.      addresses shown after "AutoVirtIo=".
  186.  
  187.  
  188. 18 - Why does the kernel debugger not work correctly after uart.sys has
  189. initialized.
  190.  
  191.      Try adding "NoSuperIo", without the quote marks, to the uart.sys
  192.      command line.  This will prevent uart.sys from enabling the enhanced
  193.      features of SuperIo uarts which may confuse the kernel debugger.
  194.  
  195. 19 - Why is the virtual IRQ for COMn in DOS/Windows sessions wrong.
  196.  
  197.      This is a complicated subject, and the virtual IRQ may not be wrong. 
  198.      Lets use com3 as an example.  First you can attempt to use the
  199.      vsio2k.sys command line option "vItqList" to specify the virtual irq
  200.      that com3 is the use.  For example vIrqList(3,5,3=7).  This says that
  201.      vsio2k.sys can use virtual IRQs 3, 5, and 7.  The "3=7" fragment says
  202.      that com3 is to use virtual IRQ 7.  However, there is still a
  203.      potential problem. Virtual IRQ 7 may be in use by another driver.  If
  204.      virtual IRQ 7 is not available, then vsio2k,sys will attempt to use
  205.      the default IRQ for COM3, which is IRQ 4.  This will not work because
  206.      IRQ 4 is not in the vIrqList of IRQs.  Finally, vsio2k.sys will select
  207.      either IRQ 3 or 5, the other available IRQs in the pool.
  208.  
  209.      If the virtual IRQ is assigned other than what you think it should be,
  210.      it will still work.  All you need to do is configure your DOS/Windows
  211.      app to use the virtual that vsio2k.sys has assigned.  The vsio2k.sys
  212.      log file will show the port/irq combinations.  For a given computer
  213.      system, the virtual IRQs should always be the same.
  214.  
  215. 20 - Where do I find the vsio2k.sys log file.
  216.  
  217.      First, you must have "LogFile=x:\path\vsio2k.log", without the quote
  218.      marks, in your vsio2k.sys command line.  Then you must open a Dos or
  219.      Windows session, then close the session.  You can then examine the log
  220.      file specified in the vsio2k.sys command line.
  221.  
  222. 21 - Why does my modem fail to initialize correctly the first time I use it
  223. after booting.
  224.  
  225.      The first time a uart (COMn Port) is accessed uart.sys probes the uart
  226.      for fifo size and maximum bit rates.  This test is performed by
  227.      placing the uart into loop back mode and transmitting a few
  228.      characters.
  229.  
  230.      Even though the uart is on loop back mode, the transmitted characters
  231.      on some uarts "leak" out, and are actually transmitted to the modem. 
  232.      The modem may see these characters as the beginning of a AT sequence
  233.      that never completes.  Then when your application attempts to
  234.      initialize the modem, the initialization fails because the modem
  235.      thinks it is already in the middle of an initialization sequence.
  236.  
  237.      The solution should be a simple modification to your modem init
  238.      string.  I believe the addition if a simple CR (Carriage Return),
  239.      usually shown as ^M in init strings should correct the problem.  The
  240.      ^M should be added at the beginning of the modem initialization
  241.      string.  If this fails, then try expanding your modem init string such
  242.      that the entire string is sent twice should correct the problem.
  243.  
  244.  
  245. 22 - Why does FaxWorks (aka PMFAX) not work with sio2k?
  246.  
  247.      If you are seeing an error message mentioning FMD1, FMD2 etc, then
  248.      FaxWorks is NOT using the sio2k drivers.  An independent driver named
  249.      FMD.SYS is supplied with FaxWorks, and by default, FaxWorks will use
  250.      their driver.  The last time I used FaxWorks, it could be configured
  251.      to use the installed serial driver.  Configure FaxWorks to use the
  252.      installed serial driver and it should work with sio2k.
  253.  
  254. 23 - How do I run DOS doors with my BBS?
  255.  
  256.      The following comes from Bob Juge, http://www.juge.com:
  257.  
  258.      Here are my lines, see if they help (the vx00.sys line is the one that
  259.      provides FOSSIL support in DOS sessions, the "Os2Shares" at the end of
  260.      the sio2k.sys line is needed to allow DOS apps to share the comm
  261.      port):
  262.  
  263.      device=c:\sio2k\uart.sys logfile=c:\sio2k\sio2k.log
  264.      device=c:\sio2k\vsio2k.sys logfile=c:\sio2k\vsio2k.log vIrqList(3,4)
  265.      device=c:\sio2k\vmodem.sys logfile=c:\sio2k\sio2k.log nPorts=4
  266.      device=c:\sio2k\vx00.sys logfile=c:\sio2k\sio2k.log
  267.      device=c:\sio2k\sio2k.sys logfile=c:\sio2k\sio2k.log Os2Shares
  268.  
  269. 24 - Why does the install program -----------------
  270.  
  271.      The goal of the install program (script) is to install on as many
  272.      systems as possible without asking the user any questions.  The
  273.      install program assumes your OS/2 installation is structured much as
  274.      it was when the OS/2 installation was completed.
  275.  
  276.      Those that have problems with the install program have probably
  277.      modified the standard location of OS/2 components.  Fortunately, if
  278.      you have enough knowledge to do such modifications, you should also
  279.      know how to manually install the drivers.
  280.  
  281.      Additionally, the install program is a REXX script and the source is
  282.      in the sio2k distribution zip.  This enables you to modify the script
  283.      to your liking.
  284.  
  285. 25 - Why does the throughput for the 16650, 16850 and 16950 seem less than
  286. that for a 16550?
  287.  
  288.      The 16650, 16850 and 16950 have on chip flow control.  This relieves
  289.      the cpu from the burden of flow control and means your serial ports
  290.      use less processor time.  However, the on chip flow control seems NOT
  291.      to be very efficient.  The on chip flow control seems to assert flow
  292.      control at times that it is not necessary.
  293.  
  294.      I have discovered that the sio2k driver's software implementation of
  295.      flow control seems much more efficient than the on chip flow control,
  296.      close to 1000 characters per second at 115200bps.
  297.  
  298.      You can add 'Use16550', without the quote marks, to the uart.sys
  299.      command line (in config.sys) to force the driver to NOT use the slower
  300.      on chip flow control.  Use of this option will slightly increase the
  301.      overhead on the processor.
  302.  
  303.