home *** CD-ROM | disk | FTP | other *** search
/ MegaDoom Add-On 3 / MEGADOOM3.iso / editor / bnudm126 / sersetup.txt < prev   
Text File  |  1994-10-26  |  28KB  |  690 lines

  1.   │
  2.  ││ BNU DOOM Serial driver version 1.2.6
  3. │││ DOOM Network interface is copyright 1994 by Id Software Inc.
  4.  ││ BNU SIO Driver is copyright 1994 by David L Nugent
  5.   │                                   & Unique Computing P/L
  6.  
  7.  
  8. BNU for DOOM is a drop-in replacement for Id Software's
  9. SERSETUP.EXE provided with DOOM 1.2. This version, however,
  10. provides a full and complete interrupt driven serial driver
  11. implementation and therefore does not suffer many of the
  12. shortcomings in Id's original driver which was much too
  13. simplistic to provide the services necessary for running on
  14. today's typical modem configurations or at faster speeds
  15. than 9600 baud.
  16.  
  17. This work is a derivative and blending of Id's published
  18. source for SERSETUP and my own BNU FOSSIL driver plus some
  19. useful enhancements to the original dialer. This driver
  20. provides full support for the 8250 family of UARTs, including
  21. the 8250, 16450, 16550 (original, used in older PS/2's),
  22. 16550A(FN), 16551-4 (CMOS and packaged versions of the 16550)
  23. Intel 82510 and the TYPE3. It provides hardware flow control,
  24. the ability to run at *any* baud rate supported by the UART,
  25. configurable inbound/outbound buffer sizes.
  26.  
  27. Before you ask, BNU is an acronym for Basic Networking
  28. Utility, referring to its use in the FidoNet community as
  29. the base level of communications. FOSSIL in this context
  30. means "Fido Opus SEAdog Standard Interface Layer", which is
  31. a phrase used to describe the set of common interrupt
  32. functions developed as a common layer for many FidoNet
  33. applications. SIO (which you'll see in SERSETUP's banner)
  34. means "serial input/output".
  35.  
  36. This driver does not use FOSSIL services, so you need not
  37. install one nor need to even know what one is.
  38.  
  39.  
  40. INSTALLATION
  41.  
  42. This driver is almost a drop-in replacement for Id's
  43. original. First, rename Id's version to "SERSETUP.OLD" and
  44. copy in SERSETUP.EXE from this archive into your DOOM
  45. directory.
  46.  
  47. If you have used your modem to call other DOOM players and
  48. have an init string that works, then all the rules have
  49. just changed - you will almost certainly have to change your
  50. initialisation string from the one you used with Id's
  51. SERSETUP.
  52.  
  53. Specifically, you'll need to:
  54.  
  55.  - Enable V42bis (if available)
  56.  - Enable error correction (optional)
  57.  - ENABLE HARDWARE FLOW CONTROL
  58.    (ALSO REFERRED TO AS RTS/CTS HANDLING)
  59.  
  60. The latter is the most important if you intend to use an error
  61. corrected link, the others optional. Error correction and
  62. compression are transparent to the data stream. BNU automatically
  63. provides CTS/RTS signal handling to take care of the "spurts" of
  64. data it receives as a result of the protocol used between the
  65. modems. If you only have MNP5 compression, try it since it may
  66. work fine - disable it if play becomes too jerky. Compression is
  67. likely to slow down the game and make it less responsive, but
  68. implementations vary so trying it won't hurt.
  69.  
  70.    - You need 9600 baud or greater!
  71.  
  72. Don't consider attempting to run DOOM at any lesser speed -
  73. it just doesn't work. You'll get a connect, but movement is
  74. so slow that it is entirely unplayable. At 4800 baud it's
  75. like molasses at 50 fathoms! At 2400, it's like attempting
  76. to play DOOM inside a Jupiter Mining Corps' stasis booth -
  77. i.e. pretty much a waste of time. Try it on a direct connect
  78. if you like, it is amusing, but don't donate money to your
  79. PTT provider trying it out if you only have 2400 baud modems
  80. or less. At 7200 you might get a slow moving game going, but
  81. 9600 is really where it becomes playable. In fact, if you
  82. have a 16450 and/or a slower 386, you may find that 9600
  83. provides the most playable game (it is, after all, the speed
  84. for which the networking interface was developed by Id).
  85.  
  86.    - If you use error correction and/or compression, use a baud
  87.      rate greater than the actual connect speed.
  88.  
  89. For V32 modems, use 19200 (more probably won't be an
  90. advantage and makes your system work harder - sometimes
  91. causing jerky play). V32b modems should use 38400 or 19200.
  92. This driver *may* work with the HST protocols (but probably
  93. not brilliantly) and will certainly do just fine with ZYXEL
  94. 16.8K and 19.2K. VFC and V34 modems will probably need the
  95. port set at 38400 or 57600 (incidentally, if anyone has parallel
  96. port specs for use with these modems, or knows where these can
  97. be obtained, please let me know at the Email address noted
  98. at the end of this document).
  99.  
  100. MODEM.CFG has some additional (optional) lines which you can use:
  101.  
  102.   Line 1: Modem init string (+)
  103.   Line 2: Modem hang up string (+)
  104.   Line 3: Default baud rate (if not specified, 9600 is used)
  105.   Line 4: Receive buffer size (defaults to 2048 bytes)
  106.   Line 5: Transmit buffer size (defaults to receive buffer size)
  107.  
  108.   + Also present in Id's SERSETUP
  109.  
  110. Anything after the fifth line is ignored. Note that to make your
  111. existing MODEM.CFG compatible with this driver, it is advisable
  112. to either complete the above values or add empty lines for the
  113. additional fields as numbers starting on the additional lines may
  114. cause spurious options to be set.
  115.  
  116. As far as possible, this rework of SERSETUP is compatible with
  117. DOOM's SETUP.EXE. In fact, with the addition of configurable port
  118. settings via the environment (see below 'nonstandard settings')
  119. this version should be more compatible than the original, allowing
  120. SETUP to be used with non-standard port configurations.
  121.  
  122.  
  123. SERIAL CONNECTIONS
  124.  
  125. SERSETUP's dialer has been reworked into something that may work
  126. a little more intelligently than the original. Specifically, it
  127. supports these types of connections:
  128.  
  129.   - Direct connection (no modem)
  130.  
  131.     Run SERSETUP with none of the following present on the command
  132.     line: -modem, -voice, -dial, -answer
  133.     In the absence of these options, direct connect is the default.
  134.  
  135.   - Dialup and answer via modem (answer mode, dial mode)
  136.  
  137.     One end uses "-dial <number>" (where <number> is replaced by the
  138.     telephone number to dial), and the other and uses "-answer".
  139.     The dialing end's modem will call out to the other, and the
  140.     answering end attempts to pick up the phone line and establish
  141.     carrier when it sees "RING".
  142.  
  143.   - Connection via an existing modem <-> modem connection
  144.  
  145.     This is similar to the direct connect. However, if you use the
  146.     -modem switch, you may optionally hang up the telephone line
  147.     on completion of the game.
  148.  
  149.   - Switching voice -> data prior and data -> voice after play
  150.  
  151.     This avoids making unnecessary calls by allowing easy switching
  152.     between voice and data.
  153.  
  154.     As with dialup, this requires an originating (dialing) end
  155.     and an answering end, the difference between them being that
  156.     some parts of establishing the connection aren't present.
  157.     The originating system is told to 'pick up' the line immediately
  158.     and the answering end told to issue connection tones without
  159.     waiting for RING.
  160.  
  161.     At the originating end, use "-voice D" on the command line to
  162.     force originate mode. Your modem may offer other parameters
  163.     which do the same thing, perhaps a little better. In that case,
  164.     use "-voice <command>" where '<command>' is the recommended
  165.     string to place the modem into originate mode.
  166.  
  167.     At the answering end, use "-answer -noinit", which skips the
  168.     modem initialisation and sends the command "ATA" (answer call)
  169.     to the modem immediately without waiting for RING.
  170.  
  171. All responses now have time-outs, and redial is automatic should the
  172. number called result in "BUSY" or "NO CARRIER".  SERSETUP also
  173. understands response strings such as "VOICE" and "NO DIAL TONE",
  174. failing the call should they be detected and exiting cleanly.
  175.  
  176. Note that hanging up after a call is now optional. The default (by
  177. hitting ENTER at the prompt presented at the time) is to hang up.
  178.  
  179.  
  180. NONSTANDARD SETTINGS
  181.  
  182. DOOM 1.2's SETUP.EXE did not allow any but the standard port (1-4)
  183. selections. This means that those use run their modem on other
  184. serial ports, or ports configured slightly differently than standard
  185. had to either change these to the standard settings or use SERSETUP
  186. from the command line. The original SERSETUP did attempt to provide
  187. a way to use non-standard configurations; however, the code to support
  188. this was buggy - almost definitely never tested.
  189.  
  190. SERSETUP allows for this by allowing you to 'redefine' serial ports
  191. using an environment variable.
  192.  
  193. SET COM1=3F8,4       Redefines COM1 to the default settings (there is
  194.                      no reason to do this except as an example).
  195.  
  196. SET COM3=2E8,5       Redefines COM3 to port 0x2E8 on IRQ 5.
  197.  
  198. COM1 through COM4 are supported. After setting the environment
  199. variable, simply use -com? (where ? is the port number) on the
  200. command line and SERSETUP will obtain it's settings from your DOS
  201. environment.  This means also that selecting the corresponding port
  202. from DOOM 1.2's SETUP will work.
  203.  
  204.  
  205.  
  206. COMMAND LINE REFERENCE
  207.  
  208. This is the complete list of command line switches that SERSETUP
  209. supports. These options may be given on the command line or specified
  210. in the "SERSETUP" environment variable. The latter way of setting
  211. options is very useful if you want to specify options other than those
  212. supported by Id's SETUP.EXE, or simply to set permanant options from
  213. your AUTOEXEC.BAT or other batch files where SERSETUP is always used
  214. connect in a particular configuration. Where the command line is in
  215. comflict with the environment variable, the command line takes
  216. precedence.
  217.  
  218.   -com1, -com2, -com3, -com4
  219.  
  220.           Selects the communications port in a standard
  221.           configuration applicable to your machine. (+)
  222.  
  223.   -port 0x????
  224.  
  225.           Overrides the port address. This must be in the
  226.           format "0x????" where ???? is the port address in
  227.           hexadecimal. For example, the standard COM1 and
  228.           COM2 port addresses are 0x3F8 and 0x2F8
  229.           respectively. (+, but had a bug)
  230.  
  231.   -irq n
  232.  
  233.           Sets the IRQ number - this is the CPU interrupt
  234.           request line. Refer to your serial cards
  235.           documentation if you have an unusual port
  236.           configuration. Very often cards provide jumpers
  237.           which you can use to select the IRQ generated by
  238.           ports on the card. (+)
  239.  
  240.   -vector 0xn
  241.  
  242.           Sets the interrupt vector used to gate information between
  243.           DOOM and the serial driver to n, where n is a hexadecimal
  244.           number. Unless this is given, SERSETUP automatically searches
  245.           for an unused vector in the range 0x60 - 0x66.
  246.  
  247.   -answer
  248.  
  249.           Sets up SERSETUP in 'answer' mode. This
  250.           initialises the modem and waits for a call. (+)
  251.  
  252.   -dial n
  253.  
  254.           Causes SERSETUP to init the connected modem and
  255.           dial out to the other player. 'n' is the phone
  256.           number to dial (+).
  257.  
  258.           Note that the -dial switch requires a number to call. If,
  259.           for whatever reason, you wish to dial an 'empty' number
  260.           (it issue ATDT to the modem), then use -dial "" (empty
  261.           quotes as a placeholder.
  262.  
  263.   -modem
  264.  
  265.           Assumes that a modem is in use. This automatically enables
  266.           hardware flow control (if you still need it disabled, disable
  267.           it using -noflow) and if carrier is detected on termination of
  268.           DOOM it also asks if you wish to hang up.
  269.  
  270.   -voice n
  271.  
  272.           Causes SERSETUP to skip initialisation and issue
  273.           ATn (where 'n' is supplied) to the modem immediately
  274.           and wait for carrier.
  275.  
  276.   -noinit
  277.  
  278.           Skips modem initialisation altogether. When used with
  279.           "-answer", SERSETUP will also skip waiting for a RING
  280.           before issuing ATA to answer the line. This is useful
  281.           when switching from voice to data to start playing
  282.           DOOM.
  283.  
  284.   -baud n, -speed n
  285.  
  286.           These are both the same thing. Sets the DTE
  287.           communications rate (the baud rate used between
  288.           your computer and the modem or your computer and
  289.           another computer to which it is connected). This
  290.           is NOT NECESSARILY THE SAME SPEED AS THE
  291.           CONNECTION SPEED BETWEEN YOUR MODEM AND YOUR
  292.           FELLOW DOOMER's MODEM!
  293.  
  294.   -rx n
  295.  
  296.           Sets the receive buffer size.
  297.  
  298.   -tx n
  299.  
  300.           Sets the transmit buffer size. The default I/O
  301.           buffer size is around 2K (2048 bytes) in both
  302.           directions. This is adequate at 9600. You may need
  303.           to increase this at higher connection speeds and
  304.           allow for smoother play, particularly if error
  305.           correction or compression are in use.
  306.  
  307.   -rt n
  308.  
  309.           Sets 16550/16550A/82510/TYPE3 receive trigger to
  310.           'n'. Valid values for the 16550x and TYPE3 are 1,
  311.           2, 4, 8 and 15. The 82510 supports 1 through 4. A
  312.           zero value sets the receive trigger to 1 unless
  313.           -rf 0 is used, in which case the FIFOs are
  314.           disabled (but why would anyone want to do that??!?
  315.           :-))
  316.  
  317.           NOTE: the switch is RT (for Receive Trigger), not RF.
  318.  
  319.   -tf n
  320.  
  321.           Sets the transmitter FIFO usage
  322.           16550/16550A/82510/TYPE3. This should almost
  323.           always be 15 or 16, irrespective of the -rt
  324.           setting. If you have a Western Digital or Silicon
  325.           Logic 16550A then use "-tf 15". Setting both this
  326.           parameter and -rt to 0 will disable the UART's
  327.           built-in FIFO. This value can be set to any value
  328.           from 0 through 16 on 16550A or TYPE 3, 0 to 8 on a
  329.           16550, 0 to 4 on an Intel 82510.
  330.  
  331.           NOTE: the switch is TF (for Transmit FIFO).
  332.  
  333.   -noflow
  334.  
  335.           Disables hardware flow control, which is by default ON
  336.           if you use any of the modem switches (-modem, -dial or
  337.           -answer) and OFF otherwise. If you have problems with
  338.           your modem due to a nonstandard or faulty cable, or your
  339.           modem does not support CTS/RTS (in which case, since it
  340.           must support 9600 or above baud rates to play DOOM it is
  341.           probably disabled - so enable it!), then -noflow can be
  342.           used to force hardware flow control NOT to be used.
  343.  
  344.   -flow
  345.  
  346.           Enables flow control. Since this version of SERSERTUP
  347.           disables hardware flow control by default on non-modem
  348.           connections, this switch is provided to enable it. Some
  349.           NULL MODEM cables do have the CTS and RTS lines crossed,
  350.           which makes it both possible and desirable to use hardware
  351.           flow control between the two machines.
  352.  
  353.           More information about NULL MODEM cables which are
  354.           compatible with this driver and which allow use of hardware
  355.           flow control may be found in a separate section below.
  356.  
  357.   -chat
  358.  
  359.           Enables the chat function; this causes a system-to-system
  360.           chat function to be invoked both prior establishing the
  361.           protocol between the DOOM network engines and after the
  362.           game exits. This allows two gamers to remain on-line
  363.           and discuss subsequent games and the previous game without
  364.           having to hang up or switching the line to voice. This
  365.           facility is provided as a way of saving calls.
  366.  
  367.           If you have an ANSI driver installed, the chat function
  368.           will detect this and add some colour to the exchange;
  369.           text typed in from the console will be in yellow, and
  370.           cyan from the remote.
  371.  
  372.           The chat shell is terminated pressing ESC at either end.
  373.  
  374.   -nohangup
  375.  
  376.           When connected via modem, SERSETUP will prompt you and
  377.           ask you if you wish to hang up if carrier is still high
  378.           when DOOM exits. -nohangup bypasses this and causes the
  379.           line to be held open without hanging up, as a
  380.           convenience to allow multiple games.
  381.  
  382. The following options are really for 'hackers' only. They were
  383. implemented for experimentation and their use may have
  384. unpredictable or unexpected results.
  385.  
  386.   -debug
  387.  
  388.           Useful for debugging only. For hackers, this echoes
  389.           some additional information to the screen and dumps
  390.           all packets received and sent into a file "sersetup.deb"
  391.           in the current directory. This will probably slow
  392.           down gameplay considerably so it is not recommended.
  393.           Debug information dumped into the file is in one
  394.           of the following formats:
  395.  
  396.           T<len>[<data>]<NL>   Transmitted packet
  397.           R<len>[<data>]<NL>   Received packet
  398.           $<NL>                Transmit buffer dumped (full)
  399.           #<NL>                Receive buffer dumped (overflow)
  400.  
  401.           <len> is the packet data length modulus 256
  402.           <data> is the actual packet data, no conversion
  403.           <NL> is a newline.
  404.  
  405.   -extra
  406.  
  407.           Sets the 'extratics' field in the communications header
  408.           to 1. This causes DOOM to "send a backup tick in every
  409.           packet". On some systems, using this reduces jerkiness
  410.           in modem play.
  411.  
  412. All parameters specified on SERSETUP's command line are passed
  413. on to DOOM unmodified.
  414.  
  415. Note that where a value has been both specified in SERSETUP and
  416. on the command line and the two are in conflict, the command line
  417. will take preference.  -port and -irq switches specified on the
  418. command line override any -com? switch or any COM? environment
  419. setting (the default being COM1 if no -com? switch is given).
  420.  
  421.  
  422. RUNNING DOOM
  423.  
  424. The BNU version of SERSETUP is command line compatible with
  425. the original SERSETUP command line, this one can also be run
  426. from DOOM's setup program. This is probably both easiest and
  427. best unless you need to fine tune things a little by
  428. overriding FIFO settings. Since the default speed and buffer
  429. sizes can be more permanently configured in MODEM.CFG, you
  430. can simply insert these in there and use SETUP.
  431.  
  432.  
  433.  
  434. PLAYING SPEED
  435.  
  436. Baud rates used on remote (modem) connections is adequately
  437. covered above. Game speed will be affected mostly by the
  438. ability of the modems being used to transfer and pump data
  439. at sufficient speed. Some of the following, however, may
  440. apply to modem connections, but remember that on modem
  441. connects, the limitation is the modem devices and the effective
  442. transfer rate between them, not the 'baud rate' is a direct
  443. machine-to-machine null modem connection.
  444.  
  445. WITH DIRECT CONNECTS - FASTER ISN'T NECESSARILY BETTER.
  446. 19200 is fairly good, 38400 equally as good as DOOM across
  447. IPX using 8 bit ethernet, but above that you may have to
  448. contend with performance problems due to overhead in
  449. servicing interrupts. Since DOOM runs under DPMI, it has
  450. to context switch (switch into V86 or real mode from native
  451. 386 protected mode) every time the serial port triggers an
  452. interrupt, and faster speeds usually means that
  453. interrupts come more frequently and closer together (I
  454. hope to address at least some of this with a DPMI mode
  455. serial interrupt handler in a future release of SERSETUP
  456. which will provide enhanced performance when running DOOM
  457. under a DPMI host).
  458.  
  459. If your baud rate is set to 38400 or greater and you are
  460. using 16550AFN uarts (these speed would probably not be
  461. usable without them!), the BNU SIO driver automatically
  462. adjusts usage of the UART FIFO's to accommodate to 8x8
  463. instead of the default at lower speeds of 16x14. If you know
  464. what this means and you wish to try using more of the UART
  465. FIFOs at the risk of some overhead which may slow play down,
  466. use -tf 16 -rt 14 on the command line to override the FIFO
  467. size. You'd probably have to be using a 486DX260 or
  468. thereabouts to see an improvement though - more than likely
  469. the effect will be the opposite.
  470.  
  471. The best results in the author's opinion for direct
  472. connections are running at 38400 or 57600 baud using the
  473. default 8x8 FIFO. This is very smooth, at least on a DOS
  474. 386DX40 connected to a 486DX33 OS/2 system and provides
  475. even better playability than using the IPX driver.
  476.  
  477. It is not recommended that you use speeds in excess of 19200
  478. with 16450 UARTs. You may find that play is best at 9600
  479. since the number of errors due to missing characters will be
  480. significantly reduced. 19200 should provide a reasonably
  481. playable game on most 386's able to run DOOM smoothly.
  482.  
  483. I/O buffer sizes also have an effect on playing smoothness
  484. at high speeds (ie. above 9600). The size of the serial I/O
  485. buffers will effect how often communicated data is "thrown
  486. away" and replaced with fresh data either before being sent
  487. or after being received (if the receiving system is getting
  488. behind the data stream). Smaller buffers will cause data to
  489. be thrown away more frequently - this may actually improve
  490. play, whereas large buffers may slow things down a lot,
  491. depending on how well the computers are keeping up with the
  492. data stream. In general, the slower the machine, the smaller
  493. the receive buffers you should use. Conversely, the slower
  494. the OTHER machine is, the smaller transmit buffer you should
  495. use. The actual size is relative to the baud rate (direct
  496. connections) or modem speeds (remote connections) being used.
  497. If in doubt, experiment.
  498.  
  499. WARNING: Making transmit or receive buffers less than 512
  500. bytes is not recommended. The default (2048) is about right
  501. for most uses.
  502.  
  503.  
  504.  
  505. CABLING
  506.  
  507. Connecting two systems together directly to play DOOM requires
  508. at least a 3 wire connection, the connection of which are:
  509.  
  510.   Pins
  511. DB9 DB25
  512. --- ----
  513.   3  2   TX  <->  RX
  514.   2  3   RX  <->  TX
  515.   5  7   GND <-> GND
  516.  
  517. Wiring for DB25 <-> DB25  2-3, 3-2, 7-7
  518.             DB9 <-> DB9   2-3, 3-2, 5-5
  519.            DB25 <-> DB9   2-2, 3-3, 7-5
  520.             DB9 <-> DB25  2-2, 3-3, 5-7
  521.  
  522.  
  523. This is about as basic a "NULL MODEM" connection that you can
  524. get. Unfortunately, any additional lines wired for handshaking
  525. and signalling is less than standard. Best results for hardware
  526. flow control from PC to PC are:
  527.  
  528.   Pins
  529. DB9 DB25
  530. --- ----
  531.   3  2  TX   ->  RX
  532.   2  3  RX  <-   TX
  533.   5  7  GND <-> GND
  534.   7  4  RTS  -> CTS
  535.   8  5  CTS <-  RTS
  536.  
  537. Wiring for DB25 <-> DB25  2-3, 3-2, 7-7, 4-5, 5-4
  538.             DB9 <-> DB9   2-3, 3-2, 5-5, 7-8, 8-7
  539.            DB25 <-> DB9   2-2, 3-3, 7-5, 4-8, 5-7
  540.             DB9 <-> DB25  2-2, 3-3, 5-7, 7-5, 8-4
  541.  
  542. Some additional wires may optionally be connected, but are
  543. not used by SERSETUP.
  544.  
  545. For external modems, you should use the cable recommended for
  546. use with the modem. These will usually be "straight through"
  547. cables.
  548.  
  549.  
  550.  
  551. COMMAND LINE EXAMPLES
  552.  
  553. Obviously, the easiest way to use SERSETUP is to run it
  554. indirectly from DOOM's SETUP program. However, for direct
  555. connections and for voice <-> data switching, you may find it
  556. more convenient to run it directly.
  557.  
  558. Scenario 1: Direct connect, simple (3 wire) null modem cable,
  559. assuming 19200 baud, and standard COM2 on both machines.
  560.  
  561.   #1: sersetup -baud 19200 -com2
  562.   #2: sersetup -baud 19200 -com2
  563.  
  564. Scenario 2: Direct connect, full null modem cable with
  565. hardware handshaking support, 38400 baud:
  566.  
  567.   #1: sersetup -baud 38400 -com2 -flow
  568.   #2: sersetup -baud 38400 -com2 -flow
  569.  
  570. Scenario 3: Connect via phone line using V32+ modems (including
  571. hardware flow control and error correction), assuming that
  572. MODEM.CFG has been set accordingly with init strings etc.
  573.  
  574.   #1: sersetup -com1 -dial 1234567890
  575.  Alternative 1:
  576.   #2: sersetup -com2 -answer
  577.  Alternative 2:
  578.   #2: set SERSETUP=-com2
  579.   #2: sersetup -answer
  580.  
  581. Scenario 4: Similar to scenario 2, except that system 2 uses an
  582. internal modem configured as COM3 (2E8) on IRQ 5.
  583.  
  584.   #1: sersetup -com1 -dial 1234567890
  585.  Alternative 1:
  586.   #2: sersetup -com3 -irq 5 -answer
  587.  Alternative 2:
  588.   #2: sersetup -port 0x2e8 -irq 5 -answer
  589.  Alternative 3:
  590.   #2: set COM3=2E8,5
  591.   #2: sersetup -com3 -answer
  592.  Alternative 4:
  593.   #2: set SERSETUP=-port 0x2e8 -irq 5
  594.   #2 sersetup -answer
  595.  
  596. Scenario 5: Two DOOMers are conversing voice, both then switch
  597. the line from voice to data, connecting their modem:
  598.  
  599.   #1: sersetup -com1 -voice D
  600.   #2: sersetup -com3 -irq 5 -answer -noinit
  601.  
  602.  
  603. PROBLEMS?
  604.  
  605. If you experience any problems whatsoever in using this
  606. driver, feedback to the author is certainly appreciated!
  607. While I can't hope to solve all your problems, provided that
  608. it can be diagnosed (which depends on the information you
  609. supply) many of them can be easily be fixed either by
  610. changing setup or by using alternative configuration
  611. parameters.
  612.  
  613. If you do have a problem report, please complete the form in
  614. SERSETUP.FRM and send this back with your report. This
  615. information contains the minimal set of data I usually need
  616. to resolve problems without having to ask you lots more
  617. questions about basics. Using the form will save us both
  618. time.
  619.  
  620. If you have any comments or suggestions, words or praise or
  621. feature requests, you can direct them to any of the Email
  622. addresses below - we'll be appreciative of the feedback and
  623. happy to look at anything which you may suggest.  We are
  624. particularly interested in hearing about configurations where
  625. this driver did not work!
  626.  
  627.  
  628. DOES THIS COST ANYTHING?
  629.  
  630. That's entirely up to you. This is not shareware, but
  631. DONATEware - if you find it useful then you are more than
  632. welcome to send a nominal sum of US$10 or equivalent to the
  633. address below. Furthermore, if you haven't already done so,
  634. REGISTER DOOM WITH ID! They deserve it for this awesome
  635. creation; registering will encourage the development of this
  636. type of game in the future, both from Id and others.
  637.  
  638. We also welcome any commercial enquiries regarding use and
  639. licensing of the BNU SIO driver.
  640.  
  641. Postal address (aka: where to send the moola :-)):
  642.  
  643.   PO Box 352
  644.   Doveton,
  645.   Victoria,  3177
  646.   Australia
  647.  
  648.  
  649. CONTACTING THE AUTHOR
  650.  
  651.   InterNet: davidn@csource.pronet.com (fastest)
  652.             davidn@csource.oz.au
  653.             nugentex@brt.deakin.edu.au
  654.    FidoNet: david nugent 3:632/348 (3:50/0, 3:3/20)
  655.   Data/BBS: +61-3-792-3507 (PEP)
  656.             +61-3-794-7949 (V32b)
  657.      Voice: +61-3-793-2728
  658.  
  659. The BNU SIO driver is an all-Australian product!
  660.  
  661. REVISION HISTORY
  662. Reverse chronological order
  663.  
  664. Version Date        Comments
  665. ------- ----------- ----------------------------------------------
  666. 1.2.6   28-Mar-1994
  667.  
  668.             Fixes - Dropping DTR on exit was unconditional due
  669.                     to complete UART state restoration when
  670.                     SERSETUP exists: if DTR was not originally
  671.                     set it would be dropped even if the user had
  672.                     requested no hangup. The previously 
  673.                     undocumented (but implemented) "-nohangup"
  674.                     switch should also now work as expected.
  675.                   - Command line bug: DOOM wasn't seeing the
  676.                     first switch given to SERSETUP.
  677.           Changes - Minor modifications made to the ISR to further
  678.                     prevent generation of spurious THRE interrupts
  679.                     on 16450/8250s.
  680.                   - The -isr switch is no longer functional (nor
  681.                     necessary - the code affected is now adaptive
  682.                     and used whenever the driver detects that
  683.                     interrupts have been 'missed').
  684.                   - Cosmetic: the command line passed to DOOM is
  685.                     now shown whether or not -debug is specified.
  686.  
  687. 1.2.5   19-Mar-1994 Initial release
  688. ------- ----------- ----------------------------------------------
  689.  
  690.