Date: Tue, 10 Dec 1991 22:28 MDT From: Joe Doupnik Subject: SLIP Packet Driver To: nelson@sun.soe.clarkson.edu Cc: fdc@watsun.cc.columbia.edu First, while getting SLIP to work in the next version of MS-DOS Kermit (v3.12) I discovered that SLIP8250.COM has self inflicted wounds (loses interrupts). So I did some quick work to sooth it into performing well. I'll send you the code and you can do some sanding and painting of it. Basically, the writers went overboard playing with 16550A UARTs and forgot that most UARTs lose the transmit buffer empty interrupt when others occur. I chopped out all that xmtr code and put in a straight, simple, unqueued, send a char non-interrupt driven transmitter and it works just fine, thankyou. Date: Mon, 16 Dec 1991 21:32 MDT From: Joe Doupnik Subject: Revised SLIP8250 Packet Driver core To: nelson@cheetah.ece.clarkson.edu cc: fdc@watsun.cc.columbia.edu Russ, Here's the SLIP8250 file, revised to make it work dependably. There are four changes: 1. Eliminate the use of transmitter holding register empty interrupts because they can be lost during processing of receiver interrupts. That loss stops the data exchange. My simpler method works fine. 2. Along with that we lose the large buffer for transmitted characters and the messy code dealing with these two items. 3. Remove the transmitter buffer size from the command line. 4. And ensure code lines do not exceed 80 bytes (preferrably 78). The version number is bumped from 5 to 6. You might want to give the file a new name because of the change to the command line: the send_buf_size parameter has been eliminated (previously it was before recv_buf_size). Here is the new command-line format: SLIP8250 [-n] [-d] [-w] packet_int_no [-h] [driver_class] [int_no] [io_addr] [baud_rate] [recv_buf_size] Note: All parameters are given on one line, in the order shown. Trailing arguments (after packet_int_no) can be omitted. The defaults are: driver_class = SLIP (Class 6) int_no = 4 (for IRQ 4) io_addr = 03f8h (for COM1) baud_rate = Whatever the port is presently set to recv_buf_size = 3000 The driver_class should be SLIP, KISS, AX.25, or a number. A 3000 byte receive buffer is about twice as large as most programs need so experimenting is ok. -h enables hardware handshaking (RTS/CTS). Software flow control (Xon/Xoff) is not available. Run SLIP8250 from the DOS prompt, or from your AUTOEXEC.BAT file. Example: slip8250 0x60 SLIP 4 0x3f8 19200 3000 Joe D.