Configuring Packet Drivers This file lists the three types of packet drivers provided in this release of PC/TCP software. 1. Crynwr packet drivers supported by FTP Software, Inc. 2. Serial line packet drivers developed and supported by FTP Software, Inc. 3. Packet drivers provided as a courtesy by network card vendors. These packet drivers are not supported by FTP Software, Inc. ______________________________________________________________________________ 1. Crynwr Packet Drivers ______________________________________________________________________________ The following chart lists the Crynwr packet drivers that you can use with the PC-210 kernels and that are supported by FTP Software, Inc. The left-hand column lists the network interface cards and the appropriate packet driver for each. The right-hand column explains the command line that loads the packet driver and lists the required settings and defaults. You can add this line to your autoexec.bat file or type it at the DOS prompt. FTP Software, Inc. recommends that you load the packet driver at software interrupt vector (int_vec) 0x60. NOTE: Some of the boards in this chart use DOS upper memory. If a board does use upper memory, it is clearly marked in the text and you should refer back to this note. If a board uses upper memory, its packet driver may conflict with your memory manager. Your memory manager must exclude the RAM area that the packet driver is using. For more information, refer to the memory manager and network card documentation or to the chapter "Running PC/TCP with Memory Managers" in the User's Guide. Available Options You can use any of the following options in the packet driver command line: -d Most drivers can also be used in a PROM boot environment. See PROMBOOT.NOT in the \CRYNWR.DOC directory on Unsupported Disk A for instructions about using the -d and -n options for that purpose. Use this option to delay the adapter's initialization until the first time the packet driver is accessed. -i Use this option with client software that expects to find an IEEE 802.3 packet driver. Many Crynwr Ethernet packet drivers implement both IEEE 802.3 (class 11) and Ethernet II, or Bluebook, (class 1) framing. The packet driver specification only allows a driver to report one class. The default is to report Ethernet II. Using -i changes the reported class to IEEE 802.3. -n Use this option if you want the Crynwr packet drivers to convert Ethernet II frames into Novell's version of the IEEE 802.3 frame type (and back). NetWare can use two different framing types on Ethernet, IEEE 802.3 and Ethernet II. The BYU packet driver shell requires Ethernet II. -p Use this option to disable promiscuous mode. You can achieve a small level of security by disabling promiscuous mode; however, do not mistake this for real security. -u Use this option to unload the packet driver. -w Use this option if you are using Windows applications that access the packet driver directly. Generally, this option is not necessary. ______________________________________________________________________ SUPPORTED CRYNWR PACKET DRIVER CHART ______________________________________________________________________ 3COM 3C501 Load the packet driver with a line in this form: 3c501.com drive:\path\3c501 [options] int_vec hard_int io_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt number; default = 3 io_addr is the I/O address; default = 0x300 Example: c:\pctcp\3C501 0x60 3 0x300 _______________________________________________________________________ 3COM 3C503 Load the packet driver with a line in this form: 3c503.com drive:\path\3c503 [options] int_vec hard_int io_addr cable_type The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; range is 2 to 5; default = 2 io_addr is the I/O address; default = 0x300 cable_type can be thick = 0, thin = 1, automatic = 65535; default cable_type = 65535 Example: c:\pctcp\3C503 0x60 2 0x300 1 The 3c503 can use shared memory, but the driver automatically determines that parameter from the hardware. Note: This board uses DOS upper memory. _______________________________________________________________________ 3COM 3c505 Load the packet driver with a line in this form: 3c505.com drive:\path\3c505 [options] int_vec hard_int io_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; default = 0x300 Example: c:\pctcp\3C505 0x60 2 0x300 Note: This board uses DOS upper memory. _______________________________________________________________________ 3COM 3c507 Load the packet driver with a line in this form: 3c507.com drive:\path\3c507 [options] int_vec io_addr The required settings: int_vec is the software interrupt. io_addr is the I/O address. Example: c:\pctcp\3C507 0x60 0x300 The 3c507 determines its parameters by reading the board. The only time you need to specify the parameters is when you have multiple 3c507s in the same machine. Note: This board uses DOS upper memory. ________________________________________________________________________ 3Com 3c509 Load the packet driver with a line in this form: 3c509.com drive:\path\3c509 [options] int_vec [id_port|io_port|board_num] The required setting: int_vec, the software interrupt. Optionally, the 3c509 driver can use one of three additional parameters: the id port, the I/O port, or the board number. If the number is between 0 and 0xff, it is the board number. If the number is between 0x100 and 0x1ff, it is an ID port. Otherwise, it is an I/O port number. Example: c:\pctcp\3C509 0xff The 3c509 determines its parameters by reading the board. The only time you need to specify the parameters is when you have multiple 3c509 cards in the same machine or if you have an I/O conflict with the default id_port (0x110). _______________________________________________________________________ 3COM 3c523 Load the packet driver with a line in this form: 3c523.com drive:\path\3c523 [options] int_vec hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 3 io_addr is the I/O address; default = 0x300 base_addr is the memory base address; default = 0xD000 Example: c:\pctcp\3C523 0x60 3 0x360 0xd000 You can run the 3c523 packet driver by specifying only a software interrupt. The driver can read the rest of the parameters from the PS/2 configuration. Note: This board uses DOS upper memory. _______________________________________________________________________ AT&T Load the packet driver with a line in this form: at&t.com drive:\path\at&t [options] int_vec hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; default = 0x360 base_addr is the memory base address; default = 0xD000 Example: c:\pctcp\at&t 0x60 2 0x360 0xD000 The AT&T packet driver supports the StarLAN 1, StarLAN 10 NAU, EN100, and StarLAN Fiber NAU network boards. Note: This board uses DOS upper memory. _______________________________________________________________________ David Systems (DSI) Load the packet driver with a line in this form: davidsys.com drive:\path\davidsys [options] int_vec hard_int io_addr delay_mult The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt. io_addr is the I/O address. delay_mult is a system-dependent timing loop; default = 10 Example: c:\pctcp\davidsys 0x60 2 0x300 10 The delay multiplier is a timing loop used for I/O to the card. a reasonable value is calculated during initialization, but on some fast systems it may need to be somewhat larger. The multiplier is divided by ten, then multiplied by the calculated delay. The default multiplier is 10 (actually 1.0). _______________________________________________________________________ D-Link DE-600 Load the packet driver with a line in this form: de600.com drive:\path\de600 [options] int_vec The only required setting: int_vec, the software interrupt. Example: c:\pctcp\de600 0x60 _______________________________________________________________________ DEC, DE100, DE200, DEPCA Load the packet driver with a line in this form: depca.com drive:\path\depca [options] int_vec hard_int io_addr mem_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt;default = 5 io_addr is the I/O address; default = 0x300 mem_addr is the memory base address; default = 0xD000 The packet driver will resolve the io_addr automatically if io_addr is set to '?'. Example: c:\pctcp\depca 0x60 5 ? 0xd000 Note: This board uses DOS upper memory. _______________________________________________________________________ Intel EtherExpress Load the packet driver with a line in this form: exp16.com drive:\path\exp16 [options] int_vec [io_addr] The only required setting: int_vec, the software interrupt. Example: c:\pctcp\exp16 0x60 The io_addr is only needed if there is more than one EtherExpress card in your system. Otherwise, the driver will search for the adapter and get its parameters from it. _______________________________________________________________________ Novell NE1000 Load the packet driver with a line in this form: ne1000.com drive:\path\ne1000 [options] int_vec hard_int io_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 3 io_addr is the I/O address; default = 0x300 Example: c:\pctcp\ne1000 0x60 3 0x300 _______________________________________________________________________ Novell NE2000 Load the packet driver with a line in this form: ne2000.com drive:\path\ne2000 [options] int_vec hard_int io_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; default = 0x300 Example: c:\pctcp\ne2000 0x60 2 0x300 _______________________________________________________________________ Racal-Datacom NI5210 Load the packet driver with a line in this form: ni5210.com drive:\path\ni5210 [options] int_vec hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; default = 0x360 base_addr is the memory base address; default = 0xD000 Example: c:\pctcp\ni5210 0x60 2 0x360 0xD000 Note: This board uses DOS upper memory _______________________________________________________________________ Racal-Datacom NI6510 Load the packet driver with a line in this form: ni6510.com drive:\path\ni6510 [options] int_vec hard_int io_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; defaults to address found through an auto-sense routine. These parameters do not need to be set unless the auto-sense routine fails, or otherwise disrupts operation of your PC. Example: c:\pctcp\ni6510 0x60 _______________________________________________________________________ Racal-Datacom NI9210 Load your packet driver with a line in this form: ni9210.com drive:\path\ni9210 [options] int_vec hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; default = 0x360 base_addr is the memory base address; default = 0xD000 Example: c:\pctcp\ni9210 0x60 2 0x360 0xD000 You can run the ni9210 packet driver by specifying only a software interrupt. The driver can read the rest of the parameters from the PS/2 configuration. Note: This board uses DOS upper memory. _______________________________________________________________________ UBNICPC Load the packet driver with a line in this form: ubnicpc.com drive:\path\ubnicpc [options] int_vec hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 2 io_addr is the I/O address; default = 0x360 base_addr is the memory base address; default = 0xD000 Example: c:\pctcp\ubnicpc 0x60 2 0x360 0xD000 Note: This board uses DOS upper memory. _______________________________________________________________________ UBNICPS2 Load the packet driver with a line in this form: ubnicps2.com drive:\path\ubnicps2 [options] int_vec hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt. io_addr is the I/O address. base_addr is the memory base address. Example: c:\pctcp\drv\ubnicpcs2 0x60 2 0x360 0xD000 The defaults are the contents of the POS registers, so the only time you need to use the parameters is if you are using two NIC-PS/2 boards in one machine. Note: This board uses DOS upper memory. _______________________________________________________________________ SMCWD (formerly Western Digital WD8003E) Load the packet driver with a line in this form: smc_wd.com drive:\path\smc_wd [options] int_vec [-o] hard_int io_addr base_addr The required settings: int_vec is the software interrupt. hard_int is the hardware interrupt; default = 3 io_addr is the I/O address; default = 0x280 base_addr is the memory base address; default = 0xD000 Example: c:\pctcp\smc_wd 0x60 3 0x360 0xD000 The SMC_WD driver runs the SMC (formerly Western Digital) E, EBT, EB, ET/A, and E/A Ethernet cards. The smc_wd cards do not enable their memory until configuration time. Some 386 memory mappers will map memory into the area that the card intends to use. You should be able to configure your software to leave this area of memory alone. Also, the driver will refuse to map memory into occupied memory. The occupied memory test fails on some machines, so the optional switch -o allows you to disable the check for occupied memory. If you get the error "PROM ADDRESS Invalid", use EZSETUP to reset all the parameters again. Occasionally, programs write to locations that don't belong to them. This can corrupt the EEPROM checksum on the card. Use EZSETUP to restore the correct checksum. ______________________________________________________________________________ 2. Serial Line Packet Drivers FTP Software, Inc. developed and supports the following packet drivers. ______________________________________________________________________________ ppp16550 Usage ppp16550 [-v vector] [-p x] [-b baud] [-a ioaddr] [-i irq] [-n number] [-z size] [-m] [-c] [-t] [-l] [-u] [-k] ppp16550 [-? | -version] Description Use the ppp16550 command to load the PPP packet driver, which works in conjunction with the PPP kernel (PPPDRV.EXE), letting you transfer data across a serial line connection. You must load the packet driver before you load the kernel. To load the packet driver automatically at system startup, put the ppp16550 command in your AUTOEXEC.BAT file. Note: \x110011If the comscrpt command uses a [pctcp serial n] section in your PCTCP.INI file, the values it finds will override any values set with the serial port options (-p, -b, -a, -i, -m) of this packet driver. Command Line Options -a ioaddr Specifies the I/O address of the serial port. This option overrides the -p option. -b baud Specifies the baud rate of an RS-232 line. The default is 2400. -c Removes the port entry from the RBDA serial port table. -i irq Specifies the hardware interrupt request line of the serial port. This option also overrides the -p option. -k Enables PAP authentication protocol support. -l Prints LCP statistics held in the packet driver. -m Enables RTS/CTS hardware flow control on an RS-232 line. -n number Specifies the number of internal buffers. -p x Specifies the number of the communications serial port (i.e., COM1, COM2, COM3, COM4). The default is 1. -t Prints statistics held in the packet driver. -u Unloads the packet driver from the specified vector. -v vector Specifies the software interrupt vector of the packet driver. The default is 0x60. Note: \x110011You can use any available software interrupt from 0x20 to 0xFF, inclusive, with the following exceptions: interrupt 0x61 (the pppdrv kernel uses it by default) and 0x67 (the Expanded Memory Manager (EMM) uses it). When you specify the software interrupt, you must precede it with the characters 0x. -z size Specifies the internal buffer size. Examples To load the PPP packet driver at vector 0x63, enter C:\> ppp16550 -v 0x63 Packet Driver loaded at vector 0x63 name: PPP16550 version: 2.30, class: 18, type: 2, functionality: 2 I/O Address: 0x03F8 Hardware IRQ: 4 Baud Rate: 2400 Line Attributes: 8 Data Bits, 1 Stop Bit, No Parity RTS/CTS hardware flow control: Disabled Number of internal buffers : 3, buffer size (in bytes) : 64 PAP protocol support not loaded UART is not an NS16550, 8250 mode enabled To unload the PPP packet driver from vector 0x63, enter C:\> ppp16550 -v 0x63 -u Packet Driver found at vector 0x63 Packet Driver has been unloaded _________________________________________________________________ slp16550 Usage slp16550 [-v vector] [-p x] [-b baud] [-a ioaddr] [-i irq] [-m] [-c] [-t] [-u] slp16550 [-? | -version] Description Use the slp16550 command to load the SLIP packet driver, which works in conjunction with the SLIP kernel (SLPDRV.EXE), letting you transfer data across a serial line connection. You must load the packet driver before you load the kernel. (To load the packet driver automatically at system startup, put the slp16550 command in your AUTOEXEC.BAT file.) Note: \x110011If the comscrpt command uses a [pctcp serial n] section in your PCTCP.INI file, the values it finds will override any values set with the serial port options (-p, -b, -a, -i, -m) of this packet driver. Command Line Options -a ioaddr Specifies the I/O address of the serial port. This option overrides the -p option. -b baud Specifies the baud rate of the RS-232 line. The default is 2400. -c Removes the port entry from the RBDA serial port table. -i irq Specifies the hardware interrupt request line of the serial port. This option also overrides the -p option. -m Enables "Request to Send/Clear to Send" (RTS/CTS) hardware flow control on an RS-232 line. -p x Specifies the number of the communications serial port (i.e., COM1, COM2, COM3, COM4). The default is 1. -t Prints statistics held in the packet driver. -u Unloads the packet driver from the specified vector. -v vector Specifies the software interrupt vector of the packet driver. The default is 0x60. Note: \x110011You can use any available software interrupt 0x20–0xFF, with the following exceptions: interrupt 0x61 (the slpdrv kernel uses it by default) and 0x67 (the Expanded Memory Manager (EMM) uses it). When you specify the software interrupt, you must precede it with the characters 0x. Examples To load the SLIP packet driver at interrupt 0x63, enter the following: C:\> slp16550 -v 0x63 Packet Driver loaded at vector 0x63 name: SLP16550 version: 2.30, class: 6, type: 1, functionality: 1 I/O Address: 0x03F8 Hardware IRQ: 4 Baud Rate: 2400 Line Attributes: 8 Data Bits, 1 Stop Bit, No Parity RTS/CTS hardware flow control: Disabled To unload the SLIP packet driver from vector 0x63, enter the following: C:\> slp16550 -v 0x63 -u Packet Driver found at vector 0x63 Packet Driver has been unloaded _____________________________________________________________________________ 3. Vendor-supplied Packet Drivers The following packet drivers were developed and supplied by the identified card manufacturer. FTP Software does not support these packet drivers and assumes no responsibility for their functionality or performance. _____________________________________________________________________________ 3C5X9D.COM 3Com EtherLink III Packet Driver v1.0 (C) Copyright 1993 3Com Corp. All rights reserved. usage: 3C5X9PD [switches] [parameter=X] Switches: -u Uninstall driver -n NetWare conversion. Converts 802.3 packets into 8137 packets. -w Windows. Use this switch for running the driver under MS Windows. Optional parameters: SLOT - EtherLink III's slot number (EISA and Microchannel IOBASE - EtherLink III's I/O base address