3com Driver



3Com Select Model

3com(jun ola) driver 3c450 driver 3C595-TX driver 10/100 LAN CardBus - PC card driver 3c509b driver 3c90XX driver 3C589/A/B/C driver 3C900, 3C900B, 3C905, 3C905B NIC driver pci(3c905B-TX) driver 3c450 driver 3COM 3C90xx driver 3C90XX driver 3com 3c980b-tx driver SOHO100-TX driver Driver 3CSOHOTX100 driver 3CSOHO100-TX driver 3cce589et driver. Hardware drivers the simple theory, click on the button and download the drivers, which are the best through the networking space. 3com 400979 - free download as pdf file.pdf, text file.txt or read online for free. 2020-01-21 without firmware 3com 3crusb10075 in computer hardware, the hardware cannot receive command to be carried out. Download driver 3Com 3CRDAG675 Wireless LAN PCI Adapter Drivers version 2.0.0.1 for Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10 32-bit (x86). File Name 3com3crdag675bdrv11021.exe. This is the 3Com 3CSOHO Adapter Driver for your computer. We have listed the internal hardware ID for this card. Check your card before you install this driver. There are a number of 3Com wireless drivers on this website so ensure that you have the correct wireless driver for your card.

3Com 10-100 Managed Nic 3C905CX-TX-M3Com 10-100 Nic 3C905CX-TX-NM3Com 10-100 Secure Nic 3CR990-TX-953Com 10-100 Secure Nic 3CR990-TX-973Com 3Com 10-100 Mini PCI EtherNet Adapter3Com 3Com 3C90x EtherLink PCI Nic3Com 3Com 3C920 Integrated Fast EtherNet Controller 3C905C-TX Co3Com 3Com EtherLink 10 ISA 3C509-3C509b in Legacy mode3Com 3Com EtherLink 10 ISA 3C509b in PnP mode3Com 3Com EtherLink 10 ISA 3C5x93Com 3Com EtherLink 10 ISA Combo 3C509b-Combo in PnP mode3Com 3Com EtherLink 10 ISA TP 3C509b-TP in PnP mode3Com 3Com EtherLink 10 ISA TPC 3C509b-TPC in PnP mode3Com 3Com EtherLink 10 ISA TPO 3C509b-TPO in PnP mode3Com 3Com EtherLink 10 MCA 3C529 Coax-AUI3Com 3Com EtherLink 10 MCA 3C529 Twisted-Pair-AUI3Com 3Com EtherLink 100 PCI Fiber Nic 3C905B-FX3Com 3Com EtherLink 10-100 PCI Combo Nic 3C905B-Combo3Com 3Com EtherLink 10-100 PCI for Complete PC ManageMent Nic 3C3Com 3Com EtherLink 10-100 PCI Nic 3C905-TX3Com 3Com EtherLink 10-100 PCI T4 Nic 3C905-T43Com 3Com EtherLink 10-100 PCI TX Nic 3C905B-TX3Com 3Com Etherlink III Bus-Master EISA EtherNet Adapter3Com 3Com EtherLink III Bus-Master PCI EtherNet Adapter3Com 3Com EtherLink PCI Combo Nic 3C900B-Combo3Com 3Com EtherLink PCI Combo Nic 3C900-Combo3Com 3Com EtherLink PCI Fiber Nic 3C900B-FL3Com 3Com EtherLink PCI TPC Nic 3C900B-TPC3Com 3Com EtherLink PCI TPO Nic 3C900B-TPO3Com 3Com EtherLink PCI TPO Nic 3C900-TPO3Com 3Com Fast Etherlink 10-100Mb Bus-Master EISA EtherNet Adapte3Com 3Com Fast EtherLink 10-100Mb Bus-Master PCI Adapter3Com 3Com Fast Etherlink 10-100Mb Bus-Master PCI EtherNet Adapter3Com 3Com Fast EtherLink 10-100Mb T4 Bus-Master PCI Adapter3Com 3Com homeConnect 3C450 Adapter3Com 3Com Megahertz 10-100 Lan CardBus PC Card EtherNet Interface3Com 3Com Megahertz 10-100 Lan CardBus PC Card Manual Load Ether3Com Alienware Aurora3Com EtherLink 10 ISA TPC Nic 3C509B-TPC3Com EtherLink 10 PCI Combo Network Card 3C900B-Combo3Com EtherLink III 16-Bit ISA Nic 3C509 and 3C509B3Com EtherLink III ISA 10BASE-T Nic 3C509B-TP3Com EtherLink III TP 16-32-Bit MCA Nic 3C529-TP3Com Gigabit Nic3Com homeConnect home Network EtherNet USB 10 Mbps 3c4603Com Megahertz 10 Mbps Lan+56K Modem PC Card 3CCEM556BC - with XJACK Connector 33Com Megahertz 10 Mbps Lan+56K Modem PC Card with XJACK 3CXEM556C3Com Megahertz 10-100 Lan+56K Global Modem CardBus PC Card with Autosensing XJAC3Com Megahertz 10-100 Lan+56K Global Modem PC Card 3CCFEM556B3Com officeConnect 10-100 Lan+56K Global Modem CardBus Type III PC Card 3C3SH6543Com officeConnect 10-100 Nic 3CSOHO100B-TX3Com officeConnect Fast EtherNet Nic 3CSOHO100-TX3Com TokenLink Velocity PCI Network Card3Com USB Network Interface

Table of Contents

Introduction
A survey of DOS networking techniques
Common devices used to connect computers
Less common devices used to connect computers
Software solutions for serial ports
Software solutions for parallel ports
Protocol suites for network adapters
High level applications
Miscellaneous notes
A closer look at TCP/IP
DOS and TCP/IP
A warning about old PC hardware and DOS
Packet drivers
Using a packet driver
Choosing Hardware
Some notes on networking software
Additional resources

Introduction

From Wikipedia: 'Sneakernet' is an informal term describing the transfer of electronic information, especially computer files, by physically moving removable media such as magnetic tape, floppy disks, compact discs, USB flash drives (thumb drives, USB stick), or external hard drives from one computer to another. This is usually in lieu of transferring the information over a computer network. The name is a tongue-in-cheek sound-alike to Ethernet, and refers to the use of someone wearing sneakers as the transport mechanism for the data.

DOS has been an obsolete operating system for close to twenty years but it still shows up in a few places:

  • In embedded applications like cash registers, lab equipment, and industrial equipment that keep doing what they were designed to do 20 years ago.
  • For running old software that people might be still using in their businesses. (Sometimes on real hardware, and sometimes in a virtual machine.)
  • Hobbyists experimenting with old computers that run DOS

Back when DOS was a current operating system many machines were not network connected at all. Back then people did not have home networks and networking equipment was much more expensive. If people had any sort of connectivity it might have been to use a bulletin board system (BBS) through a dial-up modem or to talk to a Novell Netware server running on their local network. 'Sneakernet', or the art of carrying software around on floppy disks, was the standard method of moving data around.

Networking started to become more popular as businesses obtained multiple computers and they needed a way to communicate. This drove the cost of networking adapters and equipment down, which made it more affordable for home users. The growth of DSL and cable modem devices in the early 2000s made home networks almost a requirement, if only to allow sharing the one connection point to the Internet.

The good news is that networking adapters and equipment is as inexpensive as it will ever get, and most machines running DOS can easily make use of used equipment that people are just throwing away. And although DOS came a little bit before the era of widespread networking on home computers, there was enough overlap such that reasonably good networking software exists for DOS.

On a modern operating system networking is a standard function and great effort has been made to make it easy to setup. Networking for DOS is always an add-on feature so it takes a little bit of work to set up, but nothing too difficult.

Even the slowest DOS machines dating back to the early 1980s can do the following once networked:

  • Get a network address automatically from a router using DHCP
  • Set their date and time from a network time server on the Internet
  • Send and receive files using FTP client
  • Use Telnet to connect Unix systems and online BBSes
  • Connect to Internet Relay Chat (IRC) servers
  • Fetch files from HTTP servers
  • Send and receive files as an FTP server

Almost every old machine can use floppy disks or the serial port for data transfer and for a machine that is rarely used that is all you need. But if you enable networking you get the following advantages:

  • Transferring data using floppy drives is slow and painful. Floppy drives need periodic maintenance and floppy diskettes wear out.
  • Ethernet adapters are far faster than serial ports. A typical serial port on an 8088 class system is good for about 1KB per second of data transfer if everything is running perfectly. The same system with an Ethernet adapter can transfer data 30 to 100 times faster depending on the Ethernet device being used. On an 80486 system the advantage becomes even greater because transferring data using Ethernet is more efficient than through a serial port.
  • Data transfer over Ethernet is more reliable than over a serial port. You will get faster transfers speeds because there is less chance of errors and the hardware helps to detect errors.

Using a home network cuts down on your time 'doing the floppy shuffle' and saves wear and tear on your system. It also saves you time.

Being realistic, you are not going to want to use DOS to surf the web. Modern web sites are generally too complex to render on old machines and the extensive use of Javascript has made it difficult for old machines. Drivers atlas copco port devices. But for basic file transfer and running some useful utilities like SNTP (Simple Network Time Protocol) it can not be beat. And it enables some fun uses too, like chatting on Internet Relay Chat (IRC).

A survey of DOS networking techniques

There are lots of ways to connect computers together. This page primarily discusses TCP/IP and packet drivers (to be introduced later). Before getting into the details of those I'd like to present a brief survey of ways to network PCs running DOS.

Common devices used to connect computers

  • Serial ports: a serial port is a simple hardware interface that was in widespread use on PCs until a few years ago when manufacturers generally stopped including them on motherboards. Originally they were used to connect low speed devices such as printers, modems and mice. A computer can use the serial port and a modem to connect to another computer with a serial port and modem through the telephone system. For computers that are close by a 'null modem' device or cable can be used to connect the serial ports of the two computers directly together, eliminating the need for modems. The word 'serial' is a description of how the bits of data are sent - the port effectively sends one bit of data at at time down the wire. Typical speeds range from 110 bits per second to 115,000 bits per second.
  • Parallel ports: a parallel port is a slightly more complex port that can send data to a device faster than a serial port. Parallel ports are faster than serial ports because they can send eight bits of data down eight different wires at the same time. Parallel ports were originally used to connect pinters but they were enhanced to allow fairly high speed data transfer with other devices, such as CD-ROM drives, scanners, portable hard drives, etc. Like the serial port, parallel ports have fallen out of favor.
  • Ethernet adapterss: An Ethernet adapter or Network Interface Card (NIC) allows a computer to attach to a Local Area Network (LAN) that uses the Ethernet standards. Ethernet originally allowed for 10Mb/s (megabits per second) data rates and has been enhanced several times. Modern Ethernets generally operate at 100 or 1000Mb/s. An Ethernet adapter might not actually be in the form of a card - Ethernet can be added using a parallel port, through a USB adapter, or even directly included on a motherboard.

Less common devices used to connect computers

  • ARCNET was a popular microcomputer networking technology in the early 1980s
  • Token Ring was a competitor to Ethernet for networking introduced by IBM. Token Ring was a good technology but it lost out to Ethernet which had greater market support and generally cost less.

Software solutions for serial ports

Serial ports are relatively easy devices to program and lots of people wrote software that uses the serial port. As a result, there was a great variety of programs that used different rules for sending data. Examples include:

  • Terminal emulators that just made the PC look like a generic terminal to whatever was on the other end of the serial port
  • Terminal emulators with file transfer protocols such as Kermit, Xmodem, Ymodem and Zmodem built into them. Some of the early file transfer protocols were not specified very well leading to all sorts of strange and wonderful glitches and incompatibilities.
  • Low-end networking solutions that allowed for file and printer sharing. These allowed for simple networks but were limited by the speed of the serial port and the point-to-point nature of the serial port.
  • TCP/IP using Serial Line Internet Protocol (SLIP) or PPP (Point-to-Point Protocol). TCP/IP, SLIP and PPP had the benefit of being fairly well defined so interoperability was not much of a concern. As modems became faster and operating systems became networking aware more home computer users progressed from calling simple BBSes to Internet Service Providers using TCP/IP, enabled by SLIP and PPP.

Software solutions for parallel ports

Parallel ports were not used for communications as much as serial ports were. Often there was just one parallel port compared with two serial ports on a computer, and the parallel port was often connected to a printer. Serial ports supported 'hot plugging' (removing and connecting devices while running) while parallel ports did not, so swapping devices on a parallel port often required shutting the computer and the devices off.

A notable exception was LapLink by Traveling Software. LapLink provided software and a special cable that allowed two computers to directly connect to each other through their parallel ports. The software allowed the computers to move files back and forth. Later versions of DOS provided a similar function with INTERLNK and INTERSRV.

TCP/IP over the parallel port was also possible using a protocol called Parallel Line Internet Protocol (PLIP).

Transfers on the parallel port were inherently faster than those over serial ports because of the nature of the parallel port. Parallel ports also evolved to operate at faster and faster speeds using improved handshaking on the wires and even DMA. Those enhancements were made to improve the speeds of connected devices, but they would help data transfer of any type.

Protocol suites for network adapters

Network adapters are quite a bit more complex than serial and parallel ports and usually a network adapter is used with a set of protocols. The set of protocols are designed to work together and are more commonly known as protocol suite. Functions of the protocol suite include data sending and receiving form the hardware, basic routing of data packets, creating virtual connections between applications, etc.

Protocol suites are interesting but most people do not interact with them; they use applications that hide the details of the protocol suite and underlying data transfer medium.

  • IPX/SPX: Internetwork Packet Exchange/Sequenced Packet Exchange was an early competitor to TCP/IP that is often associated with Novell NetWare.
  • TCP/IP: Transmission Control Protocol/Internet Protocol is the predominant set of protocols used over Ethernet today. Besides Ethernet it runs well over serial links using SLIP or PPP, Token Ring, wireless variants of Ethernet, and almost any other networking technology that you can think of.
  • NetBIOS: Originally developed for IBM to run on the IBM PC Network, NetBIOS is actually an API and not a protocol. The NetBIOS Frames (NBF) protocol is what ran 'over the wire' on the original IBM PC Network which NetBIOS was designed for. The NetBIOS API was preserved when IBM introduced Token Ring; an emulator was provided for the new networking technology. Novell supported NetBIOS by running it over IPX/SPX with a protocol called NBX. And NetBIOS can run today directly over TCP/IP using a protocol called NBT.
  • SNA: Systems Network Architecture was a networking suite from IBM. Originally designed for connecting terminals to IBM mainframes, SNA evolved to becomes a more complete protocol suite but it failed to attract users outside of IBM customers.

High level applications

  • NetWare: Novell Netware was one of the original file serving operating systems available for PCs. NetWare implemented its file and printer sharing using NetWare Core Protocol (NCP) which ran on top of IPX/SPX. A disadvantage of NetWare is that you generally need a dedicated server although that server can probably run in a virtual machine now. Your local computer would run a NetWare client to access files on the server using either IPX/SPX or TCP/IP.
  • Server Message Block (SMB): SMB provides for file and printer sharing. Originally it was designed to run using the NetBIOS API, which in turn can run over NBF, IPX/SPX or TCP/IP. Most people have used this in Windows and just refer to it as 'file and print sharing.' The current version of this is called Common Internet File System (CIFS).
  • TCP/IP applications: TCP/IP is the foundation of the Internet and if there was an idea for using a network to do something, there is a probably a program for it that uses TCP/IP. Examples include:
    • File sharing using FTP and NFS
    • Printing to remote printers
    • Telnet or SSH to allow you to use remote computers just like you were sitting in front of them.
    • Web servers and web browsers
    • Chat programs
    • etc ..

Miscellaneous notes

  • An Ethernet device is a device that connects to an internet network. Often it is an adapter that plugs into your computer, but it can be something different like a device that plugs into your parallel port and then connects to your Ethernet network. On other architectures Ethernet was sometimes attached using a SCSI bus. So when you read 'Ethernet adapter', keep an open mind - it might not be on a card.

A closer look at TCP/IP

TCP/IP is the protocol suite that the Internet is built on and the term 'Internet' refers to a global system of interconnected computer networks that use TCP/IP. In addition to powering the Internet, TCP/IP is used on countless private networks. Simply put, TCP/IP allows computers to send and receive data across these networks. The path the data takes might be confined to one room in your house or might span several continents and satellites; TCP/IP is robust enough to handle it all.

TCP/IP is composed of layers of protocols:

  • Internet Protocol (IP): This is the lowest layer of TCP/IP - anything 'closer to the wire' than this is covered by the standards for the device that you are using, for example Ethernet or Token Ring. IP packets contain information such as the source IP address and the target IP address, but not much more. IP packets are not guaranteed to arrive in the order they were transmitted or arrive at all! IP packets can be sent to individual machines or groups of machines.
  • User Datagram Protocol (UDP): UDP is a higher level protocol that rides inside of the IP packet payload; another way to say this is that IP encapsulates UDP. UDP adds the concept of 'ports' to the network so that a packet does not just target a machine anymore; it can target a specific application running on that machine listening to a specific port. (A good real world analogy is that an IP address is like a building number, and a port is like a mailbox number for an apartment in that building.) Like IP packets, UDP packets are delivered on a 'best effort' basis - UDP packets are not guaranteed to arrive in order or arrive at all. Each UDP packet is a self contained unit, like a single piece of mail.
  • TCP: TCP is another high level protocol that rides inside of IP packets. TCP also uses ports to target specific applications, but unlike UDP where the port works kind of like a mailbox for single packets TCP uses the ports to establish connections between two applications that last for a longer time. The real world analogy is that of a telephone connection - instead of hanging up and redialing after each word you stay on the connection that you already made. Unlike UDP, TCP guarantees that the data sent will arrive and it will be in order. TCP does this by adding meta data to each packet that allows it to detect when a packet has been lost or arrived out of squence.

In addition to IP, UDP and TCP there are additional protocols that help. Examples include ICMP, ARP, and DNS. Most of these other protocols work silently in the background so you do not need to worry about them.

TCP/IP is a fairly comprehensive protocol and it can be ver complicated. A full implementation requires more memory than is usually available on an old PC. With some sensible performance and feature trade-offs it is possible to get a reasonably complete TCP/IP implementation running on an old PC with decent performance. Smaller machines can run TCP/IP, but they often wind up making trade-offs that hurt performance or limit features.

While most people associate TCP/IP with high performance networking, it can be used on very low performance networking technologies. For example:

  • Bongo drums (http://eagle.auc.ca/~dreid/index.html)
  • Carrier pigeon (http://www.ietf.org/rfc/rfc1149.txt)

I would stick to classic Ethernet over these two alternatives - they tend to drop a lot of packets.

DOS and TCP/IP

Sato asia pacific printer driver. As noted earlier, DOS generally predates the widespread use of TCP/IP. That means that TCP/IP is going to be a feature of your programs and not integrated into the operating system at all.

On a DOS PC there are generally two ways to used TCP/IP in applications:

  • TCP/IP is built into an application that does something with it, like transfer files or update the time. Examples include the NCSA Telnet program, programs that use the WATTCP TCP/IP library or programs that use the mTCP TCP/IP library.
  • TCP/IP is provided a Terminate and Stay Resident (TSR) program that is loaded as a separate piece of software. After loading the TCP/IP TSR you then run another application which uses it to do something. The application accesses TCP/IP through a software interrupt. A good example of this is Trumpet by Peter Tattam.

The first approach generally works well because the TCP/IP code and application are combined together in one program, reducing complexity and improving performance. But it also makes every application that needs the TCP/IP code bigger in size because the application has to include its own copy of TCP/IP. A change to TCP/IP also requires all of the affected programs to be updated. On the other hand, the TCP/IP code is included can be tailored and customized to the specific application.

The second approach allows multiple applications to share the TCP/IP code, allowing them to be smaller on disk. If the TCP/IP code needs to be changed the programs do not need to change too - you can just swap out the TCP/IP part. This makes the TCP/IP code more of an operating system extension or a dynamically shared library that other programs can use. But performance is not as good as with the first approach and the 'one size fits all' philosophy leads to some design compromises that may not be good for the individual programs.

In Internet Explorer, click Tools, and then click Internet Options. On the Security tab, click the Trusted Sites icon. Click Sites and then add these website addresses one at a time to the list: You can only add one address at a time and you must click Add after each one. Mini Bluetooth Dongle CMP-BLUEKEY31 uses Cambridge Silicon Radio chip - works out of the box on Ubuntu 10.04, USB Mini Bluetooth v4.0 Dongle CSBLUEKEY200 uses Cambridge Silicon Radio chip with, USB ID 0a12, 0001 - works with most devices, but could not pair with some Bose headphones in Ubuntu -10-02. Cambridge Silicon Radio Ltd All Drivers ยป Scan Computer for Cambridge Silicon Radio Ltd Driver Updates. TOSHIBA Bluetooth Stack Driver V7.10.01 for Windows 32/64bit XP & 32/64bit Vista. USB Bluetooth Adapter Device Package: USB Bluetooth Dongle driver: USB Human Interface Device: Utility Version: (2006/06/30). Cambridge Audio USB Audio 2.0 Windows driver. USB Audio Driver v4.82 - Download; USB Audio Driver v4.67 (Archived) USB Driver v4.86; USB Driver v1.67 - download; USB Driver v1.43 - download; Which USB Driver do I need - 4.67.0, 1.67 or 1.43? Cambridge silicon radio usb devices driver download for windows 10

The approach that you choose will probably be driven by the applications that you want to use. A pragmatic approach says to find the application that you like and use that, letting it worry about about how it gets access to TCP/IP services.

A warning About old PC hardware and DOS

If you are not comfortable installing new hardware in your machine, editing CONFIG.SYS, or trying to debug hardware that has not been supported in years, then TCP/IP in DOS is not for you. At a minimum you are going to have to:

3com
  • Install your Ethernet hardware. This implies successfully avoiding IRQ and port conflicts on your system.
  • Get the right cabling. Cabling for newer adapters using RJ45 jacks and CAT5 wiring is generally easy but older adapters using Thinnet or AUI can be challenging and difficult to diagnose if problems arise.
  • Find the right packet driver for your adapter and parameters. Older adapters often have open source packet drivers and are well understood. If your adapter does not have a packet driver you might be able to use an ODI or NDIS driver with a 'shim' that makes it look like a packet driver.
  • Possibly debug your network setup. Not all problems will be the fault of the old PC. Bad cabling, flakey routers, and network configuration problems are not unheard of.

On the other hand, the rewards are well worth it. Blasting files around the house at speeds ranging from 25KB per second (on a slow machine with a parallel-port Ethernet adapter) to 600KB per second (on a high end 386 with a 16 bit NE2000 compatible adapter) sure beats the heck out of 'sneakernet.' And once it is setup there is little to no maintenance required to keep it setup.

Packet drivers

At the beginning of the networking era for DOS PCs there were very few network adapters to choose from and network applications were highly specialized. As a result, networking applications generally included code to talk to a few specific models of network adapters directly. This was a simple approach that worked back when there were few network adapters, but you can see a few problems with it.

  • If a new network adapter were introduced none of the existing applications would be able to use it.
  • Even if the applications changed to support the new network adapters coming out the applications would have to grow to accomodate all of them or you would have to have several versions of the same program, each targeting a specific network adapter.
  • If there was a bug in the network adapter part of the code the whole application had to be shipped again.

This was not a sustainable way to do software development.

In 1986 FTP Software Inc. created the PC/TCP Packet Driver specification which defined an API for sending and receiving packets over networking devices. A device manufacturer needed to provide a packet driver, which was a small TSR that provided the API in the form of software interrupts. Application software would use the API to send and receive packets. Decoupling the network hardware programming from the applications made the applications smaller and less complex while allowing them to handle new adapters with no changes, provided that the new adapters provided a packet driver. The packet driver for an adapter is effectively the device driver for the adapter.

Another way to look at it is that your networking software never really talks directly to the networking hardware. It talks to the packet driver for that hardware, and as far as the networking software is concerned all packet drivers all look and behave the same way. The complexity of the hardware is hidden by the packet driver. An 8-bit Western Digital WD8003 Ethernet card from 1989 is very different from a NE2000 clone in a 486 PC, yet the packet drivers for each card make them look the same to the rest of the system.

Inside the packet driver is code to talk to a specific piece of hardware. That hardware might be a network adapter, an Ethernet chipset connected through the parallel port, or even just a plain serial port. Your TCP/IP code really does not care because the packet driver provides a consistent way to send packets and receive packets from the chosen network hardware. A packet driver makes the hardware and network accessible in an easy manner.

The PC/TCP packet driver specification can be found at http://crynwr.com/packet_driver.html .

The Network Driver Interface Specification (NDIS) is a similar API used primarily with Microsoft Windows. Open cellpadding='3' cellspacing='0'>C:PACKET>pkt9008 0x60
Packet driver for UM9008, version 11.4.3
Packet driver skeleton copyright 1988-93, Crynwr Software.
System: [345]86 processor, ISA bus, Two 8259s
Packet driver software interrupt is 0x60 (96)
Interrupt number 0xA (10)
I/O port 0x300 (768)
My Ethernet address is 00:80:AD:C9:14:50

Xircom PE3 10BT Parallel-port to Ethernet Adapter running on a PCjr with software interrupt 0x61 and hardware interrupts disabled.

C:ETHERNETPACKET>pe3pd sint=61 int=0
Xircom Pocket Ethernet Adapter III Packet Driver, V3.08 (940920)
Packet Driver (C) Copyright 1990-1994 Xircom Inc.
Configuration: SINT 0x61, LPT2:, No IRQ, Bidirectional
Ethernet Address: 00:80:C7:2E:F3:3B

At this point your machine is physically ready to talk on your network. A 'software service' for sending and receiving raw Ethernet packets is in place, courtesy of the packet driver.

Choosing Hardware

There are lots of factors that go into choosing networking hardware. Here is my set of criteria:

  • Can I get the hardware for my machine? A machine with a 16 bit ISA bus or PCI bus is easy to find hardware for. A machine with 8 bit PC bus slots or non-standard slots is much more difficult to find networking hardware for.
  • Does the selected hardware have a good packet driver? A good packet driver not only makes the adapter work, but it affects performance. Not having a packet driver might not be a deal breaker; you may be able to use an NDIS or ODI driver with a 'shim' that makes those look like a packet driver. But having a real packet driver is preferable.
  • Can I connect it to my network? Newer adapters use twisted pair wiring (CAT5) with an RJ45 connector. Before twisted pair was standardized there were non-standard adapters that used twisted pair, there was 'Thinnet', and there was 'Thicknet'. Be prepared to dive into the world of AUI adapters, BNC jacks, transceivers, hubs and switches if you choose an older adapter.

For 16 bit ISA bus machines you can use nearly anything. I would look for a adapter from a well-known manufacturer with an RJ45 connector and a good packet driver. 3Com, Intel, and NE2000 compatible adapters are safe bets.

For 8 bit ISA bus machines your choices are more limited. The 3Com 3C503 based adapters are good choices. Western Digital/SMC 8003 based adapters and NE1000 adapters are good as well. I have not experienced one but I have read in many places that if you find a 3Com 3C501 based adapter that you should burn it and bury it. Some 16 bit cards might be able to function in an 8 bit slot, but you will have to experiment with that.

For machines without slots or where you want a temporary solution I would use a parallel-port to Ethernet adapter. The Xircom PE3-10BT is a good example of this type of adapter. It connects to the machine using the parallel port and the packet driver makes it look just like a real Ethernet adapter. But the overhead of the parallel port does hurt performance, so while it is a good basic solution it will never beat the performance of an Ethernet adapter on a card.

Of course you might have a machine new enough to have PCI slots or an Ethernet adapter on the motherboard. If you are running DOS on such a high powered machine, I applaud you. :-)

Some notes on networking software

There is a lot of software out there for networking using a packet driver and there are already a lot of resources on the Internet that describe those resources. Here are some notes on the ones that I have tried.

NCSA Telnet

NCSA is a great Telnet program for DOS. Features include:

  • VT100 emulation
  • Multiple sessions to different computers at the same time
  • FTP server

Stated requirements are DOS 2.0 and a 80286 or better CPU. It will run with a NEC V20 and it might be possible to recompile it to get rid of the 80286 specific instructions.

NCSA Telnet has its own TCP/IP software built in to the application so a separate TCP/IP stack such as Trumpet is not necessary. NCSA Telnet can use a packet driver or it can talk directly to several different Ethernet cards without the need for a packet driver. (They switched to a packet driver interface when the variety of Ethernet cards mushroomed.) The FTP server is very old and it does not support PASSIVE mode connections. I don't think it supports the PORT FTP command either, so you will have to work hard to find an FTP client that will work with it. (It assumes a specific data transfer port number, which is what was standard years ago. The mTCP FTP client is compatible with the FTP server.)

One of the great things about NCSA Telnet is that the source code is readily available for download - with the correct build environment, you can modify it!

The NCSA Telnet home page is gone, but the files can still be downloaded using ftp at ftp://ftp.ncsa.uiuc.edu/Telnet/DOS/ .

3com Drivers Downloads

Trumpet for DOS

Trumpet is a DOS TSR (Terminate and Stay Resident) that adds TCP/IP functions to your system. On one side it talks to a packet driver to move data in and out of your Ethernet card, while on the other side it provides TCP/IP functions to your application. Applications wishing to use Trumpet communicate with it using a software interrupt, in much the same way that Trumpet or other TCP/IP stacks talk to a packet driver.

Trumpet came with some sample applications including an FTP client, IRC client, and a finger client. Other applications were written to use it too. Trumpet published the programming interface to their TCP/IP stack, but the source code is not available. So you can use it, but you will have to live with any bugs and limitations.

Unfortunately the web pages for Trumpet are gone now. Search for tcp201.zip to find an archive of it on the Internet.

WATTCP

WATTCP is a TCP library that is linked with specific applications. There is a 16 bit real mode version for use on the older machines and a 32 bit protected mode version for newer machines. The 32 bit versions compile under a variety of C compilers.

WATTCP is one of the older DOS TCP/IP implementations and one of the most widely used. I do not have a lot of experience with WATTCP (yet) because I got sidetracked with writing my own TCP/IP library. I had a fairly long email conversation with Erick Engelke about WATTCP and the lessons he learned, and it was suprising how much of his work I duplicated. :-)

WATTCP can be found at its new home: http://www.erickengelke.com/wattcp

mTCP

mTCP is a TCP library and a set of applications that I started working on in late 2006. It is designed for low spec machines like the original IBM PC, PCjr, PC XT, PC AT, PC Convertible, etc. All of the code is 16 bit and most of the programs will run on a 265K system using DOS 2.1 or better. The library includes features like DNS, IP fragments, automatic retransmission of lost packets, listening sockets for server applications, some ICMP support, etc.

The current list of applications includes a DHCP client, Telnet client, IRC client, Simple Network Time Protocol (SNTP) client, FTP client, FTP server, HTTP server, Ping, Netcat, HTGet (an HTTP file fetcher) and PktTool (a diagnostic tool).

More information on mTCP can be found at http://www.brutman.com/mTCP/mTCP.html .

3com Driver

Additional resources

This page barely scratches the surface of DOS networking. Most of my experience has been with packet drivers and related software; a list of additional resources is provided to help you understand packet driver based solutions and other solutions that I mentioned earlier.

  • 'DOS Networking HOWTO': http://www.dendarii.co.uk/FAQs/dos-net.html
  • 'FAQ: DOS Applications for Internet Use': http://www.dendarii.co.uk/FAQs/dos-apps.html
  • 'MS-DOS Networking': http://bbright.tripod.com/information/dosnetwork.htm
  • 'FreeDOS Networking with VirtualBox 4.x': http://lazybrowndog.net/freedos/virtualbox/
  • 'DOS TCP/IP: DOS TCP/IP connectivity from scratch': http://users.telenet.be/mydotcom/library/network/dostcpip.htm
  • 'Trumpet TCP Driver for DOS': http://www.pld.ttu.ee/~priidu/library/net/trumpet.html
  • 'The packet driver specification': http://crynwr.com/packet_driver.html
  • 'NetBIOS, NetBEUI, NBF, NBT, NBIPX, SMB, CIFS Networking': http://timothydevans.me.uk/nbf2cifs/nbf2cifs.pdf

3com Driver Download

Created August 13th 2007, last updated April 2nd, 2020
(C)opyright Michael B. Brutman, mbbrutman at gmail.com

3com Driver Download