Hello group,
I write this message to share a little news about what I was doing in my
spare time these last two months: porting picoTCP to DOS.
picoTCP is a modern, dual-stack, open-source TCP/IP stack. It has been
created by the good people at Intelligent Systems (Altran), primarily as
a stack designed for embedded computing (hence hardware with very
limited horse power). It is backed by a well established corporation and
it's actively maintained.
I played with the stack for some times now, and ended up building an
entire DOS compatibility layer around it. A few patches were required to
the stack, a few days of development, many hours of debugging - but here
it is - the first public release of picoTCP for DOS!
http://picotcp4dos.sourceforge.net
The project contains three major parts:
- ipcfg: a little tool that allows to configure networking on your DOS
machine (IP, DNS, etc). No, it's not a text file - I wanted to avoid the
complexity of parsing a text file, and opted for a binary configuration
file that is manipulated via ipcfg. It's much more flexible that a text
config file, while being much easier/faster to load at runtime.
- ping: no need to explain, I guess... my ping tool for DOS, based on
picoTCP - crucial when it comes to testing your networking
- an OpenWatcom library package (openwatcom, large memory model) - this
is for the fellow developers that would like to use the DOS version of
picoTCP inside their network-enabled, 16-bit DOS programs. I integrated
a packet driver schim, a DOS-compatible timer, as well as the whole IP
configuration logic, so it is now a simple (2 functions!) public API
that allows to load picoTCP, use it, and unload it.
*** Short how-to ***
1. Download picotcp4dos and unzip it on your drive
2. Set the location where the config file will be stored, for example:
SET PICOTCP=C:\PICOTCP.DAT
3. Bind picoTCP to the interrupt vector of your packet driver, example:
ipcfg int 60
4. Configure your IP settings using ipcfg, or use DHCP (ipcfg dhcp)
enjoy!
Mateusz