Networking FreeDOS - NTCPDRV

Overview:

  The Trumpet TCP driver is an external TCP/IP Kernel. It works as a TSR
  (=terminate and stay resident) program that runs on top of a packet
  driver. TCPDRV was created in 1992 by Peter Tattam, a programmer at the
  Psychology department of the University of Tasmania at Hobart,
  Australia. According to a biography on his website (see: http://
  www.tattsoft.com/aboutUs.htm), he developed the shareware "Trumpet
  Newsreader" short time before and wrote the TCP driver just because
  nothing else was openly available for Turbo Pascal. Development
  eventually lead to the popular Windows software "Trumpet Winsock",
  which Tattam sold through his own company "Trumpet International of
  Australia", founded in 1994 (see: http://www.trumpet.com.au/).
  TCPDRV 2.01 was released as "experimental version". In 1993 a version
  3.01 followed, which was called NTCPDRV. Improvements included a more
  efficient memory usage and bug fixes (see: http://alumnus.caltech.
  edu/~dank/trumpet/). Both versions and the textfile TCP201.SPE (see:
  http://wiretap.area.com/Gopher/pub/tsoft/trumpet-abi/tcp201.
  specification) - the specification for programmers - were made public-
  ly available from the Trumpet website (see: http://www.trumpet.com.au/
  dosapps/).
  Licensing issues on this site are kept short and simple: "These DOS
  applications are provided free without support." Thanks to the popularity
  of the trumpet software, it can be downloaded from various mirrors (see:
  http://wiretap.area.com/Gopher/pub/tsoft/trumpet-abi/). A commerical
  version of the TCP driver is available from Peter Tattams new company
  "Tattam Software Enterprises" (see: http://www.tattsoft.com/index.php/
  products/tcpip-driver.html). 

[Main menu] [top] [Installation]

Installation and configuration:

  Download NTCPDRV.ZIP (see: http://wiretap.area.com/Gopher/pub/tsoft/
  trumpet-abi/ntcpdrv.zip) and extract it. If you need a documentation,
  download the older version TCP201.ZIP (see: http://wiretap.area.com/
  Gopher/pub/tsoft/trumpet-abi/tcp201.zip) as well, which also includes
  several applications.
  The TCP/IP Kernel has to be configured with the settings of your
  network. This is either done by commandline parameters or by setting
  DOS environment variables.
  So start NTCPDRV.EXE with a command like this (one line):
      NTCPDRV -ip=192.168.1.80 -netmask=255.255.255.0
      -gateway=192.168.1.1 -dns-host=192.168.1.1
  or configure it first by setting environment variables: Add those
  lines to AUTOEXEC.BAT or to a batch file that will be started before
  NTCPDRV.EXE.
      --- AUTOEXEC.BAT ---
      set ip=192.168.1.80
      set netmask=255.255.255.0
      set gateway=192.168.1.1
      set dns=192.168.1.1
  As shown in the picture below, the kernel automatically searchs for a
  usable interrupt vector, after it is started. You may also use the
  parameter "-vec=61" to specify for instance the vector 0x61 that's
  provided by the packet driver for applications. See the documentation
  for more possibilities.

  Start messages of NTCPDRV
  (Picture: Start messages of NTCPDRV)

  After the Trumpet TCP/IP Kernel has been started, you are able to run
  several TCP/IP applications which require a TCP/IP Kernel (for instance
  the Trumpet Newsreader, the DOS webservers Sioux or Webserv). Your
  machine will also be reachable from the network now, just try a ping
  request.

  Ping from a Windows machine
  (Picture: Ping from a Windows machine)

  In the picture above, we ping the machine with FreeDOS and the running
  NTCPDRV TSR from another computer with Windows XP. It is not the fastest
  performance and the first packet is lost.

  Then we ping it from a Debian GNU/Linux machine:

  Ping from a GNU/Linux box
  (Picture: Ping from a GNU/Linux box)

  The first packet needs more time again, the third is received in
  reasonable time. At least we see: The network is up and the Trumpet
  TCP driver is answering our calls. 

[Main menu] [top] (Installation)


  Copyright © 2007 Ulrich Hansen, Mainz (Germany), modified 2010
  by W.Spiegl.
  For more information see here.

  Permission is granted to copy, distribute and/or modify this document
  under the terms of the GNU Free Documentation License, Version 1.1 or
  any later version published by the Free Software Foundation.
  A copy of the license is included in the section entitled
  "GNU Free Documentation License"