mTCP is a TCP/IP stack for DOS. Well, not really a full stack, but rather some usefull TCP/IP tools which makes data transfer with retro computers way easier. Those tools are
- DHCP: a DHCP client for auto-configuring your machine for use on your network.
- FTP: an FTP client for transferring files across the network at high speed.
- FTPSRV: a high performance FTP server that allows multiple connected clients, a sandbox area for untrusted users, etc.
- HTGET: the HTGet program for downloading files/content from web (HTTP) servers
- HTTPSERV: an HTTP server supporting HTTP 0.9, 1.0, 1.1
- IRCJR: the IRCjr IRC (Internet Relay Chat) client for chatting on IRC networks.
- NC: the Netcat command which can be used to send and receive data easily across a network.
- PING: the Ping command for checking basic network connectivity.
- PKTTOOL: A packet sniffer and diagnostic tool for packet drivers
- SNTP: an SNTP client for getting the current date and time from public servers on the Internet.
- TELNET: a Telnet client for connecting to Unix systems, BBS systems, or any computer that supports Telnet.
What I use most are the DHCP client (obviously) and the FTP server to copy files to and from the DOS machine.
For mTCP to work you need a DOS packet driver for your network card. Here’s a zip file with the drivers I use for my network cards. If it’s not in my file, have a look at this Packet Drivers Collection.
Then you need to create a environment variable in DOS to tell the mTCP tools where to find their config file:set mtcpcfg=c:\mtcp\config.cfg
the default mTCP config file will already work for most tools.
For convenience I use the following batch file (STARTTCP.BAT). Just remove the ‘rem’ for your network card driver:
rem this script loads the network driver and TCP stack
rem set the config file for the mTCP tools
set mtcpcfg=c:\mtcp\config.cfg
rem load the network card driver
rem for 3com NICs
rem c:\mtcp\nicdrv\3c501.com 0x60
rem c:\mtcp\nicdrv\3c503.com 0x60
rem c:\mtcp\nicdrv\3c523.com 0x60
rem c:\mtcp\nicdrv\3c5x9pd.com 0x60
rem for Intel EtherExpress16
rem c:\mtcp\nicdrv\exp16.com 0x60
rem for Novell NICs
rem c:\mtcp\nicdrv\ne1000.com 0x60
rem c:\mtcp\nicdrv\ne2000.com 0x60
rem c:\mtcp\nicdrv\ne2.com 0x60
rem for Xircom parallel port NIC
rem c:\mtcp\nicdrv\pe3pd.exe SINT=60
rem get IP from DHCP
c:\mtcp\dhcp.exe